軟體工程專業導論是哈爾濱工業大學於2015年9月21日首次在中國大學MOOC開設的慕課課程、國家精品課程。該課程授課教師為徐曉飛、戰德臣、聶蘭順、徐漢川、塗志瑩等。截至2020年9月,據中國大學MOOC官網顯示,該課程已開課10次。
軟體工程專業導論共11講,包括軟體工程之啟蒙--初識軟體工程專業、計算思維之起步--符號化-計算化與自動化、軟體與程式思想--組合-抽象-重複-構造-遞歸、軟體之靈魂--算法、軟體系統構造--函式-對象-組件-服務、軟體的生命周期、理解問題--軟體需求、軟體技術與藝術結合--軟體設計、軟體工程技術--軟體測試與維護、軟體工程管理--軟體項目管理、軟體之人才–軟體工程教育與職業發展。
基本介紹
- 中文名:軟體工程專業導論
- 提供院校:哈爾濱工業大學
- 類別:慕課、國家精品課
- 授課教師:徐曉飛、戰德臣、聶蘭順、徐漢川、塗志瑩等
- 授課平台:中國大學MOOC
- 開課時間:2015年9月21日(首次)
課程性質
- 課程定位
開課信息
開課次數 | 開課時間 | 授課教師 | 學時安排 | 參與人數 |
---|---|---|---|---|
第1次開課 | 2015年09月21日~2016年02月29日 | 徐曉飛、戰德臣、聶蘭順、陳鄞、徐漢川、塗志瑩 | 3~5小時每周 | 12244 |
第2次開課 | 2016年09月05日~2017年01月13日 | 9658 | ||
第3次開課 | 2017年04月03日~2017年07月30日 | 徐曉飛、戰德臣、聶蘭順、陳鄞、徐漢川、塗志瑩 | 4小時每周 | 8024 |
第4次開課 | 2017年09月04日~2018年01月07日 | 3~4小時每周 | 8103 | |
第5次開課 | 2018年04月02日~2018年07月15日 | 3~5小時每周 | 6632 | |
第6次開課 | 2018年09月03日~2018年12月31日 | 8984 | ||
第7次開課 | 2019年02月25日~2019年06月30日 | 4782 | ||
第8次開課 | 2019年09月02日~2019年12月31日 | 5882 | ||
第9次開課 | 2020年02月10日~2020年05月31日 | 4~6小時每周 | 8152 | |
第10次開課 | 2020年08月31日~2020年12月28日 | 3~4小時每周 | 待定 | |
表格內容參考資料 |
課程簡介
課程大綱
第一講 軟體之啟蒙--初識軟體工程專業 | 第六講 軟體生命周期 |
0.0軟體工程專業導論課程引言 | 6.1軟體特性與軟體生命周期模型 |
1.1開始認識軟體工程 | 6.2基本軟體過程與軟體模型 |
1.2軟體工程的基本概念 | 6.3模型驅動與軟體方法論 |
1.3計算機發展歷程及趨勢 | 6.4軟體環境與雲環境 |
1.4軟體工程的發展及趨勢 | 本講精簡版視頻 |
1.5軟體工程專業學科及範疇 | 本講模擬練習題(不計分) |
1.6軟體工程的知識體系 | 本講教學課件(PDF文檔) |
本講模擬練習題(不計分) | 【討論6-1】為什麼要提出軟體生命周期,有什麼作用,要解決什麼問題? |
本講教學課件(PDF文檔) | 第6講測驗(計分測驗) |
【討論1-1】什麼是軟體工程?軟體工程專業主要是做什麼的? | 第七講 理解問題--軟體需求 |
第1講測驗(計分測驗) | 7.1為什麼要理解需求 |
第二講 計算思維起步--符號化、計算化與自動化 | 7.2理解需求的一種方法:結構化思維及其舉例 |
2.1思維能否計算--邏輯的符號化與計算化 | 7.3再談需求分析 |
2.2圖像能否隱藏信息--非數學的符號化與計算化 | 7.4場景理解示例及本講小結 |
2.3怎樣實現自動計算--計算與硬體 | 本講精簡版視頻 |
2.4怎樣實現複雜計算的自動化--計算與機器級程式及其執行 | 本講模擬練習題(不計分) |
2.5怎樣編寫程式--高級語言 | 本講教學課件(PDF文檔) |
基礎內容--信息表示、進位制及轉換與小數點之處理 | 【討論7-1】“盲人摸象”的例子說明了什麼問題? |
本講精簡版視頻 | 第7講測驗(計分測驗) |
本講模擬練習題(不計分) | 第八講 軟體的藝術--軟體設計 |
本講教學課件(PDF文檔) | 8.1什麼是軟體設計及軟體設計範疇 |
【討論2-1】學習了“符號化-計算化-自動化”,你有收穫嗎? | 8.2軟體設計的一種思維:面向對象的思維及其設計舉例 |
第2講測驗(計分測驗) | 8.3軟體設計的藝術--三個軟體設計示例 |
第三講 軟體與程式思想--組合-抽象-重複-構造-遞歸 | 8.4軟體設計的本質 |
3.1為什麼需要程式--程式與計算系統 | 本講精簡版視頻 |
3.2基於運算組合式的構造示例--組合與抽象 | 本講模擬練習題(不計分) |
3.3遞歸與疊代--重複性構造的表達與執行 | 本講教學課件(PDF文檔) |
3.4用計算機語言實現遞歸和疊代 | 【討論8-1】什麼是設計?什麼是軟體設計? |
基礎內容:高級語言程式的構成要素及其執行 | 第8講測驗(計分測驗) |
本講精簡版視頻 | 第九講 軟體工程技術-軟體測試與維護 |
本講模擬練習題(不計分) | 9.1軟體質量 |
本講教學課件(PDF文檔) | 9.2軟體測試 |
【討論3-1】你是怎樣理解“程式”及程式設計的本質的? | 9.3軟體維護與軟體演化 |
第3講測驗(計分測驗) | 9.4軟體過程 |
第四講 軟體之靈魂--算法 | 本講教學課件(PDF文檔) |
4.1為什麼需要算法 | 本講模擬練習題(不計分) |
4.2數學建模與算法策略設計 | 【討論9-1】黑盒測試vs.白盒測試 |
4.3算法數據結構與控制結構設計 | 【討論9-2】產品質量與軟體過程的關係? |
4.4算法的實現--程式設計 | 【討論9-3】軟體再工程的基本思想是什麼?需要哪些關鍵技術? |
4.5算法的複雜性分析與可解難解問題 | 第9講測驗(計分測驗) |
本講精簡版視頻 | 第十講 成功之保障—軟體項目管理 |
本講模擬練習題(不計分) | 10.1軟體項目管理的概念與重要性 |
本講教學課件(PDF文檔) | 10.2軟體項目管理過程 |
【討論4-1】為什麼說算法是軟體/軟體系統的靈魂? | 10.3軟體度量與軟體項目計畫 |
第4講測驗(計分測驗) | 10.4小結 |
第五講 軟體系統構造--函式-對象-組件與軟體框架 | 【討論10-1】是否所有的軟體項目都需要管理?不同類型的項目管理重點有什麼區別? |
5.1面向對象的概念 | 本講模擬練習題(不計分) |
5.2面向對象的程式設計語言與統一建模語言 | 【討論10-2】如何編制一個科學合理的WBS? |
5.3基於對象框架構造軟體與面向對象構造軟體 | 【討論10-3】軟體項目管理的工具有哪些?有什麼作用? |
5.4組件化構造軟體與服務化構造軟體 | 第10講測驗(計分測驗) |
5.5軟體構造方法之演變 | 第十一講 軟體之人才–軟體工程教育與職業發展 |
本講精簡版視頻 | 11.1軟體工程人才需求 |
本講模擬練習題(不計分) | 11.2軟體工程人才的知識、能力與素質 |
本講教學課件(PDF文檔) | 11.3軟體工程專業的培養方案與課程體系 |
【討論5-1】我們要掌握哪些軟體構造方法? | 11.4軟體工程學生的學習方法與能力提高 |
第5講測驗(計分測驗) | 11.5軟體工程專業人才的職業發展 |
(註:表格內容參考資料) |
課前預備
- 學習資料
書名 | 作者 | ISBN | 出版時間 | 出版社 |
---|---|---|---|---|
《軟體工程——理論、方法與實踐(第2版)》 | 孫家廣等 | 9787040280449 | 2009年 | |
《大學計算機——計算思維導論》 | 戰德臣等 | 9787121207228 | 2013年 | 電子工業出版社 |
《軟體工程導論》 | 朱少民等 | 9787302186236 | 2009年 | |
《服務工程方法論》 | 徐曉飛等 | 9787302262909 | 2011年 | |
《Software Engineering—A Practitioner’s Approac》 | (美)Roger S. Pressman | 9787111359654 | 2011年 | 機械工業出版社 |
表格內容參考資料 |