基于UML 20掌握面向对象的分析和设计2

上传人:飞*** 文档编号:52271108 上传时间:2018-08-19 格式:PPT 页数:70 大小:924KB
返回 下载 相关 举报
基于UML 20掌握面向对象的分析和设计2_第1页
第1页 / 共70页
基于UML 20掌握面向对象的分析和设计2_第2页
第2页 / 共70页
基于UML 20掌握面向对象的分析和设计2_第3页
第3页 / 共70页
基于UML 20掌握面向对象的分析和设计2_第4页
第4页 / 共70页
基于UML 20掌握面向对象的分析和设计2_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《基于UML 20掌握面向对象的分析和设计2》由会员分享,可在线阅读,更多相关《基于UML 20掌握面向对象的分析和设计2(70页珍藏版)》请在金锄头文库上搜索。

1、IBM Software GroupMastering Object-Oriented Analysis and Design with UML 2.0分析设计主讲人:姜志辉2姜志辉作品内容提要定义初始架构定义关键抽象创建用例实现1 12 23 323姜志辉作品内容提要定义初始架构定义关键抽象创建用例实现1 12334姜志辉作品定义初始架构4定义初始架构工作 流的明细的目的是 ,借鉴现有的参考 架构或架构框架, 建立系统架构的最 初草案。 4架构草案包括: 4系统的整体结构 4关键抽明 4分析机制Early ElaborationIterationInceptionIteration (Opt

2、ional)Define a Candidate ArchitecturePerform Architectural SynthesisAnalyze BehaviorRefine the ArchitectureDesign ComponentsDesign the Database(Optional)Architecture AnalysisArchitect5姜志辉作品定义初始架构补充规约术语表用例模型架构分析设计模型参考架构部署模型前景软件架构文档软件开发计划6姜志辉作品定义初始架构4关键概念:用“4+1”模型描述架构Process ViewDeployment ViewLogical

3、 ViewUse-Case ViewImplementation ViewEnd-user FunctionalityProgrammersSoftware managementPerformance, scalability, throughputSystem integratorsSystem topology, delivery, installation, communicationSystem engineeringAnalysts/DesignersStructure7姜志辉作品定义初始架构4关键概念:什么是包? 4随着应用程序规模和复杂度的增加,需要在更高层次对它们 进行组织。类

4、对于小型应用程序来说是非常方便的组织单元 ,但是对于大型应用程序来说,如何仅仅使用类作为惟一的 组织单元,就会显得粒度过细。因此,就需要比类“大”的“东 西”来辅助大型应用程序的组织。这个“东西”就是包。 4Robert C.MartinUniversity Artifacts 8姜志辉作品定义初始架构4关键概念:包的关系 4如果包被另一个包引用,那么它们的关系为依赖。4依赖暗示着: 4当Supplier Package发生改变时,势必会影响到Client Package 4Client Package不可能是独立的,因为它依赖于Supplier PackageClient PackageSu

5、pplier Package依赖关系9姜志辉作品定义初始架构4关键概念:包的设计原则4粒度:包的内聚性原则4包的耦合性原则4自顶向下设计4稳定依赖原则4稳定抽象原则10姜志辉作品定义初始架构4关键概念:包的设计原则-包的内聚性原则4前题:至少已经存在一些类,并且它们之间的相互关系也已 经确定,这些原则是根据“自底向上”的观点对类进行划分。4重用发布等价原则:重用的粒度就是发布的粒度4共同重用原则:一个包中的所有类应该是共同重用的。如果 重用了包中的一个类。那么就要重用包中的所有类。4共同封闭原则:包中的所有类对于同一类性质的变化应该是 共同封闭的。一个变化若对一个包产生影响,则将对该包中 的所

6、有类产生影响,则将对该包中的所有类产生影响,而对 于其他的包不造成任何影响。11姜志辉作品定义初始架构4关键概念:包的设计原则-包 的耦合性原则4无环依赖原则:在包的依赖 关系图中不允许存在环。( 看谁走的更晚)4解除依赖环:4采用抽象接口的方式4采用提取新包的方式CABXAB12姜志辉作品定义初始架构4关键概念:软件开发的原则4软件开发的原则 4一个中心 4 开放-封闭原则 4两个基本点 高内聚 低耦合 4四项基本原则 4 Liskov替换原则 4 依赖倒置原则 4 接口隔离原则 4 单一职责原则13姜志辉作品定义初始架构4关键概念:软件开发的原则4以古语看设计原则 4太玄:“知固而不知革,

7、物失其则;知革而不知固,物失 其均。” 4墨子.小取:“白马,马也;乘白马,乘马也。骊马,马也; 乘骊马,乘马也。娣,美人也,爱娣,非爱美人也盗,人 也;恶盗,非恶人也。” 4墨子.小取:“爱人,待周爱人而后为爱人。” 4老子:“是以圣人之治,虚其心,实其腹,弱其志,常 使民无知无欲。” 4老子:“小国寡民 邻国相望,鸡犬之声相闻,民至 老死,不相往来。”14姜志辉作品定义初始框架4关键概念:什么是模式?4模式便是那拳法、掌法、脚法、剑法4模式的构成:4 语境:问题出现的场景4 问题:在那个语境中出现的再现问题4 解决方案:已被证实的问题的解决方案15姜志辉作品定义初始架构4关键概念:模式的应

8、用4用例模式4架构模式4分析模式4设计模式416姜志辉作品定义初始架构4关键概念:什么是架构模式4架构模式表现软件系统的基本结构化 组织图式。它提供一套预定义的子系 统,规定它们的职责,并包含用于组 织它们之间关系的规则和指南。4Layers4Model-view-controller (M-V-C)4Pipes and filters4Blackboard4ApplicationBusiness-SpecificMiddlewareSystem Software17姜志辉作品定义初始架构4关键概念:设计模式18姜志辉作品创建模式19姜志辉作品Simple Factory20姜志辉作品Fact

