软件项目流程包括 需求分析,设计,开发,测试,运营,需求分析结果是否准确,对整个整个项目至关重要。
这张图是什么意思呢?也就是说,如果在需求阶段只需花费1个单位时间就能改正的错误,拖到设计阶段来改正就需要5倍的时间,到了编码阶段将是10倍,测试阶段可能达到20~50倍,而到了运行与维护阶段或许会达到200倍之多。
需求工程包括需求开发和需求管理两大范畴。需求开发是收集、分析、整理、编写、验证需求的全过程,重点在于开发出高质量的需求规格说明。需求管理则是对需求的实现、变化进行追踪的全过程,重点在于确保开发的软件满足这些需求。
图3-3
在图3-3中已经指出了需求开发包括需求获取、需求分析、编写规约和需求验证4个具体的活动,但这些活动是顺序进行的吗?现代软件工程的思想更偏向于多次循环的形式,每次循环的过程如图3-4所示。
图3-4
需求分析四步骤解析
1.需求获取
一般通过,用户访谈及用户调研来获取需求!
预先对访谈问题、时间、访谈人员进行计划,做好充分准备!
2. 需求分析
首先需求站在业务的视角进行分析,需求分析也是业务分析,需求分析的任务是对问题域进行研究,因此从业务线索入手是最好的。
明确需求分析目的,通过建模 进行分析、交流,解决问题。
3. 编写规格说明书
需求规格说明书 建议应做到 共享,更新
共享:软件需求规格说明书就是用来完成信息传递和沟通的,因此必须实现共享是显而易见的。
更新:软件需求规格说明书在整个开发过程中是不断演化的,如果没有有效的更新机制,很快就会成为一潭死水,从而造成与开发活动的脱节,所以做到及时有效的更新
4.需求验证
需求验证,通过开需求评审会,项目组成员讨论的方式对需求加以验证。