码迷,mamicode.com
首页 > 其他好文 > 详细

《软件工程》总结——第六章

时间:2015-02-20 20:50:13      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

本章的主要内容是面向对象基础

      软件工程学家 Codd 和 Yourdon 认为:面向对象 = 对象 + 类 + 继承 + 通信;

面向对象方法概述

      面向对象技术的发展历史

            1. 初始阶段:20 世纪 60 年代末到 20 世纪 80 年代;2. 发展阶段:20 世纪 80 年代中期到 90 年代;3. 成熟阶段:20 世纪 90 年代以后。

      面向对象的软件工程方法

            1. 面向对象分析;2. 面向对象设计;3. 面向对象编程;4. 面向对象测试;5. 面向对象维护。

面对对象基本概念

      对象:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,由一组属性和对这组属性进行操作的一组服务组成。属性和服务是构成对象的两个基本要素。

      类:类是具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内容包括属性和服务两个主要部分。

      封装:封装是把对象的属性和服务结合成一个独立的系统单位,并尽可能隐藏对象的内部细节。

      继承:继承是指子类可以自动拥有父类的全部属性和服务。

      消息:消息是对象发出的服务请求,一般包含提供服务的对象标识、服务标识、输入信息和应答信息等信息。

      关联:管线是对象属性之间的静态联系,它通过对象的属性来表示对象之间的依赖关系。

      聚和:聚合是对象之间的组合关系,即一个(或一些)对象是另一个对象的组成和部分。聚合是一种特殊的关联,表示对象之间整体与部分的关系。

      多态性:多态性是指在父类中定义的属性或服务被子类继承后,可以具有不同的数据类型或表现出不同的行为。

软件建模概念

      系统、模型和视图

            1. 系统是为特定目的而设计的由相互关联的若干部分组成的集合,其中各个组成部分又可以看作是一个更简单的系统,成为子系统;2. 模型是对系统的抽象表示;3. 视图是从某一个侧面对系统模型的关注。

      软件建模的重要性

            1. 软件系统越来越大,如 Window NT5.0 具有4千万行代码,任何个人都不可能单独关系这些代码;2. 没有参加开发的人员无法直接理解程序代码;3. 人们需要一种描述复杂系统的简单的方法。

统一建模语言 UML

            1. UML 是一种语言;2. UML 是一种可视化的建模语言;3. UML 是一种可用于详细描述的语言;4. UML 是一种构造语言;5. UML 是一种文档化语言。

      UML 的发展历史

            面向对象的建模方法开始于 20 世纪 80 年代初期,大量有决定意义的思想形成与 20 世纪 90 年代中期,1998 年开始,国际上每年召开一次专门的 UML 会议,推进 UML 语言的不断发展和广泛应用。

      UML 的概念模型

            1. 视图;2. 图;3. 模型元素;4. 语义规则;5. 公共机制;6. 扩展机制。

      UML 建模实例

      UML 应用

            UML 语言是一种强有力的系统建模语言,具有创建系统的静态结构和动态行为等多种模型的能力,其应用范围十分广泛,即可以应用于商业建模和软件开发建模的咯咯阶段,也可以应用于其他类型的应用系统。UML 主要应用适合于大型复杂系统的开发,具体要求如下:1. 支持用例驱动;2. 以体系结构为中心;3. 迭代的或增量的开发过程。

常用的 UML 图

      用例图:用例图是从用户的观点描述系统的功能,它由一组用例、参与者以及它们之间的关系组成。

      类图:类图描述系统的静态结构,表示系统中的类、类与类之间的关系以及类的属性和操作。

      顺序图:顺序图描述了一组交互对象之间的交互方式,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。

      状态图:状态图是由状态机图扩展而开的,用来描述对象所经过的对外部事件作出响应的状态序列。

《软件工程》总结——第六章

标签:

原文地址:http://www.cnblogs.com/zchenjian/p/4296680.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!