1 / 41

面向对象开发方法

纲要. 面向对象开发方法. 面向对象的基本概念 经典的面向对象方法 UML Rational Rose 介绍 RUP. 面向对象的基本概念. 面向对象语言 面向对象思想的起源 1867 年的 Simula 计算机仿真语言 最早的通用面向对象语言是 20 世纪 80 年代的 Smalltalk 目前最流行的面向对象语言是 C++ , JAVA 由于 Smalltalk 、 C++ 的推出,使面向对象程序设计语言趋于成熟,从而形成了一种全新的面向对象编程( Object-Oriented Programming , OOP )的程序设计方法。. 面向对象的基本概念.

afram
Download Presentation

面向对象开发方法

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 纲要 面向对象开发方法 • 面向对象的基本概念 • 经典的面向对象方法 • UML • Rational Rose介绍 • RUP

  2. 面向对象的基本概念 • 面向对象语言 • 面向对象思想的起源1867年的Simula计算机仿真语言 • 最早的通用面向对象语言是20世纪80年代的Smalltalk • 目前最流行的面向对象语言是C++,JAVA • 由于Smalltalk、C++的推出,使面向对象程序设计语言趋于成熟,从而形成了一种全新的面向对象编程(Object-Oriented Programming,OOP)的程序设计方法。

  3. 面向对象的基本概念 • 面向对象的开发方法 • 产生背景 • 信息系统开发不仅仅是程序设计,还包括系统分析,系统设计,系统运行与维护。 • OOP思路是从对象(人、地方、事情)入手,而不是像结构化方法从功能或数据入手,因此需要相应的面向对象的分析和设计方法。 • 因此20年代末期开始出现面向对象的分析(Object-Oriented Analysis,OOA)、面向对象的设计(Object-Oriented Design,OOD)等涉及系统开发其他环节的方法和技术。 • OOA,OOD,与OOP结合在一起形成了一种新的开发方法模型------面向对象(Object-Oriented,OO)方法 • 面向对象方法的优越性 • 与人类思维方式一致 • 可重用性好 • 易于维护

  4. 面向对象的基本概念 • 基本概念 • 对象(object) • 类(class) • 消息(message) • 接口(interface) • 继承性(inheritance) • 封装性(encapsulation) • 多态性(polymorphism)

  5. 经典面向对象方法 • OOA/OOD • 提出者:Coad和Yourdon • OOA • 标识对象 • 标识结构 • 标识主题 • 定义属性 • 定义方法 • OOD • 问题域部分设计 • 人机交互部分设计 • 任务管理部分设计 • 数据管理部分设计

  6. 经典面向对象方法 • OOSE(面向对象软件工程) • 提出者:I.Jacobson • 特点: • 将面向对象思想贯穿到软件工程中 • 采用用例驱动 • 能较好的描述需求,适用于商务处理方面的应用开发 • 五个模型: • 需求模型(RM) • 分析模型(AM) • 设计模型(DM) • 实现模型(IM) • 测试模型(TM)

  7. 经典面向对象方法 • 对象模型技术OMT (Object Model Technology) • 提出者:Rumbaugh • 主要思想是建立三种模型: • 描述系统结构的对象模型 • 描述系统控制结构的动态模型 • 描述系统功能的功能模型

  8. 经典面向对象方法 • Booch方法 系统开发工作分为两个过程: • 微观过程:建立开发框架 • 确定类和对象 • 确定类和对象的语义 • 确定类和对象的层次 • 规范化类和对象的关系 • 宏观过程:控制微观过程的活动 • 建立核心需要(概念化) • 建立行为模型(分析) • 创建体系结构(设计) • 细化和完善实现模型(进化) • 管理提交以后的模型(维护)

  9. UML • 开发方法=建模语言+开发过程 • 建模语言 (Modeling Language) • 表述设计方法的表示法 • 主要是图形化的 • 开发过程 (Development Process) • 对开发中所采取步骤的指导 • 将建模语言置于特定语境(开发环境)之中

  10. UML • UML+RUP=最佳软件开发方法

  11. UML • 面向对象建模 • 面向对象分析与设计从建模开始,建模语言是研究重点。 • 建模语言是对建模过程的描述. • 统一建模语言(Unified Modeling Language,UML)

  12. UML 2.0 OMG 认可, Nov 1997 UML 1.1 最后提交给 OMG, Sep‘97 第一次提交给OMG, Jan ´97 UML 1.0 UML 团体 公共 反馈 UML 0.9 Web - June ´96 Unified Method 0.8 OOPSLA ´95 OOSE 其他方法 UML UML2.0(2001) 1.3(1999),1.4(2000) Booch 方法 OMT

  13. UML 为面向对象软件设计提供统一的、标准的、可视化的建模语言 Grady Booch Ivar Jacobson James Rumbaugh

  14. UML • UML优势特点 • 融合了BOOCH,OMT,OOSE方法中的基本概念; • 广泛征求意见,集众家之长; • UML是标准的建模语言,而不是标准的开发过程,不同组织和不同应用领域,采取不同开发过程。 • UML作用 • 利用执行者(actor)和用例(use case)来描述系统的边界和它的主要功能 • 通过各种交互图形来描述use case的实现 • 用类图来描述系统的静态结构和特性 • 用状态转换图来描述对象的动态特性 • 通过构件图和部署图来描述系统物理特性的体系结构 • 通过自定义类型,扩展系统功能

  15. UML 结构事物 行为事物 分组事物 注释事物 类 接口 协作 用例 活动类 构件 节点 事 物 模 型 元 素 关 系 依赖 关联 泛化 实现 UML 交互 状态机 规 则 用例图 类图 对象图 包图 协作图 状态图 活动图 顺序图 构件图 部署图 图 公 共 机 制

  16. UML • 元素

  17. UML • 类 • 每个类都必须有一个名字,以同其它类区分. • 可能包含路径的名称,用以表示该类存在的地方 • Business rules::Customer • (“Customer” 类存在于 “Business rules” 包中.) • 属性(Attributes) 描述一个类的实例可以拥有的一组值 • 操作是一个服务的实现,该服务可以由类的任何对象请求以影响其行为 Name Attributes Operations

  18. UML • 关系 • 依赖关系 泛化关系 • 关联关系 汽车 订单 1 1 1 1..* 发动机 条目 组合 聚集 • 实现关系

  19. UML • 类图(class diagram) • 展示系统中类的静态结构 • 对象图(object diagram) • 类图的一种实例化图

  20. Customer Account Management Purchase Books Internet Customer Product Catalog Search UML • 用例图(use case diagram) • 用途 • 对系统前后关联建模 • 捕获需求,对系统需求建模

  21. UML • 顺序图(sequence diagram) • 用途 • 按时间顺序对控制流建模,展示对象之间的动态交互关系,着重体现对象间消息传递的时间顺序。

  22. UML • 协作图(collaboration diagram) • 用途:描述相互合作关系的对象间的交互关系和链接关系

  23. UML • 状态图(state diagram) • 用途:描述一类对象具有的所有可能转态及转移关系

  24. UML • 活动图(activity diagram) • 用途展示系统中的各种活动的执行次序

  25. UML • 构件图(component diagram) • 用途 • 对源代码建模 • 对可执行体发布建模 • 对物理数据库建模 • 对可适应的系统建模 Web SystemFramework Business Facade

  26. UML • 部署图(deployment diagram) • 用途 • 对嵌入式系统建模 • 对客户/服务器系统建模 • 对完全分布式系统建模 DataAccess Bank Server Real Estate Server Database Server Database TCP/IP Home PC TCP/IP

  27. UML

  28. Rational Rose介绍 • Rational Rose • ROSE是美国Rational公司的面向对象建模工具,利用这个工具,我们可以建立用UML描述的软件系统的模型,而且可以自动生成和维护C++、Java、VB、Oracle等语言和系统的代码。 • ROSE的界面分为三个部分——Browser窗口、Diagram窗口和Document窗口。Browser窗口用来浏览、创建、删除和修改模型中的模型元素;Diagram窗口用来显示和创作模型的各种图;而Document窗口则是用来显示和书写各个模型元素的文档注释。 • 特点: • 支持UML模型 • 支持多种开发语言 • 代码自动生成 • 模型的集成管理 • 团队开发 • 数据库表的生成

  29. Rational Rose介绍 工具栏 Diagram窗口 Browser窗口 Specification对话框 Document窗口 工具箱

  30. Rational Rose介绍 • Rational Rose四层视图 • Use Case View • 定义系统的边界:关注系统的外部功能的描述 • Logical View • 定义系统的实现逻辑:为实现Use_Case图描述的功能,系统应做的处理的逻辑描述,此时的描述原则上与实现平台无关 • 描述系统的结构和接口关系,相当于逻辑电路图 • Component View • 定义系统的物理实现,生成代码。 • 相当于印刷电路板的布线图 • Deployment View • 描述系统的网络分布

  31. Rational Rose介绍 • Use Case view图的类型包括 • 用例图 • 顺序图 • 协作图 • 活动图

  32. Rational Rose介绍 • Logical view中图的类型包括 • 类图 • 状态图

  33. Rational Rose介绍 • Component view的图的类型包括 • 组件图

  34. Rational Rose介绍 • Deployment view的图的类型包括 • 配置图

  35. Rational Rose介绍 顺序图 用例图 活动图 协作图

  36. Rational Rose介绍 类图 状态图 部署图 组件图

  37. RUP诞生 • RUP诞生

  38. RUP简介 RUP的3大核心技术特点 • RUP的3大核心技术特点 • 用例(Use Case)/需求驱动的 • 以构架(Architecture)为中心的 • 迭代(Iterative)和增量的(Incremental) 开发方式

  39. 案例 面向对象开发方法 仓库管理系统的分析与设计

More Related