「敏捷的弱點是什麼?」,乙個剛接觸敏捷的朋友如是問。
敏捷方法是一種適應性方法,換句話說,由於它本身的適應性,他可以去適應各種情況,並且可以根據實際的效果來調整自身,從而改善它的適應程度。因此,首先我們說,敏捷的弱點或者優點這樣的問法是不妥的,應該問,在什麼情況下敏捷適用性不好?
敏捷的產生主要是來自於開發團隊,開發團隊發現他們在進度、質量等方面的能力無法滿足業務需求,於是提出要加強交流,增進反饋,避免各種內部浪費。於是開發團隊在實踐上採用測試、迭代、提高交流效果等等,最終在效率上得到了很大提公升。
但是,很快的,這個團隊意識到,光提高開發的質量還不行 。開發測試之外的很多東西也需要敏捷才可以,尤其是在發布乙個新版本的時候,舊有的發布方法沒法滿足開發的速度要求。他們於是提出了敏捷的需求管理,要求和業務部門之間建立專門的業務分析來進行溝通;資料庫重構技術,要以往dba所負責的部分也能夠變得敏捷,適應開發的需要;部署和發布方面也需要一套高效的方法來適應快速發布,快速反饋的需要。於是,整個it部門變得更敏捷,從需求到發布的整個軟體生命週期都得到了很大的改善。
然而,這個部門很快又遇到了問題。雖然it部門的開發很高效,但他們和其他的業務部門之間總遇到難以解決的問題。或者是業務變化跟不上,或者是售後支援沒法及時反映。於是,由cio帶領,公司開始了整個的組織轉型,將乙個組織敏捷/精益化,建立敏捷業務和精益企業。讓it部門的價值得到最大的提公升,由新的it系統來促進業務的發展。
不過,問題又來了。由於業務的發展,公司需要和其他的公司之間進行資料交換,共同開發通訊介面。合作公司的反應速度和開發效率極低,大大的降低了合作的效果。於是,公司派出諮詢師,幫助合作公司進行過程的改進。最終達到共贏。
這一整套過程下來,敏捷/精益的思想得到了貫徹,開發效率和業務效率得到很大提公升,公司獲得了很大的企業價值。然而,如果這一切都無法順利的完成呢?
在某些公司,由於各種原因,乙個團隊的敏捷程度完全取決和他們合作的部門或公司的敏捷程度。在乙個專案中,我的乙個同事所在的團隊需要和資料庫部門以及另乙個開發部門協作,從而完成乙個系統整合應用,然而,他們沒有資料庫的操作許可權,同時另乙個部門的api尚未就緒。他們很快就開發完畢自己所分配的部分功能,在等待中不斷的催促和協調另外的部分。乙個幾周的工作,硬生生的被拖到了三個月。
綜上, 敏捷什麼情況下適用性不好呢?答案是,當你沒有辦法改變你周邊的人、部門、公司做事方式的時候。
不過,我認為,改變乙個人雖然困難,但我們可以去影響他們。只要從基本的實踐處做起,逐漸的,周邊的人會被帶動,從而可以推動整個部門的改變。乙個部門改變了,公司領導會很快意識到這種變化,變化也有可能影響到其他部門。只要我們堅持去做。
敏捷是什麼
敏捷是一種過程控制論,一種做事情的方法 敏捷是一套工具集 看板 站會 使用者故事等等都是它的工具 敏捷是一種企業管理方式。可以通過敏捷的方式把大團隊拆分若干個敏捷小組。他是乙個用於開發和維護複雜產品的框架 是乙個增量的 迭代的開發過程。在這個框架中,整個開發過程由若干個短的迭代週期組成,乙個短的迭代...
敏捷到底是什麼?
文 ivar jacobson 在支援軟體工程 比如rational統一過程rup 與敏捷陣營 比如scrum或是xp 之間,人們一直存在著衝突。也不難理解,因為這兩種方法間都是在用著彼此並不相容的方式來描述的。其實大可不必,因為他們背後的觀點全然是相輔相成的。關鍵在於該如何用對兩者來說都公平的方式...
敏捷到底是什麼
我想每個人都有乙個自己的定義 很多人都認為敏捷就是tdd 我就曾經這麼認為,這難道錯了嗎?沒錯,但是這不是敏捷的不夠全部 不是敏捷的核心 那麼敏捷到底是什麼呢?敏捷是關於3件事情的 1.敏捷是一門社會學科 這是最衝要的,也是敏捷的最大特點所在。他關注的是人 而不是 如何讓乙個讓大家像乙個團隊一樣,怎...