您所在的位置: 首页>>开发>>项目&管理>>

软件项目如何进行需求分析

http://developer.51cto.com  2005-12-30 12:04    51CMM  我要评论(0)
  • 摘要:软件项目如何进行需求分析?我们要围绕两个核心问题开展需求分析:(1)应该了解什么?(2)通过什么方式去了解?
  • 标签:软件工程  需求分析

软件项目如何进行需求分析?我们要围绕两个核心问题开展需求分析:(1)应该了解什么?(2)通过什么方式去了解?

1 应该了解什么
那怕是天下最无能的市长或书记,都知道在作报告时要先从宏观上讲一、二、三、四、五,再从细节上讲A、B、C、D、E。需求分析不象侦探推理那样从蛛丝马迹着手。应该先了解宏观的问题,再了解细节的问题,如图4.1所示。


一个软件系统(记为 S)的涉及面可能很广,可以按不同的问题域(记为D)分类,每个问题域对应于一个软件子系统。
S = { D1,D2,D3,… Dn }
问题域Di 由若干个问题(记为P)组成,每个问题对应于子系统中的一个软构件。
Di = { P1,P2,P3,… Pm }
问题Pj有若干个行为(或功能,记为F),每个行为对应于软构件中的接口。
Pj = { F1,F2,F3,… Fk }
按图4.1结构写成的需求说明书,对于那些只想了解宏观需求的领导,和需要了解细节的技术员都合适。在写需求说明书时还应该注意两个问题:
(1)最好为每个需求注释“为什么”,这样可让程序员了解需求的本质,以便选用最合适的技术来实现此需求。
(2)需求说明不可有二义性,更不能前后相矛盾。如果有二义性或前后相矛盾,则要重新分析此需求。

2 通过什么方式去了解

了解需求的方式有好几种:
(1)直接与客户交谈。如果分析人员生有足球评论员的那张“大嘴”,就非常容易侃出需求。
(2)有些需求客户讲不清楚,分析人员又猜不透,这时就要请教行家。有些高手真的很厉害,你还没有开始问,他就能讲出前因后果。让你感到“听君一席言,胜读十年书。”
(3)有很多需求可能客户与分析人员想都没有想过,或者想得太幼稚。要经常分析优秀的和蹩脚的同类软件,看到了优点就尽量吸取,看到了缺点就引以为戒。前人既然付了学费,后人就不要拒绝坐享其成。


软件工程与管理
软件工程之质量管理
软件工程之需求管理
走向银光 —— 一步一步学Silverlight2
让你的代码“炫”起来——WPF开发教程
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 6.0完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有