软件生命周期
即:软件产品或软件系统从设计、投入使用到被淘汰的全过程。
注意:软件开发完成后投入使用不代表软件生命周期的终结,软件的使用和维护仍然属于软件生命周期中的一个阶段,只有等到软件彻底被淘汰,不再使用和维护,才意味着软件生命周期的终结。
软件每个生命阶段都会产生报告
每个阶段产生相应的报告
软件过程
是在工作产品构建过程中,所需完成的工作活动、动作和任务的集合。
具体
活动主要实现宽泛的目标,与应用领域、项目大小、结果复杂性或者实施软件工程的重要程度没有直接关系
动作则包含了主要工作产品生产过程中的一系列任务
任务则关注小而明确的目标,能够产生实际产品
软件过程模型
又称:软件开发模型、软件生存周期模型、软件工程范型。
既然软件过程中存在若干活动、动作和任务,那么如何有效地组织这些活动和任务,以达到高质量软件开发的目的?
定义
软件过程模型是软件开发全部过程、活动和任务的结构框架,它能直观表达软件开发全过程,明确规定要完成的主要活动、任务和开发策略。
作用
在软件过程模型框架的约束之下,软件开发才能够有序有效地进行,从而保证软件开发的成功。
软件过程评估
软件过程是保证软件产品成功开发的基石,因此我们通过评估软件组织的软件过程来评价其软件开发能力,成熟的软件过程意味着该组织具有较高的软件开发能力。
评估软件过程主要存在三个流派:
第一,采用能力成熟度模型CMM;(Capability Maturity Model,是公认最好的软件过程评估模型)
第二,采用ISO 9000质量标准体系;
第三,采用信息技术软件过程评估SPICE。
能力成熟度模型CMM
五个等级,等级越高,说明软件生产能力越成熟,即软件开发能力越强。
处于最下端的是初始级,其特点是有能力的人和个人英雄主义。
处于该级别的软件组织:工作无序,项目进行过程中常放弃当初的计划。管理无章法,缺乏健全的管理制度。开发项目成效不稳定,项目成功主要依靠项目负责人的经验和能力,他一但离去,工作秩序面目全非。
第2级是可重复级,其特点是具有基本项目管理。
处于该级别的软件组织:管理制度化,建立了基本的管理制度和规程,管理工作有章可循。初步实现标准化,开发工作比较好地按标准实施。变更依法进行,做到基线化,稳定可跟踪,新项目的计划和管理基于过去的实践经验,具有重复以前成功项目的环境和条件。
第3级是已定义级,其特点是过程标准化
。处于该级别的软件组织:开发过程,包括技术工作和管理工作,均已实现标准化、文档化。建立了完善的培训制度和专家评审制度,全部技术活动和管理活动均可控制,对项目进行中的过程、岗位和职责均有共同的理解。
第4级是量化管理级,其特点是量化管理。
处于该级别的软件组织:产品和过程已建立了定量的质量目标。开发活动中的生产率和质量是可量度的。已建立过程数据库。已实现项目产品和过程的控制。可预测过程和产品质量趋势,如预测偏差,实现及时纠正.
第5级是优化级,其特点是持续的过程改进。
处于该级别的软件组织:可集中精力改进过程,采用新技术、新方法。拥有防止出现缺陷、识别薄弱环节以及加以改进的手段。可取得过程有效性的统计数据,并可据进行分析,从而得出最佳方法。
--------------------------- “朝着一个既定的方向去努力,就算没有天赋,在时间的积累下应该也能稍稍有点成就吧。”