COSMIC度量案例:一个简单、明确的软件需求

培训教室管理

需求描述:

  • 维护教室信息

  • 可新增/修改/删除教室,维护信息字段:教室编号、楼层、容量、功能、说明。

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个输出或一个写。如果对一个功能处理计数完成后发现没有任何输入,则应该增加一个触发输入。

 

发布了345 篇原创文章 · 获赞 148 · 访问量 67万+

猜你喜欢

转载自blog.csdn.net/dylanren/article/details/91042499
今日推荐