周年慶加碼
目前位置: > > > >
溫伯格的軟體管理學:系統化思考(第1卷)
left
right
  • 庫存 = 6
  • 放入購物車放入購物車
    直接結帳直接結帳
  • 放入下次購買清單放入下次購買清單
本書適用活動
周年慶\年度TOP 3本75折,好書讓你10連勝
  • 經濟新潮社for EMBA專屬推薦書單

內容簡介

如果《人月神話》是一種反思與沉澱,那麼《溫伯格的軟體管理學》就是軟體專案管理的最佳實務! 要有高品質的軟體,就要有高品質的管理。這就是《溫伯格的軟體管理學》這套書的主題。 在第一卷《系統化思考》中,溫伯格探討了開發高品質軟體的第一個需求:學習如何去做正確的思考──思考問題、解決之道,還有品質本身。溫伯格將軟體機構依做事方式(軟體次文化)分類如下: 模式0(渾然不知):我們都不知道我們正循著一個過程在做事。 模式1(變化無常):我們全憑當時的感覺來做事。 模式2(照章行事):我們凡事皆依照工作慣例(除非我們陷入恐慌)。 模式3(把穩方向):我們會選擇結果較好的工作慣例來行事。 模式4(防範未然):我們會參照過往的經驗制定出一套工作慣例。 模式5(全面關照):人人時時刻刻都會參與所有事務的改善工作。 本書的特色是,對於會影響專案成敗的諸多變數(如規模、複雜度、風險、顧客的要求、人力、時間、壓力……)進行動態分析;有許多例子可證明,若能在「控制點」上做好管理的工作,就可防止危機發生,或是不讓危機繼續惡化下去。溫伯格特別強調,「動作要早,動作要小」是保持軟體過程都在控制之中的關鍵。 本書討論到的主題包括:品質、軟體文化、品質模式、管理模式、反饋效應、壓力與工作績效間的關係、規模對應於複雜度的動態學、功能失常的偵測與反應、缺陷解決之道的動態學、以及顧客的角色等。本書有珍貴的圖表、參考資料、練習、以及相關書目,幫助讀者應用這本書。 面對專案、產品、同事、客戶等等複雜狀況,你需要的正是「正確的思考」,也就是系統化的思考,因為唯有如此,我們才能「明白自己在做什麼」。 【好評推薦】 ◎「溫伯格在這本書中,把我們軟體人所困擾的品質問題的形式與本質,講得非常清楚……除了將溫伯格這本好書廣為流傳,我想不出還有什麼更好的方法,可以幫助你的組織改變思考方式。」 —Edward Yourdon (軟體界知名顧問與作家) ◎「這本書是一個里程碑,它在合適的時間討論了合適的問題。……本書的結構和表達方式使它成為獨一無二的無價之寶。每一位軟體開發經理都應該讀這本書。」 —Shel Siegel (CASE Trends) ◎「在企業界臣服於全面品質管理、ISO 9000、美國國家品質獎(Baldrige Awards)的浪潮中,還有像溫伯格這樣腳踏實地強調,高品質的管理才是獲得高品質軟體的先決要件,這真是令人欣喜……這是一種以人為重的品質方法。」 —Warren Keuffel (Computer Language) ◎「我喜歡溫伯格。他異於常人——我就是喜歡這樣的人。他的著作從技術和心理學的觀點,描述如何去思考我們所做的事……這套書是我的最愛之一。」 —Ron Jeffries (xprogramming.com) 【出版緣起】 經濟新潮社在陸續出版了《人月神話》、《最後期限》、《與熊共舞》、《你想通了嗎?》等等軟體業必讀的經典之後,編輯感覺到,這些書已透徹分析了時間不夠、需求膨脹、人員流失、管理不當,每每導致軟體專案的失敗。這些也都是軟體業永遠的課題。 究竟,這些問題有沒有解答?如何做得更好? 專案的管理千絲萬縷,面對的偏偏又是最(自以為)聰明的程式設計師(知識工作者),以及難纏(實際上也不確定自己要什麼)的客戶,做為一個專案經理,究竟該怎麼做? 軟體能力,於今已是國力的指標;縱然印度、中國的軟體能力已凌駕台灣……我們依然認為,這表示還有努力的空間。還有需要補強的地方。如果台灣以往的科技業太「硬」(著重硬體),那麼就讓它「軟一點」,就像有「軟體業界的達文西」之稱的Martin Fowler說過:Keeping Software Soft(把軟體做軟)。也就是說,搞軟體,要「思維柔軟」。 因此,我們決定出版軟體工程界的天王巨星——溫伯格(Gerald M. Weinberg)集40年的軟體經驗所寫的一套四冊《溫伯格的軟體管理學》,正由於軟體專案的牽涉廣泛,從技術面到管理面,得要面面俱到,而最重要的關鍵在於:你如何思考,如何觀察究竟發生了什麼事,然後採取行動,也預期到未來的變化。 前微軟亞洲研究院院長、現任微軟中國研究開發集團總裁的張亞勤先生,為本書的簡體版作序時提到:「溫伯格認為:軟體的任務是為了解決某一個特定的問題,而軟體開發者的任務卻需要解決一連串的問題。……我們不能要求每個人都聰明異常,能夠解決所有難題;但是我們必須持續思考,因為只有如此,我們才能明白自己在做什麼。」 這四冊書的主題分別是:系統化思考(Systems Thinking)、第一級評量(First-Order Measurement)、關照全局的管理作為(Congruent Action)、擁抱變革(Anticipating Change),將陸續由經濟新潮社出版。四本書雖然成一系列,也可單獨閱讀。希望藉由這套書,能彌補「技術」到「管理」之間失落的環節,協助您思考,並實際對您的工作有幫助。

