




已阅读5页,还剩65页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象建模技术 课程介绍 课时安排 35 10课堂纪律出勤率实验情况总成绩 笔试成绩 70 上课出勤 20 案例设计 10 自我介绍 林琳邮箱 jsdxll 电话公室 计算机大楼316 参考书 josephschmuller uml基础 案例与应用 第三版 人民邮电出版社谢星星等 uml基础与rose建模实用教程 清华大学出版社 为什么要进行建模 建筑工程 交流手段 为什么要进行建模 任何大规模的系统设计都是相当的困难的 从简单的单机桌面程序设计到多层的企业级系统 任何系统都可以分解为多个软件和硬件面对如此庞大复杂的结构将会出现几个问题 我们如何与客户沟通 了解客户对系统的需求 如何在开发人员之间共享设计 以确保各个部分能够无缝地协作 在开发复杂的系统时 如果缺乏相应的帮助工具 则很容易曲解或遗忘许多细节 建模的重要性 建模的使用是软件成功的一个基本因素 模型的实质 对现实的简化 建模的目标 便于展现系统 允许指定系统的结构或行为 提供构造系统的模板 记录决策 建模的误区 建模就是写文档一开始就能考虑到一切情况必须 冻结 需求设计不可更改必须使用case工具建模是在浪费时间所有的开发人员都知道如何建模 11 第1章uml与面向对象 uml 统一建模语言 unifiedmodelinglanguage 是软件和系统开发的标准建模语言 它主要以图形的方式对系统进行分析 设计 面向对象的软件开发方法是现在软件工程流域的主流方法 uml是在多种面向对象分析与设计方法相互融合的基础上形成的 是一种专用于系统建模的语言 12 本章学习要点 理解面向对象概念了解oo开发熟悉oo开发的优点掌握oo开发三层设计了解模型的作用了解面向对象的主要概念了解uml的发展掌握uml四层结构了解统一的含义理解uml视图和图的关系掌握uml模型元素内容理解uml通用机制了解uml建模在软件开发中应用 13 面向对象 objec oriented oo 不仅是一些具体的软件开发技术与策略 而且是一整套关于如何看待软件系统与现实世界的关系 用什么观点来研究问题并进行求解 以及如何进行系统构造的软件方法学 面向对象方法的基本思想包括两个主要方面 一方面是从现实世界中客观存在的事务出发来构造软件系统 并在系统的构造中尽可能地运用人类的自然思维方式 另一方面是面向对象方法比以往的方法更接近人类的自然思维方式 1 1面向对象开发 软件工程的发展历史 1946年 世界上第一台电子计算机在美国研制成功 50年代 软件诞生 这时的软件开发主要指编程 60年代中期到70年代中期 软件危机 出现 1968年 软件工程 概念提出 传统软件工程的生命周期 软件开发分为五个阶段 需求分析阶段总体设计阶段详细设计阶段编程和测试阶段维护阶段 面向对象的软件工程方法 1967年 第一种面向对象语言simula 67诞生 20世纪80年代smalltalk语言掀起了一场 面向对象 运动 面向对象语言越来越多 应用越来越广泛 面向对象技术在软件工程领域得到应用 主要包括 面向对象的分析ooa面向对象的设计ood面向对象的编程oop 传统方法与面向对象方法的比较 数据处理方法不同图1 1建模手段不同软件开发方法不同图1 2 1 1 2面向对象的基本概念 面向对象技术的基本观点 客观世界由对象组成 任何客观实体都是对象 复杂对象可以由简单对象组成 具有相同数据和操作的对象可归纳成类 对象是类的一个实例 类可以派生出子类 子类除了继承父类的全部特性外还可以有自己的特性 对象之间的联系通过消息传递来维系 一个对象的实例图解 对象类封装继承消息多态性关联聚合 20 1 1 2面向对象的基本概念 1 1 3oo开发的优点 1 自然性在开发中总是以对象的形式来认识世界 因此当人们分析和设计系统需求时 总是很自然地定义各类对象 2 重用性一次创建的类和对象能多次使用 21 1 2oo开发中三层设计 面向对象的开发中 通常把oo系统中相互联系的所有对象分成三类 问题域类 gui类和数据访问类 问题域类是指和用户相关的对象类 gui类的作用是方便用户与问题类进行交互 数据访问类 实现问题域类和数据库交互 在实现系统时按照先确定问题域类 然后实现gui类 最后再确定数据访问类的顺序逐步实现 一旦完成所有的内容后 它们就可以作为一个完整的系统进行工作了 优点 降低耦合 提高复用 22 1 2oo开发中三层设计 图1 3图书管理系统的三层结构 1 3uml简介 统一建模语言 uml 仅仅是一种语言 它不是一种系统设计的方法 而是系统建模的标准 uml经历了多年的研究 发展并不断完善 成为现在诸多领域内建模的首选标准 开发人员主要使用uml来构造各种模型 以便描述系统需求和设计 24 1 3 1为什么对系统建模 在系统设计中采用模型化设计的重要原因之一是管理系统设计的复杂性 模型化可以帮助用户从高层理解系统 使用户专注于系统设计的重要部分 收集关键信息 而不需要关心一些无关紧要的部分 25 1 3 2uml的发展 1 3 3uml的构成 uml的四层体系结构元元模型层元模型层模型层用户模型层 27 1 3 3uml的构成 uml的核心构成视图 表达系统的某一个方面特征的uml建模元素的子集 图 对建模系统的抽象表示 用于描述视图内容 模型元素 包括事物和事物之间的联系 通用机制 为模型元素提供额外信息 28 1 3 4 统一 的意义 uml的含义为统一建模语言 那么 统一 在uml中的含义具有一些相关联的含义 具体表现在以下几个方面 在以往出现的方法和表示法方面在软件开发的生命期方面在应用领域方面在实现的编程语言和开发平台方面在开发过程方面在内部概念方面 30 1 4uml视图 在对复杂的工程进行建模时 系统可由一个单一的图形来描述 该图形精确地定义了整个系统 但是 单一的图形不可能包含系统所需的所有信息 更不可能描述系统的整体结构功能 uml中使用视图来划分系统各个方面 每一种视图描述系统某一个方面的特性 一个完整的系统由不同的视图从不同的角度共同描述 这样系统才可能被精确定义 uml中具有多种视图 细分起来共有五种 用例视图 逻辑视图 并发视图 组件视图和部署视图 31 构成系统模型的几种视图 组件视图 1 用例视图 用途 描述系统应该具备的功能 即被称为参与者的外部用户所能观察到的功能 用例视图是几个视图的核心 它的内容直接驱动其他视图的开发 2 逻辑视图 用途 描述用例视图中提出的系统功能的实现 逻辑视图既描述系统的静态结构 也描述系统内部的动态协作关系 使用者 主要是设计人员和开发人员 组成 静态结构在类图和对象图中进行描述 动态模型在状态图 时序图 协作图以及活动图中进行描述 3 并发视图 用途 考虑资源的有效利用 代码的并行执行以及系统环境中异步事件的处理 使用者 主要是开发人员和系统集成人员 组成 状态图 协作图和活动图 4 组件视图 用途 描述系统的实现模块以及它们之间的依赖关系 组成 组件图 使用者 主要是开发人员 5 部署视图 用途 显示系统的物理部署 并描述位于节点实例上的运行组件实例的部署情况 还允许评估分配结果和资源分配 组成 部署图 使用者 开发人员 系统集成人员和测试人员 1 5uml图 每一种uml的视图都是由一个或多个图组成的 一个图就是系统架构在某个侧面的表示 所有的图一起组成了系统的完整视图 uml1 x提供了九种不同的图 可以分为两大类 一类是静态图 包括用例图 类图 对象图 组件图和部署图 另一类是动态图 包括序列图 协作图 状态图和活动图 38 uml1 x与2 0的比较 对uml1 x进行了一些扩充 用更为受限的通信图代替了协作图 增加了交互概览图 定时图 组合结构图等新图 1 6模型元素 uml中每一个模型元素都有一个与之相对应的图形元素 模型元素的图形是表示使uml的模型图形化 图形语言简明和直观使用其成为人们建模的有力工具 模型元素包括事物和事物之间的关系 是uml中重要的组成部分 40 1 6 1事物 事物是uml模型中面向对象基本的模块 它们在模型中属于静态部分 代表物理上或概念上的元素 uml中的事物可分为四种 分别是结构事物动作事物分组事物注释事物 41 1 结构事物 uml模型中最基本的结构化事物 包括 类接口协作用例活动类组件节点 1 类 对具有相同属性 方法 关系和语义的对象的抽象 2 接口 为类或组件提供特定服务的一组操作的集合 描述了类或组件的对外可见的动作 3 协作 定义了交互操作 一个给定的类可能是几个协作的组成部分 代表构成系统的模式的实现 4 用例 描述系统对一个特定角色执行的一系列动作 组织动作事物 5 活动类 类对象有一个或多个进程或线程的类 6 组件 实现了一个接口集合的物理上可替换的系统部分 7 节点 在运行时存在的一个物理元素 代表一个可计算的资源 通常占用一些内存和具有处理能力 2 动作事物 uml模型中的动态部分 包括 交互状态机 1 交互 一组对象在特定上下文中 为达到某种特定的目的而进行的一系列消息交换组成的动作 2 状态机 由一系列对象的状态组成 3 分组事物 uml模型中组织的部分 分组事物只有一种 包 包是一种将有组织的元素分组的机制 包只存在于开发阶段 4 注释事物 uml模型的解释部分 1 6 2关系 关联依赖泛化实现聚合 1 7通用机制 通用机制使得uml更简单和易于使用通用机制可以为模型元素添加注释 信息或语义 还可以对uml进行扩展 通用机制中包括了修饰 注释 规格说明和扩展机制等四种 56 1 修饰 修饰 adornment 为图中的模型元素增加了语义 建模时可以将图形修饰附加到uml图中的模型元素上 例如 当一个元素代表某种类型时 名称显示为粗体 当同一元素表示该类型的实例时 该元素名称显示为下划线修饰 57 2注释 以自由的文本形式出现的 信息类型是不被uml解释的一个字符串 示例 3规格说明 uml中预定义的特性 文档 documentation 职责 responsibility 永久性 persistence 并发性 concurrency 4扩展机制 构造型标记值约束 1 构造型 由建模者设计的新的模型元素 新的模型元素的设计要以uml已定义的模型元素为基础 示例 2 标记值 附加到任何模型元素上的命名的信息块 示例 3 约束 用某种形式化语言或自然语言表达的语义关系的文字说明 示例 1 8使用uml建模 uml可用于任何面向对象系统开发建模 不仅可以为使用uml进行软件建模 同样可以使用uml对其他非计算机领域系统进行建模 uml常进行以下应用 信息系统 informationsystem 技术系统 technicalsystem 嵌入式系统 embeddedreal timesystem 分布式系统 distributedsystem 商业系统 businesssystem 64 建模步骤 需求分析分析设计构造测试 uml建模工具 绘图工具microsoft的visio手绘case computeraidedsoftwareengineering
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 烤漆门采购合同范本
- 2025年黄山黟县桃花源人才服务有限公司公开招聘劳务派遣工作人员1名备考练习题库及答案解析
- 铝材工厂转让合同范本
- 修理水闸合同范本
- 2025年潍坊市教育局所属学校第二批次公开招聘工作人员(8人)备考练习试题及答案解析
- 2025湖北驭新智能底盘系统(湖北)有限公司招聘考试参考试题及答案解析
- 改造水管的合同范本
- 景区托管合同范本
- 加盟饭店转让合同范本
- 2025年中医科草药处方合理性评价答案及解析
- (2024年)知识产权全套课件(完整)
- 阀门试压方案样本
- 电力线路保护工作手册样本
- 儿内科内分泌疾病诊疗规范2023版
- 十大医药代表成功经验分享
- 2022年上海市浦东新区6月线下高考二模英语试题(含答案和听力音频与听力稿)
- 人脸识别系统软件使用手册
- 竣工验收证书(样本)
- 婴幼儿大便问题全解析
- 统编版三年级上册《快乐读书吧》阅读测试题
- 沉降观测记录表(标准版)
评论
0/150
提交评论