第十章 面向对象方法学 (1).

Slides:



Advertisements
Similar presentations
网络应用程序设计 2014 JavaBean. JavaBean 及其属性 JavaBean 就是一种 Java 的组件技术 JavaBean 是 Java 类 JavaBean 通过约定的方法名实现属性功能 简单属性 void setXxx(Type value) Type getXxx() boolean.
Advertisements

7.1 内置对象概述及分类 JSP 视频教学课程. JSP2.2 目录 1. 内置对象简介 1. 内置对象简介 2. 内置对象分类 2. 内置对象分类 3. 内置对象按功能区分 3. 内置对象按功能区分 4. 内置对象作用范围 4. 内置对象作用范围.
<<會計資訊系統課程講義>> 統一塑模語言(UML)語法精要 -- 物件導向概念、需求分析及系統分析
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
Ch02物件導向程式設計 物件導向系統分析與設計.
UI(用户界面)集训班 Illustrator 高级班.
基于解释性语言的手机跨平台架构 Sloan Yi. Qt MTK.
Oracle数据库 Oracle 子程序.
第9章 面向对象方法学引论 9.1 面向对象方法学概述 9.2 面向对象的概念 9.3 面向对象建模 9.4 对象模型 9.5 动态模型
第14章 c++中的代码重用.
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
程序的形式验证 - 简介 中国科学院软件研究所 张文辉 1.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
Hadoop I/O By ShiChaojie.
軟體工程 -物件導向程式設計與UML系統分析實作
物件導向系統分析與設計與UML.
單元3:軟體設計 3-2 順序圖(Sequence Diagrams)
面向对象建模技术 软件工程系 林 琳.
软件建模精要 面向对象软件建模技术.
JUDE教學 Jude安裝教學篇 Jude初步介紹篇 Jude繪圖介紹篇 介紹jude的安裝和下戴 介紹jude的初基本功能
存储系统.
第9章 類別圖與物件圖 9-1 類別圖與物件圖的基礎 9-2 類別圖的符號 9-3 類別關係 9-4 物件圖 9-5 繪製類別圖與物件圖
管理信息结构SMI.
辅导课程六.
软件建模与UML.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
What have we learned?.
数据挖掘工具性能比较.
PaPaPa项目架构 By:Listen 我在这.
整合思维导图的初中英语教学设计 主讲人:卢璐.
Advanced Basic Key Terms Dependency Actor Generation association
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
两种不同类别的软件: 功能预定义软件;用户驱动的软件。他们对软件工程方法有不同的需求
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
三:基于Eclipse的集成开发环境搭建与使用
程序设计工具实习 Software Program Tool
SOA – Experiment 2: Query Classification Web Service
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
解决变化问题的自底向上 流程建模方法 严志民 徐玮.
C语言程序设计 主讲教师:陆幼利.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
$9 泛型基础.
C#面向对象程序设计 $6 深入理解类.
VisComposer 2019/4/17.
Aspect Oriented Programming
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
信号量(Semaphore).
第6章 面向对象开发的 分析与设计.
iSIGHT 基本培训 使用 Excel的栅栏问题
数据集的抽取式摘要 程龚, 徐丹云.
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
Chapter 18 使用GRASP的对象设计示例.
MODELING GENERALIZATION & REFINING THE DOMAIN MODEL
C++语言程序设计 C++语言程序设计 第八章 继承 C++语言程序设计.
魏新宇 MATLAB/Simulink 与控制系统仿真 魏新宇
辅导课程十五.
OpenStack vs CloudStack
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
Advanced Basic Key Terms Dependency Generalization Actor Stereotype
_01自己实现简单的消息处理框架模型 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司
基于列存储的RDF数据管理 朱敏
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
本节内容 动态链接库 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
面向对象建模 对象(object) 对象具有的含义: 现实世界中某个具体的物理实体或概念在计算机逻辑中的映射和体现。 在现实世界中:
本节内容 进程 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第十七讲 密码执行(1).
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
Presentation transcript:

