提出的問題
(1)軟體工程是什麼?
答:軟體工程是吧系統的,有序的,可量化的方法應用到軟體的開發,營運和維護上的過程。軟體工程包括:軟體需求分析,軟體設計,軟體構造,軟體測試和軟體維護。
(2)軟體團隊如何才能準确而全面的找到軟體的需求?
答:1.擷取和引導需求:軟體團隊需要找到軟體的利益相關者,了解和挖掘他們對軟體的需求,引導他們表達出對軟體的需求。但是,不同的項目需要不同的手段,我們要根據具體的情況而定。
(3)什麼是PM?
答:軟體團隊裡除了能寫代碼,測試代碼和畫圖做設計的成員,還有一類角色,不做上面這些事情但是也非常的重要,我們叫他們項目經理——PM。PM的M就是Manager,但是P代表不同的單詞,在不同的行業他們的作用各不相同。
(4)分析和設計方法?
答:在“需求分析”階段,我們要搞清楚:在問題領域中的現實世界裡,都有哪些實體,如何抽象出我們真正關心的屬性,實體之間的關系是什麼,在這個基礎上,使用者需求什麼,軟體如何解決使用者的需求。
在“設計與實作階段”,我們要搞清楚軟體是怎樣解決這些需求的。在“測試”和“釋出”階段,我們要搞清楚軟體真的解決了這些需求麼。
(5)一個開發人員拿到了設計文檔(Spec)之後,應該做什麼什麼?
答:1.估計開發任務所需的時間,我們要參考以前同類任務所需花費的實際時間,以及其他隊友的時間估計。
2.我們要先寫一些快速原型的代碼,看看運作的結果。
3.再看到初始效果和了解了實作的細節後,我們要開始寫設計文檔,然後,我們要和隊友一起來複審設計文檔。
4.設計文檔寫完以後,按照設計文檔寫代碼。
5.寫完代碼以後,根據設計文檔和代碼指南進行自我複審,重構代碼。
6.建立或更新單元測試。
7.進行單元測試。
8.得到一個可以測試的版本,交給相關的測試人員測試,或者在網上進行某種公開測試。
9.修複測試人員或使用者發現的問題,等到問題都解決了,就請其他人進行代碼複審。
10.根據代碼複審的意見修改代碼,完善單元測試和其他相關文檔,然後把代碼簽入到代碼庫中。
總結與體會
通過一個學期的學習,我認識到《建構之法現代軟體工程》是一門非常有用的學科。對于一個學習計算機的人來說這是一門必須學習的學科,這本書中作者把軟體開發方法講的清楚又有趣,燃起了我更大的熱情。學完這門課程以後我意識到,團隊的力量。這不僅對我本專業的軟體開發團體項目有很大的幫助,我認為不管什麼樣的工作團隊集體的力量是不可估量的。
課程建議
對于課程的安排我沒有什麼意見,我認為馮老師講課非常好,希望老師可以一直保持下去,我還希望在今後的學習中可以跟馮老師學到更多的東西,用知識武裝自己。