描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787302366379丛书名: 软件工程系列教材
内容简介
张家浩编著的《软件架构设计实践教程》是为计 算机软件工程专业高年级学生或研究生“软件体系结 构”课程而编写的教材(含实践内容),包括基本概 念和案例分析、实践及思考题等。
全书共9章,分别是第1章认识软件架构,第2章 架构与架构师的作用,第3章软件架构的描述与可视 化,第4章从需求到架构,第5章软件架构设计的参考 模型,第6章软件架构的概要设计与实现,第7章基于 接口、组件和SOA的架构设计与实现,第8章基于MVC 设计模式的架构设计与实现,第9章基于关键需求的 架构设计、验证与评审。
本书与其他同类教科书的不同之处在于,作者根 据多年企业工作和学校相关课程教学的经验,结 合 学生的实际情况和特点,有所选择地强化了相关课程 中从关键需求分析到概要设计、接口和组件设计、 MVC模式应用、架构测试和验证等针对性、实用性强 ,学生看得见、摸得着,能感受、有兴趣学的软件架 构知识和动手实践内容,淡化了软件架构的形式化描 述等学生难于理解和把握且过于理论化的内容。
本书形式与内容编排与同类教科书有较大变化, 在简短的基本概念介绍之后,配备大量的配套案例分 析,希望能够帮助学生理解概念,并获得真实的架构 体验。同时,在案例介绍中尽可能地采用当前比较流 行的平台和工具,使学生在了解和掌握相关知识之后 ,马上就可以使用,缩短了学校与企业实际运用之间 的距离。
教程每章还配有实践题和思考题,方便老师和学 生使用。本书主要用作软件工程相关专业的“软件体 系结构”课程,也可作为其他相关专业的教学用书, 或作为从事软件开发的科技人员的参考书、培训教材 等。
全书共9章,分别是第1章认识软件架构,第2章 架构与架构师的作用,第3章软件架构的描述与可视 化,第4章从需求到架构,第5章软件架构设计的参考 模型,第6章软件架构的概要设计与实现,第7章基于 接口、组件和SOA的架构设计与实现,第8章基于MVC 设计模式的架构设计与实现,第9章基于关键需求的 架构设计、验证与评审。
本书与其他同类教科书的不同之处在于,作者根 据多年企业工作和学校相关课程教学的经验,结 合 学生的实际情况和特点,有所选择地强化了相关课程 中从关键需求分析到概要设计、接口和组件设计、 MVC模式应用、架构测试和验证等针对性、实用性强 ,学生看得见、摸得着,能感受、有兴趣学的软件架 构知识和动手实践内容,淡化了软件架构的形式化描 述等学生难于理解和把握且过于理论化的内容。
本书形式与内容编排与同类教科书有较大变化, 在简短的基本概念介绍之后,配备大量的配套案例分 析,希望能够帮助学生理解概念,并获得真实的架构 体验。同时,在案例介绍中尽可能地采用当前比较流 行的平台和工具,使学生在了解和掌握相关知识之后 ,马上就可以使用,缩短了学校与企业实际运用之间 的距离。
教程每章还配有实践题和思考题,方便老师和学 生使用。本书主要用作软件工程相关专业的“软件体 系结构”课程,也可作为其他相关专业的教学用书, 或作为从事软件开发的科技人员的参考书、培训教材 等。
目 录
第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.2 软件架构概述
1.2.1 软件架构的定义
1.2.2 软件架构的视角
1.2.3 软件架构的表示方法
1.2.4 架构的一般特性
1.2.5 统一过程(RUP)的架构
1.3 感受身边的架构存在
1.3.1 电灯开关控制系统的架构
1.3.2 鼠标接口的架构
1.4 两个小程序的架构分析
1.4.1 两个小程序
1.4.2 “欢迎”程序的实现过程
1.4.3 小程序的架构实现小结
1.5 实践与思考
1.5.1 实践题
1.5.2 思考题
第2章 架构与架构师的作用
2.1 架构是需求将如何被实现的描述
2.1.1 文件传输软件的架构描述与分析
2.1.2 文件传输软件的新需求及其改进方案
2.1.3 架构描述表达了系统必须实现的需求
2.1.4 架构描述表达了软件系统的实现结构
2.2 架构提供满足关键属性需求的方案
2.2.1 汽车控制系统架构演变的案例分析
2.2.2 软件系统的关键质量属性需求
2.2.3 关键质量属性需求与系统功能的正交性
2.3 架构是软件迭代开发的框架
2.3.1 架构是软件迭代开发的框架
2.3.2 软件产品开发对架构的依赖
2.4 架构是软件过程管理的基础
2.4.1 软件过程可视性与软件架构
2.4.2 软件过程管理的基本内容
2.4.3 微软VSTS的软件过程跟踪
2.4.4 将架构的关键构件设定为基线
2.5 软件过程对架构的反作用
2.5.1 需求影响架构
2.5.2 系统设计影响架构
2.5.3 软件过程影响架构
2.5.4 组织影响架构
2.5.5 架构的反作用
2.6 软件架构师的作用、任务与责任
2.6.1 架构师的作用
2.6.2 架构师的任务与责任
2.6.3 从编码工程师到架构师
2.7 实践与思考
2.7.1 实践题
2.7.2 思考题
第3章 软件架构的描述与可视化
3.1 架构描述与UML架构视图
3.1.1 架构描述的基本考虑
3.1.2 基于UML 4+1的软件架构视图
3.2 绘制软件架构视图
3.2.1 用Visio 2007绘制架构视图
3.2.2 用Rational Rose 2003绘制架构视图
3.2.3 用VS 2010绘制架构视图
3.2.4 架构师的思考
3.3 使用Rational Rose逆向分析工具分析架构
3.3.1 Rational Rose逆向分析工具概述
3.3.2 对C++项目进行架构逆向分析
3.3.3 “欢迎”程序架构的逆向分析
3.3.4 架构师的思考
3.4 用微软VS 2010逆向分析工具分析架构
3.4.1 微软VS 2010逆向分析工具概述
3.4.2 使用VS 2010对五子棋程序进行架构逆向分析
3.4.3 “五子棋”系统架构的逆向分析
3.4.4 架构师的思考
3.5 架构设计阶段的软件工程文档
3.5.1 系统设计规范的内容
3.5.2 规范系统设计活动过程
3.5.3 规范设计的制品
3.5.4 需要编写哪些架构视图和文档
3.5.5 透过架构视图表现架构设计的核心内容
3.6 实践与思考
3.6.1 实践题
3.6.2 思考题
……
第4章 从需求到架构
第5章 软件架构设计的参考模型
第6章 软件架构的概要设计与实现
第7章 基于接口、组件和SOA的架构设计与实现
第8章 基于MVC设计模式的架构设计与实现
第9章 基于关键需求的架构设计、验证与评审
参考文献
1.1 软件架构与软件工程
1.1.1 软件产业的工业化与现代化
1.1.2 软件系统的复杂性
1.1.3 克服“软件危机”的进程
1.1.4 现代软件产业发展的时代特征
1.1.5 国内软件产业发展的问题
1.1.6 软件架构与软件工程课程的关系
1.1.7 本课程的参考书
1.2 软件架构概述
1.2.1 软件架构的定义
1.2.2 软件架构的视角
1.2.3 软件架构的表示方法
1.2.4 架构的一般特性
1.2.5 统一过程(RUP)的架构
1.3 感受身边的架构存在
1.3.1 电灯开关控制系统的架构
1.3.2 鼠标接口的架构
1.4 两个小程序的架构分析
1.4.1 两个小程序
1.4.2 “欢迎”程序的实现过程
1.4.3 小程序的架构实现小结
1.5 实践与思考
1.5.1 实践题
1.5.2 思考题
第2章 架构与架构师的作用
2.1 架构是需求将如何被实现的描述
2.1.1 文件传输软件的架构描述与分析
2.1.2 文件传输软件的新需求及其改进方案
2.1.3 架构描述表达了系统必须实现的需求
2.1.4 架构描述表达了软件系统的实现结构
2.2 架构提供满足关键属性需求的方案
2.2.1 汽车控制系统架构演变的案例分析
2.2.2 软件系统的关键质量属性需求
2.2.3 关键质量属性需求与系统功能的正交性
2.3 架构是软件迭代开发的框架
2.3.1 架构是软件迭代开发的框架
2.3.2 软件产品开发对架构的依赖
2.4 架构是软件过程管理的基础
2.4.1 软件过程可视性与软件架构
2.4.2 软件过程管理的基本内容
2.4.3 微软VSTS的软件过程跟踪
2.4.4 将架构的关键构件设定为基线
2.5 软件过程对架构的反作用
2.5.1 需求影响架构
2.5.2 系统设计影响架构
2.5.3 软件过程影响架构
2.5.4 组织影响架构
2.5.5 架构的反作用
2.6 软件架构师的作用、任务与责任
2.6.1 架构师的作用
2.6.2 架构师的任务与责任
2.6.3 从编码工程师到架构师
2.7 实践与思考
2.7.1 实践题
2.7.2 思考题
第3章 软件架构的描述与可视化
3.1 架构描述与UML架构视图
3.1.1 架构描述的基本考虑
3.1.2 基于UML 4+1的软件架构视图
3.2 绘制软件架构视图
3.2.1 用Visio 2007绘制架构视图
3.2.2 用Rational Rose 2003绘制架构视图
3.2.3 用VS 2010绘制架构视图
3.2.4 架构师的思考
3.3 使用Rational Rose逆向分析工具分析架构
3.3.1 Rational Rose逆向分析工具概述
3.3.2 对C++项目进行架构逆向分析
3.3.3 “欢迎”程序架构的逆向分析
3.3.4 架构师的思考
3.4 用微软VS 2010逆向分析工具分析架构
3.4.1 微软VS 2010逆向分析工具概述
3.4.2 使用VS 2010对五子棋程序进行架构逆向分析
3.4.3 “五子棋”系统架构的逆向分析
3.4.4 架构师的思考
3.5 架构设计阶段的软件工程文档
3.5.1 系统设计规范的内容
3.5.2 规范系统设计活动过程
3.5.3 规范设计的制品
3.5.4 需要编写哪些架构视图和文档
3.5.5 透过架构视图表现架构设计的核心内容
3.6 实践与思考
3.6.1 实践题
3.6.2 思考题
……
第4章 从需求到架构
第5章 软件架构设计的参考模型
第6章 软件架构的概要设计与实现
第7章 基于接口、组件和SOA的架构设计与实现
第8章 基于MVC设计模式的架构设计与实现
第9章 基于关键需求的架构设计、验证与评审
参考文献
评论
还没有评论。