1. 程式人生 > >團隊作業8—團隊項目用戶驗收評審

團隊作業8—團隊項目用戶驗收評審

處理 感受 維護 其他 真的 包括 成員 tar 軟件測試

一、源代碼管理的10 個實踐問題:

1. 你的團隊的源代碼控制在哪裏?用的是什麽系統?如何處理文件的鎖定問題?   我們團隊項目的源代碼在GitHub上托管,用git控制代碼版本,我們用的是win10系統。在這個項目上,由於我們的項目比較小,為了最大化效率,對文件沒有鎖定,可以自由的對文件修改以及遷入遷出。 技術分享圖片 2. 如何看到這個文件和之前版本的差異? 如何看到代碼修改和工作項 (work item),缺陷修復 (bug fix) 的關系。   在本地上傳自己的文件到分支之後也可以查看自己或者是別人上傳的文件在以前的版本的基礎上,修改了哪些地方。 技術分享圖片 同時點開項目的commit的記錄,點擊相應的SHA版本哈希值之後可以進入到如下的頁面 技術分享圖片

從上面圖片裏面可以看到的是”+”標註的是在原文件的基礎上增加的代碼的記錄。

3. 如果某個文件在你簽出之後已經被別人修改,並且簽入了,那麽你在簽入你的修改的時候, 如何合並不同的修改(merge)?你用了什麽工具來幫助你?   在Git中執行合並即可自動合並Git修改的部分,當出現沖突時,我們可以手動解決,用不同的顏色對文件的不同狀態作出修改。 4. 你有20個文件都是關於同一個功能的修改,你要如何保證這些文件都同時簽入成功(修改的原子性),或者同時簽入不成功?   在簽入之前,一定要先對比處理有沖突的文件。在本地倉庫中修改的文件都要統一經過commit為新的本地版本後,再push至遠程分支。這保障了本地修改提交的原子性,同時git服務器遠程提供的修改操作也具有原子性,這樣就保障了整體修改的原子性。 5. 你的PC 上有關於三個功能的修改, 但是都沒有完成,有很多文件處於半完工的狀態,這時你要緊急修改一個新的 bug,如何把本地修改放一邊,保證在幹凈的環境中修改這個 bug, 並成功地簽入你的修改 --- changelist management。   在本地克隆一個分支,然後在該分支上修改bug。 6. 規範操作和自動化 團隊規定開發者簽入的時候要做的事情:

- 運行單元測試,相關的代碼質量測試

- 代碼復審 (要有別的員工的名字)

- 和這次簽入相關的issue 編號, 任務/task, 缺陷/bug 編號,等等, 以備查詢。

7. 如何給你的源代碼建立分支?   新建一個分支在這個分支上,回滾到用戶所用的版本,也可以采用github上的版本回退的機制,這樣,我們就可以利用這種機制進行版本的控制和管理,進行記錄。 8. 一個源文件,如何知道它的每一行都是什麽時候簽入的,為了什麽目的簽入的 (解決了哪個任務,或者哪個bug)?   對於團隊來講每一次的任務都會被提前打上標簽,而且在最後的簽入的時候會有commit的記錄保留,github上面有每一次的每一個人的提交的記錄,對應著非常容易找到相關負責人。 技術分享圖片
9. 如何給一個系統的所有源文件都打上標簽,這樣別人可以同步所有有這個標簽的文件版本?   代碼是一步步在完善的,每一次提交的代碼都是在前面的基礎上加以完善,可以在每次提交的時候建立分支,最後選擇最近一次的提交的源文件,這樣大家就可以同步。 10. 你的項目的源代碼和測試這些代碼的單元測試,以及其他測試腳本都是放在一起的麽? 修改源代碼會確保相應的測試也更新麽?你的團隊是否能部署自動構建的任務?   源代碼和測試這些代碼的單元測試,以及其他測試腳本沒有放在一起的,因為這樣更方面進行管理。 至於測試的更新方面,還沒有完成, 自動構建的任務則也沒有能部署。在後期的項目完善中,會將進行改進。 二、項目驗收準備工作

1.文檔準備: 驗收之前,準備好以下幾類文檔:

1) 開發總結文檔

2) 需求文檔:包括需求規格說明書,需求變更文檔等

3) 設計文檔:包括概要設計,詳細設計,數據庫設計等

4) 測試文檔:包括測試方案,內部測試報告,第三方測試報告等

