天天看點

軟體工程:提問回顧

提問回顧

提問連結

http://www.cnblogs.com/wzjb/p/7596315.html

解答

1.結對程式設計一開始必然有一個磨合熟悉的過程,在這個過程中可能有人會不習慣時刻在對方視線下工作的情況,也可能兩個人水準有差距,會出現一個人一直在聽另一個人的意見的情況,我想問如何能讓這種磨合過程的時間盡量縮短呢,有沒有什麼可行的政策?

沒有捷徑,在我的結對程式設計體驗中,主要還是在于雙方多交流,多了解對方的想法,而不是分工完成後就悶頭做,才能使得結對程式設計的過程和結果變得令人滿意。

2.可否了解為靈活流程的開發在很多情況下會和其他開發方式相結合以達到提高産品可靠性的要求?如果是,那麼靈活開發和那種流程結合的最多也最好呢?

當然可以這麼了解,軟體工程沒有标準答案,也沒有完美解答,一切基于實踐,至于靈活開發可以和那些開發方式結合,由于本人經曆有限,是以暫時無法解答。

3.十一章提到了小強地獄,在開發人員的bug達到一個限定值時,可以采用限制其工作,将所有時間用于解決BUG到限定值以下,這樣的方法會不會挫敗該開發人員的積極性,導緻其在後續的開發過程中無法跟上進度,陷入惡性循環?

這其實是一個兩害相權取其輕的過程,如果放任這個開發人員繼續寫充斥着BUG的代碼,必然會導緻項目出現大問題,相對的該開發人員限制解決BUG的方式也許會影響他的心态,但是對于項目的結局造成的影響較小。

4.在一個創新産品的設計開發過程中,如何定義使用者需求是很困難的事情,很多情況下隻能由團隊成員臆想得到,因為這樣一個産品本身也是沒有原型的,在這種情況下,似乎隻有調查問卷才能給出部分答案,但以我自己的經曆來說,我基本都不會認真看這樣的調查問卷,那我想問是否有更可行的收集使用者需求的方式?

在産品未形成的時候,基本隻有這一種方法吧,或是類似的方法。

5.MVP方法開發出來的軟體是不是就是相當于每一個周期都在不斷地打更新檔,沒有系統化的設計實作,是否會導緻軟體的臃腫化,可維護性變差?

大多數情況下是的,當然這也取決于軟體初始的設計情況。

在項目中學到的知識點

  1. 需求:學到了NABCD需求分析模型。
  2. 設計:設計階段需要确定各種需求功能的優先級,保證投入的資源得到最大的回報。
  3. 實作:了解并體驗了靈活開發流程,同時學習了新技術。
  4. 測試:了解了單元測試,代碼覆寫率測試,相容性測試等内容。
  5. 釋出:産品釋出不意味着結束,需要實時接收使用者回報以發現軟體未穩定時存在的問題。
  6. 維護:及時修複BUG,将産品帶入穩定期。