顶部
收藏

软件设计与体系结构

“十一五”国家规划教材

作者:
齐治昌
定价:
27.00元
ISBN:
978-7-04-028408-9
版面字数:
430.000千字
开本:
16开
全书页数:
294页
装帧形式:
平装
重点项目:
“十一五”国家规划教材
出版时间:
2010-02-05
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
软件工程专业课程

软件工程强调以工程化思想和方法开发软件,而软件设计作为软件开发过程中的核心活动之一,对开发出满足需要的高质量软件起关键作用。本书对软件设计以及软件体系结构的相关思想、理论与方法进行了系统的介绍,包括软件设计与软件体系结构在软件工程中的地位和作用、软件设计的基本方法与原则、统一建模语言UML 2.0、面向对象的软件设计方法、面向数据流的软件设计方法、人机界面设计、软件体系结构风格与设计模式、基于构件的软件体系结构、软件体系结构评估、软件设计的进化等内容。本书包含了作者多年来在软件开发实践、软件工程教学和科研活动中的认识与体会,并结合了大量的案例分析,力求全书内容与组织结构的系统性、先进性、基础性和实用性。

本书可作为高等院校计算机科学与技术专业、软件工程专业或信息类相关专业的本科生和研究生教材,以培养学生的软件设计思维能力以及方法和技术的运用能力,同时也适用于开发人员和项目管理人员在软件开发实践中参考。

  • 第1章 软件工程与软件设计
    • 1.1 软件工程
      • 1.1.1 软件概述
      • 1.1.2 软件危机
      • 1.1.3 软件工程的概念
      • 1.1.4 软件工程的目标与原则
    • 1.2 软件的生存周期
    • 1.3 软件开发过程模型
      • 1.3.1 瀑布模型
      • 1.3.2 快速原型模型
      • 1.3.3 螺旋模型
      • 1.3.4 统一软件开发过程
    • 1.4 软件设计
      • 1.4.1 软件设计的重要性
      • 1.4.2 软件设计的特征
      • 1.4.3 软件设计的要素
    • 1.5 软件体系结构
      • 1.5.1 软件体系结构的定义
      • 1.5.2 软件体系结构的发展历程
      • 1.5.3 软件体系结构的内容
    • 1.6 小结
    • 习题
    • 参考文献
  • 第2章 统一建模语言UML
    • 2.1 UML概述
      • 2.1.1 UML的发展历程
      • 2.1.2 UML的特点和用途
      • 2.1.3 UML 2.0的建模机制
    • 2.2 面向对象开发方法
      • 2.2.1 基本概念
      • 2.2.2 面向对象方法的优势
    • 2.3 UML 2.0结构建模
      • 2.3.1 类图
      • 2.3.2 包图
      • 2.3.3 对象图
      • 2.3.4 构件图
      • 2.3.5 组合结构图
      • 2.3.6 部署图
    • 2.4 UML 2.0行为建模
      • 2.4.1 活动图
      • 2.4.2 顺序图
      • 2.4.3 通信图
      • 2.4.4 交互概览图
      • 2.4.5 时序图
      • 2.4.6 状态图
      • 2.4.7 用例图
    • 2.5 小结
    • 习题
    • 参考文献
  • 第3章 软件设计基础
    • 3.1 软件设计的基本概念
      • 3.1.1 抽象与逐步求精
      • 3.1.2 模块化与信息隐藏
      • 3.1.3 内聚与耦合
    • 3.2 软件设计过程
      • 3.2.1 软件设计的一般过程
      • 3.2.2 软件设计的主要活动
    • 3.3 软件设计的质量
    • 3.4 软件体系结构设计
      • 3.4.1 软件体系结构设计方法概述
      • 3.4.2 软件体系结构设计的步骤
    • 3.5 高可信软件设计
      • 3.5.1 可信软件的特点
      • 3.5.2 容错设计
      • 3.5.3 软件失效模式和影响分析
      • 3.5.4 软件故障树分析
      • 3.5.5 形式化方法
      • 3.5.6 净室方法
      • 3.5.7 嵌入式和实时软件设计
    • 3.6 软件设计规格说明
    • 3.7 软件设计评审
    • 3.8 小结
    • 习题
    • 参考文献
  • 第4章 面向对象的软件设计方法
    • 4.1 基于UML的分析与设计过程
    • 4.2 用例分析与设计
      • 4.2.1 确定用例
      • 4.2.2 生成用例图
      • 4.2.3 用例设计描述
    • 4.3 概念模型和顶层架构设计
      • 4.3.1 概念模型设计
      • 4.3.2 顶层架构设计
    • 4.4 用户界面设计
    • 4.5 数据模型设计
    • 4.6 设计精化
      • 4.6.1 精化软件架构
      • 4.6.2 调整软件构成类
      • 4.6.3 精化交互模型
      • 4.6.4 精化类之间的关系
    • 4.7 类设计
      • 4.7.1 精化类的属性与操作
      • 4.7.2 类的行为模型设计
    • 4.8 部署模型设计
    • 4.9 小结
    • 习题
    • 参考文献
  • 第5章 面向数据流的软件设计方法
    • 5.1 数据流图与数据字典
    • 5.2 实体关系图
    • 5.3 面向数据流的分析过程
      • 5.3.1 建立数据流模型
      • 5.3.2 过程规格说明
    • 5.4 面向数据流的设计过程
      • 5.4.1 变换流与事务流
      • 5.4.2 变换分析
      • 5.4.3 事务分析
    • 5.5 启发式设计策略
    • 5.6 小结
    • 习题
    • 参考文献
  • 第6章 用户界面设计
    • 6.1 界面设计的基本原则
    • 6.2 设计良好界面的主要途径
      • 6.2.1 使系统处于用户控制之中
      • 6.2.2 减少用户记忆负担
      • 6.2.3 保持界面一致性
    • 6.3 用户界面的分析与设计过程
      • 6.3.1 界面交互方式
      • 6.3.2 界面分析和设计模型
      • 6.3.3 分析与设计过程
    • 6.4 用户界面分析
      • 6.4.1 用户分析
      • 6.4.2 任务分析和建模
      • 6.4.3 内容展示分析
      • 6.4.4 工作环境分析
    • 6.5 用户界面设计
      • 6.5.1 界面对象、动作和布局的定义
      • 6.5.2 界面设计需考虑的问题
    • 6.6 用户界面原型
    • 6.7 界面设计的评估
    • 6.8 小结
    • 习题
    • 参考文献
  • 第7章 软件体系结构风格与设计模式
    • 7.1 基本概念
    • 7.2 软件体系结构描述语言
      • 7.2.1 Wright ADL
      • 7.2.2 图形化体系结构描述语言
    • 7.3 软件体系结构风格
      • 7.3.1 管道/过滤器风格
      • 7.3.2 层次风格
      • 7.3.3 客户/服务器风格
    • 7.4 设计模式
      • 7.4.1 Factory Method(工厂方法)
      • 7.4.2 Abstract Factory(抽象工厂)
      • 7.4.3 Singleton(单件)
      • 7.4.4 Composite(组合)
      • 7.4.5 Proxy(代理)
      • 7.4.6 Iterator(迭代器)
      • 7.4.7 Observer(观察者)
    • 7.5 小结
    • 习题
    • 参考文献
  • 第8章 基于分布构件的体系结构
    • 8.1 EJB分布构件框架
      • 8.1.1 EJB简介
      • 8.1.2 实例
      • 8.1.3 原理分析
      • 8.1.4 其他说明
    • 8.2 DCOM分布构件框架
      • 8.2.1 DCOM的基本概念
      • 8.2.2 整体结构
      • 8.2.3 实例
      • 8.2.4 对原理的进一步分析
    • 8.3 CORBA分布构件框架
      • 8.3.1 基本体系结构
      • 8.3.2 实例分析
      • 8.3.3 完整体系结构
    • 8.4 小结
    • 习题
    • 参考文献
  • 第9章 软件体系结构评估
    • 9.1 软件体系结构评估概述
      • 9.1.1 评估时机和参与人员
      • 9.1.2 评估结果和质量属性
      • 9.1.3 评估的益处和代价
    • 9.2 软件体系结构评估方法
      • 9.2.1 ATAM方法
      • 9.2.2 SAAM方法
      • 9.2.3 ARID方法
    • 9.3 实例分析
      • 9.3.1 ATAM方法实例
      • 9.3.2 SAAM方法实例
    • 9.4 小结
    • 习题
    • 参考文献
  • 第10章 软件设计的进化
    • 10.1 遗留系统
    • 10.2 软件的进化策略
      • 10.2.1 进化策略的分类
      • 10.2.2 进化策略的选择
    • 10.3 软件再工程
      • 10.3.1 业务过程重构
      • 10.3.2 软件再工程的过程模型
      • 10.3.3 软件再工程中的经济因素
      • 10.3.4 信息恢复的级别和方法
    • 10.4 软件体系结构的进化
      • 10.4.1 软件体系结构进化的过程
      • 10.4.2 软件体系结构的恢复
      • 10.4.3 软件体系结构的改善
    • 10.5 代码重构和数据重构
    • 10.6 软件移植
    • 10.7 小结
    • 习题
    • 参考文献

相关图书