軟體工程(北京大學提供的慕課)

軟體工程(北京大學提供的慕課)

本詞條是多義詞,共48個義項
更多義項 ▼ 收起列表 ▲

軟體工程課程是北京大學於2018年9月20日首次在中國大學MOOC開設的慕課課程、國家精品線上開放課程國家級精品資源共享課國家級一流本科課程。該課程授課教師為孫艷春、黃罡劉譞哲。據2021年3月中國大學MOOC官網顯示,該課程已開課6次。

軟體工程課程共12個章節,包括軟體工程概論、軟體過程、軟體需求、結構化分析方法、結構化設計方法、UML、面向對象分析、面向對象設計、編碼實現、敏捷開發方法等內容。

基本介紹

  • 中文名:軟體工程
  • 類別:慕課、國家精品線上開放課程、國家級精品資源共享課、國家級一流本科課程
  • 提供院校:北京大學
  • 授課平台:中國大學MOOC
  • 開課時間:2018年9月20日(首次)
  • 授課教師:孫艷春、黃罡、劉譞哲
課程性質,課程背景,課程定位,適應對象,開課信息,課程簡介,課程大綱,課前預備,預備知識,學習資料,授課目標,所獲榮譽,教師簡介,

課程性質

課程背景

隨著信息技術的發展,軟體已經深入到人類社會生產和生活的各個方面。軟體工程將工程化的方法運用到軟體的開發、運行和維護之中,以達到提高軟體質量,降低開發成本的目的。軟體工程已經成為21世紀最活躍、最熱門的學科之一。在此背景下,北京大學開設了軟體工程MOOC課程。

課程定位

軟體工程課程是一門導論性課程。

適應對象

軟體工程課程適合計算機專業和軟體工程專業的本科生,以及從事軟體開發和項目管理工作的人員。

開課信息

