中科院需求工程 需求工程(第二讲)需求工程过程_.ppt
《中科院需求工程 需求工程(第二讲)需求工程过程_.ppt》由会员分享,可在线阅读,更多相关《中科院需求工程 需求工程(第二讲)需求工程过程_.ppt(122页珍藏版)》请在三一办公上搜索。
1、需 求 工 程,金芝中国科学院数学与系统科学研究院,第二讲:需求工程过程,目的:介绍为软件加强型系统中的复杂软件设计的需求工程过程,涉及抽取需求分析需求验证需求管理需求主要关注点:需求工程中要做些什么,主要内容,相关概念需求工程的输入与输出需求工程过程模型需求抽取和分析需求验证和管理,相关概念:需求工程过程,一组活动的有序集合,主要包括:需求抽取需求分析和协商需求验证定义过程为了能够组织和控制过程的进程,达到可控可预测的目的,为了便于发现并在发现问题之后能够改进过程存在普适的需求工程过程吗?不存在。根据要开发的系统、组织文化、参与需求工程的人员的经验水平定义自己的过程,活动的任务定义活动的计划
2、安排执行活动的参与者活动的输入输出支持活动的工具,相关概念:需求文档,谁需要?客户、最终用户和软件开发者系统需求的陈述:正式的、确定的、官方的相互使用的表述词:需求定义、功能规格说明、软件需求规格说明,需求文档包含什么,系统应该提供的服务和功能系统运行环境的约束,比如,硬件平台系统的总体特性关于系统的应用领域的情况对用于开发系统的过程的约束,需求文档被谁需要,说明需求检查是否满足需要说明需求的变化,计划系统的标书计划系统的开发过程,理解要开发是什么系统,为系统开发验证测试,帮助理解系统帮助理解系统各部分之间的关系,系统客户,项目经理,系统工程师,系统测试工程师,系统维护工程师,需求文档的格式标
3、准例,IntroductionPurpose of the requirements documentScope of the productDefinitions,acronyms and abbreviationsReferencesOverview of the remainder of the documentGeneral descriptionProduct perspectiveProduct functionsUser characteristicsGeneral constraintsAssumptions and dependenciesSpecific requireme
4、ntsCovering functional,non-functional and interface requirements.These should document external interfaces,functionality,performance requirements,logical database requirements,design constraints,system attributes and quality characteristicsAppendicesIndex,相关概念:需求相关者,那类人?将受到待开发的系统影响的人或者组织和部门直接或间接影响系统
5、需求的人具体地说系统的最终用户、经理以及受到待开发的系统影响的组织过程的参与者负责系统开发和维护的工程师将使用系统来提供服务的客户和组织打交道的外部机构,相关概念:需求相关者,自动铁路信号系统负责运行信号系统的火车公司运营者铁路经理旅客火车车组成员设备安装和维护工程师安全认证机构,外部机构,最终用户,受影响的人,相关概念:需求和设计的关系,需求:“什么”涉及系统的目的对计算机系统来说是外部的是问题域的特性设计:“怎样”涉及计算机系统的结构和行为对计算机系统是内部的是计算机系统领域的特性在某个抽象层次上的“怎样”形成下一个层次上的“什么”,相关概念:需求管理,管理需求变化的过程系统需求相关者的需
6、要的变化系统将运行于其中的环境的变化系统将支持的业务的变化法则和规章的变化,等等变化管理的活动变化控制:采集、验证、评估变化变化影响评估:变化将怎样影响到整个系统某个需求的变化是否会影响到其它需求支持可追踪性,系统工程,为什么需要系统工程方法?软件加强型系统的涌现特性涌现特性包括:可依赖性可维护性性能可用性安全性,等等需求工程不仅仅涉及系统的功能性,所有子系统集成起来形成一个整体时才表现出来的特性,系统工程过程,系统工程过程活动,需求工程过程,过程模型需求工程过程中的角色过程支持过程改进,什么是过程,结构性:一组有组织的活动目的性:将输入转换成输出作用:结构性帮助处理复杂问题过程定义帮助问题求
7、解知识的重用,过程的输入与输出,过程的输入,存在系统的信息:要被替换的系统或者目标系统将与之交互的系统的功能需求相关者的需要:系统的需求相关者在什么方面需要目标系统来支持他们的工作组织标准:组织中涉及系统开发实践和质量管理等方面的标准规章条例:适用于系统的诸如健康和安全条例等外部规定领域信息:关于系统的应用领域的一般信息,过程的输出,一致同意的需求:关于系统需求的描述,这个描述对需求相关者来说是可理解的,并且已经得到他们的同意系统的规格说明:在某些情况下可被实现的系统功能的更详细的规格说明系统模型:一组从不同方面描述系统的模型,比如,数据流模型、过程模型、等等,图书馆信息系统,已存在系统的信息
8、:假设软件系统必须与条码机系统相连,现在条码机已经有了,而且可以在处理相关事务请求时产生条码的队列。来自条码机系统的需求可能会是:“图书馆信息系统将与条码机系统对接,并且每隔两秒钟处理完队列中的所有事务请求。”需求相关者的需要:假设需求相关者是图书馆的一个读者,他以前没有使用过这样的系统,他的需要可能会是:“系统应该提供读者指南,向图书馆的新读者解释系统的设施,从所有读者的使用界面上都应该能够看到这个指南。”,图书馆信息系统,组织的标准:假设这个图书馆的所有系统都使用相同的硬件平台,关于这一点的需求可能是:“系统将在Sun服务器Solaris 2.0操作系统上运行。”规章:诸如健康和安全这类的
9、规章很可能对图书馆这类的系统有很大影响,数据产权保护法则也是如此,关于数据产权保护的需求可能会是:“这个系统将包括打印所有由图书馆用户自己维护的个人信息的设备。”领域信息:这是适用于所有起码是大多数图书馆系统的通用信息,领域需求的一个例子可能会是:“所有的书都由一个10位数字的国标码唯一地标识。”,需求工程过程模型,过程模型:过程的简化描述过程模型的类型粗粒度模型:活动的大致的序列、给出活动的上下文、显示过程的输入和输出细粒度模型:特定过程的细化模型、用于理解和改进存在的过程角色-活动模型:刻画参与过程的不同角色,以及他们进行的活动实体-关系模型:显示过程的输入、输出、中间结果、以及它们之间的
10、关系,用于质量管理系统,作为过程活动的补充,粗粒度纯线性模型,粗粒度线形迭代模型,线形迭代模型中的活动,需求抽取:也叫需求获取和需求发现通过咨询发现系统需求咨询方:需求相关者、系统文档、领域知识、市场研究需求分析和协商:详细分析需求冲突不可避免,不同的来源、信息不完整、需求与项目预算不配套有一些需求是灵活的,不同需求相关者进行协商以确定那些是可接受的需求,解决冲突需求文档化:将一致接受的需求写成文档需求验证:检查需求的一致性和完整性,从文档中发现需求中的问题,粗粒度线形迭代模型,需求管理,需求工程过程的螺旋模型,非形式的需求陈述,一致同意的需求,需求文档草稿,需求文档和验证报告,过程模型:角色
11、-活动模型,过程支持,建模和验证工具以结构化方法为基础,如:SADT,RSL以数学模型为基础,如:VDM,Z管理工具需求管理的CASE工具:DOORS,RML,Requisite Pro,一个需求管理系统,过程改进,目标:质量改进日程缩减资源缩减主要涉及的问题过程成熟度需求过程的成熟度模型初始级:经验式需求工程,常常出现需求的问题可重复级:标准化需求工程;较少的需求问题定义级:定义明确的基于最好的实践的过程,恰倒好处的过程改进,过程的作用,规定需求工程要进行的活动定义活动的输入/输出管理和控制需求工程进程明确岗位的职责和任务(过程和角色挂钩)通过过程控制保证需求的质量,需求抽取和分析,抽取和分
12、析过程抽取技术需求分析和协商,抽取分析和协商螺旋,需求抽取过程,开始点存在一个“问题”需要解决,例如:对当前的事务处理方式不满意出现新的业务机会有可能节省开销、时间、资源的使用、等需求工程师是带来变化的代理人,W6H(记者的技巧)What、Where、Who、Why、When、How、Which,需求抽取过程的关键活动,设定目标:组织和业务目标获取背景知识:应用领域知识组织知识:将获取的知识组织起来采集需求相关者的需求:咨询需求相关者,需求抽取过程,需求分析过程,目标:发现初步需求中的冲突主要活动:必要性检查一致性和完整性检查可行性检查,需求协商过程,目标:确定能得到一致同意的需求主要活动:需
13、求讨论需求优先化达成一致意见的需求的确认,需求分析和协商过程,需求抽取涉及的因素,应搜集什么信息从什么来源中搜集信息用什么机制或技术搜集信息,需求抽取的四个纬度,理解应用领域,理解问题,理解业务,理解系统需求相关者的需要和要满足的约束,需求抽取涉及的因素,应搜集什么信息从什么来源中搜集信息用什么机制或技术搜集信息,需求的来源,客户(实际的或潜在的)任何原有的解系统及其文档原有系统的用户新系统的潜在用户应用领域专家相关的技术标准和法规,与客户沟通的重要性,成功的项目都与客户有更多的联系,使用的联系与所有可能的联系的百分比,需求工程师要做什么,标识“问题”/“机会”那个问题需要解决?(识别问题边界
14、)问题在什么地方?(理解上下文/问题领域)软件系统会起到怎样的作用?(采集一些情景)是谁的问题?(识别投资人)为什么需要解决它?(识别投资人的目标)它需要什么时候解决?(识别开发约束)什么会防碍我们解决它?(识别可行性和风险)抽取足够的知识(没有量化标准)足以分析需求:有效性、一致性、完整性变成问题领域的专家,功能需求,非功能需求,深层次需求,抽取的困难,领域知识非常薄弱知识可能分布在许多地方,并很少以显式的形式表示出来(写出来)来自不同地方的知识之间将会有矛盾不同的人有不同的目标,不同的人对问题的理解不同经验知识人很难描述他们日常使用的知识描述会是专家行为的不准确的理性化有限的观察问题拥有者
15、可能太忙,没时间用存在的系统去解决它出现一个观察可能会改变这个问题偏见人可能不方便告诉你你需要知道什么人可能不想告诉你你需要知道什么,需求抽取涉及的因素,应搜集什么信息从什么来源中搜集信息用什么机制或技术搜集信息,需求抽取机制或技术,头脑风暴面谈法联合应用开发问卷法任务观察用例和场景,交谈法,类型结构式:需要提前准备,具有明确的日程,预先确定好问题,开放式:非正式会议、没有事先准备的问题和预计的目的、鼓励客户讲出他们自己的想法优点能采集到丰富的信息缺点大量定性的数据可能很难分析不同的回答难以比较交谈的技巧很难掌握注意三种问题需要避免:固执己见的问题、带偏见的问题、强加的问题经验性知识不好谈出来
16、交谈者的态度会影响交谈的结果,直接表达了自己的关于这个问题的观点:“我们必须”,同上,但观点明显有偏见:“我们不做,对吗?”,假设了问题的答案:“你是用这种方式做,对吗?”,交谈形式举例,正向模拟:选择典型业务情景(初始情况),请用户说明工作过程;陈述过程中不断提炼并提问新情况案例分析:请用户选择有代表性的业务情景(初始情况),并说明工作过程;陈述过程中不断提炼并提问新情况局外评论:存在现有系统,请用户对正在进行的过程进行评论知识反教:在获取一些信息后,按照自己的理解表述给用户,请用户判断正确与否,交谈过程,准备:被咨询人咨询目标制定计划(按逻辑方式分组和排序的问题)记录检查和理解考虑的因素:
17、影响效率的因素(持续的时间),信息确认(重复面谈)、被咨询人的因素、操作:简单友好的气氛、只关注技术上问题、提问技巧(问题不要影响合作态度),交谈过程要考虑的问题,待解决的问题开发解决方案的过程谁出钱开发想要这个系统的基本原因是什么交付日期和成本之间的权衡是什么是否在某个日期之后系统将没有价值成本和可靠性之间的权衡是什么需求获取本身,交谈过程要考虑的问题,待解决的问题开发解决方案的过程需求获取本身我的问题看起来相关吗?你的回答正式吗?你是回答这些问题的最佳人选吗?我问的问题太多吗?还有其它问题需要问吗?我还应该见什么人?,问卷法,形式:事先准备好问卷,发给许多相关人员优点:快速地从多个客户中收
18、集信息可以远程进行回答者有时间思考、回答可以匿名缺点:没有面谈法有效,是被动的按问题的简单分类,提供很少的上下文信息回答者不容易弄清楚问题的含义和出发点,问卷法,注意(问卷分析)样本选择中的偏差问卷回答人选择的偏差小样本规模、缺少统计上的意义要避免的问题引导性问题模糊的问题(不是每个人都回答同样的问题)一般采用的问题形式多项选择评分排序,观察法,任务:主要关注用户与某个先行系统的交互,解决人们面谈时对如何完成任务的描述的限制和不准确事先决定观察什么(目标、人员、地点)事后对观察结果进行分析形式:主动观察:浸入式观察(人种论:观察者必须融入到工作中)被动观察:旁观式观察注意:时间相对较长,分析非
19、常耗时,因此非常昂贵选择不同时间段、不同工作负荷时的场景,组抽取技术,类型联合应用开发/快速应用开发具有关注点的组大脑风暴注意样本偏差支配地位和服从,优点比形式的面谈具有更自然的交互能够判定对一些初步设计的反映(原型、使用情节串联图、等)群体动力学原理、组协同(提高生产力、学得更快、制定更多理智的判断、消除更多的错误、)缺点组的构成可能不够自然(参与者在一起感到不舒服)对技术问题可能只提供粗略的反映要求有受过正规训练的组织者,联合应用开发(JAD),特点:将所有的客户和开发人员召集到一起(不超过25到30人)形式:几个小时、几天、甚至一到两个星期的JAD会议参加者:领导:组织和召集这个会议的人
20、(具有交流能力,很好的业务领域知识)文书:在计算机上记录JAD活动,能够使用CASE工具为活动生成文档,并开发出最初的解决方案模型客户(最终用户和经理):是交流、讨论需求、作出决策、批准项目目标等的主要参与者开发人员:业务分析员等,他们听得多说得少,主要是收集信息,快速应用开发(RAD),特点:组合了五个方面的技术进化原型技术带有代码生成,以及支持设计和代码生成循环工程的CASE工具拥有先进工具的专门人员SWAT(Skilled Workers with Advanced Tools)交互式JAD:一般JAD中的文书由具有CASE工具的SWAT小组代替时间表:具有固定的时间期限、严格禁止“范围
21、扩张”、进展缓慢就削减方案、按时完成是第一位的,不仅仅是需求抽取方法,还是视软件开发为一体的方法。,需求抽取中的原型法,原型:演示型系统呈现图形用户界面提供对各种用户事件的模拟行为“丢弃”式原型目的:帮助抽取和开发系统需求对象:客户陈述有困难的需求,难以理解的需求进化式原型目的:快速开发可运行的系统对象:定义明确的需求,针对有用的功能的需求,文档的研究,组织文档业务表格、工作过程、职位描述、政策手册、业务计划、组织图、会议记录、财务报表、系统文档计算机屏幕、各类录入表单、各类打印报表、领域知识需求领域刊物、书籍、参考手册、,“硬数据”的采集,标识硬数据的集合事实、图表、财务信息、用于决策分析的
22、报表、调查结果、市场数据、抽样抽样用来从中选择有代表性的集合有目的的抽样:选择不担心统计问题,你也认为是相关的部分简单随机抽样:每隔k项选择一个分层随机抽样:先分层次、再抽样聚簇随机抽样:选择一个有代表性的子数据集,再抽样样本规模非常重要要进行数据采集和分析的代价以及所需要的明显度之间的平衡,用例抽取,什么是用例?参与者与系统交互的每种不同的方式都是一个用例对一个特定的参与者,产生一个可观察的结果的系统执行的行为序列的描述所有的用例都需要枚举出来,否则需求将会不完整带有共同的目的的可能的情景的集合描述一般用自然语言书写不含系统的内部状态;只包含交互,组合用例的方式扩展/使用优点和缺点所有可能的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中科院需求工程 需求工程第二讲需求工程过程_ 中科院 需求 工程 第二 过程

链接地址:https://www.31ppt.com/p-2840146.html