目錄

【致台灣讀者】 ◎溫伯格
【導讀】從技術到管理,失落的環節 ◎曾昭屏
【前言】

◎ Part 1: 品質的模式
1. 何謂品質?品質的重要性何在?
2. 軟體次文化
3. 怎樣才能改變模式?

◎ Part 2: 管理的模式
4. 管理用的控制模式
5. 讓管理模型變得透明
6. 反饋效應
7. 把穩軟體的方向
8. 掌握不住方向的時候

◎ Part 3: 會對模式造成壓力的要求
9. 為什麼掌握方向那麼難?
10. 如何讓一切都在控制中
11. 回應顧客的要求

◎ Part 4: 缺陷的模式
12. 對錯誤進行觀察與推論
13. 功能失常偵測曲線
14. 找出藏在功能失常背後的缺陷
15. 缺陷解決的動態學

◎ Part 5: 壓力的模式
16. 權力、壓力,與工作績效
17. 如何處理停擺的壓力
18. 我們努力得來的成就

註釋
法則、定律、與原理一覽表
索引

導讀

【導讀】從技術到管理,失落的環節  ◎文/曾昭屏
??「軟體專案經理」可說是所有軟體工程師夢寐以求的一個職務,能夠從「技術的梯子」換到「管理的梯子」,可滿足所有人「鯉魚躍龍門」的虛榮感。不過,就像有人諷刺結婚就像在攻城,「城外的人拼命想要往裡攻,城裡的人卻拼命想要往外逃」,這也是對做軟體專案經理這件事的最佳寫照。何以至此,我們來看看其中的一些問題。 ??據不可靠的消息說,麥當勞為維持其一貫的品質,成立了一所麥當勞大學。當有人要從炸薯條的工作換到煎漢堡的工作,必須先送到該所大學接受完整的養成訓練後,才能去煎漢堡。軟體管理的工作比起煎漢堡來,絕對不會更簡單,但是有哪位軟體經理或明日的軟體經理,有幸在你就任之前,被送到這麼一所「軟體管理大學」去接受完整的「軟體經理養成教育」呢? ??幾乎沒有例外,軟體經理都是從技術能力最強的工程師所升任。若說在軟體工程師階段所培養的技能有相當的比例可為軟體管理工作之所需就罷了,但事實是,兩種技能大相逕庭。 ??軟體工程師的工作對象是機器。他們的專長在程式設計、撰寫程式、除錯、將程式最佳化。他們大部分的時間花在跟電腦打交道,而電腦是最合乎邏輯的,不像人類偶爾會有些不理性的情緒反應。程式設計時最好的做法是將之模組化,也就是說所設計出來的模組要有黑箱的特性,至於模組的內部是如何運作,使用者可不予理會,只要能掌握標準界面即可。同樣的思維用到與人有關的事物上,反而會成為最壞的做法。 ??軟體經理的工作對象是「人」。在化學反應中的催化劑,其本身並不會產生變化,而只是促成其他的物質轉變成為最終產品。經理人員就猶如專案中的催化劑,他最大的責任在於營造出一個有利的環境,讓專案成員有高昂的士氣,能充分發揮所長,並獲得工作的成就感。這是軟體工程師的技能中付之闕如的一環,當他們成為經理之後,慣常以管理模組的方式來管理專案成員。以致,出現1997年Windows Tech Journal的調查結果,其讀者對管理階層的觀感是:他們痛恨管理階層、對無能上司所形成的企業文化與辦公室政治深惡痛絕、管理階層不是助力而是阻力(獨斷、無能、又愚蠢)。 ??你還記得,或想像,你剛上任專案經理的第一天,自己是抱著怎樣的心情?狄馬克有一篇名為〈Standing Naked in the Snow〉的文章最讓我印象深刻。他描述自己第一天上任的感覺猶如「裸身站在雪地中」,中文最貼近的形容詞是「沐猴而冠」,那種孤立無援、茫然不知所措的心境,也正是我上任第一天的寫照。 ??想要彌補軟體工程師與軟體經理之間的這段差距,方法不外找到這類的課程或書籍。但軟體專案管理的課程在大學裡不開課,坊間的顧問公司也無人提供。至於書籍,在美國,軟體技術類書籍與軟體管理類書籍的比率是200比1,在台灣的情況則更糟,或許是我見識淺陋,我至今都未能找到一本談軟體專案管理的中文書。 ??幸好,溫伯格為我們補上了這個失落的環節。在這一套四冊的書中,他教導我們要如何來培養軟體經理所必備的四種能力: 1.專案進行中遇到問題時,有能力對問題的來龍去脈做通盤的思考,找出造成問題的癥結原因,以便能對症下藥,採取適切的行動,讓專案不但在執行前有妥善的規劃,在執行的過程中也能因應狀況適時修正專案計畫。避免以管窺豹,見樹不見林,而未能窺得問題的全貌,或是,頭痛醫頭,腳痛醫腳,找不到真正的病因,而使問題益形惡化。 2.有能力對專案的執行過程進行觀察,並且有能力對你的觀察結果所代表的意義加以解讀。猶如在駕駛一輛汽車時,若想要安全達到正確的目的地,儀表板是駕駛最重要的依據。此能力可讓專案經理在專案的儀表板上要安裝上必不可缺的各式碼表,並做出正確解讀,從而使專案順利完成。 3.專案的執行都是靠人來完成,包括專案經理和專案小組的成員。每個人都會有性格缺陷和情緒反應,這使得他們經常會做出不利於專案的決定。在這種不理性又不完美的情況下,即使你會感到迷惘、憤怒、或是非常害怕,甚至害怕到想要當場逃離並找個地方躲起來,你仍然有能力採取能關照全局的行動。 4.為因應這不斷改變的世界,你有能力引領組織的變革,改變企業文化,走向學習型的組織。 ??李斯特(Timothy Lister)在《Peopleware》中談組織學習時說了個小故事:我有一位客戶,他們的公司在軟體開發工作上有超過三十年的悠久歷史。在這段期間,一直都養了上千名的軟體開發人員,總計有超過三萬個「人年」的軟體經驗。對此我深感嘆服,你能想像,若是能把所有這些學習到的經驗都用到每一個新的專案上,會是怎樣的結果。因此,趁一次機會,我就向該公司的一群經理人請教,如果他們要派一位新的經理去負責一個新的專案,他們會在他耳邊叮嚀的「智慧的話語」是什麼?他們不假思索,幾乎異口同聲地回答我說:「祝你好運!」 ??希望下次當你上任軟體經理時,不會再有沐猴而冠的感覺,也不會僅帶著他人「祝你好運」的空話,而是有溫伯格的這套書《高品質軟體管理》做你堅強的後盾。 (本文作者曾昭屏為資深軟體專案經理,美國德州休士頓大學計算機科學系碩士)

