Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Beihang University

软件工程基础

Beihang University via XuetangX

Overview

Google, IBM & Meta Certificates – 40% Off
One Coursera Plus subscription covers most Professional Certificates on Coursera.
Unlock All Certificates





课程概述

《软件工程基础》围绕软件从需求到演化的全生命周期,系统介绍软件工程的基本概念、过程、方法与工具。课程强调质量、成本与效率的平衡,帮助学习者由算法实现转向系统开发,由经验驱动转向工程方法,由个人编程转向团队协作。

学习目标

  1. 理解算法、程序与软件的区别,掌握软件工程的目标、三要素及基本原则。

  2. 理解典型软件过程模型与敏捷方法,建立项目计划、跟踪、风险、质量和配置管理意识。

  3. 掌握需求获取、分析、建模、规约、确认与管理的基本方法。

  4. 理解概要设计与详细设计的任务,能够辨识面向对象和面向过程的主要模型及常见架构模式。

  5. 理解编码、调试、软件测试、部署、维护与演化的基本活动及其衔接。

  6. 认识大模型辅助软件开发的新方式,重视对生成产物的理解、控制与质量验证。

课程内容

  1. 软件工程导论:课程定位、工程化思维与大模型时代的软件工程师。

  2. 软件与软件工程:软件概念、分类与开源许可证,软件危机、发展历史、目标、原则及生成式开发。

  3. 软件过程与项目管理:经典过程模型、敏捷开发,以及过程、产品与团队管理。

  4. 需求工程:需求获取、精化与规约,面向对象和面向过程建模,需求确认、文档与管理。

  5. 软件概要设计:设计过程、架构模型与常见架构模式。

  6. 软件详细设计:用例与类设计、持久化设计、面向过程设计及文档评审。

  7. 软件实现:语言选择、编码技术、缺陷调试与用户文档。

  8. 软件测试:白盒与黑盒测试,单元、集成、确认、系统与验收测试及测试管理。

  9. 软件部署、维护与演化:部署方法、维护类型、重构与再工程。

学习组织

课程按九章组织49个知识点视频,另设开篇与最终章,共51个视频单元,配有中文字幕。建议按目录顺序学习,将需求、设计、实现和测试方法联系到熟悉的小型软件案例,关注各阶段产物之间的一致性与可追踪性。

适合人群

适合具备程序设计基础、希望系统学习软件工程方法的学习者,以及希望从个人编程进一步理解系统开发与团队协作的学习者。



Syllabus

  • 开篇
    • 第1章 软件工程导论
      • 1.1 课程介绍与软件工程开篇
      • 1.2 大模型时代的软件工程师
      • 1.3 课程目标、安排与评价方式
    • 第2章 软件与软件工程
      • 2.1 软件的概念:算法、程序与软件
      • 2.2 软件分类与开源许可证
      • 2.3 软件发展、软件危机与启示
      • 2.4 软件工程的基本概念
      • 2.5 软件工程的发展历史
      • 2.6 软件工程目标与三要素
      • 2.7 软件工程原则与基本观点
      • 2.8 生成式软件开发
    • 第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 需求文档与需求管理
    • 第5章 软件概要设计
      • 5.1 软件设计概述
      • 5.2 软件设计过程
      • 5.3 面向对象架构模型
      • 5.4 面向过程架构模型
      • 5.5 架构设计模式
    • 第6章 软件详细设计
      • 6.1 详细设计概述
      • 6.2 面向对象详细设计:用例与类设计
      • 6.3 面向对象详细设计:持久化设计
      • 6.4 面向过程详细设计
      • 6.5 设计文档与评审
    • 第7章 软件实现
      • 7.1 软件实现概论
      • 7.2 编程语言与语言选择
      • 7.3 编码技术
      • 7.4 编码缺陷与调试
      • 7.5 实现管理与用户文档
    • 第8章 软件测试
      • 8.1 软件测试概论
      • 8.2 白盒测试
      • 8.3 黑盒测试
      • 8.4 单元测试与集成测试
      • 8.5 确认、系统与验收测试
      • 8.6 软件测试管理
    • 第9章 软件部署、维护与演化
      • 9.1 软件部署
      • 9.2 软件维护
      • 9.3 软件演化
    • 最终章
      • 结业考试

        Taught by

        YANG YILONG and Yang Renyu

        Tags

        Reviews

        Start your review of 软件工程基础

        Never Stop Learning.

        Get personalized course recommendations, track subjects and courses with reminders, and more.

        Someone learning on their laptop while sitting on the floor.