在GJB438C《软件需求规格说明》的拟制过程中,很多人没有分清楚需求和功能的区别和联系,以及在需求文档中如何体现。
需求
需求也叫能力,一般包括业务需求和用户需求。
业务需求针对是需求的提出方,描述为什么要开发一个系统,开发系统的目的是要解决用户的哪些问题,为用户带来哪些利益。因此业务需求也是市场需求,一般在项目的立项可行性研究报告中体现。
用户需求描述的是用户的目标,或用户要求系统必须能完成的任务。通过用例图、业务场景流程描述等都是表达用户需求的有效途径。也就是说用户需求描述了用户能使用系统来完成什么业务。因此用户需求是从人的角度来描述要解决的问题和实现的业务。
功能
功能需求规定开发人员在系统中实现的软件功能,用户利用这些功能来完成任务,满足用户业务需求。功能需求描述是开发人员需要实现什么软件功能,因此功能需求是从软件的角度来描述系统如何解决用户所遇到的问题和实现用户的业务。
需求与功能
在GJB438C《软件需求规格说明》中主要描述的是用户需求和功能需求两大类。
通过用例图方式将用户需求进行归纳和提炼,在对用户需求具体进行分析和描述时,可通过功能需求的方式来分析软件如何满足的用户需求。
因此,理解了需求和功能的区别和联系,才能更好的把握什么是用户需求,什么是功能需求,才能最终得到满足用户需求和功能完备的软件需求规格说明文档。