精化设计模型精品课件_第1页
精化设计模型精品课件_第2页
精化设计模型精品课件_第3页
精化设计模型精品课件_第4页
精化设计模型精品课件_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精化设计模型第1页,共27页,2022年,5月20日,8点46分,星期二10.4 精 化 设 计 模 型 任 务 以顶层架构图为基础,精化目标软件系统的体系结构 精化类之间的关系 精化类的属性和操作 针对具有明显状态转换特征的类,设计状态图 针对比较复杂的类方法,设计活动图第2页,共27页,2022年,5月20日,8点46分,星期二10.4.1 精 化 体 系 结 构 目 的 寻找理想的包划分方案,使得包中直接包含的类的数量适中,包间的耦合度较低 耦合度:对软件结构中模块间的关联程度的一种度量 模块之间耦合程度:继承关系 高构成关系 聚合关系关联关系依赖关系 低第3页,共27页,2022年,5

2、月20日,8点46分,星期二10.4.2 精 化 体 系 结 构 弱化包间耦合的方法: 对包进行拆分 10.4.1 精 化 体 系 结 构第4页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构 调整类的摆放位置,从一个包移植到另一个更合适的包 注 意 事 项 避免包间的循环依赖关系 在层次结构中,位于较低层次的包不应依赖于较高层次的包 10.4.1 精 化 体 系 结 构第5页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构 注 意 事 项 在层次结构中,较高层次的包可以依赖于较低层次的包,尽量相邻 如果针对某

3、些子系统专门划分了接口包和实现包,那么其他与该子系统相关的包只能依赖于接口包,不能依赖于实现包 完全避免包间的依赖关系,既无必要,也不合理10.4.1 精 化 体 系 结 构第6页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构 任 务: 研究类之间的连接关系 根据这些连接的而语义强度,将它们精确地判定为UML的依赖、关联、聚合或继承关系之一10.4.2 精 化 类 之 间 的 关 系第7页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构 任 务: 确定连接的方向及参与连接的类的对象之间的数量对应关系根据软件重

4、用的要求及软件结构简洁化、清晰化的要求,优化类之间的关系10.4.2 精 化 类 之 间 的 关 系第8页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.2 精 化 类 之 间 的 关 系(1) 允许修改重用类第9页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.2 精 化 类 之 间 的 关 系(2) 不允许修改,需要“委托”第10页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.2 精 化 类 之 间 的 关 系利用继承关系精化设计模型

5、第11页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.2 精 化 类 之 间 的 关 系根据“强内聚、松耦合”原则优化类之间的结构关系合并相互通信频繁的类第12页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.2 精 化 类 之 间 的 关 系根据“强内聚、松耦合”原则优化类之间的结构关系分拆规模过大的类第13页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.2 精 化 类 之 间 的 关 系根据“强内聚、松耦合”原则优化类之间的结构关系

6、定义嵌入类第14页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.3 精 化 类 的 属 性 和 操 作类:主要包括属性和操作两部分定义属性:名称、类型、初始值、取值范围及属性说明(后三项可选)定义操作:名称、参数表(参数名称和类型)、返回类型和功能描述属性和操作的作用范围有以下三种:publicprotectedprivate对软件系统中的所有类均可见仅对本类及其子类可见对本类可见第15页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.3 精 化 类 的 属 性 和 操 作类的属性和操作可

7、区分为类级和实例级:类级:第16页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.3 精 化 类 的 属 性 和 操 作类的属性和操作可区分为类级和实例级:实例级:第17页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构第18页,共27页,2022年,5月20日,8点46分,星期二10.4.4 设 计 状 态 图 概 念 用来描述一个特定类的对象的所有可能状态以及因事件而引起的状态转移,包含状态名和活动(activity)两部分 活 动entry活动exit活动do活动onevent活动一旦对象进入该

8、状态,相应活动即被触发执行一旦对象离开该状态,相应活动即被触发执行当对象位于该状态,执行相应的活动,对象状态不变当对象位于该状态并且接收某一事件后,执行相应的事件响应活动第19页,共27页,2022年,5月20日,8点46分,星期二10.4.4 设 计 状 态 图 转 移 边 附 加 信 息 事件名(事件参数表)条件表达式/动作事件目标 . 事件名(事件参数表)引发对象状态迁移的触发事件表示此转移边所代表的状态迁移的发生条件表示对象在进行状态迁移的同时还将执行的处理功能表示对象在进行状态迁移的同时还可以向其他对象发送的事件一张状态图可以包含一个初态和一个到多个终态初态: 终态:第20页,共27

9、页,2022年,5月20日,8点46分,星期二10.4.4 设 计 状 态 图 Initializationdo/initializecourseadd student/set studentCount=0Openentry/register student&increase studentCountcancelcancelstudentcount=50 or currentdate=deadlinestudentcount50 /add studentcanceldcloseddo/notify registers studentsdo/finalize course offering终态终

10、态初态选课管理系统UML状态图第21页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.4 设 计 状 态 图状态图适于表示跨越多个用例的单个对象的行为监测器的状态图:第22页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.5 设 计 活 动 图 活动图适于表示用例中的事件流和过程,也可以用来表示复杂的算法以及并发处理进程 在面向对象的设计过程中,是否需要对所有类的对象都绘制状态图和活动图? “否”第23页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.5 设 计 活 动 图 用户命令处理类中的procCmd方法的活动图:第24页,共27页,2022年,5月20日,8点46分,星期二10.4.2 精 化 体 系 结 构10.4.5 设 计 活 动 图 监测器类中的analyseSensorData方法的活动图:第25页,共27页,2022年,5月

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论