二、COSMIC度量策略阶段

这一生的挚爱 提交于 2019-12-22 11:52:50

1.数功能点前的准备

a.首先,要数哪些功能?【范围、层】。比如:登陆、查询、删除...;应用层、驱动层;A、B、C子系统

b.哪些人、设备、其他软件与我交互?【功能用户】

c.需求详细到什么程度?【颗粒度级别】

2.COSMIC度量策略阶段要做的事儿

a.确定度量的目的

b.确定待度量软件的范围、识别功能用户、确定待度量软件的功能用户需求颗粒度

3.确定度量的目的

度量目的-定义:为什么需要度量和度量结果用途的描述。

度量目的的重要性;

a.帮助度量者确定度量的范围和度量所需要的制品

b.帮助度量者确定功能用户

c.帮助度量者确定在项目生命周期中进行度量的时间点

d.帮助度量者确定度量的精确性,以及是否应该使用COSMIC方法,或者应该使用COSMIC方法的近似版本

4.确定度量的范围

度量范围-定义:在一次具体的功能规模度量活动中所包含的功能性用户需求的集合(FUR集合)

度量范围-规则:

a.任何待度量软件块的范围必须从度量目的中导出(定义了总体范围的软件可根据其度量目的的不同,使用不同的办法划分为具有不同度量范围的多个软件快)-----总之,度量目的必须总是用来确定:总体范围中应该包含和排除在外的软件;将包含的软件分解成各个独立块的方法,每个块有自己的范围,并且被分别度量。

b.任何一次度量范围不能延伸超过被度量软件所在的层

5.层-由于被度量软件快的范围必须被限制在一个软件层里,因此定义范围时可能需要度量者首先确定软件体系结构有哪些层次

层-定义:一个软件系统体系结构中的功能划分

层-原则:

a.一层中的软件会根据已定义的准则提供一组内聚的服务,而且其他层里的软件无需了解这些服务是如何实现的也能利用他们。

b.任意两层中软件之间的关系可用“通信规则”来定义,有两种情况:

  • “分层的”,如A层的软件可以使用B层软件提供的服务,但反之则不成立(这里层次结构的关系有可能是自上而下或自下而上),或:
  • “双向的”,如A层的软件可以使用B层的软件,反之亦然。

c.一层的软件通过相应的功能处理与另一层的软件交互数据组。

d.一层的软件没有必要使用其他层中的软件提供的所有功能服务。

e.在一个已定义的软件体系结构中属于同一层的软件,根据另外一个不同的体系架构可能被划分为其他的层。

6.对等软件块

对等软件块-定义:若两个软件块处于同一层中,则他们是相互对等的。

7.分解层级

分解层级-定义:将软件块分解为构件而形成的任意级别(例如,称为“1级”),然后将构件分解为子构件(“2级”,再将子构件分解为子子构件(“3级”),等等

8.识别功能用户及持久存储介质

功能用户-定义:一个(一类)用户是软件块的功能性用户需求中数据的发送者或者预期的接收者。

注意:操作系统不是功能用户

功能用户-规则:

a.被度量软件块的功能用户从度量目的导出。

b.根据功能性用户需求,如果功能用户的功能是完全相同的,则应识别一个功能用户类型。

c.当软件块的度量目的与开发或者修改软件块的工作量相关时,根据其FUR的要求,功能用户应该是所有新的或者修改的功能进行交互的数据发送者和/或数据预期接收者。

边界-定义:被度量软件和他的功能用户之间的一个概念性接口。

持久存储介质-定义:使得功能处理在其生命周期结束后仍然能够存储数据组的存储介质。

注意:在COSMIC方法中,持久存储介质是一个只存在于被度量软件边界内的概念,因此,他不能被视为被度量软件的功能用户。

9.识别颗粒度级别

 颗粒度级别-定义:对于一个软件快描述(例如:对需求的陈述或者对软件结构的描述)的任意扩展级别,每一次进一步的扩展,对软件快功能的描述也更加细化并具有一致的详细程度。

  • 颗粒度级别其实就是需求的详细程度;
  • 颗粒度级别可不断降低(即细分)。

解释:

a、分解层级和颗粒度级别是两个完全不同维度的概念,之间也没有任何必然的联系。
b、如果分解层级没有分,就是1个,如1个北京,但是颗粒度级别可以写得非常详细,如中间地图的大街小巷都可以看见;
c、分解层级是帮助划分颗粒度范围的,而颗粒度级别指的是需求的详细程度,两者描述的主体不一样;
分解层级是基于度量目的,划分我们的度量范围。可以理解成是对度量范围的描述/表示,颗粒度级别可以理解成在描述过程要用的标准语言或者方法。
具体到我们北京地图:
1)如果颗粒度级别是市(假设是10000:1),那么北京的分解层级(对北京的描述)是一个北京。
2)如果颗粒度级别是区 (假设是1000:1),那么北京的分解层级(对北京的描述)就是 一个一个的区,XXX区,XXX区,列举所有北京的区。
2)如果颗粒度级别是街道(假设是100:1),那么北京的分解层级(对北京的描述)速就是 一个一个的街道/马路,XXX路,XXX路区,列举所有北京的道路。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!