現(xiàn)代軟件工程 作業(yè) 結(jié)對編程 模板
技術(shù)要求部分
請看以前的各項結(jié)對作業(yè)的技術(shù)要求,例如(電梯調(diào)度,四則運算,數(shù)獨,地鐵出行,黃金點游戲)
博客要求部分
1)在博客開頭給出作業(yè)要求的博客鏈接, 你們項目的Github地址
2)在開始實現(xiàn)程序之前,在 PSP表格記錄下你估計的時間。
3)看教科書和其它資料中關(guān)于Information Hiding, Interface Design, Loose Coupling的章節(jié),說明你們在結(jié)對編程中是如何利用這些方法對接口進行設(shè)計的。
4)描述重要模塊接口的設(shè)計與實現(xiàn)過程。設(shè)計包括代碼如何組織,比如會有幾個類,幾個函數(shù),他們之間關(guān)系如何,關(guān)鍵函數(shù)是否需要畫出流程圖?說明你的算法的關(guān)鍵(不必列出源代碼),以及獨到之處。
5)閱讀有關(guān)UML的內(nèi)容:https://en.wikipedia.org/wiki/Unified_Modeling_Language。畫出UML圖顯示計算模塊部分各個實體之間的關(guān)系(畫一個圖即可)。
6)看Design by Contract, Code Contract的內(nèi)容:
http://en.wikipedia.org/wiki/Design_by_contract
http://msdn.microsoft.com/en-us/devlabs/dd491992.aspx
描述這些做法的優(yōu)缺點, 說明你是如何把它們?nèi)谌虢Y(jié)對作業(yè)中的。
7)程序的代碼規(guī)范,設(shè)計規(guī)范。 你們兩如何達成共識,采用了什么規(guī)范? 程序中是否有異常處理?你是如何處理各種異常的?
8)界面模塊的詳細設(shè)計過程。你的程序有用戶界面么?在博客中詳細介紹界面模塊是如何設(shè)計的。
9)界面模塊與其它模塊的對接。詳細地描述UI模塊的設(shè)計與其他模塊的對接,并在博客中截圖實現(xiàn)的功能。界面/控制/數(shù)據(jù)模塊體現(xiàn)了 MVC 的設(shè)計模式了么?
10)描述結(jié)對的過程, 提供非擺拍的兩人在討論的結(jié)對照片。可以做遮擋或美化。
11)看教科書和其它參考書,網(wǎng)站中關(guān)于結(jié)對編程的章節(jié), 說明你們采用了哪種合作方式,以及結(jié)對編程的優(yōu)點和缺點。
結(jié)對的每一個人的優(yōu)點和缺點在哪里 (要列出至少三個優(yōu)點和一個缺點)。
你如何說服你的伙伴改進TA 的缺點?請考慮一下三明治方法。
12)在你實現(xiàn)完程序之后,在附錄提供的PSP表格記錄下你在開發(fā)各個步驟上實際花費的時間。并說明差異的原因。
13)其它收獲,例如,如何攻克技術(shù)難點,你做了哪些閱讀,探索,可以把資料和經(jīng)歷描述一下。 如果你的項目是和其他同學(xué)一起比賽(例如比賽速度),描述一下你的程序和其他程序的優(yōu)劣。

浙公網(wǎng)安備 33010602011771號