课程育人目标

学习软件质量保证课程具有重要的意义,不仅可以指导我们以科学的态度和方式做好本职工作,还可以进一步指导我们提高日常的学习和生活的质量。为了学好这门课程,不仅需要深入理解其中的理论、方法和技术,还要结合国家层面关于质量的大政方针,特别是国务院颁布的质量发展纲要,紧密结合自己的工作、生活和学习情况,理论联系实际,学以致用,不断提高理论和实际应用水平。

教学目标

通过学习,深刻理解软件质量保障的重要性,了解软件质量工程体系及其代表性的模型或理论(如CMM、TQM、六西格玛和零缺陷管理等),建立正确的质量文化和理念,掌握软件开发和维护过程中的质量保证措施和管理方法,灵活运用质量管理工具,为将来从事软件开发、测试或管理等工作打下良好的基础。

教学内容大纲及讲义

  1. 智能化软件质量保证概论
    • 1.1 软件与智能化软件
    • 1.2 质量与质量观
    • 1.3 软件质量
      • 1.3.1 软件可靠性
      • 1.3.2 软件安全性
    • 1.4 软件度量与软件质量度量
    • 1.5 质量发展纲要
  2. 软件质量保证的重要过程和管理
    • 2.1 软件评审与审计(Review and Audit)
    • 2.2 V & V
    • 2.3 QA&QC
    • 2.4 软件缺陷管理
    • 2.5 软件配置管理
    • 2.6 软件项目的风险管理
    • 2.7 质量管理
    • 2.8 软件质量管理
    • 2.9 全面质量管理
  3. 软件生命周期过程中的质量保证
    • 3.1 需求分析的质量
    • 3.2 软件设计的质量
    • 3.3 软件编码的质量
    • 3.4 软件测试的质量
    • 3.5 软件发布的质量
    • 3.6 软件维护的质量
  4. 软件质量保证体系
    • 4.1 与软件质量相关的职业
    • 4.2 软件质量工具
    • 4.3 软件质量经济学
    • 4.4 软件质量保证的组织
    • 4.5 软件质量保证的计划
    • 4.6 软件质量的工程体系
    • 4.7 软件质量保证文档模板
    • 4.8 软件质量保证的标准
      • 4.8.1 ISO
      • 4.8.2 CMM
      • 4.8.3 六西格玛标准
  5. 软件质量保证的其他方法
    • 5.1 形式化方法
    • 5.2 模型检查(model checking)
    • 5.3 定理证明
    • 5.4 仿真
    • 5.5 容错计算
    • 5.6 区块链
  1. 软件服务的新环境
    • 6.1 云计算
    • 6.2 雾计算
    • 6.3 边缘计算
    • 6.4 普适计算
    • 6.5 物联网
    • 6.6 工业4.0与互联网+
    • 6.7 微课视频-通信技术的黄金时代-1G通信到6G通信
    • 扎尔伯格讲什么是元宇宙
  2. 软件新形式
    • 7.1 多核与并发系统
    • 7.2 中间件
    • 7.3 分布式系统
    • 7.4 软件agent
    • 7.5 Cybernatic Physical System
    • 7.6 移动应用软件
    • 7.7 智能化软件/人工智能软件
    • 7.8 网构软件(Internetware)
    • 7.9 知件(Knowware)
    • 7.10学件(Learnware)
  3. 群智化与敏捷化开发
    • 8.1 软件生产线
    • 8.2 Devops
    • 8.3-8.5 群智软件工程(开源,生态系统和众包)
  4. 软件智能化技术
    • 9.1 MSR(Mining Software Repository)
    • 9.2 数据挖掘
    • 9.3 机器学习
    • 9.4 知识图谱
    • 9.5 统计预测
    • 9.6 人工智能
  5. 软件智能化开发支撑技术
    • 10.1 软件分析
    • 10.2 软件演化
    • 10.3 软件体系结构
    • 10.4 Design Pattern
    • 10.5 软件重构
    • 10.6 软件控制论
    • 10.7 软件工程的理论与方法

Slides 将定期更新,目前仅限南京大学校园网访问.

参考书

聂长海 编著

智能化软件质量保证的概念与方法

机械工业出版社 2020 北京

教材内容简介

系统介绍智能化软件质量保证的相关概念、理论和方法,特别是关于智能化软件的一些新概念、新特性、新技术、新平台和新的应用场景、对智能化软件质量和软件质量保证智能化提出的一些新要求或提供的一些新手段。覆盖的知识点超过了传统教材的一倍以上,大大扩充了传统软件质量保证教材的内涵和外延,可以很好地适应智能化时代软件定义与实现一切的社会需求。