需求工程-软件建模与分析读书笔记3
终于读完了这本书,但是我感觉跟彻底理解还有相当大的距离,只是没那么多时间,终究还是要写完这篇博客。
最后几章主要讲的是需求的文档和需求过程的管理。即需求分析必须标准化。我们在需求的过程中必须学会用建模的方法来规范需求工程。需求分析的根本任务是简历分析模型,达成开发者和用户对需求信息的共同理解,根据共同的理解,发挥创造性,创建软件系统的解决方案。。两个世界和三种模型。
文档的编写时软件工程师必不可少的一门功课。编写此文档的目的是进一步定制软件开发的细节问题,希望能使本软件开发工作更具体。为了使用户、软件开发者及分析和测试人员对该软件的初始规定有一个共同的理解,它说明了本软件的各项功能需求、性能需求和数据需求,明确标识各项功能的具体含义,阐述实用背景及范围,提供客户解决问题或达到目标所需要的条件或权能,提供一个度量和遵循的基准。具体而言,编写软件需求说明的目的是为所开发的软件提出:1 软件设计总体要求,作为软件开发人员、软件测试人员相互了解的基础。2 功能、性能要求,数据结构和采集要求,重要的接口要求,作为软件设计人员进行概要设计的依据。3 软件确认测试的依据。
在开发过程总,为了提高软件质量,确保软件开发成功,降低软件开发成本,一旦对目标系统提出一组要求之后,必须严格验证这些需求的正确性。通常应该从下述 4 个方面进行验证:1 一致性 所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。2 完整性 需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。3 现实性 指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。对硬件技术的进步可以做些预测,对软件技术的进步则很难做出预测,只能从现有技术水平出发判断需求的现实性。4 有效性 必须证明需求是正确有效的,确实能解决用户面对的问题。发现问题后就要及时的改正,而常见的问题修正有以下几种 1 需求澄清 2 发现缺失需求 3 解决需求冲突 4 修正不切实际的期望。
需求管理在需求开发之后的产品生命周期中保证需求作用的有效发挥。它具有以下几个作用:增进了项目涉众之间的交流。减少了可能的误解和交流偏差。减少了工作量的浪费,提高了生产力。需求管理能够更加有效的处理需求的变更。准确反映项目的状态,帮助进行更好的项目决策。需求跟踪信息能够更加准确的反映项目的进展情况。改变项目文化,使得需求的作用得到重视和有效发挥。使得项目涉众认识到需求在项目工作中的重要性等。