描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302513933丛书名: 21世纪高等学校规划教材·软件工程
本书论述浅显易懂,书中内容翔实、立论严谨、实例丰富、图文并茂。本书适合作为高等学校软件工程、计算机及相关专业的教材,也可作为工程技术人员的参考书。
目录
第1章面向对象方法论
1.1面向对象概念
1.1.1对象
1.1.2类
1.1.3对象图
1.1.4属性
1.1.5操作和方法
1.1.6封装
1.1.7继承
1.1.8多重继承
1.1.9消息
1.1.10结构与连接
1.1.11多态性
1.1.12永久对象
1.1.13主动对象
1.1.14对象类的表示方法
1.2链接与关联
1.2.1一般概念
1.2.2重数
1.2.3关联的重要性
1.2.4三元关联
1.2.5关联的候选关键字
1.2.6异或关联
1.2.7资格符
1.2.8链接属性
1.2.9用关联模型化为类
1.2.10角色名
1.2.11排序
1.2.12资格关联
1.3聚合
1.3.1聚合与关联
1.3.2聚合和概括
1.3.3递归聚合
1.3.4操作的传播
1.3.5物理聚合与分类聚合
1.3.6物理聚合的语义扩展
1.3.7分类聚合的语义扩展
1.4面向对象实例
1.4.1问题概述
1.4.2对象及其类的分析
1.4.3类的属性与方法分析
1.4.4类的描述(C )
1.4.5类的描述(C )实验
1.5对象、类描述实验
1.5.1实验问题域概述
1.5.2实验1
小结
综合练习
第2章面向对象建模
2.1统一建模语言
2.1.1UML的发展
2.1.2统一建模语言的内容
2.1.3统一建模语言的主要特点
2.1.4统一建模语言的应用领域
2.2UML的基本图标
2.3基本规则
2.3.1UML的基本元素
2.3.2UML的语法规则
2.3.3UML的词别
2.4对象模型技术
2.4.1对象模型
2.4.2动态模型
2.4.3功能模型
2.4.4三种模型的联系
2.5软件体系结构
2.6用UML描述ATM机
2.6.1问题概述
2.6.2系统模型
2.7面向对象UML实验
2.7.1实验问题域概述
2.7.2实验2
小结
综合练习
第3章发现对象、建立对象类
3.1对象、主动对象以及它们的类
3.2表示法
3.3研究问题域和用户需求
3.3.1研究用户需求,明确系统责任
3.3.2研究问题域
3.3.3确定系统边界
3.4发现对象
3.4.1发现对象技术概要
3.4.2正确地运用抽象原则
3.4.3策略与启发
3.4.4审查和筛选
3.4.5发现对象方法
3.5对象分类,建立类图的对象层
3.5.1异常情况的检查和调整
3.5.2类的命名
3.5.3建立类图的对象层
3.6电梯控制系统的对象
3.6.1功能需求
3.6.2发现对象
3.6.3对象层表示
3.7发现对象实验
3.7.1实验问题域概述
3.7.2实验3
小结
综合练习
第4章定义属性与服务
4.1对象的属性和服务
4.2表示法
4.3定义属性
4.3.1策略与启发
4.3.2审查与筛选
4.3.3推迟到OOD考虑的问题
4.3.4属性的命名和定位
4.3.5属性的详细说明
4.4定义服务
4.4.1对象的状态与状态转换图
4.4.2行为分类
4.4.3发现服务的策略与启发
4.4.4审查与调整
4.4.5认识对象的主动行为
4.4.6服务的命名和定位
4.4.7服务的详细说明
4.5建立类图的特征层
4.6电梯例子
4.6.1电梯系统的属性描述
4.6.2电梯系统的服务定义
4.6.3电梯系统的特征层
4.7对象的属性与服务实验
4.7.1实验问题域概述
4.7.2实验4
小结
综合练习
第5章定义结构与连接
5.1整体—部分结构
5.1.1整体—部分结构及其用途
5.1.2表示法
5.1.3如何发现整体—部分结构
5.1.4审查与筛选
5.1.5简化对象的定义
5.1.6支持软件复用
5.1.7整体—部分结构的进一步运用
5.1.8调整对象层和属性层
5.2一般—特殊结构
5.2.1一般—特殊结构及其用途
5.2.2表示法
5.2.3如何发现一般—特殊结构
5.2.4审查与调整
5.2.5多继承及多态性问题
5.2.6一般—特殊结构的简化
5.2.7调整对象层和特征层
5.3实例连接
5.3.1简单的实例连接
5.3.2复杂的实例连接及其表示
5.3.3三元关联问题
5.3.4如何建立实例连接
5.3.5对象层、特征层的增补及实例连接说明
5.4消息连接
5.4.1消息的定义
5.4.2顺序系统中的消息
5.4.3并发系统中的消息
5.4.4消息对OOA的意义
5.4.5OOA对消息的表示——消息连接
5.5如何建立消息连接
5.5.1建立控制线程内部的消息连接
5.5.2建立控制线程之间的消息连接
5.5.3对象分布问题及其消息的影响
5.6消息的详细说明
5.7电梯控制系统部分关系结构
5.7.1一般—特殊关系
5.7.2整体—部分关系
5.7.3连接
5.7.4电梯控制系统的关系层
5.8结构与连接实验
5.8.1实验问题域概述
5.8.2实验5
小结
综合练习
第6章控制驱动部分的设计
6.1类型一致性原则
6.2闭合行为原则
6.3什么是控制驱动部分
6.4相关技术问题
6.4.1系统总体方案
6.4.2软件体系结构
6.4.3分布式系统的体系结构风格
6.4.4系统的并发性
6.5如何设计控制驱动部分
6.5.1选择软件体系结构风格
6.5.2确定系统分布方案
6.5.3识别控制流
6.5.4用主动对象表示控制流
6.5.5把控制驱动部分看作一个主题
6.6医院的信息管理
6.6.1系统概述
6.6.2设计约束
6.6.3设计策略
6.6.4系统总体结构
6.6.5逻辑设计
6.6.6物理设计
6.6.7子系统的结构与功能
6.7系统结构设计实验
6.7.1实验问题域概述
6.7.2实验6
小结
综合练习
第7章对象设计
7.1对象设计综述
7.1.1从分析和系统结构着手
7.1.2对象设计的步骤
7.1.3对象模型工具
7.2组合三种模型
7.3设计算法
7.3.1选择算法
7.3.2选择数据结构
7.3.3定义内部类和操作
7.3.4指定操作的职责
7.4设计优化
7.4.1添加冗余关联获取有效访问
7.4.2重新安排执行次序以获得效率
7.4.3保存导出属性避免重复计算
7.5控制实现
7.5.1在程序内进行状态设置
7.5.2状态机器引擎
7.5.3控制作为并发任务
7.6继承的调整
7.6.1重新安排类和操作
7.6.2抽象出公共的行为
7.6.3使用授权共享实现
7.7关联设计
7.7.1分析关联遍历
7.7.2单向关联
7.7.3双向关联
7.7.4链接属性
7.8对象的表示
7.9物理打包
7.9.1信息隐藏
7.9.2实体的相关性
7.9.3构造模块
7.10设计决策文档
7.11ATM的对象设计实例
7.11.1问题概述
7.11.2ATM系统类图
7.12对象设计实验
7.12.1实验问题域概述
7.12.2实验7
小结
综合练习
第8章数据库及其接口设计
8.1数据管理系统及其选择
8.2数据库系统
8.2.1面向对象技术
8.2.2面向对象数据库的应用
8.2.3应用程序设计程序
8.2.4面向对象数据库的化
8.3技术整合
8.4数据接口
8.5对象存储方案和数据接口的设计策略
8.5.1针对文件系统的设计
8.5.2针对RDBMS的设计
8.5.3使用OODBMS
8.6数据库设计实验
8.6.1实验问题域概述
8.6.2实验8
小结
综合练习
第9章人机交互部分的设计
9.1什么是人机交互部分
9.2人机交互部分的需求分析
9.2.1分析活动者——与系统交互的人
9.2.2从Use Case分析人机交互
9.2.3分析处理异常事件的人机交互
9.2.4命令的组织
9.2.5输出信息的组织结构
9.2.6总结与讨论
9.3人机界面的设计准则
9.4人机界面OO设计
9.4.1界面支持系统
9.4.2界面元素
9.4.3设计过程与策略
9.5可视化编程环境下的人机界面设计
9.5.1问题的提出
9.5.2设计的必要性
9.5.3基于可视化编程环境的设计策略
9.6人机界面设计实验
9.6.1实验问题域概述
9.6.2实验9
小结
综合练习
附录A习题参考答案
参考文献
前言
1. 编写意图
随着科学技术的进步,新的软件理论与开发方法不断涌现。面向对象技术是指导计算机软件开发的工程科学技术。面向对象的概念、原理、技术与方法已成为计算机科学与技术中的重要内容。
用面向对象技术进行软件设计与开发的先进性是众所周知的,在计算机科学技术领域中面向对象技术占据了无可争议的主流地位。但是这种技术的流行背后却隐含着涉足者的艰难。作为软件技术人员,要掌握这样一个概念抽象的系统技术,需要阅读很多书籍和文献,特别是要有一个实际软件开发的工作过程。接受面向对象技术的概念并不难,但是要真正理解、掌握和运用这门先进的技术,完整地进行系统开发,是有一定难度的。鉴于此,我们编写了这本应用方法类的书,其目的是向读者提供一本关于面向对象系统分析、设计和实施方法的教科书,以使更多同行受益。
2. 有关本书
本书旨在介绍面向对象技术的系统分析、设计和实施的知识。从广义上来说,系统分析、设计和实施指的是专业人员创建或维护信息系统的过程。
3. 本书特点
本书对于每章的概念进行了严格的论述。每一个概念都有相应的例子解释。特别是每章都配有练习题。
4. 适用范围
本书可作为软件系统开发课程的教科书,讲授时间为32学时左右,适用于开设有面向对象系统开发课程或者软件工程课程的大学高年级本科和低年级研究生课程。
在选修本课程之前,读者应该具有计算机的基础知识,同时具有Visual类语言或者C/C 语言的编程经验,这将有助于深入理解信息系统开发过程。
5. 编写方法
本书是作者根据自己近二十年来对软件工程学、面向对象方法等的教学与研究,以及作者领导或参与的20项软件项目开发的实际应用经验,并结合软件开发新技术编写而成。根据作者的教学经验,读者想学习一门新技术,教材是非常重要的。因此,在编写本书之前,作者在各方面进行了充分的准备。
6. 如何使用本书
本书分为9章。根据读者的实际情况,教师在教授本书时,可以按照自己的风格和喜好删除章节,也可以根据教学目标灵活调整章节顺序。
第1章面向对象方法论(建议4学时)
第2章面向对象建模(建议4学时)
第3章发现对象、建立对象类(建议4学时)
第4章定义属性与服务(建议4学时)
第5章定义结构与连接(建议4学时)
第6章控制驱动部分的设计(建议4学时)
第7章对象设计(建议4学时)
第8章数据库及其接口设计(建议2学时)
第9章人机交互部分的设计(建议2学时)
本书在编写过程中获得广东理工学院李代平负责的广东省级重点学科建设项目“计算机科学与技术”一级学科课题的支持。除作者外,还有广东理工学院信息工程系的杨成义、杨挺来也做了部分工作。由于软件工程知识面广,在介绍中不能面面俱到,加上时间仓促,作者水平有限,书中的不足之处在所难免,恳请读者批评指正。
7. 配套资源
本书提供配套的电子课件(PPT),供教师们教学使用,可以从清华大学出版社官方网站www.tup.com.cn下载。关于课件下载和使用中的问题,请联系本书责任编辑[email protected]。
编者
2018年12月
于振华楼
评论
还没有评论。