開課次數
開課時間
授課教師
學時安排
參與人數
第1次開課
2018年09月20日~2018年12月31日
孫艷春
3~4小時/周
20225人
第2次開課
2019年02月18日~2019年06月13日
孫艷春、黃罡、劉譞哲
3~5學時/周
10883人
第3次開課
2019年09月09日~2019年12月31日
16094人
第4次開課
2020年02月17日~2020年06月11日
3~5小時/周
23935人
第5次開課
2020年09月14日~2021年01月06日
11961人
第6次開課
2021年02月22日~2021年06月24日
待定
(註:表格內容參考資料

課程簡介

軟體工程課程介紹了軟體工程所涉及的各方面知識,包括軟體過程、軟體需求、結構化分析和設計方法、面向對象分析和設計方法、敏捷開發方法、軟體測試、軟體項目管理、軟體開發工具和環境。該課程還包含了實踐環節,通過一個小型軟體項目,幫助體驗軟體開發的各個環節,並形成項目管理的意識。

課程大綱

第1次開課課程大綱
第1章 軟體工程概論、軟體過程
第2章 軟體需求
第3章 結構化方法1
第4章 結構化方法2
第5章 面向對象方法1
第6章 面向對象方法2
第7章 面向對象方法3
第8章 面向對象方法4與敏捷開發方法
第9章 軟體測試
第10章 軟體項目管理
第11章 軟體開發工具和環境
第2~5次開課課程大綱
第一周:軟體工程概論
軟體的定義及特點
軟體工程的起源和概念
軟體開發的本質和基本手段
軟體工程框架
補充材料-軟體工程新視野
第一周:軟體過程
軟體生存周期過程的概念
軟體生存周期過程的分類
軟體生存周期模型的概念
常見的軟體生存周期模型
第一周:課程介紹
課程宣傳片
課程簡介
第二周:軟體需求
需求的作用
需求的定義
需求的分類
需求發現
需求規約的概念和格式
需求規約的作用
項目的需求及需求規約
第三周:結構化分析方法
結構化分析方法的概念
結構化分析模型
結構化分析過程
需求規格說明書
【補充】結構化分析案例
【補充】需求驗證
第三周:結構化設計方法-1
結構化設計概念
初始模組結構圖的設計
初始模組結構圖精化的原則
【補充】總體設計案例
第四周:結構化設計方法-2
初始模組結構圖精化的啟發式規則
接口設計
數據設計
第四周:結構化設計方法-3
詳細設計工具
軟體設計規約
結構化方法總結
【補充】軟體設計評審
第一次課程實踐
第五周:UML-1
面向對象的概念
UML的概念
表達客觀事物的術語——類
第五周:UML-2
表達客觀事物的術語——接口及其他
控制複雜性的術語——包
表達關係的術語——關聯
表達關係的術語——泛化、細化、依賴及如何使用
第六周:UML-3
UML的模型表達工具_概述
UML的模型表達工具_靜態建模——類圖
UML模型表達工具_動態建模——用況圖
第六周:UML-4
順序圖
狀態圖
UML總結
第七周:面向對象分析
面向對象分析概述
識別類
識別屬性和操作
識別對象之間的關係
【補充】面向對象分析案例
第七周:面向對象設計-1
面向對象設計概述
問題域部分的概念
如何進行問題域部分的設計
第二次課程實踐
第八周:面向對象設計-2
人機互動部分的設計
控制驅動和數據管理部分的設計
第八周:面向對象編程
程式設計范型和面向對象程式語言的特點發展
如何選擇程式語言
第八周:敏捷開發方法
敏捷開發概述
極限編程
敏捷設計
Scrum模型
第九周:軟體測試-1
軟體測試的概念
軟體測試過程模型和原則
白盒測試技術
第九周:軟體測試-2
黑盒測試技術
軟體測試的步驟
第十周:項目管理
項目管理的概念
項目管理框架和要素
軟體項目管理的概念
第十周:CMM
CMM概念及發展
CMM的基本內容
CMM五級標準
ISO9000標準
第三次課程實踐
第十一周:軟體開發工具與環境
軟體開發工具及環境的定義
工具集成模型
常用的軟體開發工具和環境
補充材料-移動web軟體分析與最佳化
第6次開課課程大綱
第一周:軟體工程概論
軟體的定義及特點
軟體工程的起源和概念
軟體開發的本質和基本手段
軟體工程框架
補充材料-軟體工程新視野
第一周:軟體過程
軟體生存周期過程的概念
軟體生存周期過程的分類
軟體生存周期模型的概念
常見的軟體生存周期模型
第一周:課程介紹
課程宣傳片
課程簡介
第二周:軟體需求
需求的作用
需求的定義
需求的分類
需求發現
需求規約的概念和格式
需求規約的作用
項目的需求及需求規約
第三周:結構化分析方法
結構化分析方法的概念
結構化分析模型
結構化分析過程
需求規格說明書
【補充】結構化分析案例
【補充】需求驗證
第三周:結構化設計方法-1
結構化設計概念
初始模組結構圖的設計
初始模組結構圖精化的原則
【補充】總體設計案例
第四周:結構化設計方法-2
初始模組結構圖精化的啟發式規則
接口設計
數據設計
第四周:結構化設計方法-3
詳細設計工具
軟體設計規約
結構化方法總結
【補充】軟體設計評審
第一次課程實踐
第五周:UML-1
面向對象的概念
UML的概念
表達客觀事物的術語——類
第五周:UML-2
表達客觀事物的術語——接口及其他
控制複雜性的術語——包
表達關係的術語——關聯
表達關係的術語——泛化、細化、依賴及如何使用
第六周:UML-3
UML的模型表達工具_概述
UML的模型表達工具_靜態建模——類圖
UML模型表達工具_動態建模——用況圖
第六周:UML-4
順序圖
狀態圖
UML總結
第七周:面向對象分析
面向對象分析概述
識別類
識別屬性和操作
識別對象之間的關係
【補充】面向對象分析案例
第七周:面向對象設計-1
面向對象設計概述
問題域部分的概念
如何進行問題域部分的設計
第二次課程實踐
第八周:面向對象設計-2
人機互動部分的設計
控制驅動和數據管理部分的設計
【補充】面向對象設計案例
第八周:編碼實現
程式設計范型和面向對象程式語言的特點發展
如何選擇程式語言
【補充】代碼風格與編程規範
第八周:敏捷開發方法
Scrum模型
敏捷開發概述
極限編程
敏捷設計
第九周:軟體測試-1
軟體測試的概念
軟體測試過程模型和原則
白盒測試技術
第九周:軟體測試-2
黑盒測試技術
軟體測試的步驟
第十周:項目管理
項目管理的概念
項目管理框架和要素
軟體項目管理的概念
【補充】軟體質量
第十周:CMM
CMM概念及發展
CMM的基本內容
CMM五級標準
ISO9000標準
第三次課程實踐
第十一周:軟體開發工具與環境
軟體開發工具及環境的定義
工具集成模型
常用的軟體開發工具和環境
補充材料-移動web軟體分析與最佳化
第十二周(補充內容):軟體維護與再工程
軟體維護的概念
軟體維護活動
程式修改
軟體再工程模型
逆向工程
(註:課程大綱從左至右列出,表格內容參考資料

課前預備

預備知識

學習軟體工程課程需熟悉一門高級程式設計語言。

學習資料

書名
作者
ISBN
出版時間
出版社
《軟體工程(第3版)》
王立福,孫艷春、劉學洋
9787301159132
2009年
北京大學出版社
《軟體工程:實踐者的研究方法(第8版)》
Roger S.、Pressman
9787111499312
2015年
機械工業出版社
《軟體工程(第9版)》
Ian Sommerville
9787111334989
2011年
《IT項目管理》
Kathy Schwalbe
9787111509561
2014年
《軟體測試(原書第2版)》
Ron Patton
7111185269
2005年
《面向對象的分析與設計》
邵維忠、楊芙清
9787302301202
2012年
清華大學出版社
《計算機科學技術百科全書(第二版)》
張效祥
9787302105947
2005年
《軟體測試實驗教程》
朱少民等
9787302523734
2019年
(註:表格內容參考資料

授課目標

  • 從整體上了解軟體工程知識體系,熟悉軟體項目開發的全過程;
  • 掌握軟體開發和維護的方法學,了解軟體開發過程和軟體項目管理基礎知識;
  • 通過案例教學和課程實踐培養軟體開發和維護的能力;
  • 通過課程實踐,培養軟體項目管理的意識,即對一個軟體項目的工作量、成本、進度和人員的計畫和管理。

所獲榮譽

2016年,軟體工程課程被教育部確定為第一批“國家級精品資源共享課”;
2019年,軟體工程課程被認定為國家精品線上開放課程;
2020年,軟體工程課程被教育部認定為首批“國家級一流本科課程”(線上一流課程)。

教師簡介

孫艷春,博士,北京大學信息科學技術學院副教授;
黃罡,博士,北京大學教授、博導,軟體研究所副所長,作業系統研究中心主任;
劉譞哲,博士,北京大學信息科學技術學院副教授,博士生導師。

相關詞條

熱門詞條

聯絡我們