简介
本书是论述面向对象分析(OOA)方法的专著。全书共分十章。前三章系统地介绍面向对象方法的基本知识,论述OOA的主要优点,概要地介绍本书的OOA方法之主要特点。第四章至第九章详细介绍OOA的全过程,围绕OOA的基本模型(类图)、补充模型(主题图、use case交互图)和详细说明,对每个开发活动所涉及的概念进行深入讨论,并给出详细的过程指导。第十章集中地论述软件复用及其与OOA的关系,给出按软件复用的组织OOA过程的策略。
作者长期从事对象技术领域的科研、教学和工程实践。本书是他们参阅国内外大量文献,结合自己多年研究的精心之作。书中内容详实、立论严谨、实例丰富、图文并茂,论述深入浅出,适合作为教学参考书和工程技术用书。
读者对象:计算机软件专业的教师、研究生、本科生、培训班的师生、研究人员和工程技术人员。
目录
第一章 面向对象方法概论 16页
1.1 什么是面向对象 16页
1.2 从认识论看面向对象方法的形成 18页
1.2.1 软件开发--对事物的认识和描述 18页
1.2.2 语言的鸿沟 19页
1.2.3 编程语言的发展使鸿沟变窄 19页
1.2.4 软件工程学的作用 21页
1.2.5 面向对象是软件方法学的返朴归真 26页
1.3 面向对象方法的主要概念 26页
1.3.1 对象 27页
1.3.2 类 28页
1.3.3 封装 29页
1.3.4 继承 31页
1.3.5 消息 32页
1.3.6 结构与连接 33页
1.3.7 多态性 34页
1.3.8 永久对象 35页
1.3.9 主动对象 35页
1.3.10 术语对照 37页
1.4 面向对象方法的历史及现状 38页
1.4.1 历史 38页
1.4.2 OO 方法发展到软件工程的前期阶段 40页
1.4.3 当前的研究及实践领域 41页
第二章 为什么需要 OOA 44页
2.1 什么是 OOA 44页
2.2 分析面临的主要问题 44页
2.3 分析方法综述 48页
2.3.1 功能分解法 48页
2.3.2 数据流法 49页
2.3.3 信息建模法 50页
2.3.4 面向对象的分析 51页
2.3.5 分析方法的比较 51页
2.3.6 OOA 的主要优点 53页
2.4 各种 OOA 方法 55页
第三章 本书的 OOA 方法概貌 57页
3.1 引言 57页
3.2 主要概念及表示法 58页
3.3 OOA 的主要原则 59页
3.4 OOA 模型及详细说明 62页
3.4.1 基本模型--类图 63页
3.4.2 补充模型--主题图、use case和交互图 63页
3.4.3 详细说明 64页
3.4.4 完整的 OOA 文档及详简程度的控制 64页
3.5 OOA 过程 65页
3.6 OOA 与 OOD 的关系 67页
3.7 技术支持 68页
第四章 发现对象,建立对象类 69页
4.1 对象、主动对象以及它们的类 69页
4.2 表示法 71页
4.3 研究问题域和用户需求 71页
4.3.1 研究用户需求,明确系统责任 71页
4.3.2 研究问题域 72页
4.3.3 确定系统边界 73页
4.4 发现对象 74页
4.4.1 出发点——问题域和系统责任 74页
4.4.2 正确地运用抽象原则 75页
4.4.3 策略与启发 76页
4.4.4 审查和筛选 78页
4.4.5 识别主动对象 79页
4.5 对象分类,建立类图的对象层 80页
4.5.1 异常情况的检查和调整 80页
4.5.2 类的命名 81页
4.5.3 建立类图的对象层 81页
4.6 例子 82页
第五章 定义属性与服务 87页
5.1 对象的属性和服务 87页
5.2 表示法 88页
5.3 定义属性 89页
5.3.1 策略与启发 89页
5.3.2 审查与筛选 90页
5.3.3 推迟到 OOD 考虑的问题 91页
5.3.4 属性的命名和定位 92页
5.3.5 属性的详细说明 92页
5.4 定义服务 92页
5.4.1 对象的状态与状态转换图 92页
5.4.2 行为分类 95页
5.4.3 发现服务的策略与启发 95页
5.4.4 审查与调整 96页
5.4.5 认识对象的主动行为 97页
5.4.6 服务的命名和定位 98页
5.4.7 服务的详细说明 98页
5.5 建立类图的特征层 99页
5.6 例子 99页
第六章 定义结构与连接 104页
6.1 一般-特殊结构 104页
6.1.1 一般-特殊结构及其用途 104页
6.1.2 表示法 106页
6.1.3 如何发现一般-特殊结构 107页
6.1.4 审查与调整 109页
6.1.5 一般-特殊结构的简化 111页
6.1.6 多继承及多态性问题 113页
6.1.7 调整对象层和特征层 116页
6.2 整体-部分结构 116页
6.2.1 整体-部分结构及其用途 116页
6.2.2 表示法 120页
6.2.3 如何发现整体-部分结构 121页
6.2.4 审查与筛选 122页
6.2.5 整体-部分结构的进一步运用 122页
6.2.5.1 简化对象的定义 123页
6.2.5.2 支持软件复用 123页
6.2.5.3 表示数量不定的组成部分 125页
6.2.5.4 表示动态变化的对象特征 125页
6.2.6 调整对象层和属性层 126页
6.3 实例连接 127页
6.3.1 简单的实例连接 127页
6.3.2 复杂的实例连接及其表示 129页
6.3.2.1 采用复杂的实例连接概念 129页
6.3.2.2 用对象表示实例连接的复杂性 131页
6.3.3 三元(及多元)关联问题 132页
6.3.4 如何建立实例连接 133页
6.3.5 对象层、特征层的增补及实例连接说明 135页
6.4 消息连接 136页
6.4.1 什么是消息 136页
6.4.1.1 顺序系统中的消息 136页
6.4.1.2 并发系统中的消息 138页
6.4.1.3 消息对 OOA 的意义 140页
6.4.2 OOA 对消息的表示--消息连接 141页
6.4.3 如何建立消息连接 144页
6.4.3.1 建立控制线程内部的消息连接 144页
6.4.3.2 建立控制线程之间的消息连接 144页
6.4.3.3 对象分布问题及其对消息的影响 145页
6.4.4 消息的详细说明 146页
6.5 例子 146页
第七章 划分主题 151页
7.1 主题概念的引入及其用途 151页
7.2 主题的表示法 153页
7.3 如何划分主题 154页
7.3.1 低层主题的划分 154页
7.3.2 主题合并 155页
7.3.3 主题层次的控制 155页
7.3.4 异常问题的处理 157页
7.4 主题图的形成 158页
7.5 例子 159页
第八章 use case和交互图 163页
8.1 系统边界与活动者 163页
8.1.1 什么是系统边界 163页
8.1.2 什么是活动者 164页
8.1.3 系统边界与活动者对 OOA 的意义 165页
8.1.4 如何发现活动者 166页
8.1.5 例子--超级市场销售管理系统 168页
8.2 use case 169页
8.2.1 什么是 use case 169页
8.2.2 use case对 OOA 的意义 170页
8.2.3 表示形式和例子 171页
8.2.4 如何定义 use case 172页
8.2.5 关于 use case概念的若干问题讨论 174页
8.3 交互图 176页
8.3.1 交互图及其表示方法 176页
8.3.2 交互图的用途 178页
8.3.3 如何建立交互图 178页
8.3.4 一些复杂问题的处理 179页
8.3.5 关于交互图描述策略的讨论 183页
8.4 开发过程和文档组织 184页
第九章 详细说明 187页
9.1 详细说明的组织层次 187页
9.2 类描述模板 188页
9.2.1 模板:一种支持机器理解的详细说明方式 188页
9.2.2 类描述模板的内容 189页
9.2.3 关系的说明策略 191页
9.2.4 类描述模板的基本格式 192页
9.2.5 类描述模板的建立过程及 CASE 工具支持 193页
9.3 完整的 OOA 文档 193页
第十章 OOA 与软件复用 194页
10.1 软件复用 194页
10.1.1 概述 194页
10.1.2 可复用构件 198页
10.1.3 构件库 199页
10.1.4 软件复用的根本困难 202页
10.2 专向领域的复用及领域分析 204页
10.2.1 可复用的软件构架 205页
10.2.2 领域分析 206页
10.2.3 基于构件 /构架的软件开发 207页
10.3 OOA 对软件复用的支持 209页
10.3.1 支持软件复用的 OO 概念与原则 209页
10.3.2 支持软件复用的 OOA 方法 210页
10.4 复用技术对 OOA 的支持 212页
参考文献 218页
索引 220页
1.1 什么是面向对象 16页
1.2 从认识论看面向对象方法的形成 18页
1.2.1 软件开发--对事物的认识和描述 18页
1.2.2 语言的鸿沟 19页
1.2.3 编程语言的发展使鸿沟变窄 19页
1.2.4 软件工程学的作用 21页
1.2.5 面向对象是软件方法学的返朴归真 26页
1.3 面向对象方法的主要概念 26页
1.3.1 对象 27页
1.3.2 类 28页
1.3.3 封装 29页
1.3.4 继承 31页
1.3.5 消息 32页
1.3.6 结构与连接 33页
1.3.7 多态性 34页
1.3.8 永久对象 35页
1.3.9 主动对象 35页
1.3.10 术语对照 37页
1.4 面向对象方法的历史及现状 38页
1.4.1 历史 38页
1.4.2 OO 方法发展到软件工程的前期阶段 40页
1.4.3 当前的研究及实践领域 41页
第二章 为什么需要 OOA 44页
2.1 什么是 OOA 44页
2.2 分析面临的主要问题 44页
2.3 分析方法综述 48页
2.3.1 功能分解法 48页
2.3.2 数据流法 49页
2.3.3 信息建模法 50页
2.3.4 面向对象的分析 51页
2.3.5 分析方法的比较 51页
2.3.6 OOA 的主要优点 53页
2.4 各种 OOA 方法 55页
第三章 本书的 OOA 方法概貌 57页
3.1 引言 57页
3.2 主要概念及表示法 58页
3.3 OOA 的主要原则 59页
3.4 OOA 模型及详细说明 62页
3.4.1 基本模型--类图 63页
3.4.2 补充模型--主题图、use case和交互图 63页
3.4.3 详细说明 64页
3.4.4 完整的 OOA 文档及详简程度的控制 64页
3.5 OOA 过程 65页
3.6 OOA 与 OOD 的关系 67页
3.7 技术支持 68页
第四章 发现对象,建立对象类 69页
4.1 对象、主动对象以及它们的类 69页
4.2 表示法 71页
4.3 研究问题域和用户需求 71页
4.3.1 研究用户需求,明确系统责任 71页
4.3.2 研究问题域 72页
4.3.3 确定系统边界 73页
4.4 发现对象 74页
4.4.1 出发点——问题域和系统责任 74页
4.4.2 正确地运用抽象原则 75页
4.4.3 策略与启发 76页
4.4.4 审查和筛选 78页
4.4.5 识别主动对象 79页
4.5 对象分类,建立类图的对象层 80页
4.5.1 异常情况的检查和调整 80页
4.5.2 类的命名 81页
4.5.3 建立类图的对象层 81页
4.6 例子 82页
第五章 定义属性与服务 87页
5.1 对象的属性和服务 87页
5.2 表示法 88页
5.3 定义属性 89页
5.3.1 策略与启发 89页
5.3.2 审查与筛选 90页
5.3.3 推迟到 OOD 考虑的问题 91页
5.3.4 属性的命名和定位 92页
5.3.5 属性的详细说明 92页
5.4 定义服务 92页
5.4.1 对象的状态与状态转换图 92页
5.4.2 行为分类 95页
5.4.3 发现服务的策略与启发 95页
5.4.4 审查与调整 96页
5.4.5 认识对象的主动行为 97页
5.4.6 服务的命名和定位 98页
5.4.7 服务的详细说明 98页
5.5 建立类图的特征层 99页
5.6 例子 99页
第六章 定义结构与连接 104页
6.1 一般-特殊结构 104页
6.1.1 一般-特殊结构及其用途 104页
6.1.2 表示法 106页
6.1.3 如何发现一般-特殊结构 107页
6.1.4 审查与调整 109页
6.1.5 一般-特殊结构的简化 111页
6.1.6 多继承及多态性问题 113页
6.1.7 调整对象层和特征层 116页
6.2 整体-部分结构 116页
6.2.1 整体-部分结构及其用途 116页
6.2.2 表示法 120页
6.2.3 如何发现整体-部分结构 121页
6.2.4 审查与筛选 122页
6.2.5 整体-部分结构的进一步运用 122页
6.2.5.1 简化对象的定义 123页
6.2.5.2 支持软件复用 123页
6.2.5.3 表示数量不定的组成部分 125页
6.2.5.4 表示动态变化的对象特征 125页
6.2.6 调整对象层和属性层 126页
6.3 实例连接 127页
6.3.1 简单的实例连接 127页
6.3.2 复杂的实例连接及其表示 129页
6.3.2.1 采用复杂的实例连接概念 129页
6.3.2.2 用对象表示实例连接的复杂性 131页
6.3.3 三元(及多元)关联问题 132页
6.3.4 如何建立实例连接 133页
6.3.5 对象层、特征层的增补及实例连接说明 135页
6.4 消息连接 136页
6.4.1 什么是消息 136页
6.4.1.1 顺序系统中的消息 136页
6.4.1.2 并发系统中的消息 138页
6.4.1.3 消息对 OOA 的意义 140页
6.4.2 OOA 对消息的表示--消息连接 141页
6.4.3 如何建立消息连接 144页
6.4.3.1 建立控制线程内部的消息连接 144页
6.4.3.2 建立控制线程之间的消息连接 144页
6.4.3.3 对象分布问题及其对消息的影响 145页
6.4.4 消息的详细说明 146页
6.5 例子 146页
第七章 划分主题 151页
7.1 主题概念的引入及其用途 151页
7.2 主题的表示法 153页
7.3 如何划分主题 154页
7.3.1 低层主题的划分 154页
7.3.2 主题合并 155页
7.3.3 主题层次的控制 155页
7.3.4 异常问题的处理 157页
7.4 主题图的形成 158页
7.5 例子 159页
第八章 use case和交互图 163页
8.1 系统边界与活动者 163页
8.1.1 什么是系统边界 163页
8.1.2 什么是活动者 164页
8.1.3 系统边界与活动者对 OOA 的意义 165页
8.1.4 如何发现活动者 166页
8.1.5 例子--超级市场销售管理系统 168页
8.2 use case 169页
8.2.1 什么是 use case 169页
8.2.2 use case对 OOA 的意义 170页
8.2.3 表示形式和例子 171页
8.2.4 如何定义 use case 172页
8.2.5 关于 use case概念的若干问题讨论 174页
8.3 交互图 176页
8.3.1 交互图及其表示方法 176页
8.3.2 交互图的用途 178页
8.3.3 如何建立交互图 178页
8.3.4 一些复杂问题的处理 179页
8.3.5 关于交互图描述策略的讨论 183页
8.4 开发过程和文档组织 184页
第九章 详细说明 187页
9.1 详细说明的组织层次 187页
9.2 类描述模板 188页
9.2.1 模板:一种支持机器理解的详细说明方式 188页
9.2.2 类描述模板的内容 189页
9.2.3 关系的说明策略 191页
9.2.4 类描述模板的基本格式 192页
9.2.5 类描述模板的建立过程及 CASE 工具支持 193页
9.3 完整的 OOA 文档 193页
第十章 OOA 与软件复用 194页
10.1 软件复用 194页
10.1.1 概述 194页
10.1.2 可复用构件 198页
10.1.3 构件库 199页
10.1.4 软件复用的根本困难 202页
10.2 专向领域的复用及领域分析 204页
10.2.1 可复用的软件构架 205页
10.2.2 领域分析 206页
10.2.3 基于构件 /构架的软件开发 207页
10.3 OOA 对软件复用的支持 209页
10.3.1 支持软件复用的 OO 概念与原则 209页
10.3.2 支持软件复用的 OOA 方法 210页
10.4 复用技术对 OOA 的支持 212页
参考文献 218页
索引 220页
面向对象的系统分析
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×