培训教室管理
需求描述:
- 维护教室信息
- 可新增/修改/删除教室,维护信息字段:教室编号、楼层、容量、功能、说明。
1 有几个功能处理?
新增、修改、删除、查询四个功能处理。
2 为什么查询是单独的一个功能处理?
因为进入培训教室管理的页面后,列出了已经输入的所有的教室的信息,可以不做其他任何操作退出,只是看看有哪些已有的教室。
在上述的需求描述中没有明确说明查询的功能,但是根据界面原型,可以认为是默认的需求,可以和需求人员确认是否如此。
3 有“加号”和“新增”两个增加新教室的入口,为什么是1个新增功能处理,而不是两个功能处理?
只是触发功能处理的方式不同,如果识别为2个功能处理,这2个功能处理的目的、数据移动完全相同,每个功能处理应该都是唯一的,不唯一,不独特就是同一个功能处理了。
4 那新增与修改为啥算2个功能处理呢?
因为他们的目的不同,新增是从无到有,修改是对已知数据进行处理!
在本案例中识别的数据移动应该也是不同的,在修改中有读历史数据和输出历史数据的操作,和新增是不同的。实际软件开发中,这两个功能可能存在互相复用。
5 保存是否是一个单独的功能处理呢?
不算。因为保存只是修改或新增功能的一个确认而已,如果不点保存按钮,新增或修改都是没有完成的功能,离开保存,新增或修改无法独立存在,如果前面不执行新增或修改,也无法点击保存按钮,保存是不能独立存在功能,因此它不是单独的功能处理。
6 在需求描述中没有提到错误提示,是否可以不计数功能点?
是的,按照COMIC规则,需求中没有提,则可以不计数。
此时,也可以和需求人员进行确认,是否有遗漏的需求描述。比如,当删除培训教室时,就直接删除吗?是否需要检索是否有其他课程正在使用本教室呢?如果遗漏了此需求,则应补充完善需求描述,功能点相应的也要增加一个读和输出。
7 度量结果
功能处理 | 兴趣对象 | 输入 | 输出 | 读 | 写 | 小计 |
查询 | 教室 |
| 1 | 1 |
| 3 |
触发 | 1 |
|
|
| ||
新增 | 教室 | 1 |
|
| 1 | 2 |
修改 | 教室 | 1 | 1 | 1 | 1 | 4 |
删除 | 教室 | 1 |
|
| 1 | 2 |
合计 | 4 | 2 | 2 | 3 | 11 |
8 为什么查询中有一个触发输入?
因为在一个功能处理中至少包含2个功能点,1个输入+1个输出或一个写。如果对一个功能处理计数完成后发现没有任何输入,则应该增加一个触发输入。