需求分析用例图精品文稿.ppt
《需求分析用例图精品文稿.ppt》由会员分享,可在线阅读,更多相关《需求分析用例图精品文稿.ppt(84页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、需求分析用例图需求分析用例图第1页,本讲稿共84页-2-课程内容课程内容nUML概述概述n理解需求理解需求n需求,难在何处?需求,难在何处?n以用例为中心组织需求以用例为中心组织需求n基于用例的需求分析过程基于用例的需求分析过程第2页,本讲稿共84页-3-课程内容课程内容nUML概述概述n理解需求理解需求n需求,难在何处?需求,难在何处?n以用例为中心组织需求以用例为中心组织需求n基于用例的需求分析过程基于用例的需求分析过程第3页,本讲稿共84页-4-What Is the UML?nThe UML is a language fornVisualizingnSpecifyingnConstr
2、uctingnDocumenting the artifacts of a software-intensive systemUnified Modeling LanguageUnified Modeling Language(统一建模语言)是对象管理组(统一建模语言)是对象管理组(统一建模语言)是对象管理组(统一建模语言)是对象管理组织(织(织(织(OMGOMG)制定的一个)制定的一个)制定的一个)制定的一个通用通用通用通用的、的、的、的、可视化可视化可视化可视化的的建模语言建模语言建模语言建模语言标准,可以用标准,可以用标准,可以用标准,可以用来来来来可视化可视化可视化可视化(visual
3、izevisualize)、描述描述描述描述(specifyspecify)、)、)、)、构造构造构造构造(constructconstruct)和和和和文档化文档化文档化文档化(documentdocument)软件密集型系统的各种工件()软件密集型系统的各种工件()软件密集型系统的各种工件()软件密集型系统的各种工件(artifactsartifacts,又译制品)又译制品)又译制品)又译制品)第4页,本讲稿共84页-5-UML诞生诞生工 业化标 准化统 一化分 散的各 部分公众反馈1997.11.171997.11.17 UML 1.1UML 1.1被被被被OMG OMG 接纳为标准接纳
4、为标准接纳为标准接纳为标准OOPSLA95 Unified Method 0.8 Booch93 OMT-21996.6和1996.10 UML 0.9&0.911997.9公布 UML 1.1 1997.1公布 UML 1.0合作伙伴意见 Booch91 OMT-1 其他方法 OOSEGrady Booch Jim Rumbaugh Ivar Jacobson第5页,本讲稿共84页-6-UML发展现状发展现状n目前通用的是目前通用的是UML 1.x版版n主要主要UML 1.3、UML 1.4n2003年年3月正式发布月正式发布UML 1.5nUML 2.0n2003年年6月月OMG采纳了采纳
5、了UML 2.0的的Superstructure的提案的提案n正式文本尚未发布正式文本尚未发布n第6页,本讲稿共84页-7-UML 9种图种图n类类 图:类以及类之间的相互关系图:类以及类之间的相互关系n对象图:对象以及对象之间相互关系对象图:对象以及对象之间相互关系n构件图:构件及其相互依赖关系构件图:构件及其相互依赖关系n部署图:构件在各节点上的部署部署图:构件在各节点上的部署n顺序图:强调时间顺序的交互图顺序图:强调时间顺序的交互图n协作图:强调对象协作的交互图协作图:强调对象协作的交互图n状态图:类所经历的各种状态状态图:类所经历的各种状态n活动图:对工作流建模活动图:对工作流建模n用
6、例图:需求捕获,测试依据用例图:需求捕获,测试依据结结构构行行为为用例图用例图用例图用例图静态图静态图静态图静态图实现图实现图实现图实现图交互图交互图交互图交互图行为图行为图行为图行为图第7页,本讲稿共84页-8-UML建模工具建模工具nIBM Rational Rose 2003nBorland Together 7.0nMicrosoft Visio 2003nSybase PowerDesigner 10nNetBeans UMLnn“非程序员杂志非程序员杂志”第第26到到30期期UML工具一览,工具一览,列出了约列出了约129个个UML开发工具开发工具第8页,本讲稿共84页-9-内容安
7、排内容安排nUML概述概述n理解需求理解需求n需求,难在何处?需求,难在何处?n以用例为中心组织需求以用例为中心组织需求n基于用例的需求分析过程基于用例的需求分析过程第9页,本讲稿共84页认识问题认识问题认识问题认识问题分析问题分析问题分析问题分析问题解决问题解决问题解决问题解决问题最终用户最终用户最终用户最终用户(提出问题提出问题提出问题提出问题)开发团队开发团队开发团队开发团队(解决问题解决问题解决问题解决问题)以以以以用户用户用户用户的身份站在的身份站在的身份站在的身份站在用户用户用户用户的角的角的角的角度认识问题度认识问题度认识问题度认识问题获取需求获取需求获取需求获取需求用例建模技术
8、用例建模技术用例建模技术用例建模技术以以以以开发者开发者开发者开发者的身份站在的身份站在的身份站在的身份站在用户用户用户用户的角的角的角的角度分析问题度分析问题度分析问题度分析问题分析需求分析需求分析需求分析需求用例分析技术用例分析技术用例分析技术用例分析技术以以以以开发者开发者开发者开发者的身份站在的身份站在的身份站在的身份站在开发团开发团开发团开发团队队队队的角度分析问题的角度分析问题的角度分析问题的角度分析问题解决需求解决需求解决需求解决需求面向对象设计面向对象设计面向对象设计面向对象设计第10页,本讲稿共84页-11-需求需求建造建造“正确正确”的系统的系统n需求:系统必须满足的条件或
9、具备的能需求:系统必须满足的条件或具备的能力力n软件质量准则软件质量准则“FURPS”n功能性(功能性(Functionality)n可用性(可用性(Usability)n可靠性(可靠性(Reliability)n性能(性能(Performance)n可支持性(可支持性(Supportability)非功能性需求非功能性需求非功能性需求非功能性需求第11页,本讲稿共84页-12-内容安排内容安排nUML概述概述n理解需求理解需求n需求,难在何处?需求,难在何处?n以用例为中心组织需求以用例为中心组织需求n基于用例的需求分析过程基于用例的需求分析过程第12页,本讲稿共84页-13-需求:饮料问题
10、需求:饮料问题n我要一瓶饮料我要一瓶饮料n差不多,但我要无糖饮料差不多,但我要无糖饮料n很好,不过我要绿茶的很好,不过我要绿茶的n啊,没有大瓶的啊,没有大瓶的大瓶的无糖绿茶饮料大瓶的无糖绿茶饮料难难捕捕获获,易易变变!第13页,本讲稿共84页-14-需求:如此脆弱需求:如此脆弱客户/用户的要求/想法/期望软件设计软件产品分析和设计编码和测试验 收没价值的软件需求补文档第14页,本讲稿共84页-15-需求:也需要开发需求:也需要开发客户/用户的要求/想法/期望软件设计软件产品开发编码和测试验收有价值的软件需求分析和设计第15页,本讲稿共84页-16-获取好的需求获取好的需求n需求收集包括五个关键
11、步骤需求收集包括五个关键步骤n找到可以帮助你理解这个系统的人找到可以帮助你理解这个系统的人n倾听这些相关人员的描述,并从他们的角度倾听这些相关人员的描述,并从他们的角度来理解系统来理解系统n利用一个容易理解的模型来描述用户希望如利用一个容易理解的模型来描述用户希望如何使用这个系统以及为他们提供的什么价值何使用这个系统以及为他们提供的什么价值n详细地描述系统和客户以及系统和外部系统详细地描述系统和客户以及系统和外部系统之间的交互之间的交互n重构(重构(refactor)这个详细描述以保证它是)这个详细描述以保证它是可读且易懂的可读且易懂的第16页,本讲稿共84页-17-内容安排内容安排nUML概
12、述概述n理解需求理解需求n需求,难在何处?需求,难在何处?n以用例为中心组织需求以用例为中心组织需求n基于用例的需求分析过程基于用例的需求分析过程第17页,本讲稿共84页-18-需求问题:对策需求问题:对策难捕获难捕获难捕获难捕获易变易变易变易变从用户视角看问题从用户视角看问题从用户视角看问题从用户视角看问题合理的结构合理的结构合理的结构合理的结构用例用例用例用例第18页,本讲稿共84页-19-以用例为中心组织需求以用例为中心组织需求用例用例用例用例可用性可用性可用性可用性可靠性可靠性可靠性可靠性网络协议网络协议网络协议网络协议业务规则业务规则业务规则业务规则硬件接口硬件接口硬件接口硬件接口界
13、面约束界面约束界面约束界面约束性能性能性能性能第19页,本讲稿共84页-20-内容安排内容安排nUML概述概述n理解需求理解需求n需求,难在何处?需求,难在何处?n以用例为中心组织需求以用例为中心组织需求n基于用例的需求分析过程基于用例的需求分析过程第20页,本讲稿共84页-21-基于用例的需求分析过程基于用例的需求分析过程n1.获取原始需求获取原始需求n2.开发一个可以理解的需求开发一个可以理解的需求n2.1 识别参与者识别参与者n2.2 识别用例识别用例n2.3 构建用例图构建用例图n3 详细、完整地描述需求详细、完整地描述需求n进行用例阐述进行用例阐述n4 重构用例模型重构用例模型n4.
14、1 识别用例间的关系识别用例间的关系n4.2 对用例进行组织和分包对用例进行组织和分包第21页,本讲稿共84页-22-基于用例的需求分析过程基于用例的需求分析过程n n1.1.获取原始需求获取原始需求获取原始需求获取原始需求n2.开发一个可以理解的需求开发一个可以理解的需求n2.1 识别参与者识别参与者n2.2 识别用例识别用例n2.3 构建用例图构建用例图n3.详细、完整地描述需求详细、完整地描述需求n进行用例阐述进行用例阐述n4.重构用例模型重构用例模型n4.1 识别用例间的关系识别用例间的关系n4.2 对用例进行组织和分包对用例进行组织和分包第22页,本讲稿共84页-23-获取需求的技巧
15、获取需求的技巧技巧技巧描述描述实地观察实地观察直接观察个人工作的情况,以发现现存的实践方式和问题访谈访谈从个人处收集特定信息特定群体特定群体调查调查对一组人员进行调查,以便了解工作态度和共同看法问卷调查问卷调查收集详细数据和统计意义上比较重要的数据用户指导用户指导让最终用户告诉你,他们是如何操作系统的原型制作原型制作模拟一个无法直接测试的系统统计版本统计版本使用具有统计功能的应用程序来记录用户完成任务的方式行业知识行业知识收集和整理行业中的法律、法规,用户所使用的规章制度、操作规程等内容第23页,本讲稿共84页-24-获取需求:考勤卡应用程序获取需求:考勤卡应用程序初次访谈记录初次访谈记录初次
16、访谈记录初次访谈记录开发者开发者:谁将使用这个应用程序?客客 户户:所有用它来记录可记帐以及不可记帐的工时的雇员开发者开发者:现在考勤卡应用程序是什么样的?客客 户户:每半个月就用一个Excel表格来记录。每个雇员都将通过他的表格填好,然后用电子邮件发给我。这个表格相当标准:纵向是收费项目代码,横向是日期。雇员可以在每个条目上填写说明。开发者开发者:这个收费项目代码可以从什么地方得到?开发者开发者:谁来管理收费项目代码?客客 户户:嗯,必要的时候由我来添加这个代码。而每个经理总会告诉他的下属应该填写什么。第24页,本讲稿共84页-25-基于用例的需求分析过程基于用例的需求分析过程n1.获取原始
17、需求获取原始需求n n2.2.开发一个可以理解的需求开发一个可以理解的需求开发一个可以理解的需求开发一个可以理解的需求n2.1 识别参与者识别参与者n2.2 识别用例识别用例n2.3 构建用例图:确定参与者和用例之间的关系构建用例图:确定参与者和用例之间的关系n3.详细、完整地描述需求详细、完整地描述需求n进行用例阐述进行用例阐述n4.重构用例模型重构用例模型n4.1 识别用例间的关系识别用例间的关系n4.2 对用例进行组织和分包对用例进行组织和分包第25页,本讲稿共84页-26-相关术语相关术语场景场景场景场景:是用来描述用户和系统之间交互的顺序的步骤:是用来描述用户和系统之间交互的顺序的步
18、骤用例用例用例用例:是为了达到某一用户目标而组合在一起的一组场景:是为了达到某一用户目标而组合在一起的一组场景用例图用例图用例图用例图:用来显示在系统(或其它实体)内的用例与系统参与:用来显示在系统(或其它实体)内的用例与系统参与者之间的关系者之间的关系主要使用场合:需求获取、定义、分析主要使用场合:需求获取、定义、分析主要使用场合:需求获取、定义、分析主要使用场合:需求获取、定义、分析用例模型用例模型用例模型用例模型:是系统既定功能及系统环境的模型,并作为客户和开发:是系统既定功能及系统环境的模型,并作为客户和开发人员之间的契约。用例模型用作分析、设计和测试活动的基本输入。人员之间的契约。用
19、例模型用作分析、设计和测试活动的基本输入。第26页,本讲稿共84页-27-用例图元素用例图元素参与者用例系统边界直接关联扩展包含泛化注释体注释连接关联第27页,本讲稿共84页-28-2.1 识别参与者识别参与者n参与者,参与者,Actorn关键词:关键词:边界边界n参与者:在参与者:在系统之外系统之外,透过,透过系统边界系统边界与系统与系统进行进行有意义交互有意义交互的的任何事物任何事物第28页,本讲稿共84页-29-参与者要点参与者要点n系统外系统外n参与者代表在系统边界之外的真实事物,并参与者代表在系统边界之外的真实事物,并不是系统的成分不是系统的成分n系统边界系统边界n参与者透过系统边界
20、直接与系统交互,参与参与者透过系统边界直接与系统交互,参与者的确定代表系统边界的确定者的确定代表系统边界的确定n有意义的交互有意义的交互n任何事物任何事物n人、外系统、外部因素、时间人、外系统、外部因素、时间第29页,本讲稿共84页-30-识别参与者:考勤卡系统识别参与者:考勤卡系统开发者开发者:谁将使用这个应用程序?客客 户户:所有用它来记录可记帐以及不可记帐的工时的雇员雇员雇员雇员开发者开发者:现在考勤卡应用程序是什么样的?客客 户户:每半个月就用一个Excel表格来记录。每个雇员都将通过他的表格填好,然后用电子邮件发给我。这个表格相当标准:纵向是收费项目代码,横向是日期。雇员可以在每个条
21、目上填写说明。开发者开发者:这个收费项目代码可以从什么地方得到?开发者开发者:谁来管理收费项目代码?客客 户户:嗯,必要的时候由我(业务经理)(业务经理)(业务经理)(业务经理)来添加这个代码。而每个经理总会告诉他的下属应该填写什么。第30页,本讲稿共84页-31-2.2 识别用例识别用例n关键词:价值关键词:价值n定义定义n用例实例是用例实例是系统执行系统执行的的一系列动作一系列动作,这些动,这些动作将生成特定作将生成特定参与者可观测参与者可观测的的结果值结果值n一个用例定义一个用例定义一组用例实例一组用例实例n简洁:参与者简洁:参与者使用系统使用系统达到目标达到目标第31页,本讲稿共84页
22、-32-识别用例:考勤卡系统识别用例:考勤卡系统开发者开发者:谁将使用这个应用程序?客客 户户:所有用它来记录可记帐以及不可记帐的工时记录可记帐以及不可记帐的工时记录可记帐以及不可记帐的工时记录可记帐以及不可记帐的工时的雇员雇员雇员雇员开发者开发者:现在考勤卡应用程序是什么样的?客客 户户:每半个月就用一个Excel表格来记录。每个雇员都将通过他的表格填好,然后用电子邮件发给我。这个表格相当标准:纵向是收费项目代码,横向是日期。雇员可以在每个条目上填写说明。开发者开发者:这个收费项目代码可以从什么地方得到?开发者开发者:谁来管理收费项目代码管理收费项目代码管理收费项目代码管理收费项目代码?客客
23、 户户:嗯,必要的时候由我(业务经理)(业务经理)(业务经理)(业务经理)来添加这个代码。而每个经理总会告诉他的下属应该填写什么。第32页,本讲稿共84页-33-用例要点用例要点n可观测可观测用例止于系统边界用例止于系统边界n结果值结果值用例是有意义的目标用例是有意义的目标n系统执行系统执行结果值由系统生成结果值由系统生成n由参与者观测由参与者观测业务语言、用户观点业务语言、用户观点n一组用例实例一组用例实例用例的粒度用例的粒度第33页,本讲稿共84页-34-要点:用例止于系统边界要点:用例止于系统边界描述交互,而不是内在的系统活动描述交互,而不是内在的系统活动描述交互,而不是内在的系统活动描
24、述交互,而不是内在的系统活动第34页,本讲稿共84页-35-要点:有要点:有意义意义的目标的目标第35页,本讲稿共84页-36-要点:结果值由系统生成要点:结果值由系统生成系统需要处理的,由系统生成系统需要处理的,由系统生成系统需要处理的,由系统生成系统需要处理的,由系统生成第36页,本讲稿共84页-37-要点:业务语言而非技术语言要点:业务语言而非技术语言n用户词汇,而不是技术词汇用户词汇,而不是技术词汇n如:发票,商品,洗衣机如:发票,商品,洗衣机n而不是:记录,字段,而不是:记录,字段,COM,C+等等第37页,本讲稿共84页-38-要点:用户观点而非系统观点要点:用户观点而非系统观点用
25、户观点用户观点用户观点用户观点系统观点系统观点系统观点系统观点第38页,本讲稿共84页-39-用例用例 VS.功能功能n呼叫某人呼叫某人n接听电话接听电话n发送短信发送短信n记住电话号码记住电话号码nn传输传输/接收接收n电源电源/基站基站n输入输出(显示、键盘)输入输出(显示、键盘)n电话簿管理电话簿管理n用户观点用户观点用户观点用户观点系统观点系统观点系统观点系统观点第39页,本讲稿共84页-40-用例的命名用例的命名n执行者视角:执行者视角:n一个简单、描述性的名称,一般为带有动作性的词。一个简单、描述性的名称,一般为带有动作性的词。第40页,本讲稿共84页-41-要点:用例粒度要点:用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 需求 分析 用例图 精品 文稿
限制150内