欢迎来到天天文库
浏览记录
ID:51620676
大小:2.66 MB
页数:60页
时间:2020-03-26
《UML用例图及类图用法.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、UML实用技术V1.0软件开发过程详解目前的现实是什么?——业务建模在这个现实下,开发系统是为了达到什么目标?——愿景为了达到目标,系统应对外提供什么样的功能和性能?——需求为了提供这些功能,系统内部应该有什么样的核心业务机制?——分析为了满足性能,系统的核心机制如何在选定的架构上实现?——设计找到问题解决问题UML三个主要作用(1)使用可视化建模来获取并表现商业逻辑和对象使用可视化建模来分析和设计计算机应用程序理由一:UML是客户、系统分析员和程序员之间的“桥梁”用例图活动图状态图时序图对象图部署图……UML三个主要作用(2)理由二:UM
2、L从客户的角度将复杂的系统整理清楚UML三个主要作用(3)software可移植技术交互性能全面容量稳定性错误处理容错性功能需求成本兼容性理由三:UML能使越来越复杂的软件系统架构更加合理和健壮系统模型可由“4+1”视图展现逻辑视图进程视图用例视图系统功能分析设计结构系统并发工作情况实现视图实现模块和代码间的关系部署视图系统物理拓扑架构模型可由9个图来展现UseCaseDiagramUseCaseDiagram用例图ScenarioDiagramScenarioDiagram协作图StateDiagramStateDiagram组件图Com
3、ponentDiagramComponentDiagram部署图StateDiagramStateDiagram对象图ScenarioDiagramScenarioDiagram状态图UseCaseDiagramUseCaseDiagram时序图StateDiagramStateDiagram类图活动图模型墨绿色表示动态图粉红色表示静态图(可把用例图单列出来)功能静态结构物理架构动态行为UML9种图用例图:业务建模、需求、测试类图:业务建模、分析、设计对象图:业务建模、分析、设计组件图:设计部署图:设计顺序图:业务建模、分析、设计协作图:业
4、务建模、分析、设计状态图:需求、分析、设计活动图:业务建模、设计结构行为敏捷建模原则:需要时再添加可互换可互换主要步骤识别执行者——执行者(Actor)在系统之外,透过系统边界与系统进行有意义交互的任何事物。识别执行者执行者要点:系统外——必须和它交互系统边界——直接与系统交互有意义的交互——属于目标系统的责任任何事物——人、外系统、外部因素、时间识别执行者思路:谁使用了系统的主要功能?谁改变了系统的主要数据?谁从系统获取信息?谁需要系统的支持以完成日常工作任务?谁负责维护、管理并保持系统正常运行?系统需要应付(处理)哪些硬件设备?系统需要
5、和哪些外部系统交互?谁(或什么)对系统运行产生的结果感兴趣?有没有自动发生的事件?识别执行者责任类似或重叠——抽象出执行者识别用例用例的基本定义:用例实例是在系统中执行的一系列动作,这些动作将生成特定执行者可见的价值结果。一个用例定义一组用例实例。——IvarJacobson(RUP)通俗地讲:执行者通过系统达到某个目标步骤目标路径识别用例用例要点:价值结果→有意义的目标系统执行→价值结果由系统生成执行者可见→业务语言,用户观点一组用例实例→用例的粒度识别用例有意义的目标:识别用例用户观点而非系统观点:用户观点系统观点识别用例用例命名:执行
6、者视角动词(+宾语)状语定语识别用例用例的粒度(3):四轮马车任何业务归根到底都可以看作CURD,但光CURD能为Actor提供价值吗?CRUD是Create(创建)、Read(读取)、Update(更新)和Delete(删除)缩写警惕CURD泛滥!识别用例用例的粒度(3):四轮马车误区多个用例会操作同一项数据识别用例用例的粒度(6):灵活处理CURD也可以把包含复杂交互的路径独立出去形成用例识别用例执行者使用这个系统达到什么目标?语法测试:【执行者】使用系统来【用例】识别用例讨论(1):登录怎么处理?识别用例讨论(2):几个登录?或用例文
7、档:更进一步的精度用例图可以作用例文档的总图进一步的精度:有层次的文档文档中每一句话都有其价值书写用例文档——用例的内容用例编号:用例名执行者前置条件后置条件涉众利益基本路径1……XXXX2……XXXX3……XXXX扩展2a.……XXXX2a1.……XXXX字段列表业务规则非功能需求设计约束待解决问题书写用例文档——涉众利益利益的冲突银行的用户的法律的谁的?书写用例文档——路径交互步骤的描述只写“可观测的”使用主动语句句子必须以执行者或系统作为主语每一句都要朝目标迈进分支和循环不要涉及界面细节书写用例文档——字段列表+→数据序列[]→可选项
8、{}*→多个{
9、
10、
11、}→可能取值A=B→把B的结构赋给A可以用自然语言,也可以用表达式书写用例文档——字段列表注册信息=公司名+联系人+电话+{联系地址}*联系地址=州+城市+街
此文档下载收益归作者所有