阅读笔记03
需求的三个层次:业务需求、用户需求、软件需求
业务需求是需求定义的产物,用户需求是需求捕获的产物,软件需求是需求分析与建模的产物。
业务需求:
反映企业/组织对软件系统的高层次目标要求,就是软件系统的建议目标,而目标通常体现在以下两个方面:
问题:解决企业/组织动作过程中遇到的问题,例如:物资供应脱节、用户投诉量大、客户流失较高等。
机会:抓住外部环境所带来的机会,以便为企业带来新的发展,例如:电子商务、网上银行、基于即时通信的工作协同系统等。
业务需求实际上是在项目立项阶段整理,是需求定义的产物。
用户需求:
描述的是用户使用软件需要完成什么任务,怎么完成的需求。通常是在业务需求定义的基础上进行用户访谈、调查,对用户使用的场景进行整理,从而建立用户角度的需求。用户需求是需求捕获的产物,它具有以下几个方面的特点:
零散:用户会提出不同角度、不同层面、不同粒度的需求,而且通常是以一句话的形式提出的。例如:对快到期的客户,系统通过短信将续保信息发给客户的代理人。
存在矛盾:由于用户处于企业/组织的不同层面,因此难免出现盲人摸象的现象,从而导致需求的片面性,甚至不同用户之间会持有不同的观点。
所以需要对用户需求(也叫做原始需求)进行分析、提炼、整理,从而整理出更加精确的需求说明。
软件需求--包括:功能需求、非功能需求、设计约束
针对用户需求分析人员对其进行分析、提炼、整理并建模形成更精确的软件需求,软件需求实际上是需求分析与建模的产物。
功能需求的要点在于如何组织(建议首选用例方法);
非功能需求的要点在于保证信息的有效性传递和注意其局部性;
设计约束包括非技术因素的技术选型、预期的软硬件环境各预期的使用环境三大类型