软件维护的定义:
包括四种类型:
改正性维护
适应性维护
完善性维护
预防性维护
维护阶段站软件生存期的70%以上,而四类维护中,完善性维护占比最大,为50%
软件修改需要经历的三恶步骤:分析和理解程序,实施修改和重新验证程序
软件维护性:评价软件产品质量的一项重要指标
六个软件质量特性:功能性,可靠性,易用性 ,效率和可移植性
软件为彗星度量:丢软件产品的维护行给出量化的评价
包括了:内部维护性度量外部维护性度量
内部维护性度量:
目的:预测修改软件产品所需工作量
实际:软件产品设计和变成阶段
对象:中间产品实施静态测量
未完成时进行的度量
外部围护性度量:
目的:度量修改软件产品的工作量
时间:字啊代码完成后的测试或者运行时候
对象:执行代码收集数据
在产品完成后运行程序获得的维护性数据
实施者可能是任何人
软件过程和软件过程改进
提高软件产品质量和提高软件项目生产率得住是:人员、技术与设备和过程
过程要素:
1.输入:初态
2.输出:终态
3.活动:执行的一系列操作
4.资源:在执行操作时需要投入的东西
5.测量和验证:验证上面四个是否符合要求
6.过程目标:以增值为目标
软件生存期过程:
系统相关的过程:协议过程,组织项目实施过程,项目过程,计数过程
软件特有过程:软件实现过程,软件支持过程,软件复用过程
软件过程成熟度:软件过程成熟度是指一个特定软件过程得到清晰的定义,管理,测量,控制和有效的程度。
成熟度意味着能力的增长具有潜力,而且表示组织软件过程是珍贵的,在组织内所有项目中的应用是稳定一致的。
CMM:能力成熟度模型
CMMI:集成能力成熟度模型
CMMI有两种不同的表现形式:
分级式:给出了软件组织实施过程改进沿着认证等级从低到高等级成熟度发展的路径 用以表示成熟度等级
连续式表示的是能力等级:给出了软件组织过程改进中一些过程域如何从能力较低的等级逐步向高能力等级发展的路径
分级式:初始级,已管理及,已定以及,已量化管理级,持续优化级
连续式:不完全级,已执行及,以管理及,已定以及
对比:不完全级为0状态,已执行级 = 初始级,连续式无 4 5 状态
过程制度化:过程文化+过程基础设施 过程规范化,形成一种特定的行为模式
过程文化:特定人群在特定时期形成的对事物的共同理解,习惯和文明
过程基础设施:包括了基础框和结构基础
过程改进的IDEAL模型:
五个重要阶段:启动、诊断、建立、行动和提高
软件过程改进框架:
改进路线图->软件过程评估方法->软件过程改进计划<-软件过程改进基础设施
软件项目管理:
软件项目管理概述
项目估算
风险管理
进度管理
需求管理
配置管理
管理目标:
(1)达到项目预期的软件产品功能和性能要求
(2)时限要求
(3)项目开销限制在预算之内
软件项目管理设计几个主要方面是:人员、产品、过程和项目4P
项目估算:项目策划是项目开展初期阶段的重要工作,主要目标是得到项目计划
要解决的问题是:开发产品的规模,所需工作量和项目成本
功能点估算方法:
专家判定法:
COCOMO模型:软件类型:固有型,嵌入型,半独立型
软件风险:软件工程过程中可能出现的哪些影响软件目标实现的或是可能造成重大的损失被称为软件风险
风险分类:成本风险,绩效风险,进度风险
风险管理活动:风险评估(风险识别,分析,排序),风险控制(风险化解,监控)
甘特图:表示工作进度计算和工作实际进度情况
横坐标表示时间,水平线段表示任务的工作阶段纵轴标注活动和人员分配等
需求管理:系统需求和软件需求(业务需求,用户需求,功能/肺功能需求)
配置管理
目的:为某个过程或者某个项目的软件建立和保持完善性,以便相关方便与实用
变更管理:分析变更,记录变更信息,确保变更在受控条件下执行
版本控制:版本管理和发行管理,版本标识