- 1、本文档共53页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件项目需求管理 主要内容 软件项目需求概述 软件需求开发和管理 软件需求规格的定义方法 一、软件项目需求概述 1. 什么是需求 需求的基本概念 宽泛地讲,需求来源于用户的一些“需要”,这些“需要”被分析、确认后形成完整的文档,该文档详细地说明了产品“必须或应当”做什么。 需求的重要性 Frederick Brooks在他1987年经典文章“No Silver Bullet”中阐述了需求的重要性: 开发软件系统最困难的部分就是准确说明开发什么。最困难的概念性工作是编写出详细的需求,包括所有面向用户、面向机器和其它软件系统的接口。此工作一旦做错,将会给系统带来极大的损害,并且以后对它修改也极为困难。 需求是产品的根源,需求工作的优劣对产品影响最大。就像一条河流,如果源头被污染了,那么整条河流也就被污染了。 国内软件业的痼疾:人们并不清楚究竟该做什么,但却一直忙碌不停地开发。 2. 了解客户、最终用户、间接用户 基本概念 “用户”(user)是一种泛称,它可细分为“客户”(customer)、“最终用户”(the end user)和“间接用户”(或称为关系人)。 掏钱买软件的用户称为客户,而真正操作软件的用户叫最终用户。客户与最终用户可能是同一个人也可能不是同一个人。 3. 需求工程基本概念 什么是需求工程 把所有与需求直接相关的活动通称为需求工程。 需求工程中的活动可分为两大类,一类属于需求开发,另一类属于需求管理。 3. 需求工程基本概念 需求开发过程域 需求开发的目的是通过调查与分析,获取用户需求并定义产品需求。 需求调查的目的是通过各种途径获取用户的需求信息(原始材料),产生《用户需求说明书》。 需求分析的目的是对各种需求信息进行分析,消除错误,刻画细节等。常见的需求分析方法有“问答分析法”和“建模分析法”两类。 需求定义的目的是根据需求调查和需求分析的结果,进一步定义准确无误的产品需求,产生《需求规格说明书》。系统设计人员将依据《需求规格说明书》开展系统设计工作。 需求管理过程域 需求管理的目的是在客户与开发方之间建立对需求的共同理解,维护需求与其它工作成果的一致性,并控制需求的变更。 需求确认是指开发方和客户共同对需求文档进行评审,双方对需求达成共识后作出书面承诺,使需求文档具有商业合同效果。 需求跟踪是指通过比较需求文档与后续工作成果之间的对应关系,建立与维护“需求跟踪矩阵”,确保产品依据需求文档进行开发。 需求变更控制是指依据“变更申请-审批-更改-重新确认”的流程处理需求的变更,防止需求变更失去控制而导致项目发生混乱。 二、软件需求开发和管理 1. 需求开发的主要困难与对策 知识技能问题 态度问题 合作关系 用户说不清楚需求 开发人员写不好需求文档 用户经常变更需求 2. 如何开展需求调查 准备调查 执行调查 《用户需求说明书》与《产品需求规格说明书》的主要区别与联系 3. 如何进行需求分析 基本概念 需求分析是指在需求开发过程中,对所获取的需求信息进行分析,及时排除错误和弥补不足,确保需求文档正确地反映用户的真实意图。 “问答分析法”比较适合于用户需求调查阶段 “建模分析法”比较适合于产品需求定义阶段。 建模分析法 建模分析方法主要有两大类: 结构化分析法 面向对象分析法 4. 什么是好的需求规格说明书 正确 清楚 无二义性 一致 必要 完备 可实现 可验证 确定优先级 阐述“做什么”而不是“怎么做” 5. 如何定义产品需求 第一步:细化并分析用户需求 第二步:撰写产品需求规格说明书 第三步:进行需求确认 6. 需求管理:确认、跟踪、变更控制 需求确认(评审和承诺) 需求评审面临的困难 需求承诺 需求跟踪 需求变更控制 三、定义需求规格的方法 需求规格 原型方法 结构化分析法 面向对象的用例分析法 1. 原型方法 定义 按照用户的需要,快速形成一个操作流程界面 可能只是一个框架,具体的功能没有实现,只是结果 静态的操作流程,以便与用户快速就需求达成一致 主要考虑系统的功能需求,很少考虑非功能需求 2.结构化分析方法 20世纪70年发展起来的面向数据流的方法 是一种自顶向下逐步求精的分析方法 根据软件内部数据传递、变换的关系进行分析的 技术 数据流图(DFD) 数据字典(DD) 系统流程图 数据流图是一种描述软件系统逻辑模型的图形符号 数据流图的层次结构 为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统 顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据 底层流图是指其加工不需
文档评论(0)