




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
严悍yanhan 025 84315982 面向对象建模技术 UML2软件建模 2012年教学时间安排 第9周到16周 共48学时 3学分授课时间 周2第2大节 周4第4大节 40学时上机时间 8学时 第12 15周 周二 第3大节自主上机 8学时 具体时间由课代表与中心实验室商定 上机地点 中心实验室 计划第18周考试 目标 能掌握面向对象的基本概念和原理能读懂UML模型 包括UML2的各种图能分析需求建立UML2模型包括UML2主要的几种图 用例图 类图 序列图 状态图 活动图等手工建模或使用建模工具与他人交流 沟通与合作能把建模应用于软件工程正向工程 从模型到代码逆向工程 从代码到模型 主要内容 对象概念和原理统一建模语言UML需求建模结构建模行为建模体系结构建模建模实例 方法与途径 课堂 讲义 参考书 小练习 作业与上机练习阅读理解 课件 教材 参考书 充分利用网络资源理解与实践是掌握建模技术的基本方法讨论 质疑 寻求解答 软件建模竞赛2人自由组队 自由选题 分析设计建模演示 10分钟 提问 解答评价标准 选题 技术 效果选题 是否新颖 实用 还是重复老题目技术 建模技术是否掌握熟练 规范 正确 一致 完备效果 表述是否清晰 逻辑是否严密 是否易于理解 易于实现和测试提交模型文档 成绩评判 平时成绩占20 包括考勤 课题考勤与上机考勤练习 课后作业竞赛 双人合作建模 演示讲解闭卷笔试占80 选择题填空题建模与应用 建模工具 1 MicrosoftVisio2003附加UML2模板支持UML2建模 方便建立模型文档 与Office兼容 建模工具 2 PoseidonforUML6 0运行在JVM之上支持UML2建模支持正向工程 转换到代码 Java C 等 支持逆向功能 从Java代码到模型 支持Roundtrip工程 建模工具 3 StarUML5开源 仅支持Windows支持UML2建模支持正向工程 转换到代码 Java C C 支持逆向功能 从代码到模型 教材与参考资料 1 UML2软件建模 概念 规范与方法 严悍 刘冬梅 赵学龙 国防工业出版社 2009 2TheUnifiedModelingLanguageUserGuide 2ndEdition GradyBooch JamesRumbaughandIvarJacobsonUML用户指南 邵维忠等译 人民邮电出版社2006 6TheUnifiedModelingLanguageReferenceManual 2ndEdition JamesRumbaugh IvarJacobsonandGradyBoochUML参考手册 UMLChina译 机械工业出版社 2006 5UML基础 案例与应用JosephSchmuller李虎 赵龙刚译 人民邮电出版社 2004 8 参考资料 2 UML面向对象建模与设计 2ndEdition MichaelBlaha JamesRumbaugh车皓阳等译 人民邮电出版社2006 1面向对象设计UML实践 2ndEdition MarkPreistly 清华大学出版社 影印版 2004 6AgileModeling EffectivePracticesforeXtremeProgrammingandtheUnifiedProcessScottW Ambler敏捷建模 极限编程和统一过程的有效实践张嘉路等译 机械工业出版社 2003 4http www uml org官方网站 目录 1 概述 1 2 需求建模 用例和用例图 1 3 结构建模 类与接口建模 2 4 结构建模 关系建模 2 5 其它结构建模 包图 复合结构图 模板 1 6 行为建模 交互与交互图 2 7 行为建模 状态机与状态图 2 8 行为建模 活动与活动图 2 9 体系结构建模 构件与构件图 0 5 10 体系结构建模 制品 结点与部署图 0 5 第一章概述 对象概念 特征 基本原理为什么要建模 统一建模语言UML概述 1 1一个简单例子 1 一个简单例子 2 1 2对象与类 对象object是什么 具有明确定义的边界和唯一标识identity的一个实体entity 状态和行为的一个封装体 某个类的一个实例instance 类class是什么 一组具有相同属性 操作和语义的对象的抽象描述 也描述该类如何创建对象 对象基本原理 生命周期 每个对象都有创建 活动 操作 最后撤销的动态过程 抽象 从客观世界实体对象抽象为计算机软件表示的类 类是静态的 实例化 运行时刻由类创建对象 人与对象交互 对象之间交互 以完成计算任务 对象是动态的 1 3面向对象特征 封装性encapsulation继承性inheritance多态性polymorphism 封装性 类 数据变量集合 操作方法集合 类 public private protected 成员种类 数据和方法作为类成员封装在一起先区别对象 再区分成员 成员可见性 访问控制 通过接口访问核心数据 类 类成员 对象成员 静态成员还是非静态成员 继承性 继承性反映自然的分类结构 isA关系 子类继承超类的特征 继承性 子类可扩展新特征 且仅描述新特征 扩展 子类可限制继承而来的属性 或重新改写继承而来的行为每个子类对象都是其基类的一个对象 类型多态性 子类对象可替代超类对象 substitutability可替代性 多态性 类型多态性行为多态性overload 同一个类中多个同名操作具有不同形参 个数或类型 override 子类中以相同基调改写其超类中某个操作的实现 目的是在抽象层次上得到统一的规范性的设计 而具体情况又能得到特殊处理 1 4接口 有封装性就有接口interface 接口用来划分一个复杂系统的使用方和实现方之间的界线和约定 对象和类具有自己的接口接口是一种类型 描述使用规范接口有三个主要问题 接口如何定义和表示 接口如何实现 接口如何使用 1 5模型是什么 模型 model 是对现实的简化和抽象模型具有可视化 形象直观等特点模型也具有工程价值模型具有以下特点 模型是局部性的 以反映事物的不同侧面模型是抽象的 而且有不同的抽象级别建模的目的是特定的模型不同于原型 prototype 1 6建模的概念 建模 modeling 是什么 广义来说 建模是一项经检验并被广泛接受的工程技术 对于软件来说 建模是一种规范的设计技术为什么要建模 更好地理解正在开发或使用的日益复杂的系统 开发团队成员之间需要有效的交流和沟通 模型为什么容易理解 模型大多是基于图形的描述 人们在理解图形时能充分发挥抽象思维和形象思维能力 也能发挥逻辑思维 软件建模要达到什么目的 规范化设计 模型可规范设计复杂系统的结构和行为 设计是建模的一个主要目的 统一建模语言UML具有规范性 标准化的特点 可确定复杂系统的结构和行为 以完成设计 并验证设计的正确性 可视化表达 模型能以可视化图形 形象直观地反映系统的重要特征 图形是模型的主要表现形式 UML提供了丰富的 标准的图形元素 方便人们对复杂系统的理解 用图来进行设计构建 模型能给出构建系统的模板 模型是一种蓝图 描述了要构建系统的目标和途径 可指导大型复杂软件的开发 同时也具有一致性 规范性的作用 存档 模型是对设计决策的一种文档 模型是软件文档的一个重要组成部分 它是软件可维护性 可理解性的重要保障 建模的3要素 建模对象 被建模的事物是什么 每个模型或每张图都应明确被建模事物究竟是什么侧面 否则建模的目的就含糊不清 另一方面 对于同一个事物的同一个侧面 我们应避免在同一个抽象级别上重复建模 否则就容易产生不一致 建模规范 按什么规范来表示 模型中每个建模元素的概念和图符都应符合一定规范 否则模型就会有二义性 一个模型应该仅采用一种建模规范 本书中我们采用的建模规范是统一建模语言UML2 建模方法 如何建模 针对建模对象的特定侧面 采用合适的建模元素 在恰当的抽象级别上进行描述 需要一定的方法指导 也需要相当的实践积累 什么是面向对象建模OOM 建模对象 将被建模事物都看作对象 然后再描述其结构和行为 整个运行系统可看作一个对象 来考察其用例 usecase 所表现的功能 系统的结构可递归地分解为多个更小粒度的对象和类 分别加以描述 系统的行为可递归地分解为更详细的描述 建模规范 UML是一种国际化建模语言规范 其规范是一组元模型 本身就是一套面向对象的模型 规范具有强制性 不能随意画几张示意图就称之为对象建模 每一张图都有确切的种类 图中每一个结点 每一条边都具有明确的规范 围绕着结点和边的多种文字标注及位置都具有明确的定义 建模方法 面向对象建模是一种软件建模方法 即采用对象 类 接口等基本概念 采用封装性 继承性 多态性等进行建模 得到的模型被称为对象模型 软件工程与软件建模之间的关系 模型是当今软件工程的工具和成果物建模是软件过程的重要工作 好模型的标准是什么 目前并没有严格标准 规范性 符合面向对象原理 UML规范正确性 能正确反映客观规律 不歪曲事实一致性 模型各部分之间不矛盾 不冲突完备性 相对完整 全面 不遗漏重要内容 良好模型的表现形式 每一张图都应明确命名 一张图不宜太大 A4页面能打印为佳 布局合理 例如自上而下描述继承结构 自左向右或自上而下描述流的方向 构图简单直观 尽可能避免或减少线的交叉或穿越 在同一张图中应避免同一个元素多次出现 例如 一张类图中同一个类不应出现多次 尽可能多的注释和约束 拒绝建模的理由 目前模型可能还不能直接支持所有软件系统的自动构建 所以建模没什么用处 模型规范 方法和工具都太复杂 要花费太大精力去学习掌握 在实际软件工程中 模型与代码之间难以保持一致 或者代价太大 只有分析人员 设计人员需要建模 编程人员 测试人员不需要建模 我们的项目中采用非面向对象的编程语言 所以面向对象建模对我们无用 开发一个简单的系统用不着建模 统一建模语言UML 统一建模语言UML概述UML PPT 1 7UML2的图 6种结构图 7种行为图重点是类图 用例图 序列图 状态图 活动图 小结 1 识别对象 用图形描述对象的各个性质 以及对象之间的链 表示为UML的对象图 在对象图的基础上抽象概括出类 用类图描述类的名称 类的各个性质 以及类之间的关系 对象图和类图是UML模型中最常见的图形 按对象的概念来识别客观世界中的对象 边界 标识 实体 状态 行为 对象的状态表示为性质 行为表示为操作 性质和操作统称为对象的特征 一个对象是特定类的一个实例 类是一组对象的抽象描述 一个类相对于其对象是抽象的 而对象是具体的实例 一个类相对于其对象而言是静态的 而对象是动态的 计算机中实现的对象是对客观对象的一种模拟 小结 2 面向对象有三个基本特性 封装性 继承性和多态性 面向对象一般提供3个层面的封装 对象的封装 类的封装和包的封装 类的封装有三个视图 成员特征 可见性 静态与非静态特征 封装性的好处体现在信息隐藏和状态保持 继承性表示较一般的类 超类 与较特殊的类 子类 之间的关系 继承性反映自然的分类结构 子类继承了超类中定义的特征 而且子类可扩展新特征 且仅描述新特征 子类可共享其超类的特征 多态性是指某一论域中的一个元素可以有多种具体解释 继承性使得一个对象的所属类型具有多态性 在一个对象上调用一个操作也具有多态性 小结 3 接口也是一种类型 接口一种抽象的类型 不能直接实例化 接口通常仅说明一组相关的操作 而不说明这些操作的实现方法 这种实现接口的类被称为 实现类 一个接口可由多个类提供实现 而一个类可实现多个接口 接口的好处体现在接口的使用方 即客户程序 接口降低了客户程序与实现类之间的耦合 小结 4 模型是对现实的简化和抽象 模型具有局部性 抽象 特定目的的特点 建模是一项经检验并被广泛接受的工程技术 软件建模是一种规范的设计技术 软件建模希望能达到的目的 规范设计 可视化 构建 存档 建模有三个要素 建模对象 建模规范和建模方法 一个好模型应该具备 规范性 正确性 一致性和相对完备性 UML2提供了结构图和行为图两大类 共13种图 目前有多种建模工具供选择 练习 下面哪一个不是面向对象设计的基本特性 A 继承性B 封
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年小学英语能力测试试题及答案
- 2025年粮食安全与农业发展考试试题及答案
- 2025年国家安全法相关知识测试卷及答案
- 2025年公共英语等级考试试卷及答案
- 2025年供应链金融理论与实践考试试题及答案
- 物资管理计划管理制度
- 物资验收安全管理制度
- 特殊员工工时管理制度
- 特殊学生安全管理制度
- 特殊气体存放管理制度
- CDCC婴幼儿智能发育量表
- 了解中医心理学在临床中的应用
- 《人本主义学习理论》课件
- 彩钢板消防安全培训课件
- 2023年洪江市社区工作者招聘考试真题
- 基层领导干部的官德修养(zk-1)课件
- 责任与担当班会课件
- 烟草公司设施安装施工方案
- 解毒药及机理(动物药理学课件)
- 新修订《土地管理法》考试题库及答案
- 小老虎过生日
评论
0/150
提交评论