序跋

致台灣讀者  ◎文/傑拉爾德.溫伯格
?? 最近,我很榮幸地得知,台灣的經濟新潮社要引進出版拙著的一系列中譯本。身為作者,知道自己的作品將要結識成千上萬的軟體工程師、經理人、測試人員、諮詢顧問,以及其他相信技術能為我們帶來更美好的新世界的人們,我感到非常驚喜。我特別高興我的書能在台灣出版,因為我有個外甥是一位中文學者,他曾旅居台灣,並告訴過我他的許多台灣經驗。   在我早期的職業生涯中,我寫過許多電腦和軟體方面的技術性書籍;但是,隨著經驗的增長,我發現,如果我們在技術應用和建構之時對於其人文面向沒有給予足夠的重視,技術就會變得毫無價值--甚至是危險的。於是,我決定在我的作品中加入人文領域的內容,並希望讀者能注意到這個領域。   在這之後,我出版的第一本書是《程式設計的心理學》(The Psychology of Computer Programming)。這是一本研究軟體開發、測試和維護當中關於人的過程。該書現在已經是25週年紀念版了,這充分說明人們對於理解其工作中人文部分的渴求。 ? ? 各國引進翻譯我的一系列作品,讓我有機會將這些選集當作是一個整體來思考,並發現其中一些共通的主題。自我有記憶開始,我就對於「人們如何思考」產生了濃厚的興趣;當我還很年輕時,全世界僅有的幾台電腦常常被人稱為「巨型大腦」(giant brains)。我當時就想,如果我搞清楚這些巨型大腦的「思考方式」,我或許就可以更深入地瞭解人們是如何思考的。這就是我為什麼一開始就成為一個電腦程式設計師,而後又與電腦共處了50年;我學到了許多關於人們如何思考的知識,但是目前所知的還遠遠不夠。   我對於思考的興趣都呈現在我的書裡,而在以下三本特別明顯:《系統化思考入門》(An Introduction to General Systems Thinking,這本書已是25週年紀念版了);它的姊妹作《系統設計的一般原理》(General Principles of Systems Design,這本書是與我太太Dani合著的,她是一位人類學家);還有一本就是《你想通了嗎?》(Are Your Lights On? : How to Figure Out What the Problem Really Is,這本書是與Donald Gause合著的)。 ? ? 我對於思考的興趣,很自然地延伸到如何去幫助別人清晰思考的方法上,於是我又寫了其他三本書:《顧問成功的祕密》(The Secrets of Consulting : A Guide to Giving and Getting Advice Successfully);《More Secrets of Consulting: The Consultant's Tool Kit》;《The Handbook of Walkthroughs, Inspections, and Technical Reviews : Evaluating Programs, Projects, and Products》(這本書已是第三版了)。就在不久前,我寫了《溫伯格談寫作》(Weinberg on Writing: The Fieldstone Method)一書,幫助人們如何更清楚地傳達想法給別人。   隨著年齡的增長,我逐漸意識到清晰的思考並不是獲得技術成功的唯一要件。就算是思維最清楚的人,也還是需要一些道德和情感方面的領導能力,因此我寫了《領導的技術》(Becoming a Technical Leader: An Organic Problem-Solving Approach);隨後我又出版了四卷《溫伯格的軟體管理學》(Quality Software Management),其內容涵蓋了系統化思考(Systems Thinking)、第一級評量(First-Order Measurement)、全面關照的管理作為(Congruent Action)和擁抱變革(Anticipating Change),所有這些都是技術性專案獲得成功的關鍵。還有,我開始寫作一系列小說(第一本是《The Aremac Project》預計2006年秋天出版)是關於專案及其成員如何處理他們碰到的問題——根據我半個世紀的專案實務經驗所衍生出來的虛構故事。   在與各譯者的合作過程中,透過他們不同的文化視野來審視我的作品,我的思考和寫作功力都提升不少。我最希望的就是這些譯作同樣也能幫助你們——我的讀者朋友——在你的專案、甚至你的整個人生更成功。最後,感謝你們的閱讀。 Gerald M. Weinberg
2006年8月14日 【前言】  ◎文/傑拉爾德.溫伯格
「拙劣的管理所造成軟體成本上的增加,遠超過任何其他的因素。」--Barry W. Boehm ??本書是某種形式的週年紀念禮,可用以慶祝我與電腦之間長達四十年的愛情長跑。1950年初,我讀到某一期時代雜誌的封面故事,它所談的主題是電腦,亦可稱為「會思考的機器」。該期的封面是由時代雜誌最受歡迎的一位封面設計師Artzybashef所設計。該期的封面上畫著一個由擬人化的電子設備所組成的盒子。它的一隻眼睛盯著右手上拿著的打孔紙帶,同時用左手在一台電傳打字機上打出一些輸出的資料。這個盒子的上端戴了一頂海軍軍帽,上面放了許多個的「炒蛋」,標題寫著,「Mark三號,人類能夠製造出超人嗎?」 ??稍過搧情些,沒錯,不過它卻在一個即將從高中畢業的十六歲學生的腦海中留下了深刻的印象。或許我對該篇文章中的許多細節已不復記憶,但是,我仍然清楚地記得,我當場就下定決心這輩子要跟定電腦。 ??這篇文章中最讓我感到印象深刻的一件事,那就是在電腦製造這個行業裡IBM佔有舉足輕重的地位。到了1956年我發現,還沒有一所大學能教授電腦方面的課程,於是我毅然決然地投效IBM。 ??IBM在我的眼中是一家頗值得尊敬的公司,有十四年之久,對於該公司的座右銘「THINK(思考)」尤然。IBM在這一點上是對的。思考是非常重要的一件事。但是,在那兒工作一陣子之後,我卻發現IBM和該公司的客戶們經常是在表面上把思考二字奉為神明,但在實際上卻從不去實踐--這現象在公司的軟體部門尤其嚴重,思考在IBM的最高主管心目中總是被排在最後一位。 ??就我所知,擺在我辦公桌上的那個「THINK」的牌子似乎從未能幫助我們把軟體給早點送出門。不過,IBM的經理人員似乎也從未能在改善工作的流程上有什麼新的作為。後來,當我離開IBM去開始我獨立的顧問生涯,我才發現,IBM的經理人員並不會比其他公司的經理人員表現更差。 ??軟體的經理人員對於思考這件事都只是耍耍嘴皮,卻沒有多少實際上的作為,這現象舉世皆然。究其原因,主要是因為他們從來都不曾明瞭,為什麼一般人在他們該思考的時候卻不去思考。當然啦,我本人也是不甚明瞭。 ??事後回想起來,我突然領悟為什麼當年時代雜誌對我會造成這麼大的震撼。在學校裡,人人都誇我是多麼的聰明。的確,我在各種的考試上都有極其優異的表現,但是,我在思考自己的生命時,卻似乎從未能想出個所以然。我是一個充滿煩惱的少年,而我認為一旦有了那種會思考的機器,或許就能幫助我解決我所有的問題。 ??結果,這種會思考的機器並沒有解決我所有的問題;它反而把問題搞得更難解決。當我試圖要用它來建造新軟體的時候,電腦總是毫不留情地把我所有的錯誤都突顯出來。當我為了一個程式而苦思時,在我的思路上若有任何一丁點的瑕疵,程式就跑不起來。我學到的經驗是,電腦是一面鏡子,它會忠實地反映出我的智慧,而我很不喜歡這面鏡子中的那個我。 ??後來,每當我有機會與他人合作來寫一個較大的程式時,我得到的經驗是,電腦不僅是一面鏡子,它還是一個有放大效果的鏡子。無論何時,只要我們無法有條不紊地為我們的軟體專案做思考,我們立刻就會製造出一個巨大的怪獸。我開始學到一件事,我們若是想有朝一日能夠把「會思考的機器」的功用充分地發揮,首先我們就得從改善我們自己的思考方式下手。 ??於是,我開始把思考的本身當作我的研究主題,特別是可以應用到軟體問題上的思考方式。由於IBM的慷慨大度,我得以重回學校去唸書,還寫了一篇論文,專門探討如何拿電腦當工具來反映我們的思維方式。我的足跡曾踏遍世界各地,拜訪過許多個軟體機構,並研究他們在開發軟體時是如何去思考。我與別人分享與此有關的各種想法,並試圖能夠在軟體專案中加以實踐。對於哪些想法可行,哪些不可行,我加以觀察,然後再回頭修正我的想法。我將部分的想法發行成書,然後再利用數以百計的讀者給我的指教,繼續修正我書中的某些看法。本書即總結到目前為止在如何方能有效地管理一個軟體專案一事上我所學習到的經驗。 ??管理一個軟體專案的能力為什麼有這麼重要呢?多年前時代雜誌的那篇文章上所做的諸多預言中有一個是這麼說的: ??環繞在每一台全速運轉的電腦四周的,是一群帶著夢幻般眼神的年輕數學家。桌上擺滿了許多冰冷的數字,他們將現實生活中的問題都轉換成以數字來表達的語言。通常,若是用這樣的方法來解決問題,他們為某個問題預做準備所花的時間,比起電腦解決該問題所花的時間,還要多出許多。
??要提出問題的人類必然會落後於要回答問題的機器,而且會落後的愈來愈多。 ??這篇文章中所有的預言並未全部實現(截至目前為止),然而,這一個預言卻真的說對了。自從我加入那群帶著夢幻般眼神的年輕「回答問題的人」的那一天起(「程式設計師」這個名詞在那個時候還沒發明出來),我就學會了一件事,你如果不想落後給能夠回答問題的機器愈來愈多的話,你需要擁有三項基本的能力: 1.有能力對發生了什麼事進行觀察,並且有能力對你的觀察結果所代表的意義加以解讀。 2.在複雜的人際關係中,即使你會感到迷惘、憤怒、或是非常地害怕,甚至害怕到想要當場逃離並找個地方躲起來,你仍然有能力採取能關照全局的行動。 3.有能力瞭解各種複雜的狀況(此項能力讓你能為專案做好事前的規劃,並準此來進行觀察及採取行動,以保持專案可依計劃進行,或再回頭去修正原本的計劃。) ??對高品質的軟體管理工作而言,這三項能力缺一不可,但是我不想將本書寫成一本皇皇巨著。因此,如同任何一位稱職的軟體經理一般,我將寫書的計劃拆成三個小計劃,在每一個小計劃中都針對這三項基本能力中的一項來討論。我將從第三項能力開始寫起:有能力瞭解各種複雜的狀況,其原因將在本書的內文中做清楚的交代。 ??換句話說,這是一本談論如何去思考的書。本書的座右銘正是IBM公司的座右銘,這是我回報IBM和許多曾經幫助過我的人的一種方式,感謝我在軟體這個行業四十年來從他們身上所學習到的諸多美好的經驗。我實在想不出還有什麼樣的禮物會比幫助他人(就像我曾接受過許多人的幫助)更為美好,我希望幫助他人在思考某個關乎其個人,也關乎這個世界的極其重要的課題時,能夠以更有效的方式來思考。

