首页 > 代码库 > 《构建之法》阅读笔记(4)
《构建之法》阅读笔记(4)
《构建之法》阅读笔记(4)
需求分析
软件的需求主要可以通过以下步骤来获取:(1)获取和引导需求;(2)分析和定义需求;(3)验证需求;(4)在软件产品的生命周期中管理需求。
对软件的需求,可以从不同角度来划分:(1)对产品功能性的需求;(2)对产品开发过程的需求;(3)非功能性需求;(4)综合需求。
因为人们为了解决现实社会和生活中的各种问题,要求助于软件。人们的需求五花八门,那么软件如何才能准确而全面地找到这些需求呢?所以需求分析显得格外重要。下面这些定义是需求工程领域中常见术语的定义。软件需求包括三个不同的层次:业务需求、用户需求和功能需求(也包括非功能需求)。
1.业务需求(business requirement)反映了组织机构或客户对系统、产品高层次的目标要求,它们
在项目视图与范围文档中予以说明。
2.用户需求(user requirement) 文档描述了用户使用产品必须要完成的任务,这在使用实例(use
case)文档或方案脚本说明中予以说明。
3.功能需求(functional requirement)定义了开发人员必须实现的软件功能,使得用户能完成他们的
任务,从而满足了业务需求。
开发软件系统最为困难的部分就是要准确说明开发什么。最为困难的概念性工作便是要编写出详细的技术需求,这包括所有面向用户、面向机器和其它软件系统的接口。如果做错,这将是会最终给系统带来极大损害的一部分,并且以后再对它进行修改也极为困难。目前,国内产品的庞杂,一家企业可能有几个系统并立运行,它们之间的接口是系统开发人员最头痛的问题。对于商业最终用户应用程序,企业信息系统和软件作为一个大系统的一部分的产品是显而易见的。但是对于我们开发人员来说,并没有编写出客户认可的需求文档,我们如何知道项目于何时结束?而如果我们不知道什么对客户来说是重要的,那我们又如何能使客户感到满意呢?
举个例子来说。在中国,360的装机量是十分庞大的。为什么?究其原因,是因为其使用方便。傻瓜式的操作,比如:一键杀毒,一键清理等。这些操作难度低的软件在中国是非常受欢迎的。对于我们计算机专业的学生来说,我们从中学到了做软件,要满足顾客的内心深处真切需求。在做软件之前,我们可以进行调研,或者搞一个问卷调查,面向各个不同的阶层,从而了解顾客的真实需求。
所以说,我们要想做好一个软件,把一个软件做大、做广,我们首先就必须要学会需求分析,为何要做这个软件,软件的用处在哪儿,软件用户的需求是什么,总而言之,从现在做起,开始分析需求!
《构建之法》阅读笔记(4)