换个角度看敏捷1-敏捷问题解决方式
敏捷問題解決方式
敏捷是什么?這是我一直在思考的一個問題,同時也在敏捷之旅2010成都站提出。這似乎是一個不值得推敲的問題,敏捷就是“敏捷”。但為何某些實踐可以稱為敏捷實踐?方法學可以稱為敏捷方法學?是不是存在一根看不見的線把這一切關聯起來?
這讓我如此著迷,沒有什么能夠比尋找答案更讓人著迷了。下面就是我的嘗試,肯定不完善,但即使是小小的幫助也是一個進步。
作為問題解決方式的敏捷
“敏捷”是一種問題解決方式,是在問題本身或問題解決能力不能確定的情況下取得盡可能好的結果(近優解或更優解)的問題解決方式。
基本做法
1.???????? 角色劃分
在敏捷問題解決方式中,問題提出者的作用得到強調。問題被按照問題提出者可理解、可檢驗的方式進行分解,問題提出者負責對分解后的單位問題進行檢驗。而問題解決者需要與問題提出者密切配合,共同進行問題分解和檢驗適應。
2.???????? 迭代
敏捷問題解決方式強調問題分解后的多次完成與反復驗證。迭代是敏捷問題解決方式的基礎要素,也是對問題提出者合適的時間周期。在一個迭代的單位時間內至少完成一個由原問題分解而成的單位問題。
3.???????? 問題分解與檢驗
敏捷問題解決方式是以問題分解與檢驗為中心進行推進的。在問題分解階段,以問題提出者為中心進行問題分解,包括優先級設定,確保單位問題符合客戶理解與期望,不會破壞問題完整性。在單位時間末尾,問題提出者和問題解決者對問題完整性進行檢查,能夠得到問題反饋和問題解決能力反饋,雙方均可以在下一個單位時間內進行改進。
4.???????? 單位問題解決
敏捷問題解決方式重視單位時間內的“完成”。敏捷問題解決方式力圖保證將大部分時間用于解決單位問題。
復雜問題
敏捷問題解決方式針對復雜問題采用層層分解,逐級反饋。
1.???????? 角色劃分
在面對復雜問題時,敏捷問題解決方式將角色劃分為多層次的問題提出者與問題解決者。這些多層次的問題提出者與問題解決者需緊密溝通與協作,共同解決問題。
2.???????? 問題分解與檢驗
a)???????? 在每一層次
依然是問題提出者與問題解決者的協作關系。依然是問題分解、問題解決和檢驗適應3個步驟。
b)??????? 在層次之間
上一層次的問題解決者成為了下一層次的問題提出者。下一層次的整個過程成為上一層次的問題解決步驟。
特點
1.???????? 人
敏捷問題解決方式是以人為中心的問題解決方式。問題的解決與否依賴于人的檢驗。問題解決的過程依賴于人與人的溝通與協作。
2.???????? 專注
在單位時間內,作為問題解決者的個人是不可分解的最小單位。
3.???????? 溝通與協作
問題的解決依賴于問題提出者與問題解決者的溝通與協作。
4.???????? 行動派
嚴格的時間盒控制,保證大部分時間應該放在問題解決上。
5.???????? 檢驗適應
敏捷問題解決方式是以反饋為基礎的問題解決方式。在單位時間結束后,創造有效反饋。推進問題的解決,加深對問題的認識和增強問題解決能力。
敏捷問題解決方式與敏捷宣言
軟件開發是問題本身和問題解決能力不確定的一種典型情況。而敏捷問題解決方式與敏捷宣言是相適應的,下面以敏捷問題解決方式來解讀敏捷宣言。
《敏捷宣言》中的4條價值觀:
1.???????? 個體與交互 重于 過程和工具
在敏捷問題解決方式中,問題的解決取決于問題提出者和問題解決者的能力和他們之間的相互協作,過程和工具是相對次要的,只有在滿足前者的基礎上才有作用。
2.???????? 可用的軟件 重于 完備的文檔
問題解決的結果重于中間產物,敏捷問題解決方式不鼓勵將時間大量投入到文檔的完備化,而應該投入到問題解決上。
3.???????? 客戶協作?? 重于 合同談判
軟件開發是客戶與軟件開發商共同解決問題的過程。客戶作為最關鍵的問題提出者,與問題解決者的協作是解決問題的關鍵。
4.???????? 響應變化?? 重于 遵循計劃
所有的預測都僅僅是預測,通過敏捷問題解決方式,我們可以適應變化并快速學習。
《敏捷宣言》背后的12準則:
1.???????? 我們的最高目標是,通過盡早和持續地交付有價值的軟件來滿足客戶。
為客戶解決問題是軟件開發的最重要的目標。
2.???????? 歡迎對需求提出變更——即使是在項目開發后期。要善于利用需求變更,幫助客戶獲得競爭優勢。
問題可能隨時會變化,軟件開發是以問題提出者為中心解決問題提出者的問題,因此重要的是解決問題而不是限制變化。
3.???????? 要不斷交付可用的軟件,周期從幾周到幾個月不等,且越短越好。
檢驗適應是敏捷問題解決方式的核心方式,不斷以客戶可檢驗的方式交付可用的軟件。
4.???????? 項目過程中,業務人員與開發人員必須在一起工作。
業務人員作為軟件開發的問題提出者,需要與軟件開發團隊(問題解決者)密切配合,促進問題解決。
5.???????? 要善于激勵項目人員,給他們以所需要的環境和支持,并相信他們能夠完成任務。
問題解決取決于人的投入程度與狀態,激勵項目人員,為他們創造環境和條件,能夠有助于問題的解決。
6.???????? 無論是團隊內還是團隊間,最有效的溝通方法是面對面的交談。
敏捷問題解決方式推薦進行面對面的溝通與交流,這是人與人合作解決問題的最好溝通方式。
7.???????? 可用的軟件是衡量進度的主要指標。
只以單位問題的解決結果也就是完成作為進度衡量的指標。
8.???????? 敏捷過程提倡可持續的開發。項目方、開發人員和用戶應該能夠保持恒久穩定的進展速度。
在敏捷問題解決方式中,良好設計的迭代與穩定的迭代進度是最有效的和最可預測的問題解決方式。
9.???????? 對技術的精益求精以及對設計的不斷完善將提升敏捷性。
不斷追求更高效的解決問題,技術與設計是解決軟件問題的重要手段。
10.???? 要做到簡潔,即盡最大可能減少不必要的工作。這是一門藝術。
問題的解決不取決于解決方案的復雜性,而是源自于對問題提出者和問題本身的深刻理解。當然,問題解決方式本身也是重要的。
11.???? 最佳的架構、需求和設計出自于自組織的團隊。
問題提出者與問題解決者所組成的團隊是解決問題的最佳組合,發揮團隊的力量解決問題遠勝于不明情況的指手劃腳。
12.???? 團隊要定期反省如何能夠做到更有效,并相應地調整團隊的行為。
檢驗適應是敏捷問題解決方式的核心。
轉載于:https://www.cnblogs.com/davidzhang33/archive/2011/01/30/1947843.html
總結
以上是生活随笔為你收集整理的换个角度看敏捷1-敏捷问题解决方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UNPIVOT的详细说明
- 下一篇: WCF Membership Provi