软件项目管理的对象是软件工程项目。它所涉及的范围覆盖了整个软件工程过程。 为使软件项目开发获得成功,关键问题是必须对软件项目的工作范围、可能风险、需要资源(人、硬件/软件)、要实现的任务、经历的里程碑、花费工作量(成本)、进度安排等做到心中有数。 这种管理在技术工作开始之前就应开始,在软件从概念到实现的过程中继续进行,当软件工程过程最后结束时才终止。启动一个软件项目要明确项目的目标和范围,考虑候选的解决方案,表明技术和管理上的要求。
进行度量工作,是为了了解产品开发的技术过程和产品本身。它的作用是为了有效地定量的进行管理。
面向规模的度量:
是对软件和软件开发过程的直接度量,可以建立一个面向规模的数据表格来记录项目的某些信息。
举例:面向规模的数据表格
根据数据表格可以对所有的项目计算出平均值:
生产率=KLOC/PM(人月)
质量=错误数/KLOC
成本=元/LOC
文档=文档页数/KLOC
面向功能的度量:
面向功能的软件度量是对软件和软件开发过程的间接度量。此度量主要考虑程序的“功能性”和“实用性”,而不是对LOC计数。
举例:面向功能的数据表格
功能点计算:1,用户输入数 2,用户输出数 3,用户查询数 4,文件数 5,外部接口数
计算功能点:
FP=总计数*(0.65+0.01*SUM(Fi))
总计数:是所有加权计数项的和
Fi(i=1—14)是复杂性校正值,它们应通过逐一回答如下问题来确定
Fi的取值0—5
0:没有影响 1:偶然的 2:适中的 3:普通的 4:重要的 5:极重要的
SUM(Fi)是求和函数
复杂性校正值Fi
一旦计算出功能点,就可以仿照LOC的方式度量软件的生产率,质量和其他属性
生产率=KLOC/PM(人月)
质量=错误数/KLOC
成本=元/LOC
文档=文档页数/KLOC