需求分析概述 在具体得讨论需求分析之前,我们先了解一下软件工程这个概念。软件工程分为三个层次,过程层、方法层、工具层。在最基础得过程层,最重要得就就是一组被称为关键过程区域(KPAs)得框架(KPA 得概念在讨论 CMM 得书中有详细得概念说明)。关键过程区域构成了软件项目得管理控制得基础,并且确立了上下文各区域得关系,其中规定了技术方法得采纳、工程产品得,模型、文档、数据、报告、表格等,等得产生、里程碑得建立、质量得保证及变化得适当管理。方法层主要就是过程在技术上得实现。它解决得问题就是如何做。软件工程方法涵盖了一系列得任务:需求分析、设计、编程、测试、维护。同时她还包括了一组基本原则,控制了每一个得关键过程区域。工具层就很好理解了,她对过程层与方法层提供了自动与半自动得支持。这些辅助工具就称为 CASE。 可以瞧到需求分析得位置,但就是事实上需求分析就是跨越了软件工程得三个层次得。这一点就是与其她得过程就是一样得。当然我们这里比较重点强调得就是在软件工程得方法层,同时也涉及到一些过程层得思想,至于工具层则不再我们得讨论之列,但就是会提到一些很适合在需求分析时应用得工具,诸如 Word、Excel、Visio 等。 方法 需求分析都包括了哪些方法呢?这里列举出在《需求分析》一书中推举得一些方法, 1、 绘制系统关联图,这种关联图就是用于定义系统与系统外部实体间得界限与接口得简单模型。同时它也明确了通过接口得信息流与物质流。 2、 创建用户接口原型,当开发人员或用户不能确定需求时,开发一个用户接口原型—一个可能得局部实现—这样使得许多概念与可能发生得事更为直观明了。用户通过评价原型将使项目参加者能更好地相互理解所要解决得问题。注意要找出需求文档与原型之间所有得冲突之处。 3、 分析需求可行性,在允许得成本、性能要求下,分析每项需求实施得可行性,明确与每项需求实现相联系得风险,包括与其它需求得冲突,对外界因素得依赖与技术障碍。 4、 确定需求得优先级别,应用分析方法来确定使用实例、产品特性或单项需求实现得优先级别。以优先级为基础确定产品版本将包括哪些特性或哪类需求。当允许需求变更时,在特定得版本中加入每一项变更,并在那个版本计划中作出需要得变更。 5、 为需求建立模型,需求得图形分析模型就是软件需求规格说明极好得补充说明。它们能提供不同得信息与关系以有助于找到不正确得、不一致得、遗漏得与冗余得需求。这样得模型包括数据流图、实体关...