第十章 面向对象方法学 (1)

第十章内容概要 面向对象方法学概述 面向对象的概念 面向对象建模 UML可视化建模基础 面向对象的需求提取 面向对象分析 ★ 软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

什么是面向对象 Coad和Yourdon给出了一个定义:“面向对象=对象+类+继承+通过消息进行通信” 这个定义的要点 : 一个面向对象的程序的每一成份应是对象,计算是通过新的对象的建立和对象之间的通信来执行的。 这个定义的要点 : 认为客观世界是由各种对象组成的,任何事物都是对象,复杂的对象可以由比较简单的对象以某种方式组合而成; 软件工程-2011-第十章 面向对象方法学

什么是面向对象 把所有对象都划分成各种对象类(简称为类,class),每个对象类都定义了一组数据和一组方法。; 按照子类(或称为派生类)与父类(或称为基类)的关系,把若干个对象类组成一个层次结构的系统(也称为类等级); 对象彼此之间仅能通过传递消息互相联系。 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 与人类习惯的思维方法一致: 传统的程序设计技术忽略了数据和操作之间的内在联系,用这种方法所设计出来的软件系统其解空间与问题空间并不一致,难于理解。 面向对象的软件技术以对象(object)为核心 , 而对象是数据和操作的统一体,是对现实世界实体的正确抽象。 面向对象的设计方法与传统的面向过程的方法有本质不同: 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 面向对象的环境提供了强有力的抽象机制,便于用户在利用计算机软件系统解决复杂问题时使用习惯的抽象思维工具; 面向对象方法学中普遍进行的对象分类过程,支持从特殊到一般的归纳思维过程; 面向对象方法学中通过建立类等级而获得的继承特性,支持从一般到特殊的演绎思维过程; 先设计出由抽象类构成的系统框架,随着认识深入和具体化再逐步派生出更具体的派生类——符合人们认识客观世界解决复杂问题时逐步深化的渐进过程。 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 稳定性好: 传统的软件开发方法以算法为核心,建立起来的软件系统的结构紧密依赖于系统所要完成的功能,当功能需求发生变化时将引起软件结构的整体修改。 面向对象方法基于构造问题领域的对象模型,以对象为中心构造软件系统。由于现实世界中的实体是相对稳定的,因此,以对象为中心构造的软件系统也是比较稳定的。 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 面向对象的软件技术在利用可重用的软件成分构造新的软件系统时,有很大的灵活性:实例化、继承。 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 可重用性好: 传统的软件重用技术是利用标准函数库,但是,标准函数缺乏必要的“柔性”。 即使是具有功能内聚性的模块也并不是自含的和独立的,相反,它必须运行在相应的数据结构上。 面向对象方法所使用的对象是数据和操作的统一体,因此,对象具有很强的自含性。对象固有的封装性和信息隐藏机制,使得对象的内部实现与外界隔离,具有较强的独立性。 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 面向对象的软件技术在利用可重用的软件成分构造新的软件系统时,有很大的灵活性:实例化、继承。 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 较易开发大型软件产品: 面向对象范型中构成软件系统的每个对象就像一个微型程序,可以把一个大型软件产品分解成一系列本质上相互独立的小产品来处理 。从而有利于对开发工作的管理。 软件工程-2011-第十章 面向对象方法学

面向对象方法学的优点 可维护性好: 面向对象的软件稳定性比较好。 面向对象的软件比较容易修改:封装,继承和多态性。 面向对象的软件比较容易理解。 易于测试和调试。 软件工程-2011-第十章 面向对象方法学

第十章内容概要 面向对象方法学概述 面向对象的概念 面向对象建模 UML可视化建模基础 面向对象的需求提取 面向对象分析 ★ 软件工程-2011-第十章 面向对象方法学

面向对象的概念 对象:在应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,它既可以是具体的物理实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西。 对象是由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。 软件工程-2011-第十章 面向对象方法学