9、ory Method21姜志辉作品Singlegon22姜志辉作品结构模式23姜志辉作品Proxy24姜志辉作品Decorator25姜志辉作品行为模式26姜志辉作品Strategy 27姜志辉作品Command28姜志辉作品Observer29姜志辉作品模式 那三十招招式令狐冲都曾学过,但出剑和脚步方位,却无论如何连不在一起。那老者 道:“你迟疑甚么?嗯,三十招一气呵成,凭你眼下的修为,的确有些不易,你倒先 试演 一遍看。”他嗓音低沉,神情萧索,似是含有无限伤心,但语气之中自有一股威 严。令狐 冲心想:“便依言一试,却也无妨。”当即使一招“白虹贯日”,剑尖朝天 ,第二招“有 凤来仪”便使不下

10、去,不由得一呆。那老者道:“唉,蠢才,蠢才!无 怪你是岳不群的弟 子,拘泥不化,不知变通。剑术之道,讲究如行云流水,任意所至 。你使完那招白虹贯 日,剑尖向上,难道不会顺势拖下来吗?剑招中虽没这等姿 式,难道你不会别出心裁, 随手配合么?”这一言登时将令狐冲提醒,他长剑一勒, 自然而然的便使出“有凤来仪” ,不等剑招变老,已转“金雁横空”。长剑在头顶划 过,一勾一挑,轻轻巧巧的变为“截 手式”,转折之际,天衣无缝,心下甚是舒畅。 30姜志辉作品定义分析机制4什么是分析机制?架构师补充规约用例模型机制设备 数据库 技术“realized by client classes using”“resp

11、onsible for”“constrained by”功能性需求实施环境31姜志辉作品定义分析机制4架构机制的种类4分析机制4设计机制4执行机制32姜志辉作品定义分析机制4为什么使用分析机制Oh no! I found a group of classes that has persistent data. How am I supposed to design these things if I dont even know what database we are going to be using?That is why we have a persistence analysis m

12、echanism. We dont know enough yet, so we can bookmark it and come back to it later.33姜志辉作品定义分析机制4简单分析机制4留存 4分布式处理 4安全性 4进程间通信 4消息路由 4进程控制与同步 4交易事务管理 4信息交换 4信息冗余 4错误检测、处理和报告 4数据格式转换34姜志辉作品定义分析机制4描述分析机制4定义分析机制列表4定义类与分析机制的映射4识别分析机制的特性4模型协作ClassesParsingAuthenticationCommunicationPersistencyAnalysis Mec

13、hanismsFlightAircraftMissionScheduleRouteLoad35姜志辉作品定义分析机制安全遗留接口留存分布粒度 容量 时间模式 时延 同步 消息 协议用户 密码 权限36姜志辉作品定义分析机制名称描述 验证验证用户是否有权访问系统授权确认用户在请求某种类型的服 务时具有相应的权限 消息给系统的用户发送电子邮件留存存储系统的状态表示层请求处 理处理用户通过Web界面提出 的请求 系统参数管理处理外部参数37姜志辉作品内容提要定义关键抽象定义初始架构创建用例实现2 2133738姜志辉作品定义关键抽象4关键抽象,业务需求和软件需求中通常会揭示拟建系统必须 处理的核心概

14、念,这些概念同样将成为设计模型中的核心要 素。4关键抽象的来源4领域知识4用例模型4术语表4业务模型或者业务模型39姜志辉作品定义关键抽象4定义关键抽象4定义分析类4用类图描述类之间的关系4将分析类与分析机制相映射40姜志辉作品定义关键抽象4示例:“课程注册”系统的关键抽象StudentProfessorScheduleCourseCatalogCourseCourseOffering41姜志辉作品定义义关键键抽象4将“关键键抽象”与“分析机制”相映射安全留存分布处 理信息交 换 报销单是是是报销记 录是是是员工是经理是工资户 头是是是42姜志辉作品内容提要创建用例实现定义初始架构定义关键抽象

15、2 2124243姜志辉作品创创建用例实现实现类图用例协作图用例模型设计模型用例用例实现时序图44姜志辉作品创创建用例实现实现4用例实现实现 的价值值 4是从功能需求过渡到设计 方案的核心纽带 4实现 从围绕 需求的活动过 渡到围绕设计 的活动用例分析设计 (设计模型)需求 (用例模型)用例实现45姜志辉作品创创建用例实现实现4用例分析Early ElaborationIterationInceptionIteration (Optional)Define a Candidate ArchitecturePerform Architectural SynthesisAnalyze Behavi

16、orRefine the ArchitectureDesign ComponentsDesign the Database(Optional)Use-Case AnalysisDesigner46姜志辉作品创创建用例实现实现补充规约术语表用例分析项目开发计划用例实现分析模型用例模型分析类软件架构文档47姜志辉作品创创建用例实现实现4补补充用例描述 黑盒描述 灰盒描述48姜志辉作品创创建用例实现实现用例集分析类源代码执行件设计元素用例分析49姜志辉作品创创建用例实现实现4根据用例的描述,寻寻找分析类类50姜志辉作品创创建用例实现实现4什么是分析类类?系统边界用户操作系统信息系统信息系统边界51姜志辉作品创创建用例实现实现4什么是边边界类类?4系统和参与者进行沟通的部分Actor 1Actor 252姜志辉作品创创建用例实现实现4什么是边边界类类? 4

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号