5) 實施文檔:包括實施,部署方案,用戶手冊,維護手冊等

6) 過程文檔:包括項目周報,會議紀要等

2.項目概況ppt準備

項目概況ppt包括以下幾個部分:

1) 項目背景和簡介

2) 合同執行情況匯報

3)開發過程:記錄項目開發過程中的一些重要事件

4) 系統功能簡介

5)項目應用成果展望

技術分享圖片

GitHub地址:https://github.com/gzyt/SRS

三、項目驗收過程

1.項目匯報

  老師擔任主持人,項目組長對自己團隊項目進行ppt講解,最後由老師與兄弟團隊進行項目提問,團隊成員進行答辯,老師最後根據答辯情況進行團隊打分。

 2.項目驗收

   首先,將項目驗收所需的所有文檔,項目需求說明書,項目設計說明書,項目操作手冊等 ,並準備項目項目驗收表,然後按照會議流程,由開拓者團隊組長擔任項目主持人,然後我們團隊進行項目答辯與項目演示,最後,由開拓者團隊填寫項目驗收意見表,完成項目驗收。

四、團隊探討場景

技術分享圖片

五、任務分工

團隊成員 具體分工 工作比重
周甜甜 軟件項目文檔編寫及博客撰寫 25%
李蕾 後臺文章管理功能測試及測試文檔編寫 24%
張海鑫 後臺人員管理功能測試及項目ppt制作 24%
張天旭 總結文檔與用戶手冊編寫及博客撰寫 27%

六、實驗心得

  李蕾一學期的軟件工程課結束了,收獲了很多,老師獨特的教學方法不僅從理論上教會了我們軟件工程的知識,而且通過一步一步的實踐來深入的理解軟件工程的意義,讓我們懂得軟件工程的思想,以及在完成一個軟件開發的過程中需要學到的東西。最關鍵的是懂得了團隊建設的重要性,懂得了在團隊中一加一大於二,在合作的過程中團隊協作是多麽的重要,各個成員分工合作,認真完成自己的工作是對整個團隊最重要的貢獻。相信軟件工程的思想會給我以後的工作提供很多的幫助。

  周甜甜通過一學期的軟件工程的學習,我學到了許多有關項目開發方面的經驗以及知識。我們從剛開始的個人項目開始,再到兩個人結對項目以及最後的小組項目,是一個成長的過程,我們從最初的無項目經驗到最後的能夠熟悉項目開發中的每一個流程,真的是收獲了許多。老師對我們的耐心指導,我們小組成員之間的分工合作,團結協作,讓我們認識到團隊合作在項目開發中重要性,非常感謝老師和同學們這學期的陪伴!

  張海鑫通過一學期軟件工程課程的系統學習,我學到了許多有關項目開發方面的經驗以及知識,收獲頗豐。在此非常感謝鄒欣老師以及代祖華老師的悉心指導,代老師獨特的教學方法不僅從理論上教會了我們軟件工程的知識,而且通過一步一步的實踐來使我們更加深入的理解軟件工程的意義,使我們懂得軟件工程的思想,以及在完成一個軟件開發的過程中需要學到的東西。我們從剛開始的個人項目開始,再到兩個人結對項目以及最後的小組項目,是一個成長的過程,我們從最初的無項目經驗到最後的能夠熟悉項目開發中的每一個流程,真的是收獲了許多。相信軟件工程的思想會給我們以後的工作帶來很多的幫助。

  總結陳述:此次項目開發的過程,基本嚴格按照一個商業項目的開發流程來進行,從剛開始的項目立意,項目需求的調查與分析,還有之後的項目軟件設計方案的設定與書寫,以及之後不斷地去完善項目設計方案書,雖然這期間花費大量的時間,卻一直未開始項目的研發,但這也是軟件工程的特色,它完美的將軟件研發規範化,它為我們的開發提供了保障,在充分的項目方案設計的完善過程中,可以避免平時一邊想一邊做所出現的弊端,也可在一定程度上減少研發的時間。在本次項目開發的過程中,也非常的感謝我的隊友,可以在我遇到思考瓶頸的時候,給我一個比較新穎的想法,也感謝他們在此次軟件開發的過程中軟件開發代碼與軟件測試及方案設計的貢獻,與他們的合作讓我切身感受到了團隊合作的重要性與其開發的高效性。

團隊作業8—團隊項目用戶驗收評審