<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    懵懵燈燈的BLOG

    寒夜孤燈點點星

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      56 隨筆 :: 10 文章 :: 22 評論 :: 0 Trackbacks

    敏捷開發宣言 http://agilemanifesto.org/
    敏捷開發聯盟 http://www.agilealliance.com

    Manifesto for Agile Software Development

    We are uncovering better ways of developing
    software by doing it and helping others do it.
    Through this work we have come to value:

    Individuals and interactions over processes and tools
    Working software over comprehensive documentation
    Customer collaboration over contract negotiation
    Responding to change over following a plan

    That is, while there is value in the items on
    the right, we value the items on the left more.




    Kent Beck
    Mike Beedle
    Arie van Bennekum
    Alistair Cockburn
    Ward Cunningham
    Martin Fowler
    James Grenning
    Jim Highsmith
    Andrew Hunt
    Ron Jeffries
    Jon Kern
    Brian Marick
    Robert C. Martin
    Steve Mellor
    Ken Schwaber
    Jeff Sutherland
    Dave Thomas




    © 2001, the above authors
    this declaration may be freely copied in any form,
    but only in its entirety through this notice.


    Principles of Agile Software
    Become a Signatory
    View Signatories
    About the Authors
    About the Manifesto
    Visit the Non-Profit Agile Alliance


     

    敏捷書籍 ---- copy from csdn

    “敏捷軟件開發宣言:我們正在通過親身實踐和幫助其他人實踐,揭示更好的軟件開發方法,通過這項工作,我們認為:
    人和交流勝過過程和工具
    可工作的軟件勝過面面俱到的文檔
    客戶協作勝過合同談判
    響應變化勝過遵循計劃
    雖然右項也有價值,但是我們認為左項更重要。”
    —— Kent Beck,Mike Beedle,Arie van Bennekum,Alistair Cockburn,Ward Cunningham,Martin Fowler,James Grenning,Jim Highsmith,Andrew Hunt,Ron Jeffries,Jon Kern,Brian Marick, Robert C. Martin,Steve Mellor,Ken Schwaber,Jeff Sutherland,Dave Thomas

    敏捷軟件開發這個詞在2006年的中國軟件界聽起來仍然顯得有些陌生。自2001年敏捷聯盟被發起以來,敏捷方法的實踐經驗和理論研究都在不斷的更新。而我國的大多數程序員還是只能在書本上讀到敏捷的好處,很難在項目中進行實踐。這其中的原因,主要是缺乏擁有實際敏捷項目經驗的人來帶領實施敏捷。雖然敏捷開發是種實踐行為,很難從書本上直接學習,不過多數程序員了解敏捷,卻都是先從書本開始的。無論結果怎樣,從認識到實踐的過程是免不了的。

    敏捷軟件開發之方法論篇
    大家都知道敏捷軟件開發方法包括了多種方法論,主要有:SCRUM,Crystal,特征驅動軟件開發(FDD),自適應軟件開發(ASD),以及最著名的極限編程(XP)。這些方法論分別在不同的著作上專門論述過:
    SCRUM:《Agile Software Development with Scrum》 by Ken Schwaber, Mike Beedle,《Agile Project Management With Scrum》by Ken Schwaber
    FDD: 《Java Modeling in Color with UML》by Peter Coad,
    《A Practical Guide to Feature-Driven Development》(特征驅動開發) by Stephen R Palmer, John M. Felsing,
    Crystal: 《Crystal Clear》by Alistair Cockburn
    ASD: 《Adaptive Software Development》(自適應軟件開發)by James A. Highsmith

    其中尤以XP系列的書籍居多。人民郵電出版社的一系列極限編程系列叢書,在國內引進較早。在還沒有統一敏捷詞匯的情況下,引發了一批敏捷先鋒人士的熱情,是我國程序員的敏捷啟蒙教材。這些書包括《Extreme Programming Explained》(解析極限編程),《Extreme Programming Examined》(極限編程研究),《Extreme Programming Installed》(極限編程實施),《Extreme Programming Explored》(探索極限編程),《Extreme Programming Applied》(應用極限編程)《Extreme Programming in Practice》(極限編程實踐),《Planning Extreme Programming》(規劃極限編程)等,這些書有的是作者的XP實踐論文,有些是對XP項目的介紹,其中,值得推薦的是下面兩部著作。

    《Extreme Programming Explained: Embrace Change》by Kent Beck
    第一版中譯版:《解析極限編程:擁抱變化》,唐東銘,人民郵電出版社
    第二版中譯版:雷劍文,電子工業出版社
    作為XP的開山之作,目前已經出版了第二版。在第一版中,Kent Beck對XP作了詳細的描述。從當前軟件開發的現狀和問題談起,從需求的變化到如何擁抱變化,給出了XP的四項價值觀和十二項實踐。對于想了解敏捷的來龍去脈的人,此書屬于必讀之類。在第二版,Kent根據幾年來的實踐,為XP增加了一項價值觀:尊重,并增加了原則的概念,同時增加和刪改了一些實踐。
    該書第一版是程序員的宣言,這和Kent的背景很有關系。隨后XP經歷了五六年的發展和實踐,Kent自己也逐漸意識到,這樣的觀點太狹隘了。因此就有了第二版,與其說這是技術書籍,到更像是純粹意義的軟工書籍。期間也可以看出XP的體系更加完備。這其中尤為突出的是把人放到了更為重要的地位。

    《Extreme Programming in Practice》by James Newkirk, Robert C. Martin
    中譯版:《極限編程實踐》,王鈞,人民郵電出版社
    讀過了一些列的XP書籍,程序員們都會覺得XP非常好,但到底如何才能開始實施XP呢?還不是太清楚。本系列中的這本書用一個完整的小項目作例子,從頭到尾教給人如何敏捷開發,是一本不可多得的實踐教材。如果想直接實施XP開發,這本書可以給你很大啟示。


    敏捷軟件開發之實踐篇
    一、極限編程最佳實踐
    由于極限編程是如此的流行,多數敏捷團隊都會或多或少的借鑒一些XP中的敏捷實踐,而XP的每一個敏捷實踐也確實值得大書特書,而其中最著名的是測試驅動開發和重構實踐:

    《Test-Driven Development》 by Kent Beck
    中譯版:《測試驅動開發》,崔凱,中國電力出版社
    測試驅動開發是Kent Beck另一部力作。“Clean Code That Works”是敏捷開發的目標之一,那么如何達到這個目標?TDD給出了一種方式。測試實質上是需求。由需求產生出的代碼肯定是能夠工作的功能代碼,而要實現Class本身的可測試性,就不得不寫出高度解耦合的Clean的代碼。本書從一個Money的例子入手,從最初的一點需求開始,逐步增加需求,完成整個貨幣系統的代碼。后面又給出了Unit Test中的一些最佳實踐和模式供參考。
    然而,本書的教導意義比其實踐意義更突出。作為一本TDD的教程或入門教材,這本書無疑是最佳的,其中提出的一些最佳實踐更是值得經常閱讀來溫習。本書面向的是單元測試,而實際開發中面對的數據庫測試,Web測試等問題并不屬于單元測試的范疇。因此讀者并不能從中直接進入到實戰。
    另一本同名書《Test Driven Development: A Practical Guide》由Davis Astels撰寫,他將該書看作是Kent著作的補充,重點闡述利用TDD開發所必要的技術和工具上,因此對實際開發更具實用性。

    《Refactoring: Improving the Design of Existing Code》by Martin Fowler
    中譯版:《重構:改善既有代碼的設計》,侯捷,熊節,中國電力出版社
    重構這本書的意義在于,他提供了一種讓你寫出更加優美代碼的能力。在測試的保證下,重構能夠發揮強大的威力。敏捷團隊中,不斷的重構出簡單且高效的代碼才能夠保持擁抱不斷變化的需求。后來的一本書《Refactoring to Patterns》(從重構到模式)by Joshua Kerievsky,更是將重構的威力發揮到極限。
    重構曾被稱為軟件開發圖書的雙璧,另一本書是《Design Patterns》(設計模式) by GoF。當然,對現在的軟件開發這二者已經不是最重要的。ThoughtWorks的首席科學家Martin Fowler總結了朋友們的各種實踐心得,寫出了這本書。從幾年后的目光來看,這本書中的多數實踐都被各種IDE做到了操作菜單中。雖然IDE提供了大量重構功能,但僅靠IDE是無法寫出簡潔美妙代碼的,多數的敏捷團隊重構工作做得還是不夠。

    另外有一本專門介紹結對編程的書,《Pair Programming Illuminated》(結對編程技術)by by Laurie Williams and Robert Kessler,指出了為什么要結對?并從各種不同水平不同性格的程序員結對情況來討論該實踐的優劣。對此有興趣的程序員不妨一讀。

    二、敏捷軟件開發實踐
    自從2001年敏捷聯盟成立以來,單獨推廣極限編程的書變少了,而統一口徑推廣敏捷的書變得越來越多。兩本同名的敏捷軟件開發都是不可多得的好書,

    《Agile Software Development:Principles, Patterns, and Practices》by Robert C. Martin
    中譯版:《敏捷軟件開發:原則,模式與實踐》,鄧輝,清華大學出版社
    被業內人士稱為Uncle Bob的Robert C Martin在沉寂幾年后寫出了這部書。該書可以算是從軟件開發角度對敏捷方法闡述的最詳細和全面的一本。之前的敏捷書籍多是關注于過程改進,而對如何從技術角度實施講的比較少。本書一開始先介紹了敏捷聯盟和敏捷開發過程。之后詳細論述了面向對象設計的原則,這些原則是本書的精華之一。后面通過幾個項目介紹了如何將設計模式應用于項目中。
    Uncle Bob不愧是實踐的大師,寫出來的書也是擁有很強的實踐意義。在敏捷團隊的辦公桌上,應當常備此書,一來可作為參考查詢,二來可以作為新成員的必讀書目。

    《Agile Software Development》by Alistair Cockburn
    中譯版:《敏捷軟件開發》,俞涓,人民郵電出版社
    這本書更加適合管理者來閱讀。Alistair從項目人數和交流難易程度,將敏捷的各種方法劃分了其適用范圍。人數多的或分布式項目就需要靠其他手段來加強交流,人數少的就可以靠pair programming等進行面對面的交流。交流和反饋是敏捷的核心。同時Alistair也介紹了一下他提出的Crystal方法族。

    三.敏捷項目管理和敏捷需求分析
    在推廣敏捷一段時間后,敏捷社群也意識到,多數書籍更像是面向開發人員,過于技術化,難以吸引項目經理或主管。因此,一批面向管理者視角的書也開始浮出水面,這些書包括:
    《Agile and Iterative Development》(敏捷迭代開發)by Craig Larman
    《Lean Software Development》(敏捷軟件開發工具—精益開發方法)by Mary Poppendieck
    《Agile Software Development Ecosystems》(敏捷軟件開發生態系統)by Jim Highsmith
    書中從各種角度比較和分析各種敏捷方法的優劣,異同,起源,適用范圍等。這些書對于一個項目主管決策使用何種過程來在自己的團隊中實踐敏捷有很好的參考作用。

    近兩年,人們開始逐漸意識到敏捷開發的側重點不僅僅是開發過程和開發實踐,還包括對需求和項目管理等其他相關方面的實踐。一些相關的書籍也悄然出現在人們的視野:
    《Agile Project Management》(敏捷項目管理)by Jim Highsmith
    《User Stories Applied》by Mike Cohn
    《Agile Estimating and Planning》by Mike Cohn
    《Agile Requirements & User Stories》 by Louis Molnar
    這些書不同于以往強調新方法,新過程的書目。敏捷項目管理類的書主要介紹如何管理敏捷團隊,如何計劃要開發的需求,如何為客戶提供最大的價值。介紹敏捷需求分析的書主要幫助商務分析師或項目經理挖掘和分析用戶需求,寫出用戶故事,評估和計劃用戶故事等。人們已經意識到,各種方法論的實質是相同的,都是提供商業價值,減少浪費,增加交流,快速反饋。因此不需要著重于區分是使用了那種方法。對項目經理來說,不同的項目或團隊應當采用適應其特殊情況的方法,而這些方法的基本原則是相同的。

    四.敏捷軟件開發新方向
    對架構師或程序員來說,近年來的技術進展,也使得敏捷開發有了新的研究方向:
    《Agile Web Development with Rails》by Dave Thomas, David Hansson, Leon Breedt, and Mike Clark
    該書是獲得2006JOLT獎的書,講得是采用Ruby on Rails這個Web開發工具新貴來快速開發Web項目,從而達到快速反饋擁抱變化的目的。
    《Refactoring Databases》by Scott W Ambler
    此書是Scott的新作,延續和繼承了《Agile Modeling》(敏捷建模)和《Agile Database Techniques》(敏捷數據)的思想。在敏捷開發過程中,作為持久化最常見技術的數據庫如果不能夠敏捷,怎么能夠適應一次次迭代和一次次發布的修改呢?書中介紹了如何進行數據庫演化,如何保證升級后數據庫數據的正確性,以及最佳實踐。

    我們可以看到,隨著敏捷方法和市場的不斷成熟,敏捷的書籍也從理論性轉向了實用和最佳實踐類型。然而,不可否認的是,一個團隊的敏捷化很難僅靠閱讀書本來完成,由成功實踐過敏捷的開發者手把手的帶領,才是最好的方法。



    版權聲明:原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://zhaisj.blog.51cto.com/219066/46187
    從瀑布模型、極限編程到敏捷開發
    ---軟件開發管理者思維的變化
    Jack zhai
     
    軟件開發是一種對人類智慧的管理,對人大腦思維的“工廠化”管理。人是有感情的、有情緒的、變化的、相對獨立的工作單元,這與冰冷的機器是不可比的,所以在中國的歷史上,管理人是最難的工作;“學而優則仕”的觀點就是讓最聰明的人應該選出來做官,做官就是管理人的。軟件開發不僅是代碼編程,而是人員的有效組織,如何既發揮人的主觀能動性,避免情緒變化對工作的影響,又可以讓大家有效的交流,讓多個大腦的思路統一,快速完成目標呢?多年來軟件企業的管理者一直在不斷地探索。
    另外有一個問題一直是軟件開發管理人員的心病:軟件是工具,開發的是客戶業務的應用,但客戶不了解軟件,開發者不了解業務,如何有效溝通是軟件質量的重大障礙。把開發者變成客戶業務的專家是個沒有辦法的辦法,讓軟件企業付出的代價也是昂貴的。
    瀑布模型、極限編程、敏捷開發是有代表性的開發模式,在對開發者、客戶、最終的產品的關注上的變化,體現了軟件開發管理者在管理模式上的變化。
     
    一、瀑布開發
    瀑布模型(Waterfall Model)Royce1970年提出的,他把大型軟件開發分為:分析與編程,象工廠流水線一樣把軟件開發過程分成各種工序,并且每個工序可以根據軟件產品的規模、參與人員的多少進一步細分成更細的工序。該模型非常符合軟件工程學的分層設計思路,所以成為軟件開發企業使用最多的開發模型。
    瀑布模型的特點:
    1、               強調文檔,前一個階段的輸出就是下一個階段的輸入,文檔是個階段銜接的唯一信息。所以很多開發人員好象是在開發文檔,而不是開發軟件,因為要到開發的后期,才可以看到軟件的“模樣”。
    2、               沒有迭代與反饋。瀑布模型對反饋沒有涉及,所以對變化的客戶需求非常不容易適應,瀑布就意味著沒有回頭路。
    3、               管理人員喜歡瀑布模型的原因是把文檔理解為開發的速度,可以方便地界定不同階段的里程碑。
    瀑布模型的用戶很多,也有一些反對的意見:
    第一、瀑布模型不適合客戶需求不斷變化的軟件開發,尤其是客戶的業務管理的軟件,業務隨著市場變化,而軟件初期的設計可能已經大大變化,而后期的需求更改成本是開始的10倍基數。在ERP盛行的軟件市場里,一方面市場帶動需求變化,另一方面初期客戶對需求描述不清楚,都為瀑布模型的使用團隊帶來困難。
    第二、瀑布模型是一種軟件文檔的開發,把開發者變成流水線上的機器,大量重復性的工作讓編程人員提不起興趣,工作很枯燥,沒有激情,編程成了一種沒有創意的機械勞動,這讓一向以高科技為標志的高級程序人員大為惱火。
    在這種背景下,極限編程(extreme Programming, XP)帶來了新鮮的空氣。
     
    二、極限編程
    極限編程誕生于一種加強開發者與用戶的溝通需求,讓客戶全面參與軟件的開發設計,保證變化的需求及時得到修正。要讓客戶能方便地與開發人員溝通,一定要用客戶理解的語言,先測試再編碼就是先給客戶軟件的外部輪廓,客戶使用的功能展現,讓客戶感覺到未來軟件的樣子,先測試再編碼與瀑布模型顯然是背道而馳的。同時,極限編程注重用戶反饋與讓客戶加入開發是一致的,讓客戶參與就是隨時反饋軟件是否符合客戶的要求。有了反饋,開發子過程變短,迭代也就很自然出現了,快速迭代,小版本發布都讓開發過程變成更多的自反饋過程,有些象更加細化的快速模型法。當然極限編程還加入了很多激勵開發人員的“措施”,如結隊編程、40小時工作等。
    極限編程是一種開發管理模式,它強調的重點是:
    1、              角色定位:極限編程把客戶非常明確地加入到開發的團隊中,并參與日常開發與溝通會議。客戶是軟件的最終使用者,使用是否合意一定以客戶的意見為準。不僅讓客戶參與設計討論,而且讓客戶負責編寫擁護故事(User Story),也就是功能需求,包括軟件要實現的功能以及完成功能的業務操作過程。用戶在軟件開發過程中的責任被提到與開發者同樣的重要程度。
    2、              敏捷開發:敏捷開發追求合作與響應變化。迭代就是縮短版本的發布周期,縮短到周、日,完成一個小的功能模塊,可以快速測試、并及時展現給客戶,以便及時反饋。小版本加快了客戶溝通反饋的頻率,功能簡單,在設計、文擋環節大大簡化。極限編程中文擋不再重要的原因就是因為每個版本功能簡單,不需要復雜的設計過程。極限編程追求設計簡單,實現客戶要求即可,無需為擴展考慮太多,因為客戶的新需求隨時可以添加。
    3、              追求價值:極限編程把軟件開發變成自我與管理的挑戰,追求溝通、簡單、反饋、勇氣,體現開發團隊的人員價值,激發參與者的情緒,最大限度地調動開發者的積極性,情緒高漲,認真投入,開發的軟件質量就大大提高。結對編程就是激發隊員才智的一種方式。
     
        極限編程把軟件開發過程重新定義為聆聽、測試、編碼、設計的迭代循環過程,確立了測試->編碼->重構(設計)的軟件開發管理思路。
    極限編程的12個實踐是極限編程者總結的實踐經典,是體現極限編程管理的原則,對極限編程具有指導性的意義,但并非一定要完全遵守12個實踐,主要看它給軟件過程管理帶來的價值。
    1、              小版本。為了高度迭代,與客戶展現開發的進展,小版本發布是一個可交流的好辦法,客戶可以針對性提出反饋。但小版本把模塊縮得很小,會影響軟件的整體思路連貫,所以小版本也需要總體合理的規劃。
    2、              規劃游戲。就是客戶需求,以客戶故事的形式,由客戶負責編寫。極限編程不講求統一的客戶需求收集,也不是由開發人員整理,而是采取讓客戶編寫,開發人員進行分析,設定優先級別,并進行技術實現。當然游戲規則可進行多次,每次迭代完畢后再行修改。客戶故事是開發人員與客戶溝通的焦點,也是版本設計的依據,所以其管理一定是有效的、溝通順暢的。
    3、              現場客戶。極限編程要求客戶參與開發工作,客戶需求就是客戶負責編寫的,所以要求客戶在開發現場一起工作,并為每次迭代提供反饋。
    4、              隱喻。隱喻是讓項目參與人員都必須對一些抽象的概念理解一致,也就是我們常說的行業術語,因為業務本身的術語開發人員不熟悉,軟件開發的術語客戶不理解,因此開始要先明確雙方使用的隱喻,避免歧異。
    5、              簡單設計。極限編程體現跟蹤客戶的需求變化,既然需求是變化的,所以對于目前的需求就不必過多地考慮擴展性的開發,講求簡單設計,實現目前需求即可。簡單設計的本身也為短期迭代提供了方便,若開發者考慮“通用”因素較多,增加了軟件的復雜度,開發的迭代周期就會加長。簡單設計包括四方面含義:1、通過測試。2、避免重復代碼。3、明確表達每步編碼的目的,代碼可讀性強。4、盡可能少的對象類和方法。由于采用簡單設計,所以極限編程沒有復雜的設計文檔要求。
    6、              重構。重構是極限編程先測試后編碼的必然需求,為了整體軟件可以先進行測試,對于一些軟件要開發的模塊先簡單模擬,讓編譯通過,到達測試的目的。然后再對模塊具體“優化”,所以重構包括模塊代碼的優化與具體代碼的開發。重構是使用了“物理學”的一個概念,是在不影響物體外部特性的前提下,重新優化其內部的機構。這里的外部特性就是保證測試的通過。
    7、              測試驅動開發。極限編程是以測試開始的,為了可以展示客戶需求的實現,測試程序優先設計,測試是從客戶實用的角度出發,客戶實際使用的軟件界面著想,測試是客戶需求的直接表現,是客戶對軟件過程的理解。測試驅動開發,也就是客戶的需求驅動軟件的開發。
    8、              持續集成。集成的理解就是提交軟件的展現,由于采用測試驅動開發、小版本的方式,所以不斷集成(整體測試)是與客戶溝通的依據,也是讓客戶提出反饋意見的參照。持續集成也是完成階段開發任務的標志。
    9、              結對編程。這是極限編程最有爭議的實踐。就是兩個程序員合用一臺計算機編程,一個編碼,一個檢查,增加專人審計是為了提供軟件編碼的質量。兩個人的角色經常變換,保持開發者的工作熱情。這種編程方式對培養新人或開發難度較大的軟件都有非常好的效果。
    10、           代碼共有。在極限編程里沒有嚴格文檔管理,代碼為開發團隊共有,這樣有利于開發人員的流動管理,因為所有的人都熟悉所有的編碼。
    11、           編碼標準。編碼是開發團隊里每個人的工作,又沒有詳細的文檔,代碼的可讀性是很重要的,所以規定統一的標準和習慣是必要的,有些象編碼人員的隱喻。
    12、           每周40小時工作。極限編程認為編程是愉快的工作,不輕易加班,今天的工作今天做,小版本的設計也為了單位時間可以完成的工作安排。
     
    三、敏捷開發
    極限編程的思想體現了適應客戶需求的快速變化,激發開發者的熱情,也是目前敏捷開發思維的重要支持者。
    2001年,17名編程大師分別代表極限編程、Scrum(“棒球”團隊開發模式)、特征驅動開發、動態系統開發方法、自適應軟件開發、水晶方法、實用編程等開發流派,發表“敏捷軟件開發”宣言。敏捷軟件開發是一個開發軟件的管理新模式,用來替代以文件驅動開發的瀑布開發模式。敏捷方式也稱輕量級開發方法。敏捷軟件開發宣言內容:
    ²        個體和交互勝過過程和工具
    ²        可以工作的軟件勝過面面具到的文檔
    ²        可戶合作勝過合同談判
    ²        響應變化勝過遵循計劃
    敏捷開發集成了新型開發模式的共同特點,它重點強調:
    1.         以人為本,注重編程中人的自我特長發揮。
    2.         強調軟件開發的產品是軟件,而不是文檔。文檔是為軟件開發服務的,而不是開發的主體。
    3.         客戶與開發者的關系是協作,不是合約。開發者不是客戶業務的“專家”,要適應客戶的需求,是要客戶合作來闡述實際的需求細節,而不是為了開發軟件,把開發人員變成客戶業務的專家,這是傳統開發模式或行業軟件開發企業的最大面臨問題。
    4.         設計周密是為了最終軟件的質量,但不表明設計比實現更重要,要適應客戶需求的不斷變化,設計也要不斷跟進,所以設計不能是“閉門造車”、“自我良好”,能不斷根據環境的變化,修改自己的設計,指導開發的方向是敏捷開發的目標。
    敏捷開發避免了傳統瀑布方式的弊端,主要是吸收了各種新型開發模式的“動態”特性,關注點從文檔到開發者,管理方式也從工廠的流水線到團隊的自我放松式的組織。總結敏捷開發與瀑布模式的不同,主要是下面幾個“敏捷”的關注點:
    ²        迭代。軟件的功能是客戶的需求,界面的操作是客戶的“感覺”,對迭代的強調是縮短了軟件版本的周期
    ²        客戶參與。以人為本,客戶是軟件的使用者,是業務理解的專家,沒有客戶的參與,開發者很難理解客戶的真實需求
    ²        小版本。快速功能的展現,看似簡單,但對于復雜的客戶需求,合理地分割與總體上的統一,要很好地二者兼顧是不容易的。
       
    敏捷就是“快”,快才可以適應目前社會的快節奏;要快就要發揮個人的個性思維多一些,個性思維的增多,雖然通過結隊編程、代碼共有、團隊替補等方式減少個人對軟件的影響力,但也會造成軟件開發繼承性的下降,因此敏捷開發是一個新的思路,但不是軟件開發的終極選擇。對于長時間、人數眾多的大型軟件應用的開發,文檔的管理與銜接作用還是不可替代的。如何把敏捷的開發思路與傳統的“流水線工廠式”管理有機地結合,是軟件開發組織者面臨的新課題。

    本文出自 “Jack zhai” 博客,請務必保留此出處http://zhaisj.blog.51cto.com/219066/46187

    posted on 2008-02-27 01:08 懵懵燈燈 閱讀(671) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 天天影视色香欲综合免费| 亚洲爱情岛论坛永久| 97国产免费全部免费观看| 一级做受视频免费是看美女| 亚洲一区二区三区精品视频| 伊人久久大香线蕉亚洲| 国产免费久久精品| 亚洲免费综合色在线视频| 99在线视频免费| 美女被cao网站免费看在线看| 色吊丝性永久免费看码| 精品国产_亚洲人成在线| 国产日本亚洲一区二区三区| 亚洲黄色网站视频| 亚洲AV永久无码精品| 国产aⅴ无码专区亚洲av麻豆 | 亚洲欧洲成人精品香蕉网| 亚洲 综合 国产 欧洲 丝袜| 热99re久久精品精品免费| 毛片A级毛片免费播放| 日本高清在线免费| 最近中文字幕大全免费视频| 久久精品视频免费看| 在线免费播放一级毛片| 中文字幕免费视频精品一| 一二三区免费视频| 亚洲一区二区三区免费| 日韩在线一区二区三区免费视频| 美女黄色毛片免费看| 看亚洲a级一级毛片| 午夜亚洲乱码伦小说区69堂| 日韩国产精品亚洲а∨天堂免| 亚洲欧美日本韩国| 亚洲av永久中文无码精品综合| 亚洲乱人伦中文字幕无码| 亚洲国产欧洲综合997久久| 亚洲av无码兔费综合| 黄色三级三级三级免费看| 日本在线观看免费高清| 一日本道a高清免费播放| 国产特黄一级一片免费|