1. 程式人生 > >軟件工程網絡15個人作業4--軟件工程總結

軟件工程網絡15個人作業4--軟件工程總結

實現 提前 即使 其他人 ask ima 編程 學會 自己的


一、請回望開學時的第一次作業,你對於軟件工程課程的想象

1.1對比開篇博客你對課程目標和期待,“希望通過實踐鍛煉,增強計算機專業的能力和就業競爭力”,對比目前的所學所練所得,在哪些方面達到了你的期待和目標,哪些方面還存在哪些不足,為什麽?

個人感覺達到的期待和目標:

  • 課程的理論知識與實踐相結合,在學習中做項目,同時也在項目中繼續深入學習;
  • 增加了項目經驗;
  • 體驗了團隊合作,經歷了組隊、需求分析、設計、構建、測試、發布、展示、alpha&beta等階段,在開發過程中始終與組員保持交流,每個人也都是保持著嚴謹的態度;
  • 提升了解決問題的能力。

存在的不足:

  • 雖然個人負責全部的測試工作,但是這方面的能力還是有待提升,勉強及格吧;

1.2總結這門課程的實踐總結和給你帶來的提升,包括以下內容:
1)統計一下,你在這門課程中,完成了多少行的代碼;

主要負責測試工作,只針對測試腳本,1500行

2)軟工的各次作業分別花了多少時間?(做一個列表)

作業 花費時間
軟工網絡15個人閱讀作業1 5h
軟工網絡15個人閱讀作業2--提問題 8h
軟工網絡15結對編程練習 10h
軟工網絡15團隊作業1--團隊組隊&展示 2h
軟工網絡15個人作業3--案例分析 5h
團隊作業3--需求分析與設計 10h
團隊作業4--團隊計劃 3h
軟工網絡15Alpha階段敏捷沖刺 42h
團隊作業5--測試與發布 7h
團隊作業6--展示博客 1h
團隊作業7--Alpha階段只事後諸葛亮分析 3h
個人作業4--Alpha階段個人總結 3h
團隊作業8--敏捷沖刺(Beta階段) 42h
Beta版驗收互評 1h
個人作業5--軟工個人總結 4h
總計

3)哪一次作業讓你印象最深刻?為什麽?

Alpha階段的作業,每個隊員都集中討論了從需求分析、設計、構建、測試、發布、展示等階段的構想,這也是我們團隊項目的起點。

4)累計花了多少個小時在軟工上?平均每周花多少個小時?

共計146h左右,課程14周左右,平均每周10h。

5)學習和使用的新軟件;

LoadRunner、IBM SecurityAppscanStandard、NetBeans

6)學習和使用的新工具;

碼雲看板、Issues

7)學習和掌握的新語言、新平臺;

Python

8)學習和掌握的新方法;

單元測試、功能性測試、性能測試、安全性測試等。

9)其他方面的提升。

學習能力、抗壓能力、團隊協作和交流溝通。


二、寫下屬於自己的人月神話——個人或結對或團隊項目實踐中的經驗總結+實例/例證結合的分析

  • 關於團隊項目選題要清晰明了,關註團隊的核心創新功能並專註地完成。我們團隊之前構想的東西非常多,最終卻也只是完成了核心部分,並且不是很完整。

  • 在整個軟件開發過程中應始終保持一個良好的心態,遇到問題能夠及時跟PM或者其他成員溝通。因為即使是專業的開發團隊,在開發過程中也會遇到許多問題,可能會影響到整個團隊的進度,及時的溝通解決是非常必要的。

  • 另外很重要的一點,技術準備一定要做好!這點我做的不是很好,我個人負責的是測試部分,對於這方面的內容,我也是邊學習邊完成的。


三、對下一屆實踐的建議,或者對於開學初的你,對於大一的你,對於開學初的我,你有什麽想建議和告知的呢?對於後來人的期許。對於換人機制,有什麽樣的建議?

  • 給下一屆的建議,這方面的話可以參考我在上面寫到的,首先關於團隊項目選題,不要太復雜(dalao無視我);再者要做好技術準備,提前的學習是必要的;最後,團隊開發中,溝通交流是非常非常非常重要的,如果沒有溝通好,可能會導致像我們團隊做的一些無用功!
  • 關於換人機制是個不錯的功能,但是我不是很喜歡,我在這個項目中付出一定的心血,卻突然要到別隊去,可能部分人會有點不適。另外我剛完成了團隊的一些任務,突然被分配到其他組,還要在短時間內掌握這組的內容,可能還要學習其他新東西。這個有待仔細討論。

四、分析一下自己所處的團隊。軟件工程實踐是大學裏少有的認真的團隊協作經驗。《構建之法》上說團隊的發展有幾個階段,你的團隊都經歷過麽,最後到達了“創造”階段了麽?(參考《構建執法》第17章 人、績效和職業道德)

  • 我覺得編程題全隊是一個不錯的團隊。大家都能服從PM的安排和管理,在各自的崗位完成好分配的任務。在成員磨合過程中溝通交流,隊員之間的默契度也慢慢地提升,最終把構想的大部分內容都實現了,自己也收獲了許多,十分開心能夠待在這樣一個團隊完成整個開發過程。
  • 我們團隊經歷了萌芽,磨合,規範以及創造階段。項目初期,只有一個大致的構想,大家還沒有非常明確自己的目標,也不是很清楚自己的分工,所以進展較慢。經過了一段時間的磨合之後,對自己負責的以及其他人負責的就比較熟悉了,因為大家都著手於自己任務,所以前期的交流不是很多,之後出現了一些問題,這也使得我們之間的交流得到了進一步地提升,一般都能及時解決問題。當整個團隊結構基本成型以後,大家都能完成每天規定的任務,形成一個較為規範的模式。最終我們也成功地把軟件的大部分核心功能都實現並且發布了,有了一定的用戶量。達到了創造階段。

五、怎樣證明你學會了軟件工程?

5.1研發出符合用戶需求的軟件
必須公開發布,有實際的用戶,一定的用戶量和持續使用量 (3 天後能保持10 - 100個用戶);而不是: 做沒有用戶使用的軟件

技術分享圖片
技術分享圖片

除了我們的測試用戶外,有13個實際用戶體驗過我們的軟件。

5.2通過一系列工具,流程,團隊合作,能夠在預計的時間內發布 “足夠好” 的軟件
有項目規劃/需求/設計/實現/發布/維護,有定時的進度發布 ; 而不是: 通過臨時熬夜,胡亂拼湊,大牛一人代勞,延遲交付等方式糊弄

技術分享圖片
技術分享圖片

博客園小黃衫作為Alpha階段的PM助理和Beta階段PM,時刻督促著成員的工作進度。

5.3並且通過數據展現軟件是可以維護和繼續發展的。
而不是 找不到源代碼,代碼無文檔,代碼不能編譯,沒有task/bug 等項目的發展資料

Gugua團隊項目測試方面:https://gitee.com/Yanboooooooo/GuguaQA

軟件工程網絡15個人作業4--軟件工程總結