作者資料

傑拉爾德.溫伯格(Gerald M. Weinberg)

是美國軟體工程界最著名的人士之一。曾任職於IBM、Ethnotech、水星計畫(美國第一個載人太空計畫),並曾任教於多所大學。他更是傑出的軟體專業作家和軟體管理思想家,因對技術問題與人性問題所提出的創新思考法而為世人所推崇。1997年,溫伯格因其在軟體領域的傑出貢獻,入選為美國計算機博物館的「計算機名人堂」(Computer Hall of Fame)成員。他也榮獲J.-D. Warnier獎項中的「資訊科學類卓越獎」,此獎每年一度頒發給在資訊科學領域對理論與實際應用有傑出貢獻的人士。 溫伯格共寫了30幾本書,包括《顧問成功的祕密》、《你想通了嗎?》、《領導者,該想什麼?》、《從需求到設計》、一共四冊的《溫伯格的軟體管理學》(以上由經濟新潮社出版)、《程式設計的心理學》等等,這些著作主要涵蓋兩個主題:人與技術的結合;人的思維模式、思維習慣與解決問題的方法。 在西方國家,溫伯格擁有大量的忠實讀者。溫伯格現為Weinberg and Weinberg顧問公司的負責人,他的網站是http://www.geraldmweinberg.com

基本資料

作者:傑拉爾德.溫伯格(Gerald M. Weinberg) 譯者:曾昭屏 出版社:經濟新潮社 書系:經營管理 出版日期:2006-09-04 ISBN:9867889487 城邦書號:QB1042 規格:膠裝 / 單色 / 480頁 / 17cm×23cm
注意事項
  • 若有任何購書問題,請參考 FAQ