面向对象的概念 对象的形象表示: 界 面 操作1 操作2 操作1,2,3的实现 操作3 对象的形象表示 状态 S 界 面 软件工程-2011-第十章 面向对象方法学

面向对象的概念 对象的定义: 定义1:对象是具有相同状态的一组操作的集合。(从OO程序设计角度) 定义2:对象是对问题域中某个东西的抽象,这种抽象反映了系统保存有关这个东西的信息或与它交互的能力。也就是说,对象是对属性值和操作的封装。(从信息模拟角度) 定义3:对象∷=(ID,MS,DS,MI)。其中,ID是对象的标识或名字,MS是对象中的操作集合,DS是对象的数据结构,MI是对象受理的消息名集合(即对外接口)。 软件工程-2011-第十章 面向对象方法学

面向对象的概念 对象中的数据表示对象的状态,一个对象的状态只能由该对象的操作来改变。每当需要改变对象的状态时,只能由其他对象向该对象发送消息。对象响应消息时,按照消息模式找出与之匹配的方法,并执行该方法。 状态 S 操作:f1,f2,…,fn 转换:g1,g2,…,gn 输出fi(X,S) 输入 fi , X 转换 :新状态S’=gi (X,S) 用自动机模拟对象 软件工程-2011-第十章 面向对象方法学

对象的特点 以数据为中心 对象是主动的 实现了数据封装 本质上具有并行性 模块独立性好 软件工程-2011-第十章 面向对象方法学

面向对象的其他概念 类(class) 实例(instance) 消息(message) 由下述3部分组成: 方法(method) 接收消息的对象; 消息选择符(也称为消息名); 零个或多个变元 方法(method) 属性(attribute) 软件工程-2011-第十章 面向对象方法学

面向对象的其他概念 封装:类封装了它的实例对象的属性与行为,隐藏实现细节。 对象具有封装性的条件如下: 有一个清晰的边界。所有私有数据和实现操作的代码都被封装在这个边界内,从外面看不见更不能直接访问。 有确定的接口(即协议)。这些接口就是对象可以接受的消息,只能通过向对象发送消息来使用它。 受保护的内部实现。 软件工程-2011-第十章 面向对象方法学

面向对象的其他概念 继承:是指能够直接获得已有的性质和特征,而不必重复定义它们。 根据各类间的异同点把它们组成层次结构,从而表示:位于下层的类继承了上层中某类的特点。 继承是子类自动地共享基类中定义的数据和方法的机制。 或者反方向来看,是从“特殊性”概念归纳“一般性” 概念的一种机制。 抽象类 软件工程-2011-第十章 面向对象方法学

面向对象的概念 使用继承的好处: 继承性使得相似的对象可以共享程序代码和数据结构,从而大大减少了程序中的冗余信息; 易于修改软件; 方便新的应用系统的开发; 利于软件重用; 软件工程-2011-第十章 面向对象方法学

面向对象的概念 多态:类的一个行为在其子类中有不同表现形式。 行为(Behavior):是指一个对象所能执行的动作或者变换; 操作(Operation):行为在类的定义中进一步被明确为操作; 方法(Method):一个操作在某个类中的一种特定实现被称为一个方法; 软件工程-2011-第十章 面向对象方法学

Concrete operations may also be polymorphic – but this is bad style. Polymorphism means “many forms”. Polymorphic operations have many implementations. A concrete subclass must implement all the abstract operations that it inherits. With polymorphism, objects of different classes respond to the same message in different ways. Concrete operations may also be polymorphic – but this is bad style. 软件工程-2011-第十章 面向对象方法学

Canvas Shape draw(g: Graphics) getArea(): int getBoundingArea(): int Circle Square 1 * 软件工程-2011-第十章 面向对象方法学

