1. 程式人生 > >《軟體管理沉思錄》讀書筆記

《軟體管理沉思錄》讀書筆記

作者沃茨·漢弗萊從事軟體開發管理長達60多年,在他看來,軟體是難於管理的,因為這是創新工作,屬於腦力勞動。他將軟體開發類比為建造一個大教堂,因為這二者都屬於大規模的創造性活動,這是前人沒有做過的、涉及成百上千人的大規模創作。書中內容被分為四個部分,分別為管理你的專案、管理你的團隊、管理你的領導以及管理你自己。接下來我將根據這四個部分的內容進行整理,並談談自己的理解。

 

一、管理專案

         在本書的第一部分,作者提出“如果一件產品提供了對使用者而言是最重要的功能,那麼這就是一件高質量產品”,這裡作者定義了什麼是軟體質量,即產品對使用者有用,能夠滿足使用者的需求。而想要開發出高質量的產品,就必須要有清晰的需求,即書中所說的“為了完成重要的工作,首先需要精確地知道什麼是你要努力去實現的”。不過,對於一個大規模複雜的軟體來說,隨著時間的變化,軟體的變化以及需求的變化也隨之提高,這導致的後果是保證軟體質量的難度也越來越大。為此,在軟體開發過程中,為了保證質量始終如一,作者提出了8個必須遵循的步驟:

(1)確立質量控制的策略、目標和計劃;

(2)正確訓練、指導和支援開發人員及其團隊;

(3)確立和維護軟體需求的質量管理過程;

(4)確立和維護軟體工程過程的統計控制;

(5)審查、檢查並評估所有的產品製品;

(6)評估所有缺陷,加以更正並用以識別、糾正和預防其他類似問題;

(7)確立和維護配置管理和變更控制系統;

(8)持續改進開發過程。”

         這幾個步驟非常詳盡且有序地列出了在軟體開發的過程中,我們應該如何保證質量的始終如一。這讓我想起了,自己在本科學習階段時,曾做過不少的課程設計、創新專案,但是由於我的團隊並沒有為自己的專案確立嚴格的質量控制策略,缺乏維護軟體需求的質量管理過程,同時還沒能做到評估所有缺陷並加以更正,所以最終導致了專案質量較差,存在較多缺陷或者與實際需求出現偏差,而無法在實際中運用的結果。因此,在以後的軟體開發過程中,可以對照這些步驟來提醒自己,儘可能的確保軟體質量始終如一。

 

二、管理團隊

         作者在這一部分中,首先定義了什麼是團隊,即有著共同目標的一群人。團隊中的每位成員都至少扮演著一種特定的角色,而要想完成任務,就要求團隊成員之間相互依賴,一般來說,在一支高效的團隊中,團隊成員聯合後的集體才智,會使團隊獲得更全面的知識。我雖然沒有任何工作經歷,沒有參加過任何工作團隊,但是在之前的學習生活中,我曾見到過不少的學生團隊,他們組隊參加比賽,有著共同的目標,分工明確,職責清晰,但是又相互溝通、互相協作,所以在各個比賽中,總能夠獲得較好的成績。他們在我看來,就是一個高效團隊,有著高效團隊必備的四個條件:團隊凝聚力、富有挑戰性的目標、反饋、共同的工作架構。

       不過,在現實生活中,要想形成一個高效團隊往往是比較困難的,團隊中的成員往往沒有共同目標,並不會自覺的去努力——他們投入的只是時間。除此之外,團隊還會經常遇到7個問題:無效領導、缺乏妥協或合作、缺少參與、拖延和缺乏信心、低劣的質量、功能蔓延以及無效的對等評估等。這些都往往會導致團隊的失敗。

 

三、管理領導

         在這一部分中,作者提出如果管理者提出的時間計劃不現實,就一定要重新計劃並與管理層溝通,據理力爭,避免專案從一開始就陷入麻煩。但是要注意,不要當場就想討價還價,而是要制訂詳盡的計劃後有理有據地去提出實際更佳的交付時間應該是麼時候。但是如果你的管理者不可理喻,那麼你只有三個選擇:越過你的管理者,直接向高層管理者反映問題;什麼也不做,期待情況會自動變好;或者,換個工作。此外,作者還提出要讓團隊聚焦於優先順序最高的事,並且在作出任何承諾之前,要先制定一個計劃,而且必須確保團隊進度在按計劃進展,並且要及時更新計劃公司實時反饋給管理者。

 

四、管理自己

       成功者贏得勝利,他們決不抱怨。正是那些永遠失敗的人會抱怨人生的不公以及別人該如何為自己的失敗負責”,我們要做自己的管理者,而不要像一個受害者一樣,只會抱怨。在這一部分中,作者主要講的是如何進行自我管理,並從作為團隊成員以及作為一個團隊領導兩個方面入手,描述應該如何管理自己。作為團隊成員,要做的就是要合理管理自己的時間,提高工作效率,並要提高自己責任感主人翁心態,避免拖延。而作為團隊領導,應該注意注意自己的言行,要有榜樣精神,去成為一名變革型領導,而非一個管理者。在作者看來,領導者和管理者之間最主要的區別是,管理者總是命令員工服從他們的指令,而領導者是帶領他們完成任務。

        

五、後記

         本書讓我明白了,成功的軟體專案管理會遭遇到許多問題和阻礙,為了保證專案的成功完成,我們不僅需要管理專案本身,還要利用自己和團隊的經驗,理解專案並提前做出計劃,除此之外,還要管理好自己,不要像一個受害者一樣只會抱怨。