UML建模语言及工具-面向对象的设计.ppt

UML建模语言及工具-面向对象的设计.ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML建模语言及工具 面向对象的设计 Object-Oriented Design 学习线路图 从需求到分析 从分析到设计 内容安排 从分析到设计 体系结构设计 用例设计 子系统设计 类设计 数据库设计 分析 VS. 设计 分析:做什么 Analysis emphasized the business problem 设计:怎么做 Design focuses on the technical or implementation concerns of the system 设计模型 VS. 分析模型-1 设计模型 VS. 分析模型-2 需要保留分析模型吗? 易于理解:分析模型提供系统的“大场景”,它可能只包括设计模型中的1%到10%的类 价值: 介绍新人加入项目 在交付几个月或几年后重新理解系统 理解系统是怎么满足客户需求以及提供可跟踪性 计划维护和增强 理解系统的逻辑架构 外包系统的构造 …… 设计模型 VS. 分析模型-3 需要分别维护分析模型和设计模型的系统 庞大的 复杂的 战略性的 受经常变更所支配的 期望长期运行的 外包的 软件设计的定义 更精确定义 软件设计(的结果)必须 描述系统的体系结构(architecture) 系统如何分解(decompose)和组织(organize)构件 描述构件间的接口(interface) 描述构件(component):必须详细到可进一步构造的程度 ISO/IEC 12207 按ISO/IEC 12207软件开发生存周期过程,软件设计由两个活动组成 软件体系结构设计-software architectural design 顶层设计(top-level design) 描述系统顶层的结构和组织 标识各个构件 软件详细设计-software detailed design 充分描述每个构件使之可以编码 软件设计的作用 软件设计在软件系统开发过程中扮演重要角色 开发者作出各种模型,形成实现时解决方案的蓝图 对这些模型进行分析和评价,以判定是否满足各种需求 便于考察备选方案和可行的替换措施 设计模型也可用于规划后续的开发活动 是编码和测试的输入 RUP中的分析和设计工作流 内容安排 从分析到设计 体系结构设计 用例设计 子系统设计 类设计 数据库设计 为什么需要体系结构 我们所定义的类或者对象其关注的重点是定义了一个系统的核心概念和行为 一个系统是由多个子系统组成,每个子系统中的领域对象都不只一个 这些类如何组织、分布并协同完成所需的功能? 因此系统应该要有一个总体的体系结构,它定义了各子系统之间的通信和耦合 体系结构包图(architecture package diagram) 软件体系结构定义 软件体系结构描述软件系统的子系统和构件及其相互关系 UML Reference Manual:体系结构是一个系统的组织结构,包括系统分解成的各个部分、它们的连接性、交互机制和通知系统设计的向导规则 软件体系结构风格 体系结构风格style 提供软件系统高层组织的元模型 通用结构:分层、管道过滤器、黑板 分布式系统:客户-服务器、三层、中介 交互式系统:MVC、表示-抽象-控制 可适配系统:微内核、反映式 其它:批处理、解释器、进程控制、基于规则 UML和体系结构 体系结构的全部内容就是复杂性管理:将解决方案划分成多个小的组成部分,再将这些小的部分结合起来,构成更大的、更加一致的结构 包(package) 包依赖关系图(package dependency diagram) 子系统(subsystem) 层(layer) 包-package 包是一种将模型元素分组的机制 包主要用于 组织模型元素 配置管理单元 分包的原则 职责相似:将一组职责相似、但以不同方式实现的类归为一组有意义的包;如java类库中的javax.swing.border 协作关系:包含了各种不同类型的类,它们之间通过相互协作实现一个意义重大的职责 包依赖关系 包之间存在着依赖关系 如果Client包依赖于Supplier包: Supplier包的改变将影响到Client包 Client包不能够独立的重用,因为它依赖于Supplier包 避免循环依赖 体系结构设计过程 1. 确立目标 2. 将类分组 3. 展示技术 4. 抽取子系统 5. 针对准则和目标对体系结构进行评估 1. 确立目标 一个好的体系结构其实是不断权衡、妥协、折衷的产物 可扩展性 可维护性 可靠性 可伸缩性 …… 2. 将类分组并评估各个类 将分析类划分成几个候选包,并对它们的内聚性进行评估 目标是使每个包具有清晰的且严格定义的目的和职责 结合体系结构模式,考虑分组方式 实体类 用户界面类 控制类 系统接口类 …… 描述包之间的耦合度:包依赖关系

文档评论(0)

189****0315 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档