〖本章小结〗

  对软件需求的完全理解对软件开发工作的成功是至关重要的。不论软件设计得多好,程序编写得多优秀,未经很好分析和建模的程序给用户带来的只有失望,并给开发者带来烦恼。
  需求分析的任务是发现、求精、建模和规格说明的过程。包括细化在软件项目开发计划中规定的软件范围,创建所需的数据模型、功能模型和控制模型,另外还要分析可选择的解决方案,并将它们分配到各个软件成分中去。
  需求分析是一项软件工程活动,它是的系统分析人员能够刻划出软件的功能和性能,指明软件与其他系统元素的接口,并建立软件必须满足的约束。需求分析建立起来的模型为日后软件设计人员提供了可被翻译成数据、体系结构、界面和过程设计的模型。最后,需求规格说明将为开发人员和用户提供软件开发完成时进行质量评价的依据。
  本章首先介绍了需求分析的目标、任务、对象、过程、原则和需求分析的方法的特点。这部分主要是概念,要求都能掌握。
  然后,介绍可行性研究和可行性研究报告。从经济可行性、技术可行性、社会可行性和开发方案可行性等四个方面研究可行性。需要注意的是,可行性研究是软件计划阶段要做的事情,目的是探讨软件项目是否值得立项,是否能够立项。虽然可行性研究阶段已经粗略了解了用户的要求,甚至还提出了一些可行的解决方案,但是许多细节被忽略了,因此可行性研究并不能代替需求分析。要求了解可行性研究的内容、步骤和可行性研究报告的内容。
  本章的第三部分介绍结构化分析方法,这是本章的重点。结构化方法最初只是着眼于数据流,考虑数据流在系统中的传递和变换,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据词典为主要工具,建立系统的逻辑模型。后来经过扩充,将建模技术扩展到数据建模、功能建模和行为建模,以实体�D关系图、数据流图和控制流图、状态�D迁移图为工具,数据词典为核心,从不同视点建立系统的分析模型。此外,还介绍了加工规格说明、控制规格说明等。这部分内容要求重点掌握。
  本章的第四部分介绍快速原型化方法。这是一种有效驾驭风险的技术。要求掌握原型的类型、原型的策略、原型生存期等内容,对于原型开发技术做一般了解即可。
  最后,介绍了软件需求规格说明的基本原则,规格说明的内容和需求评审的内容。要求掌握需求规格说明的8条基本原则,一般了解需求规格说明的内容。对于需求评审需要特别注意前两条。这里要特别提醒一下,用户要求(user needs)和软件需求(software requirements)是两个概念。需求分析的本质是将用户对系统的要求转化为分析人员对软件的各项需求。因此,不要混淆这两个概念。