前 言
在20世纪90年代,面向对象技术以其显著的优势成为计算机软件领域的主流技术,随后该技术在大多数发达国家的软件开发中得到了相当广泛的运用。在我国的软件产业界,面向对象技术的学习与应用热潮出现于20世纪90年代后期,如今面向对象分析与设计技术也已经得到了广泛的应用。
当前,产业界需要大量掌握面向对象分析与设计技术的高级应用型开发人才。很多计算机学院和软件学院在软件工程教学中开设了相应的课程,旨在使学生不仅会使用一种或者几种面向对象编程语言来编程,更重要的是能运用面向对象方法进行系统建模,即通过面向对象分析(ObjectOriented Analysis, OOA)和面向对象设计(ObjectOriented Design, OOD)建立系统的分析模型和设计模型。
邵维忠教授和杨芙清院士合著的两本著作[17]~[18]在广泛借鉴国际上各种OOA与OOD方法的同时,根据作者长期的研究与实践形成了自己的方法特色。其中最主要的特色有三条:一是提倡充分运用面向对象方法的基本概念,限制扩充概念的引入,通过加强过程指导而保持建模概念的简练;二是对UML(Unified Modeling Language, 统一建模语言)所采用的与面向对象有关的概念进行了深入的解析,给出了自己的见解;三是其OOD部分比以往的著作内容更为详细,并且更强调用OO概念表达各种全局性的设计决策。这两部学术专著作为教材适合于理论性强的研究生教学。
第一部分概述
第1章面向对象方法概论
1.1 传统软件开发方法中存在的问题
1.2 面向对象的基本思想
1.3 面向对象的基本原则
1.4 面向对象方法的主要优点
1.5 面向对象方法的发展史及现状简介
1.6 关于统一建模语言UML
习题
第二部分面向对象分析
第2章什么是面向对象分析
2.1 分析面临的主要问题
2.2 面向对象分析综述
习题
第3章建立需求模型——用况图
3.1 系统边界
3.2 参与者
3.3 用况
3.4 用况图
3.5 检查与调整
3.6 用况模型与OOA模型
3.7 例题
习题
第4章建立基本模型——类图
4.1 对象与类
4.1.1 概念与表示法
4.1.2 识别对象与类
4.1.3 审查与筛选
4.1.4 抽象出类并进行调整
4.1.5 认识对象的主动行为并识别主动对象
4.1.6 类的命名
4.1.7 建立类图的对象层
4.2 属性与操作
4.2.1 属性
4.2.2 操作
4.3 关系
4.3.1 继承
4.3.2 关联
4.3.3 聚合
4.3.4 依赖
4.4 接口