欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

關于敏捷開發的精彩六問

admin
2010年7月25日 2:31 本文熱度 4968

    每個項目經理都聽說過夢魘般的編程項目:項目歷時長達預期時間的兩倍、嚴重超出成本預算,又遠遠看不到結果。幸好,可以使用敏捷編程來解決這些問題。

    公司需要想辦法降低開發成本、提高軟件可靠性、縮短開發時間,并且確保應用軟件真正有助于用戶,而不是有礙于用戶。這四個方面對任何人來說都是難以實現的,但敏捷編程技術能夠在許多應用編程場景做到這一點。敏捷編程可通過減少開發人員在設計及開發應用軟件中所犯的錯誤來降低開發成本。另外,它還能消除最高昂的一種開發成本:失敗的應用軟件。

    不過,即便應用軟件開發完成、安裝到服務器上后,提高可靠性所需的成本仍會抵消應用軟件帶來的潛在好處。只有精心設計的應用軟件,才有望獲得大多數公司力爭實現的99.999%可靠性。敏捷編程能夠完成這項任務,因為可以減少每個模塊可能出現的開發錯誤數量,還能通過不斷測試來迅速找出錯誤。

    許多公司期望任何開發項目都能迅速獲得投資回報。然而,如果公司等待開發人員完成整個應用軟件,大多數項目就會被擱置多年。而敏捷編程技術不是等待整個應用軟件完成,而是立即使用應用軟件的至少一部分,這意味著用戶可以馬上從應用軟件中受益。

    一、敏捷編程有何不同?

    敏捷編程把一個應用軟件開發項目分成了諸多很小的模塊化部分。每個部分在很短時間內逐個解決,然后添加到整個應用軟件上,最后提供完整的功能。部署了不完全的應用軟件后,人們可以用它來完成某種工作,即使軟件不具備從長遠來看應當具備的各種功能。

    每個部分的迭代過程持續一到四周。因而,用戶可以立即知道應用軟件的某個部分何時出了問題。這樣,就可以立即解決問題,而不是在一大堆錯誤百出或者“不是用戶所需”的代碼上實現了各種其他功能之后再解決問題。

    每個迭代過程本身就像一個小型項目。作為敏捷項目經理,要像往常那樣監管規劃、需求、設計、編碼、測試和文檔編制等各個階段,只不過這是針對應用軟件的某項功能。譬如說,如果正在開發一種特殊的文字處理軟件,有個迭代過程可能是針對拼寫檢查程序的。拼寫檢查程序添加到文字處理軟件上,它影響的只是整個軟件的一個方面。開發人員開發處理拼寫的迭代過程之前,用戶就可以使用該文字處理軟件,沒有這項功能也沒關系。他們只是沒法檢查拼寫的內容罷了。

    二、是否需要做大量額外工作?

    有些人誤認為,敏捷編程技術需要做大量的額外工作。不過事實上,它減少了工作量,還大大加快了投資回報的實現,這是因為每個組件的周轉時間縮短了,可以更迅速地投入使用。

    事實上,由于開發人員能對這種軟件迅速做出反應,項目經理往往使用敏捷編程技術來挽救陷入困境的項目。譬如說,敏捷編程的創始人kent beck曾在1986年使用該技術挽救了克萊斯勒綜合薪資系統(3c)項目。

    三、除了迭代工作方式,敏捷編程還有何不同?

    敏捷編程方法的基礎是溝通。這種方法強調面對面的溝通,書面文檔作為討論要點。換句話說,不是許多人獨立負責開發項目的各個部分,而是大家聯合起來,作為一個團隊來開發某個部分。

    不像其他編程方法,敏捷編程依靠的是大不相同的成員組成的團隊,這些人分組工作。團隊成員包括:項目經理、設計人員、開發人員、測試人員、客戶、文檔編制人員以及需要使用這部分軟件的其他任何人。因為相關各方能夠協同工作,所以通常有可能在極短時間內完成開發,幾乎不需要什么改寫。

    然而,敏捷編程方面要考慮的最重要因素就是,開發過程涉及每個人。客戶(用戶)從一開始就參與項目,這意味著開發團隊能比較準確地了解用戶與應用軟件之間如何互動以及執行某項任務所需要的步驟。

    四、企業文化會不會發生變化?

    敏捷編程所需的環境確實有別于通常的那種企業環境。譬如說,團隊的所有成員必須或多或少信任其他成員。任何人都不能拒絕向團隊成員提供信息、資源或者數據。

    除了信任外,團隊成員必須愿意妥協。應用軟件的一個部分可能需要某些功能;而有些功能雖好,卻沒有必要。有時,為了在合理的時間內開發完成某部分,團隊必須確定棄用沒有必要的功能,留給將來的迭代過程去實現。

    團隊做出的一些決策也許不受整個公司的歡迎,“你不可能討好每一個人”這句老話適用于此。因為團隊中包括來自公司各部門的代表,公司必須信任團隊這么做是出于好意,目的在于接受開發團隊交付的那部分應用軟件。不然,項目會很快陷入一片混亂。當然,這不是說公司不得不接受錯誤百出或者無法完成任務的應用軟件。之所以分成小部分來部署應用軟件,就是為了更早發現及補救軟件錯誤及使用問題,從而減少補救成本。

    最后一點就是,提供促進團隊成員之間溝通的環境。實現這個目標需要為團隊成員提供特定的工作場所。成員們應當保持同樣長的工作時間,以便其他成員需要溝通時能找得到人。

    五、何時避免使用敏捷編程技術?

    應用軟件開發根本就沒有什么靈丹妙藥可言。雖然敏捷編程技術可以很快開發出優秀的應用軟件,但不是說這項技術適合每個項目。

    譬如說,一家公司需要開發無法分成諸多小部分的大型應用軟件,要20余名開發人員才能完成。例如,為一家大醫院開發心臟監測應用軟件,就不希望只開發出監測心臟的那部分軟件,在還沒有開發出病人心臟有問題后發出警報的其他部分時就部署上去。這種情況下,必須開發出整個應用軟件、整體測試后才可以部署,否則后果會很嚴重。這種場合下,敏捷編程技術算不上是良好的解決辦法,因為一旦涉及了許多人,系統馬上會崩潰。

    需要分布式開發的應用軟件也不是非常適合使用敏捷編程技術。如果有些開發人員在英國、有些在美國,團隊成員溝通起來不夠迅速。分布式團隊很難得到敏捷方法帶來的所有好處。系統很快會陷入泥沼,你會發現大量時間用在了為團隊的每個成員提供最新信息上。

    敏捷編程技術還很難應用于每個部分一開始就要用的關鍵任務型應用軟件。因為敏捷編程技術最適合小的迭代過程,那樣整個應用軟件不必立即開發出來。這種方法要求公司部署不完全的應用軟件,以便征求整個公司的意見。目的在于,迅速補救任何實際缺陷及使用問題,而不是開發出一個完整的應用軟件,等項目結束后才能測試。

    有些公司本身也不適合使用敏捷編程技術,因為采用了集中的命令式管理方式,這遏制了敏捷編程發揮作用所需的有創意的方法。

    六、只有一種敏捷編程方法嗎?

    敏捷編程包括好多方法,都可以用來實現目標。到底使用哪種方法,取決于想開發的應用軟件類型、想要滿足的客戶以及公司內部的環境。下面是幾種比較常見的敏捷編程方法:

    ◆極限編程(XP)

    這種方法強調的是適應性,而不是可預測性。它最適合這種場合: 公司并不確切知道自己需要什么樣的最終產品。這種方法最先由Kent Beck采用。

    ◆Scrum

    這種方法強調的是重新開始迭代過程,而不是企圖補救問題。它最適合這種場合: 公司在使用新工具,以及應用軟件在開發過程中幾乎肯定會變化。1993年,Jeff Sutherland在Easel Corporation最先使用了Scrum方法。

    ◆自適應軟件開發(ASD)

    這種方法強調的是速度和靈活性。它最適合這種場合: 公司需要應用軟件能夠迅速見效,還能隨客戶使用需求的增長而靈活變化。這種方法的發明者是Jim Highsmith。

    ◆動態系統開發方法(DSDM)

    這種方法最初來源于強調用戶參與的快速應用軟件開發(RAD)技術。它最適合于在開發人員不是非常了解環境的情況。1990年,DSDM聯合會在英國發明了這種方法,旨在綜合編程最佳實踐方面的經驗。

    ◆功能驅動開發(FDD)

    這種方法強調的是可預測性以及遵守開發最佳實踐。它最適合以下場合: 開發團隊必須開發具有特定功能及可讀性高于正常水平的應用軟件。1997年,Jeff De Luca最早發明了這種方法,旨在滿足當時一家新加坡大銀行的需求。


該文章在 2010/7/25 2:31:29 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved