極限程式設計 敏捷開發

2021-08-03 12:33:04 字數 2396 閱讀 6154

1.  極限程式設計在專案中的應用

最早接觸極限程式設計的概念是在2023年看的一本書《解析極限程式設計--擁抱變化》,當時並沒有一下子看完,之後斷斷續續的讀著。但在是實際專案中並沒有真正的應用。

在2023年3月份進入乙個3500多萬的專案中,在調研和開發的過程中,遇到了很多問題,在這個過程中,開始逐步的把極限程式設計的部分思想來應用於專案。

無論是在工作還是在日常生活中,溝通對我們來說,都是非常重要的交流與獲取反饋的有效途徑,在專案管理中,尤為重要。若溝通不良,對專案造成的影響是具大的,比如沒有向客戶詢問該問的問題,而導致程式在關鍵性設計中出現失誤。管理人員不向開發人員問該問的問題,而導致專案進度誤報。

在專案管理中,溝通是獲取客戶需求的關鍵,是程式設計的依據,是制定專案計畫的參考。所以我們要促進良性溝通,避免不良溝通。

有三條準備可以避免軟體專案中常見的戲劇性效果和機能障礙。

1.在專案初期不可能收集到所有需求。

2.不管你收集到什麼需求,最終它們肯定會發生變化。

3.總會有任務超時、超支。

所以在設計的時候要盡量的簡單,避免過度設計

大部分情況下,客戶不能確切的告訴你他們需要什麼,一旦客戶見到第乙個版本,他們就知道了在第二個版本中他們需要的東西……或者說他們在第乙個版本中實際想要什麼。所以我們有必要每週都交付一些可用的東西。

這樣做的好處是:

1.及時反饋:可以及時獲取使用者反饋,通過頻繁的與使用者溝通、反饋,形成良性溝通,明確使用者真實需求。

2.保障專案進度:短週期的交付,便於專案的調整,減少使用者意途與開發之間的理解誤差。便於專案進度的掌控。

3.給使用者和開發人員信心:由於每週都能看到可用或可演示的東西,讓使用者對專案有信心,也可以了解專案進度,這要比乙個月交付的一次更有說服力。同時對於開發人員,每週的功能都能得到使用者的確認,若需要調整,也是小幅度調整,若不需要調整,則是對工作內容的肯定與激勵,可以提高工作激情。

極限程式設計中的四個變數是:成本、時間、質量和範圍,其中範圍的控制最有價值。

一般在專案合同中,均會對時間、範圍進行約束,質量就不用說了,如果質量不合格,使用者是不會驗收的。對於成本和時間基本是不可能有大的改變的,對於範圍,合同中不可能對邊界定義的十分明確,這就需要我們在整個專案進展中進行有效控制。

客戶在開發的過程中,會將範圍無限的擴大,如果專案經理不對範圍進行控制,這個專案會不斷的擴充套件,造成成本增加,開發周期變長,無法在合同規定內完成專案的驗收。

所以說範圍的控制最為有價值,他是我們專案管理人員唯一有主動權的要素。

關於質量和時間,犧牲質量以換取時間的做法是不可取的,這種短暫的收益在專案後期將導致致命的傷害。所以要平衡這兩者的關係,使得開發人員可以在有限的時間內開發出高效的產品。

對於極限程式設計中的結對程式設計思想,在現實中似乎是不可能應用的,不過在2023年2月份,很有幸的體驗了一下。

在乙個需求開發即將結束的時候,正好另外有乙個需求過來,而且其中有一部分有重疊,於是我和另乙個負責人商量了一下,決定把重疊部分進行重構優化,合併抽象為乙個模組。由於對於這部分我們兩人都了解,所以開發過程中,我們嘗試了一下結對程式設計,他寫**的時候,我在旁邊看著,並提示注意事項(當然還可以喝喝茶、吃點東西),然後我再接著寫,他在旁邊看著,並提示我注意或忽略的地方。3個小時,模組功能完成,測試通過,ok。

這次嘗試感覺還是很成功的,兩個人的效率還是很高的,而且目標明確,思慮清晰,輕鬆高效。

但是這種程式設計方式是不適合推廣的:

a.要求高:要兩個人有一定的默契,不然反而事倍功半。

b.國情:目前沒有適合的土壤。

參選書目:《敏捷武士:看敏捷高手交付卓絕軟體》析級限程式設計》

極限程式設計是乙個輕量級的、靈巧的軟體開發方法;同時它也是乙個非常嚴謹和周密的方法。它的基礎和價值觀是交流、樸素、反饋和勇氣;即,任何乙個軟體專案都可以從四個方面入手進行改善:加強交流;從簡單做起;尋求反饋;勇於實事求是。xp是一種近螺旋式的開發方法,它將複雜的開發過程分解為乙個個相對比較簡單的小週期;通過積極的交流、反饋以及其它一系列的方法,開發人員和客戶可以非常清楚開發進度、變化、待解決的問題和潛在的困難等,並根據實際情況及時地調整開發過程。

極限程式設計中有四個核心價值是我們在開發中必須注意的:溝通(communication)、簡單(simplicity)、反饋(feedback)、勇 氣(courage)、此外還擴充套件了第五個價值觀:謙遜(modesty)。  xp用「溝通、簡單、反饋、勇氣和謙遜」來減輕開發壓力和包袱;無論是術語命名、專著敘述內容和方式、過程要求,都可以從中感受到輕鬆愉快和主動奮發的態度和氣氛。這是一種幫助理解和更容易激發人的潛力的手段。xp用自己的實踐,在一定範圍內成功地打破了軟體工程「必須重量」才能成功的傳統觀念。

成本、時間、質量和範圍,其中範圍的控制最有價值。

溝通、簡單、反饋、勇氣

快速反饋、假設簡單、遞增更改、提倡更改、優質工作。

編碼、測試、傾聽、設計

極限程式設計與敏捷開發

在按照我的理解方式審查了軟體開發的生命週期後,我得出乙個結論 實際上滿足工程設計標準的惟一軟體文件,就是源 清單。jack reeves 極限程式設計 設計和程式設計都是人的活動。忘記這一點,將會失去一切。bjarne stroustrup 極限程式設計 xp 是敏捷方法中最著名的乙個。它是由一系列...

極限程式設計與敏捷開發

徐景周 在按照我的理解方式審查了軟體開發的生命週期後,我得出乙個結論 實際上滿足工程設計標準的惟一軟體文件,就是源 清單。jack reeves 簡介 2001年,為了解決許多公司的軟體團隊陷入不斷增長的過程泥潭,一批業界專家一起概括出了一些可以讓軟體開發團隊具有快速工作 響應變化能力的價值觀和原則...

極限程式設計與敏捷開發

極限程式設計與敏捷開發 自 http vckbase.com document viewdoc id 1027 在按照我的理解方式審查了軟體開發的生命週期後,我得出乙個結論 實際上滿足工程設計標準的惟一軟體文件,就是源 清單。jack reeves 簡介 2001年,為了解決許多公司的軟體團隊陷入不...