软件需求分析就是把软件计划期间建立的软件可行性分析求精和细化,分析各种可能的解法,并且分配给各个软件元素。需求分析是软件定义阶段中的最后一步,是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
开发软件系统最为困难的部分就是要准确说明开发什么。最为困难的概念性工作便是要编写出详细的技术需求,这包括所有面向用户、面向机器和其它软件系统的接口。如果做错,这将是会最终给系统带来极大损害的一部分,并且以后再对它进行修改也极为困难。目前,国内产品的庞杂,一家企业可能有几个系统并立运行,它们之间的接口是系统开发人员最头痛的问题。对于商业最终用户应用程序,企业信息系统和软件作为一个大系统的一部分的产品是显而易见的。但是对于我们开发人员来说,并没有编写出客户认可的需求文档,我们如何知道项目于何时结束?而如果我们不知道什么对客户来说是重要的,那我们又如何能使客户感到满意呢?
本学期学习这门课应掌握的内容:业务需求、用户需求和功能需求(也包括非功能需求)也是需求分析三个不同的层次。
1.业务需求(business requirement)反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。业务需求通常来自项目投资人、购买产品的客户、实际用户的管理者、市场营销部门或产品策划部门。业务需求描述了组织为什么要开发一个系统,即组织希望达到的目标。使用前景和范围文档来记录业务需求,这份文档有时也被称作项目轮廓图或市场需求文档。
