教學理念: 實如今作中學,在團隊中學,採用真實的案例。git
教學內容: 結合《構建之法》介紹的軟件工程方法,對一個開源機器人運動庫OROCOS的結構和構建過程進行分析,並組隊開發應用軟件或擴展庫功能。github
實驗平臺: 貝加萊公司的Delta機器手平臺。算法
團隊做業: 調用KDL庫寫應用程序,實現對機器人的控制。編程
網上平臺: 每名同窗需創建一個Github帳號和cnblogs帳號,並加入課程QQ羣。設計模式
團隊協做: 團隊協做既是爲了經過交流和討論達到共同窗習的目的,也是爲了軟件構建的實戰須要。數據結構
開課時間: 本學期第13周併發
實踐內容:工具
1)閱讀《構建之法》,瞭解軟件開發的流程,在Github上fork OROCOS的KDL庫,觀察OROCOS在Github的歷史記錄,寫讀書筆記和心得。
(OROCOS代碼庫: https://github.com/orocos )單元測試
2)在我的電腦創建Linux編譯環境,可以編譯OROCOS KDL。學習
3)研究並會使用OROCOS採用的CMAKE等構建工具。
4)學習版本控制,會使用GIT,並在GITHUB上進行練習。
5)分小組閱讀OROCOS源代碼,在博客上寫代碼閱讀筆記,相關文獻閱讀筆記。
6)複習面向對象的編程方法:結合OROCOS代碼討論繼承封裝多態,泛型編程,算法與數據結構等知識點。自選一段代碼分析其如何應用面向對象的編程方法。
7)學習設計模式的概念,教師舉例引導,學生在OROCOS中尋找設計模式的應用。
8)基於OROCOS進行課程項目設計,進行軟件需求定義,肯定項目經理和項目組分工。
9)掌握單元測試的方法,進行結對編程,並進行課堂討論,代碼提交到Github網站,並發表博客。
10)課堂或課外學習如何應用MATLAB進行物理建模實現與OROCOS的協同開發。
11)可在貝加萊的Delta機器人平臺上實現機器人控制,有條件的小組也可增長視覺功能。
12)在課程每一階段都對各小組同窗的相關進展進行評估,對錶現優秀同窗給予鼓勵。