面向对象的概念 重载(overloading) 有两种重载:函数重载是指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字;运算符重载是指同一个运算符可以施加于不同类型的操作数上面。当然,当参数特征不同或被操作数的类型不同时,实现函数的算法或运算符的语义是不相同的。 软件工程-2011-第十章 面向对象方法学

使用面向对象方法的开发过程 面向对象开发的优势: 面向对象是一种关于问题及其解答该如何表述的哲学; 面向对象不是一种软件生命周期模型。 易于表示含有大量交互的系统; 能用相同术语来描述问题及其解决方案:对象连接了问题空间和求解空间; 开发过程的不同阶段都能使用同一种术语:对象连接了各开发阶段; 面向对象是一种关于问题及其解答该如何表述的哲学; 面向对象不是一种软件生命周期模型。 软件工程-2011-第十章 面向对象方法学

使用面向对象方法的开发过程 软件工程-2011-第十章 面向对象方法学

使用面向对象方法的开发过程 喷泉模型 软件工程-2011-第十章 面向对象方法学

第十章内容概要 面向对象方法学概述 面向对象的概念 面向对象建模 UML可视化建模基础 面向对象的需求提取 面向对象分析 ★ 软件工程-2011-第十章 面向对象方法学

面向对象建模 模型:为了理解事物而对事物作出的一种抽象,是对事物的一种无歧义的书面描述。 模型由一组图示符号和组织这些符号的规则组成,利用它们来定义和描述问题域中的术语和概念。 模型是一种思考工具,把知识规范地表示出来。 模型是现实的简化、化简的实现。 软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

第十章内容概要 面向对象方法学概述 面向对象的概念 面向对象建模 UML可视化建模基础 面向对象的需求提取 面向对象分析 ★ 软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

面向对象建模符号系统-UML UML描述模型的三种基本词汇:要素(Things)、关系(Relationships)、图(Diagrams) 表述结构的要素:Use Case、类、接口、协作 表述行为的要素:交互、状态机 用于组织的要素:包 用于辅助说明的要素:注释 软件工程-2011-第十章 面向对象方法学

面向对象建模符号系统-UML UML有4种关系: UML有9种图: 关联关系:有联系 依赖关系:使用 泛化关系:特殊到一般 实现关系:规约到解决方案 UML有9种图: Use Case图:展示Use Case、Actor及其关系; 类图:展示类、接口、包及其关系; 0..1 * employer employee 软件工程-2011-第十章 面向对象方法学

面向对象建模符号系统-UML 顺序图:按时序展示对象间消息传递; 协作图:强调收发消息的对象间的组织结构; 状态图:展示对象在其生命周期中的可能状态以及在这些状态上对事件的响应; 活动图:展示系统从一个活动转到另一活动的可能路径和判断条件; 对象图:某个时间点上系统中各对象的快照; 构件图:展示系统各构件及其关系; 配置图:展示交付系统中软硬件间物理关系; 软件工程-2011-第十章 面向对象方法学

Use Case(用例)图简介 Use Case图主要用于描述系统和外部环境的关系。 Use Case:对系统提供的功能的一种描述。(A use case describes behavior that the system exhibits to benefit one or more actors.) Actor:是可能使用这些Use Case的人或外部系统。(Actors are roles adopted by things that interact directly with system. A role is like a hat that something wears in a particular context.) 系统边界:Use Case在内,Actor在外; 用例之间的关系:《extend》、《include》、 Generalization 软件工程-2011-第十章 面向对象方法学

用例图示例 PlaceOrder CancleOrder ShipProduct Mail order system Subject name Mail order system system boundary PlaceOrder communication relationship CancleOrder ShipProduct ShippingCompany Customer CheckOrderStatus actor use case RequestCatalog Dispatcher 软件工程-2011-第十章 面向对象方法学

用例图示例 软件工程-2011-第十章 面向对象方法学

Actor与Use Case间的连线称为通信关联,表示Actor与相应Use Case的交互。 软件工程-2011-第十章 面向对象方法学

