顶部
收藏

软件工程实践教程:基于开源和群智的方法


作者:
毛新军,王涛,余跃
定价:
42.00元
ISBN:
978-7-04-052423-9
版面字数:
530.000千字
开本:
16开
全书页数:
暂无
装帧形式:
平装
重点项目:
暂无
出版时间:
2019-08-13
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机类专业核心课程
三级分类:
软件工程

本书是软件工程课程实践教学方面的教材,针对实践教学的特点及要求,以培养学生解决复杂工程问题能力和软件工程素质为目标,围绕实践教学任务的设计、实施和考评三个方面,阐述如何转变思想和观念,基于群智方法、借助开源软件,克服现行实践教学方法的局限性,提高软件工程课程实践教学成效及人才培养水平。

全书设计了两项相对独立、逐级递进的实践任务。一是分析和维护开源软件,二是开发软件系统,并结合具体案例详细介绍了这两项实践任务的实施细节及方法,阐明了如何借助开源软件及群智知识来开展软件开发实践,以及如何采用定性和定量相结合、人工和自动相结合的方式对实践行为和结果进行系统考评。

本书可作为计算机大类专业的软件工程课程教材,也可作为软件工程师的参考用书。为便于教学,提供了丰富的教学资源,包括支撑实践教学的软件开发文档模板,完整的软件项目案例及其软件制品,电子教案PPT 和教学视频,互联网上的学习社区,支撑软件工具等。

  • 前辅文
  • 第1章 绪论
    • 1.1 背景
      • 1.1.1 计算机软件的变化
      • 1.1.2 软件工程的发展
      • 1.1.3 对软件工程专业教育和人才培养提出的要求
    • 1.2 软件工程课程的特点
    • 1.3 软件工程课程实践教学的目标和要求
    • 1.4 现行实践教学存在的问题
    • 1.5 互联网技术和开源社区带来的启发
    • 1.6 软件工程课程实践教学的指导思想
    • 1.7 本书应用案例说明
    • 1.8 本书的内容组织
    • 本章小结
    • 实践作业
  • 第2章 软件工程基础
    • 2.1 软件工程概述
      • 2.1.1 软件工程的思想
      • 2.1.2 软件工程的目标
    • 2.2 软件开发过程模型与方法
      • 2.2.1 瀑布模型
      • 2.2.2 原型模型
      • 2.2.3 增量模型
      • 2.2.4 迭代模型
      • 2.2.5 螺旋模型
      • 2.2.6 敏捷方法
      • 2.2.7 群体化开发方法
    • 2.3 面向对象软件工程
      • 2.3.1 核心概念
      • 2.3.2 基本思想
      • 2.3.3 技术特点
    • 2.4 统一建模语言UML
      • 2.4.1 UML 概述
      • 2.4.2 UML 的图
    • 2.5 软件项目的组织方式
      • 2.5.1 结对模式
      • 2.5.2 团队模式
      • 2.5.3 社区模式
    • 本章小结
    • 实践作业
  • 第3章 群智软件工程及其在实践教学中的应用
    • 3.1 群智软件工程概述
      • 3.1.1 产生背景
      • 3.1.2 核心概念和思想
    • 3.2 群体化软件开发技术及其在实践教学中的应用
      • 3.2.1 基于Issue 的任务管理
      • 3.2.2 基于Git 的代码管理
      • 3.2.3 基于Pull Request 的分布式协同开发
      • 3.2.4 在实践教学中应用群体化软件开发技术
    • 3.3 软件开发知识分享及其在实践教学中的应用
      • 3.3.1 编程知识问答社区及Stack Overflow
      • 3.3.2 技术资讯社区及CSDN
      • 3.3.3 在实践教学中应用软件开发知识
    • 3.4 开源软件及其在实践教学中的应用
      • 3.4.1 开源软件托管社区
      • 3.4.2 开源软件项目资源
      • 3.4.3 基于开源软件的软件开发
      • 3.4.4 在实践教学中应用开源软件
    • 本章小结
    • 实践作业
  • 第4章 实践任务的设计与要求
    • 4.1 实践教学的设计理念与指导思想
      • 4.1.1 以能力和素质培养为主要目标
      • 4.1.2 基于群智的实践教学方法
      • 4.1.3 循序渐进逐层递进地开展实践
    • 4.2 实践任务的整体设计
    • 4.3 分析和维护开源软件实践任务的设计
      • 4.3.1 实践内容
      • 4.3.2 实践要求
    • 4.4 开发软件系统实践任务的设计
      • 4.4.1 实践内容
      • 4.4.2 实践要求
    • 本章小结
    • 实践作业
  • 第5章 实践支撑软件工具
    • 5.1 实践支撑工具概述
    • 5.2 软件开发工具
      • 5.2.1 软件建模工具
      • 5.2.2 编码实现工具
      • 5.2.3 软件测试工具
      • 5.2.4 代码质量分析工具
      • 5.2.5 软件文档撰写工具
    • 5.3 实践实施工具
      • 5.3.1 实践任务管理和协同开发工具Trustie-Forge
      • 5.3.2 代码阅读和标注工具Trustie-Codepedia
      • 5.3.3 群智资源检索工具Trustie-Ossean
      • 5.3.4 群体化学习工具LearnerHub
      • 5.3.5 软件开发实训工具Trustie-EduCoder
    • 本章小结
    • 实践作业
  • 第6章 实践任务一:分析和维护开源软件
    • 6.1 实践实施过程及原则
      • 6.1.1 实施过程和活动
      • 6.1.2 实施原则和要求
      • 6.1.3 实践输出及成果
    • 6.2 实践实施的准备工作
      • 6.2.1 选择开源软件
      • 6.2.2 组织实践人员
      • 6.2.3 布置实践任务和创建实践项目
      • 6.2.4 加载开源代码和运行开源软件
      • 6.2.5 访问和加入开源社区
    • 6.3 实践案例介绍:小米便签开源软件
    • 6.4 阅读开源代码
      • 6.4.1 泛读开源代码
      • 6.4.2 实践成果
    • 6.5 分析代码质量
      • 6.5.1 人工分析
      • 6.5.2 自动分析
      • 6.5.3 实践成果
    • 6.6 标注开源代码
      • 6.6.1 理解代码语义
      • 6.6.2 标注代码
      • 6.6.3 实践成果
    • 6.7 维护开源软件
      • 6.7.1 纠正代码缺陷
      • 6.7.2 完善开源软件的功能
      • 6.7.3 演示维护后的开源软件
      • 6.7.4 实践成果
    • 6.8 借助开源社区中的群智资源开展实践
    • 6.9 实践总结
    • 6.10 实践设计的剪裁
    • 本章小结
    • 实践作业
  • 第7章 实践任务二:开发软件系统
    • 7.1 实践实施过程及原则
      • 7.1.1 实施过程和活动
      • 7.1.2 实施原则和要求
      • 7.1.3 实践输出及成果
    • 7.2 实践实施的准备工作
      • 7.2.1 宣传和动员
      • 7.2.2 布置实践任务
      • 7.2.3 组织实践人员
      • 7.2.4 访问和加入开源社区
    • 7.3 实践案例介绍:“空巢老人智能看护系统”
    • 7.4 需求获取与分析
      • 7.4.1 任务、过程与输出
      • 7.4.2 实践要求与原则
      • 7.4.3 软件需求获取与构思
      • 7.4.4 软件需求建模与分析
      • 7.4.5 软件需求文档化与评审
      • 7.4.6 迭代开发过程中的软件需求变更管理
    • 小结
    • 7.5 软件设计与建模
      • 7.5.1 任务、过程与输出
      • 7.5.2 软件设计的策略和原则
      • 7.5.3 软件体系结构设计
      • 7.5.4 用户界面设计
      • 7.5.5 用例设计
      • 7.5.6 子系统/ 构件设计
      • 7.5.7 类设计
      • 7.5.8 数据设计
      • 7.5.9 软件设计的整合、文档化及评审
    • 小结
    • 7.6 代码编写与测试
      • 7.6.1 任务、过程与输出
      • 7.6.2 编写代码
      • 7.6.3 软件测试
      • 7.6.4 程序调试和修复
      • 7.6.5 部署和运行
    • 小结
    • 7.7 借助开源社区中的群智资源开展实践
      • 7.7.1 在软件开发知识分享社区中寻找问题的解答
      • 7.7.2 在开源社区中与软件开发者群体进行交互
      • 7.7.3 搜寻和重用开源软件
    • 7.8 实践总结
    • 7.9 实践设计的剪裁
    • 本章小结
    • 实践作业
  • 第8章 实践考评方法
    • 8.1 实践考评的原则
    • 8.2 实践考评的手段
    • 8.3 分析和维护开源软件实践的考评方法
      • 8.3.1 考评内容
      • 8.3.2 考评方法
      • 8.3.3 持续点评
    • 8.4 开发软件系统实践的考评方法
      • 8.4.1 考评内容
      • 8.4.2 考评方法
      • 8.4.3 持续点评
    • 8.5 实践实施及成效
    • 本章小结
    • 实践作业
  • 后记
  • 参考文献

“软件工程实践教程:基于群智的方法”数字课程与纸质教材紧密配合,为读者提供实践课件、软件文档模板、软件开发实践案例资源、重要内容讲解视频等辅助教学内容。丰富了知识的呈现形式,拓展了教材内容,可有效帮助读者提升课程学习的效果,并为读者自主学习提供思维与探索的空间。

相关图书