標籤:
一、我們在開發、運營、維護軟體的過程中有很多技術、做法、習慣和思想。軟體工程把這些相關的技術和過程統一到一個體系中,叫做“軟體開發流程”,軟體開發流程的目的是為了提高軟體開發、運營和維護的效率,以及提升使用者滿意程度、軟體的可靠性和可維護性。
瀑布模型。瀑布模型是最早出現的軟體開發模型,在軟體工程中佔有重要的地位,它提供了開發的基本架構。從瀑布模型開始的各種模型都有一個共同點:重計劃,重事先設計。重文檔表達。這一類的方法中集大成者要算Rational統一流程(RUP)。RUP把軟體開發的各個階段整合在一個統一的架構裡。
要完成一個複雜的軟體項目,團隊的各種成員在不同階段做不同的事情,這些不同類型的工作在RUP中叫做規程或者工作流程。簡單的說包括:業務建模、需求、分析和設計、實現、測試、部署、配置和變更管理、專案管理、環境幾方面。
二、一個團隊,首先要有一致的集體目標,團隊要一起完成這個目標,但是一個團隊的成員不一定要同時工作。其次。團隊成員要有各自的分工,互相依賴合作,共同完成任務。
一個理想的團隊,應該有團隊貢獻維度,就像GE公司那樣。把任務做得最好,貢獻在最上面的20%的人員給予最好待遇,而做的最差的,貢獻最少的10%給予明顯不同的待遇。這樣可以讓最後的人警醒一下,而且也可以讓公司給予人員不同的水平發布不同程度的任務。
一個團隊,想要良好的合作,需要經曆幾個不同的階段。最主要的是中間的磨合階段,每個人都會有自己的個性和獨特的見解,這就需要隊員們努力去磨合。一旦磨合完成,一個團隊的工作效率將會大大上升。
三、TSP原則:抽象總結了優秀的模式和流程的共同點。1.使用妥善定義的流程,流程中的每一步都是可以重複、可以衡量結果的。2.團隊的各個成員對團隊的目標,角色,產品都有統一的理解。3.盡量使用成熟的技術和做法。4.盡量多的收集資料,並用資料來協助團隊做出理性的決定。5.制定切合實際的計劃和承諾,團隊計劃要有負責具體執行的角色來制定。6.增加團隊的自我管理能力。7.專註於提高品質,爭取在軟體生命週期的早期發現問題。最有效提高品質的辦法是做全面而細緻的設計工作。
這些原則雖然抽象,但是每個團隊在做Postmortem的時候,可以對照檢查,看看自己的團隊在剛剛過去的軟體生命週期到底提高了多少。
閱讀《構建之法》,談對理想團隊模式構建的設想和對軟體流程的理解