类图/对象图简介 类图应用最广,可在各个层次上描述系统的静态结构。 方框表示类:上面写类名,中间是类的属性,下面是类的操作。 关联(Association):关联关系表示类的实例之间存在某种稳定的联系。 对象图是类图的一种变形,对象名下面要加下划线。 软件工程-2011-第十章 面向对象方法学

类的表述形式: +:public -:private #:protected 关联关系: 软件工程-2011-第十章 面向对象方法学

A Class in UML Class name Attributes Operators 软件工程-2011-第十章 面向对象方法学

An Object in UML object name and class 软件工程-2011-第十章 面向对象方法学

Class Relationships in UML Generalization Dependency Association These can represent inheritance, using, aggregation, etc. 软件工程-2011-第十章 面向对象方法学

Example class diagram 软件工程-2011-第十章 面向对象方法学

Association Structural relationship between peer classes (or objects). Association can have a name and direction, or be bi-directional Role names for each end of the association Multiplicity of the relationship 软件工程-2011-第十章 面向对象方法学

Examples of Association 软件工程-2011-第十章 面向对象方法学

Association code example class Person { public: private: Company *employer; }; class Company { Person **employee; Each instance of Person has a pointer to its employer Each instance of Company has a collection of pointers denoting its employees 软件工程-2011-第十章 面向对象方法学

Link Attributes Associations may have properties in the same manner as objects/classes. Salary and job title can be represented as 软件工程-2011-第十章 面向对象方法学

Aggregation (聚合/共享聚集) A part of relationship (physical containment) class ProjectGroup { public: ProjectGroup(); private: Person member[n]; }; 软件工程-2011-第十章 面向对象方法学

Composition (组合,组合聚集) 软件工程-2011-第十章 面向对象方法学

Aggregation vs Composition Aggregation is a shared containment. Many other classes may have the same type of aggregate. E.g., string, list Composition is aggregates that can not stand by themselves (e.g., foot, arm, etc.) 软件工程-2011-第十章 面向对象方法学

Generalization/Inheritance 软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

Dependency 依赖关系描述两个模型元素(类、用例等)之间的语义连接关系: 其中一个模型元素是独立的,另一个模型元素不是独立的,它依赖于独立的模型元素,如果独立的模型元素改变了,将影响依赖于它的模型元素。 软件工程-2011-第十章 面向对象方法学

类图示例:简单手表的组成部分 软件工程-2011-第十章 面向对象方法学

类图: 对象图: 软件工程-2011-第十章 面向对象方法学

类图/对象图简介 在三个层次上使用类图: 要理解问题:概念层 要理解软件:说明层 概念层:描述应用域中的概念 说明层:考察软件的接口部分,而非实现部分,要区分接口与实现(即类型与类) 实现层:揭示软件实现体的构成情况。只有在这层才有真正严格意义上的类的概念 要理解问题:概念层 要理解软件:说明层 软件工程-2011-第十章 面向对象方法学

顺序图简介 顺序图描述几个对象间的动态协作关系,一个对象通过发送消息与其他对象相互作用。一个对象对消息的接收触发一个操作的执行,从而可能给其他对象发消息。 顺序图对识别Use Case 中的附加对象很有用: 包含在Use Case中的对象称为参与对象; 顺序图展示了这些对象间传送消息的时间顺序,反映了对象之间的一次特定交互过程; 软件工程-2011-第十章 面向对象方法学

顺序图示例:简单手表调时 软件工程-2011-第十章 面向对象方法学

顺序图示例:一台打印服务器 软件工程-2011-第十章 面向对象方法学

协作图简介 也是用来描述系统中对象间的动态协作关系; 协作图侧重说明哪些对象间有消息传递; 顺序图侧重表述在某情况下对象间传递消息的时序性; 协作图中要给消息编号来标明消息的执行顺序; 软件工程-2011-第十章 面向对象方法学

协作图示例:打印服务器 软件工程-2011-第十章 面向对象方法学

协作图中使用的消息层次编号能反映激活的嵌套性质,这在顺序图中能显式地表示出来。 软件工程-2011-第十章 面向对象方法学

状态图简介 一个状态是对象满足的一种条件。状态可认为是一个类属性值的抽象; 用对象的多个状态及这些状态间的转换来描述单个对象的行为。 标注状态转移:事件[条件]/动作 动作:伴随转移发生,不会被中断 活动:在某一状态中进行,可以被中断 软件工程-2011-第十章 面向对象方法学

简单手表“设置时间”Use Case的状态图 软件工程-2011-第十章 面向对象方法学

活动图简介 类似流程图 描述所要进行的各项活动的执行流程 描述一个Use Case的处理流程 活动图可以方便地描述控制转移条件以及并行执行等要求 软件工程-2011-第十章 面向对象方法学

活动图示例:打印过程 软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

活动图示例:开发软件需求的流程 软件工程-2011-第十章 面向对象方法学

活动图示例: 表示并发和同步 软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

构件图简介 构件图描述程序代码的组织结构 构件: 源代码构件 二进制目标代码构件 可执行构件 文档构件 软件工程-2011-第十章 面向对象方法学

反映程序代码构件间的依赖关系的构件图 软件工程-2011-第十章 面向对象方法学

配置图简介 描述系统中软硬件的物理配置情况和系统体系结构 结点表示实际的物理设备 连接表示各物理结点的连接方式 结点内部表示分配到该结点运行的构件或对象 软件工程-2011-第十章 面向对象方法学

描述一个系统的物理体系结构的配置图 软件工程-2011-第十章 面向对象方法学

UML的三种扩展机制 标记值(Tagged Value) 约束(Constraint) 附属于UML元素的各种信息(Property) 具有形式:{属性名 = 值} 约束(Constraint) UML中限制一种或多个元素语义的规则 形式:{约束条件} 软件工程-2011-第十章 面向对象方法学

UML的三种扩展机制 软件工程-2011-第十章 面向对象方法学

UML的三种扩展机制 构造型(Stereotype) 构造型机制是指在已有的模型元素基础上建立一种新的模型元素。它与现有元素要相差不多,只是多一些特别的语义 软件工程-2011-第十章 面向对象方法学

用视图描述系统 视图:被建模系统的各个方面,它们都反映同一个系统,具有一致性; 建立完整模型所需的视图种类和数量不定,按需选取; 视图把建模语言同开发系统的方法、过程连接起来; 软件工程-2011-第十章 面向对象方法学

用UML描述系统的5个视图 Use Case View(用例视图): Logic View(逻辑视图): 视图内容:系统行为、动力 动态表现:交互图、状态图、活动图 观察角度:用户、分析员、测试员 Logic View(逻辑视图): 视图内容:问题及解决方案的术语词汇 静态表现:类图、对象图 软件工程-2011-第十章 面向对象方法学

用UML描述系统的5个视图 Process View(进程视图): Component View(实现视图): 动态表现:交互图、状态图、活动图 观察角度:类、接口、协作 Process View(进程视图): 视图内容:性能、可伸缩性、吞吐量 静态表现:类图、对象图 观察角度:线程、进程 Component View(实现视图): 软件工程-2011-第十章 面向对象方法学

用UML描述系统的5个视图 Deployment View(实施视图): 视图内容:构件、文件 静态表现:构件图 动态表现:交互图、状态图、活动图 观察角度:配置、发布(Releases) Deployment View(实施视图): 视图内容:部件的发布、交付、安装 静态表现:配置图 观察角度:拓扑结构的节点 软件工程-2011-第十章 面向对象方法学

用UML描述系统的5个视图 逻辑视图 实现视图 实施视图 进程视图 用例视图 系统装配 词汇 配置管理 功能 行为 系统拓扑 分布 性能 交付 安装 性能 可伸缩性 吞吐量 软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学

软件工程-2011-第十章 面向对象方法学