协商与建模需求规约与验证需求管理-Read课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《协商与建模需求规约与验证需求管理-Read课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 协商 建模 需求 规约 验证 管理 Read 课件
- 资源描述:
-
1、制作者制作者 程丽程丽软件工程软件工程第二章第二章 需求工程需求工程本章介绍以下内容本章介绍以下内容v可行性分析可行性分析v需求工程概述需求工程概述v需求获取需求获取v需求分析、协商与建模需求分析、协商与建模v需求规约与验证需求规约与验证v需求管理需求管理 接下来介绍接下来介绍v可行性分析可行性分析v需求工程概述需求工程概述v需求获取需求获取v需求分析、协商与建模需求分析、协商与建模v需求规约与验证需求规约与验证v需求管理需求管理可行性分析可行性分析可行性研究的目的可行性研究的目的可行性研究的任务可行性研究的任务v技术可行性技术可行性 确定技术风险,项目实现的可能性确定技术风险,项目实现的可能
2、性v经济可行性经济可行性 考虑投入考虑投入产出,市场前景,经营策略产出,市场前景,经营策略v社会可行性社会可行性 考虑合同、责任、侵权、用户组织的管理模式考虑合同、责任、侵权、用户组织的管理模式及规范问题及规范问题可行性研究的步骤可行性研究的步骤v确定项目规模和目标确定项目规模和目标v研究正在运行的系统系统流程图研究正在运行的系统系统流程图v建立新系统的高层逻辑模型简单数据流图建立新系统的高层逻辑模型简单数据流图v导出和评价各种方案导出和评价各种方案v推荐可行的方案推荐可行的方案v编写可行性研究报告,交使用部门审查编写可行性研究报告,交使用部门审查用用图形符号描述项目处理流程、范围和功能图形符
3、号描述项目处理流程、范围和功能 处理处理 输入输入/输出输出 连接连接 换页连接换页连接 数据流数据流 文档文档 联机存储联机存储 磁盘磁盘 显示显示 人工输入人工输入 人工操作人工操作 辅助操作辅助操作 通信链路通信链路系统流程图系统流程图例子:人工系统计算工资和编制报表例子:人工系统计算工资和编制报表教师教师课时表课时表任务表任务表职工职工工资支付系统工资支付系统工资表工资表工资明细表工资明细表银行银行教师教师职工职工成本效益分析成本效益分析成本效益分析成本效益分析成本效益分析成本效益分析v投资回收期投资回收期 使累计的经济效益等于最初投资费用所需的时使累计的经济效益等于最初投资费用所需的
4、时间间 投资回收期越短,就越快获得利润投资回收期越短,就越快获得利润v纯收入纯收入 整个生存周期之内的累计经济效益(折合成现整个生存周期之内的累计经济效益(折合成现在值)与投资之差在值)与投资之差v一个系统可以有多个可行的实现方案,每个方一个系统可以有多个可行的实现方案,每个方案对成本、时间、人员、技术、设备都有不同案对成本、时间、人员、技术、设备都有不同的要求,不同方案开发出来的系统在功能、性的要求,不同方案开发出来的系统在功能、性能方面也会有所不同。因此要在多个可行的实能方面也会有所不同。因此要在多个可行的实现方案中作出选择。现方案中作出选择。v由于系统的功能和性能受到多种因素的影响,由于
5、系统的功能和性能受到多种因素的影响,某些因素之间相互关联和制约。某些因素之间相互关联和制约。如,为达到高的精度就可能导致长的执行时如,为达到高的精度就可能导致长的执行时间,为达到高可靠性就会导致高的成本等等。间,为达到高可靠性就会导致高的成本等等。因此,在必要时应进行折衷。因此,在必要时应进行折衷。方案的选择和折衷方案的选择和折衷可行性分析的结论可行性分析的结论v可以立即开始进行可以立即开始进行v需要推迟到某些条件(例如资金、人力、设备等)需要推迟到某些条件(例如资金、人力、设备等)落实之后才能开始进行落实之后才能开始进行v需要对开发目标进行某些修改之后才能开始进行需要对开发目标进行某些修改之
6、后才能开始进行v因为某种原因(如,技术不成熟、经济上不合算因为某种原因(如,技术不成熟、经济上不合算等)不能进行等)不能进行可行性研究的文档可行性研究的文档v在可行性研究后提交的文档,包括在可行性研究后提交的文档,包括 引言引言 可行性研究前提可行性研究前提 对现有系统的分析对现有系统的分析 所建议的系统所建议的系统 可选择的其它系统方案可选择的其它系统方案 投资及效益分析投资及效益分析 社会因素方面的可行性分析社会因素方面的可行性分析 结论结论接下来介绍接下来介绍v可行性分析可行性分析v需求工程概述需求工程概述v需求获取需求获取v需求分析、协商与建模需求分析、协商与建模v需求规约与验证需求规
7、约与验证v需求管理需求管理v软件需求工程细分为软件需求工程细分为 需求获取需求获取 需求分析与协商需求分析与协商 系统建模系统建模 需求规约需求规约 需求验证需求验证 需求管理需求管理需求工程需求工程需求获取需求获取 v系统分析人员与用户交流,对现有系统观察,对系统分析人员与用户交流,对现有系统观察,对任务进行分析,确定系统或产品的范围,与系统任务进行分析,确定系统或产品的范围,与系统或产品有关的人员及特征,系统的技术环境,系或产品有关的人员及特征,系统的技术环境,系统功能,应用于每个需求的领域限制,一组描述统功能,应用于每个需求的领域限制,一组描述不同运行条件下系统或产品使用状况的应用场景。
8、不同运行条件下系统或产品使用状况的应用场景。需求分析与协商 v需求获取结束后,分析活动对需求进行分类组织,需求获取结束后,分析活动对需求进行分类组织,分析每个需求与其它需求的关系,检查需求的一分析每个需求与其它需求的关系,检查需求的一致性、重叠和遗漏的情况,并根据用户的需要对致性、重叠和遗漏的情况,并根据用户的需要对需求进行排序。需求进行排序。v在需求获取阶段,经常出现以下问题:在需求获取阶段,经常出现以下问题:用户提出的要求超出软件系统可以实现的范围用户提出的要求超出软件系统可以实现的范围或实现能力;或实现能力;不同的用户提出了相互冲突的需求不同的用户提出了相互冲突的需求 系统建模系统建模
9、v建模工具的使用在用户和系统分析人员之间建立建模工具的使用在用户和系统分析人员之间建立了统一的语言和理解的桥梁,同时系统分析人员了统一的语言和理解的桥梁,同时系统分析人员借助建模技术对获取的需求信息进行分析,排除借助建模技术对获取的需求信息进行分析,排除错误和弥补不足,确保需求文档正确反映用户的错误和弥补不足,确保需求文档正确反映用户的真实意图。真实意图。v常用的分析和建模方法有面向数据流方法、面向常用的分析和建模方法有面向数据流方法、面向数据结构方法和面向对象的方法。数据结构方法和面向对象的方法。需求规约需求规约 v软件需求规约是分析任务的最终产物,通过建立软件需求规约是分析任务的最终产物,
10、通过建立完整的信息描述、详细的功能和行为描述、性能完整的信息描述、详细的功能和行为描述、性能需求和设计约束的说明、合适的验收标准,给出需求和设计约束的说明、合适的验收标准,给出对目标软件的各种需求。对目标软件的各种需求。v需求规约作为用户和开发者之间的一个协议,在需求规约作为用户和开发者之间的一个协议,在之后的软件工程各个阶段发挥重要作用。之后的软件工程各个阶段发挥重要作用。需求验证需求验证 v作为需求开发阶段工作的复查手段,需求验证对作为需求开发阶段工作的复查手段,需求验证对功能的正确性、完整性和清晰性,以及其它需求功能的正确性、完整性和清晰性,以及其它需求给予评价。为保证软件需求定义的质量
11、,评审应给予评价。为保证软件需求定义的质量,评审应以专门指定的人员负责,并按规程严格进行。以专门指定的人员负责,并按规程严格进行。v在实际的开发过程中,获取、分析、建模、编写规在实际的开发过程中,获取、分析、建模、编写规约和验证这些需求开发活动不会是线性地、顺序地约和验证这些需求开发活动不会是线性地、顺序地完成。实际上,这些活动是交叉的、递增的和反复完成。实际上,这些活动是交叉的、递增的和反复的。的。需求管理需求管理 v需求工程包括获取、分析、规定、验证和管理软需求工程包括获取、分析、规定、验证和管理软件需求,而件需求,而“软件需求管理软件需求管理”则是对所有相关活则是对所有相关活动的规划和控
12、制。动的规划和控制。v换句话说,需求管理就是:一种获取、组织并记换句话说,需求管理就是:一种获取、组织并记录系统需求的系统化方案,以及一个使用户与项录系统需求的系统化方案,以及一个使用户与项目团队对不断变更的系统需求达成并保持一致的目团队对不断变更的系统需求达成并保持一致的过程。过程。接下来介绍接下来介绍v可行性分析可行性分析v需求工程概述需求工程概述v需求获取需求获取v需求分析、协商与建模需求分析、协商与建模v需求规约与验证需求规约与验证v需求管理需求管理软件需求包括软件需求包括v功能需求功能需求 v性能需求性能需求 v用户或人的因素用户或人的因素 v环境需求环境需求 v界面需求界面需求 v
13、文档需求文档需求 v数据需求数据需求 v资源使用需求资源使用需求 v安全保密要求安全保密要求 v可靠性需求可靠性需求 v软件成本消耗与开发进软件成本消耗与开发进度需求度需求 v其他非功能性要求其他非功能性要求 需求获取方法与策略需求获取方法与策略 v建立顺畅的通信途径建立顺畅的通信途径 v访谈与调查访谈与调查 v观察用户操作流程观察用户操作流程 v组成联合小组组成联合小组 v用况用况(Use CaseUse Case)建立顺畅的通信途径建立顺畅的通信途径 v建立分析所需要的通信途径,以保证能顺利地建立分析所需要的通信途径,以保证能顺利地对问题进行分析。对问题进行分析。访谈与调查访谈与调查 v在
14、具体的实践中,通常采用折衷的方法,即适当在具体的实践中,通常采用折衷的方法,即适当地计划好面谈,但不要过于详细,允许有一定的地计划好面谈,但不要过于详细,允许有一定的灵活性。一般按照如下原则进行准备:灵活性。一般按照如下原则进行准备:所提问的问题应该循序渐进,从整体的方面开所提问的问题应该循序渐进,从整体的方面开始提问,接下来的问题应有助于对前面的问题始提问,接下来的问题应有助于对前面的问题更好的理解和细化;更好的理解和细化;不要限制用户对问题的回答,这有可能会引出不要限制用户对问题的回答,这有可能会引出原先没有注意的问题;原先没有注意的问题;提问和回答在汇总后应能够反映用户需求的全提问和回答
15、在汇总后应能够反映用户需求的全貌。貌。例:例:“赛艇比赛成绩计算系统赛艇比赛成绩计算系统”的第一次面谈的准备的第一次面谈的准备计划计划 初次与初次与Dartchurch航行俱乐部的航行秘书(航行俱乐部的航行秘书(DR)接触,面)接触,面谈有关事宜。谈有关事宜。(在电话交谈时,了解到他们希望得到的是一个在电话交谈时,了解到他们希望得到的是一个“价廉价廉”的,基于的,基于PC的系统,以用于计算赛艇比赛成绩的系统,以用于计算赛艇比赛成绩)时间:时间:2005-6-5地点:对方场地地点:对方场地主要问题主要问题确定基本问题。确定基本问题。确定确定DR的角色的角色还涉及其它人员吗?还涉及其它人员吗?调查
16、财物方面事宜。调查财物方面事宜。系统(大致上)是如何运作的?系统(大致上)是如何运作的?当前存在的问题是什么?当前存在的问题是什么?他们都希望做些什么?他们都希望做些什么?观察用户操作流程观察用户操作流程 v到用户的实际工作环境中对用户的工作流程进行到用户的实际工作环境中对用户的工作流程进行观察,了解用户实际的操作环境、操作过程和操观察,了解用户实际的操作环境、操作过程和操作要求,对照用户提交的问题陈述,对用户需求作要求,对照用户提交的问题陈述,对用户需求可以有更全面、更细致的认识。可以有更全面、更细致的认识。组成联合小组组成联合小组 v便利的应用规约技术便利的应用规约技术(Facilitat
17、ed Application(Facilitated Application Specification Techniques,FAST)Specification Techniques,FAST):打破用户:打破用户(需方)和开发者(供方)的界限,共同组成一个(需方)和开发者(供方)的界限,共同组成一个联合小组,发挥各自的长处,共同负责项目的推进,联合小组,发挥各自的长处,共同负责项目的推进,这样有助于发挥各自优势并增进解和协调这样有助于发挥各自优势并增进解和协调 FASTFAST基本原则基本原则 在中立的地点举行由开发者和用户出席的会议;在中立的地点举行由开发者和用户出席的会议;建立准备和
18、参与会议的规则;建立准备和参与会议的规则;建议一个足够正式的议程以便可以进行自由的建议一个足够正式的议程以便可以进行自由的交流;交流;一个一个“协调者协调者”(他可以是用户、开发者或其他他可以是用户、开发者或其他外人外人)来控制会议;来控制会议;使用一种使用一种“定义机制定义机制”(它可以是工作表、图表、它可以是工作表、图表、墙上胶黏纸或墙板墙上胶黏纸或墙板);目标是标识问题、提出解决方案的要素、商议目标是标识问题、提出解决方案的要素、商议不同的方法、以及在有利于完成目标的氛围中不同的方法、以及在有利于完成目标的氛围中刻画出初步的需求。刻画出初步的需求。FASTFAST会议会议 步骤步骤v1)
19、1)当举行了开发者和用户之间的初步访谈后,确当举行了开发者和用户之间的初步访谈后,确定一个定一个FASTFAST会议的时间地点,并在会议日之前将产会议的时间地点,并在会议日之前将产品请求发布给所有的与会者。品请求发布给所有的与会者。v2)2)要求每个要求每个FAST FAST 出席者会前列出一组围绕系统环出席者会前列出一组围绕系统环境的对象,以及对这些对象的操作或对象之间的交境的对象,以及对这些对象的操作或对象之间的交互功能,并开发出约束列表互功能,并开发出约束列表(如,成本、规模大小、如,成本、规模大小、权重权重)和性能标准列表和性能标准列表(如,速度、精度如,速度、精度)。这些列。这些列表
20、可以不是穷尽的,但是,希望每套列表反映的是表可以不是穷尽的,但是,希望每套列表反映的是每个人对系统的感觉。每个人对系统的感觉。v3)3)进行进行FAST FAST 会议时,当团队的每个成员提出单个会议时,当团队的每个成员提出单个列表后,整个团队将创建一个组合的列表,该组合列表后,整个团队将创建一个组合的列表,该组合列表删去冗余项,并加入在表达过程中出现的新思列表删去冗余项,并加入在表达过程中出现的新思想。在建好所有主题的组合列表后,开始讨论活动。想。在建好所有主题的组合列表后,开始讨论活动。缩短、加长或重新组合列表以适当地反映将被开发缩短、加长或重新组合列表以适当地反映将被开发的产品。的产品。
21、FASTFAST会议会议 步骤步骤 (续续)v4)4)一旦创建了意见一致的列表,应该将团队分为一旦创建了意见一致的列表,应该将团队分为更小的小组,每个小组力图为每个列表中的一个或更小的小组,每个小组力图为每个列表中的一个或多个项开发出小型的规约(即对包含在列表中的单多个项开发出小型的规约(即对包含在列表中的单词或短语的精细化)。每个小组然后将他们开发的词或短语的精细化)。每个小组然后将他们开发的每个小规约提交给所有的每个小规约提交给所有的FAST FAST 出席者讨论,进行出席者讨论,进行添加、删除或进一步的精化等工作。(在所有讨论添加、删除或进一步的精化等工作。(在所有讨论过程中,团队可能提
22、出某些不能在会议过程中解决过程中,团队可能提出某些不能在会议过程中解决的问题,此时要保留问题列表以使这些思想在以后的问题,此时要保留问题列表以使这些思想在以后的活动中产生作用。)的活动中产生作用。)v5)5)在小规约完成后,每个在小规约完成后,每个FAST FAST 的出席者提出一个的出席者提出一个针对产品的确切标准列表,并将该列表提交给团队,针对产品的确切标准列表,并将该列表提交给团队,然后创建一个意见一致的确定的标准列表。这个列然后创建一个意见一致的确定的标准列表。这个列表作为需求获取的结果,为需求分析和建模提供基表作为需求获取的结果,为需求分析和建模提供基础信息。础信息。用况用况(Use
展开阅读全文