天天看点

软件需求过程

软件的开发阶段

软件定义阶段,软件开发阶段,软件的运行和维护

软件定义阶段

了解需求--确定目标--分析可行性--采取实现策略(系统需要完成功能)--估计成本和资源--制定进度表

正如上述所言,软件需求工程正是软件定义阶段的第一步。

软件需求过程

一、需求的获取

在实际的需求获取中,可能会存在以下的一些问题:

    1、客户说不清楚需求

    2、需求自身经常变动

    3、分析人员与客户理解有误等多方面的原因。

在此时,我们需要一定的解决方法:

    1、进行需求调查的人员可以提前了解客户的工作内容及环境,

    2、在实际的调查中分析稳定和易变需求

    3、在执行的过程中划分问题域及模块。问题划分为行为,行为对应软构件中的接口,问题域对应软件子系统中的软构件

可采用的手段有:

    1、实地考察

    2、调查问卷

    3、针对不清楚需求的用户可采取制作软件的原型,根据原型来提出需求等方法

    4、客户直接交流

    5、分析优秀或蹩脚的同类软件

二、需求分析建模

目的是用建模来表现系统中的关键方面

分类:

1、域建模:对问题域创建相应的模型并且把它划分为若干个内聚组的过程。在抽象模型中捕获业务流程、规则和数据。

2、用例建模:各种参与者(人和其他系统)和要分析的系统之间的主要交互。用例应该说明系统如何支持域和业务流程模型中的业务流程。

3、组件和服务建模:子系统、模块和组件的层次结构分配需求和职责。每个元素作为一个自包含的单元,以用于开发、部署和执行的目的。组件模型的元素由它们所提供和使用的接口来进行规定。在这里,没有考虑其中的内部细节。

4、性能建模:通过各种各样的方式来度量性能。

三、需求规约

需求规格说明书的编写方法,具体见GB8567--88

四、需求评审

需求评审的关键 :从不同的角度对需求评审方法进行论述。

1、充分准备评审好角度的软件需求说明书,是进行有效需求评审的前提。

2、根据项目的具体情况,需要召开设计评审、测试用例评审、功能评审(一般由开发召开)

3、分层次评审,用户的需求是可以分层次的,一般而言分成以下层次:

①目标性需求,定义整个系统需要达到的目标;

②功能性需求,定义了整个系统必须完成的任务;

③操作性需求,定义了完成每个任务的具体的人机交互;目标性需求是企业的高层管理人员所关注的

继续阅读