步骤1. 选择合适的软件开发模型
软件项目组需要根据各种软件过程模型的特点、综合考虑以下因素来为软件项目选择合适的软件过程模型。
软件开发组织和软件项目的特征
软件项目的风险
软件项目是否需要预先给用户展示原型
需要多少经验和技巧来成功的使用软件过程模型
软件开发组织和软件项目组人员的经验和能力
技术的成熟度等等
步骤2. 确定和描述软件开发活动
一旦选择好软件过程模型之后,软件开发组织或者项目组需要明确软件过程应包含哪些活动,并描述这些活动。确定软件开发活动应遵循以下原则。
基于所选择的软件过程模型
所确定的活动对于软件项目开发是必要的
一般地,软件过程模型已定义了各种软件开发活动。在某些情况下,软件开发组织或者项目组可以针对软件开发组织或者软件项目的特殊情况和具体需要对软件过程模型中的软件开发活动进行必要的调整,包括增加新的活动、拆分某些活动、合并某些活动等等。例如为了强调软件集成测试计划的制定,可以考虑将软件系统的高层设计这一软件开发活动分解为以下二个子活动:概要设计和制定集成测试计划。
对于所确定的每一个软件开发活动,需要从以下几个方面对它加以定义和描述。
名称:说明软件开发活动的名称
任务:说明该软件开发活动的任务
输入:说明实施该活动所必须的输入,即开展该活动需满足的前提条件
输出:说明该活动实施完成之后所产生的结果
实施:说明如何实施该活动
下面以需求分析活动为例子说明如何描述和定义软件开发活动。
名称:需求分析
任务:进行需求调查,定义软件的用户需求;撰写软件需求规格说明书;根据软件需求规格说明书,制定软件确认测试计划;对软件需求规格说明书和软件确认测试计划进行评审,产生经批准的软件需求规格说明书和软件确认测试计划。
输入:用户的初步需求描述
输出:经批准的软件需求规格说明书;经批准的软件确认测试计划
实施:根据用户需求描述,分析和定义软件的用户需求,按照《软件需求规格说明书编写指南》撰写软件需求规格说明书;对软件需求规格说明书进行评审,评审的原则:正确性、完整性、一致性、简洁性、规范化;根据软件的用户需求,制定软件确认测试计划,按照《软件确认测试计划编写指南》撰写软件确认测试计划文档。
步骤3. 确定和描述软件开发活动间的关系
软件过程中的各个软件开发活动往往是相互关联的。这种关联性主要体现在以下二个方面。(1)执行时序关系,描述了软件开发活动之间执行的时间先后关系。例如,集成测试完成之后才能进行确认测试。(2)逻辑依赖关系,一个软件开发活动的执行需要其它软件开发活动实施所产生的结果。例如概要设计活动需要需求分析活动所产生的结果即软件需求规格说明书。可以通过显示地定义软件开发活动的输入和输出条件来描述软件开发活动之间的上述关系。下面描述了概要设计软件开发活动的输入和输出条件,这二方面条件的描述显示地定义了概要设计活动与需求分析、详细设计活动之间的关系。
输入(概要设计):经批准的软件需求规格说明书
输出(概要设计):软件概要设计规格说明书;数据库设计规格说明书;软件接口设计规格说明书
步骤4:文档化软件过程
在完成上述步骤之后,需要对软件过程进行书面、文字化的描述和记录,形成相应的规范化文档。对软件过程进行文档化的主要目的是:便于记录和保存软件过程;便于获取、理解和交流软件过程;便于对软件过程进行改进。
步骤5:评审软件过程
一旦软件过程文档生成之后,有必要在软件开发组织或软件项目组范围内对所制定的软件过程进行评审,以判断它们:
是否全面,包含了必须的软件开发活动?
是否正确和准确?
是否符合软件开发组织和软件项目的特点?
描述是否简洁、直观、易于理解?
是否易于改进等等。
如果在评审过程中发现了问题,那么可以回溯到前面的步骤以对发现的问题进行纠正。
步骤6:认可、发布和培训
如果软件过程通过评审,那么软件开发组织或者项目组需要公开认可和发布所定义的软件过程、对相关的人员进行必要的培训并强制执行,确保他们知道:为什么需要过程,软件项目组所采用的过程是什么,如何根据软件过程来实施项目等等。
喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!