需求工程的基本活动介绍

很多人可能都还不明白需求分析,需求管理的区别,甚至不大清楚需求分析到底是做什么的,这个解释起来是很简单的,只不过平时很多人介绍的时候都混淆了,最常见的介绍一般都说成是需求分析该如何如何,需求分析的过程如何如何,与需求有关的其他活动提及的比较少。有时候我自己也混淆了,分不太清楚,刚好最近有朋友问我了,然后就在网上搜了下资料,总结了下,对这块做一个介绍,供大家参考。

其实与需求有关的所有活动统称需求工程,需求工程是随着计算机的发展而发展的,在计算机发展的初期,软件规模不大,软件开发所关注的是代码编写,需求分析很少受到重视。后来软件开发引入了生命周期的概念,需求分析成为其第一阶段。随着软件系统规模的扩大,需求分析与定义在整个软件开发与维护过程中越来越重要,直接关系到软件的成功与否。人们逐渐认识到需求分析活动不再仅限于软件开发的最初阶段,它贯穿于系统开发的整个生命周期。80年代中期,形成了软件工程的子领域——需求工程(requirementengineering,RE)。进入90年代以来,需求工程成为研究的热点之一。从1993年起每两年举办一次需求工程国际研讨会(ISRE),自1994年起每两年举办一次需求工程国际会议(ICRE),在1996年Springer-Verlag发行了一新的刊物——《RequirementsEngineering》。一些关于需求工程的工作小组也相继成立,如欧洲的RENOIR(RequirementsEngineeringNetworkofInternationalCooperatingResearchGroups),并开始开展工作。

需求工程是指应用已证实有效的技术、方法进行需求分析,确定客户需求,帮助分析人员理解问题并定义目标系统的所有外部特征的一门学科。它通过合适的工具和记号系统地描述待开发系统及其行为特征和相关约束,形成需求文档,并对用户不断变化的需求演进给予支持。需求工程是一个不断反复的需求定义、文档记录、需求演进的过程,并最终在验证的基础上冻结需求。80年代,HerbKrasner定义了需求工程的五阶段生命周期:需求定义和分析、需求决策、形成需求规格、需求实现与验证、需求演进管理。近来,MatthiasJarke和KlausPohl提出了三阶段周期的说法:获取、表示和验证。

综合了几种观点,可以把需求工程的活动划分为以下5个独立的阶段:

(1)需求获取:通过与用户的交流,对现有系统的观察及对任务进行分析,从而开发、捕获和修订用户的需求;

(2)需求建模:为最终用户所看到的系统建立一个概念模型,作为对需求的抽象描述,并尽可能多的捕获现实世界的语义;

(3)形成需求规格:生成需求模型构件的精确的形式化的描述,作为用户和开发者之间的一个协约;

(4)需求验证:以需求规格说明为输入,通过符号执行、模拟或快速原型等途径,分析需求规格的正确性和可行性,包含有效性检查,一致性检查,可行性检查和确认可验证性;

(5)需求管理:支持系统的需求演进,如需求变化和可跟踪性问题。

目前产品层面的,大家普遍将需求工程分为需求开发过程和需求管理过程两个部分,这个也是我们常见的一些名词的分类,个人感觉看这个比较易懂。

需求开发过程,需求开发的目的是通过调查与分析,获取用户需求并定义产品需求。下面有需求调研,需求分析,需求定义三个阶段

需求调研的目的是通过各种途径获取用户的需求信息(原始材料),产生《用户需求说明书》。

需求分析的目的是对各种需求信息进行分析,消除错误,刻画细节等。

需求定义的目的是根据需求调研和需求分析的结果,进一步定义准确无误的产品需求,产生《产品需求规格说明书》。系统设计人员将依据《产品需求规格说明书》开展系统设计工作。

需求管理过程 ,需求管理的目的是在客户与开发方之间建立对需求的共同理解,维护需求与其它工作成果的一致性,并控制需求的变更。 下面有需求确认,需求跟踪和需求变更控制三部分。

需求确认是指开发方和客户共同对需求文档进行评审,双方对需求达成共识后作出书面承诺,使需求文档具有商业合同效果。

需求跟踪是指通过比较需求文档与后续工作成果之间的对应关系,建立与维护“需求跟踪矩阵”,确保产品依据需求文档进行开发。

需求变更控制是指依据“变更申请-审批-更改-重新确认”的流程处理需求的变更,防止需求变更失去控制而导致项目发生混乱。

相信大家看过这个之后会对各个与需求相关的名词有了一定的了解,以上材料部分来源于百度百科,部分来源于淘宝陶谦的文章《什么是产品经理》。



无觅相关文章插件,快速提升流量

“需求工程的基本活动介绍”2 条评论

commenter

博客手机访问地址是什么?

commenter

暂没有针对手机的特别支持,回头改进