我有這樣的乙個經驗,當你拿著你的proposal去和你的客戶洽談,希望通過超強的技術拿下這個專案時,往往不能如你所願。誠然,當你炒出一大堆概念,例如物件導向設計、設計模式、aop、敏捷或者soa,客戶的談判代表往往會為你口若懸河的一番談吐而佩服得五體投地,甚至於暈暈乎乎,但客戶總能把握自己最後的底線,「咬定青山不鬆口」。終究說來,要去洽談專案,除了要看公司的實力、專案經驗以及業務人員的關係之外,客戶最關注的還是你的wbs和**,以及專案或產品的交付時間。
所以談方法,可以讓客戶佩服你,卻不能讓客戶認同你。
那麼在專案開發過程中呢?不管是什麼專案,專案要取得最後的成功,判斷標準是客戶。因而,在專案開發過程中,與客戶的交流就顯得至為關鍵。甚至可以這麼說,客戶的參與程度直接制約了專案的成敗。敏捷軟體開發正是將客戶放到第一位置,重視與客戶的交流,通過與現場客戶或者productowner的討論,排定使用者故事(product backlog或者特徵feature),以及它們的優先順序。然後通過迭代(sprint)的方式,定期交付可以工作的產品,供客戶使用,以期判斷出開發人員的實現是否符合客戶的需求。無疑,這是敏捷軟體開發取得成功的要素之一。
然而,在真實專案中,我們很難找到方法中提到的理想客戶。如果客戶是領域專家,我們或許要省去很多事情,然而這種事情固然是可遇而不可求,除此之外,很難排除領域專家會對專案開發的橫加干涉。我們無法保護自己的專案成員,不會受到這樣強勢的客戶的干擾。如果客戶僅僅熟悉傳統領域的業務需求,那麼很不幸,我們還要擔負引導客戶的責任。最重要的,我們要制定一套雙方都認可的交流標準,這樣才可以降低歧義的大面積產生。如果乙個專案存在多個客戶時,那麼,你將面對的不再是問題,而是毀天滅地的災難!在客戶都沒有能夠統一自己的需求時,又**能夠談得上軟體開發呢?專案經理會淹沒在客戶方的文山會海中的。何況,還有無窮無盡的需求變更在等著你。
最為普遍的是,我們的客戶往往並不了解軟體技術。此時,你願意不厭其煩地和他們大談特談方法嗎?反過來,客戶又願意耐下心來聆聽你的布道嗎?
錯!錯!錯!客戶並不希望經歷一次專案之後就能成為軟體專家,也不希望一大堆蒼白無力,毫無意義的名詞堆砌在自己的腦海裡。什麼敏捷,什麼領域驅動模式,什麼架構設計,統統見鬼去吧!我們需要的是看得見,摸得著的產品!是那種通過滑鼠操作就能夠看到結果的windwos介面,那才是神奇的魔術。對於客戶,就是這麼簡單。
ron jeffries在乙個關於敏捷的討論小組中提到:我們的客戶不應該在意敏捷開發。我們的客戶只對業務負責任,但並不僅僅只限於軟體開發。他們應該感興趣的是:
-- 得到真正需要的軟體;
-- 能可靠工作的軟體;
-- 盡快交付的軟體;
-- 對他們的影響盡可能地小;
-- 軟體以其最容易最自然的方式執行。
其實與客戶進行交流,就是技術與技術之間的碰撞。領域技術是開發人員所不具備的,但卻是我們必須關注的。我曾經為一家生產液晶顯示器的企業開發過cims系統,對於與生產線相關的一大堆概念畏之如虎。我們強烈需要那些精通領域知識的開發人員,在這個專案中,我們幸而擁有,因此專案取得成功。然而在大多數專案中,我們無法擁有這種幸運。
為什麼要採用敏捷?不是因為我們可以敏捷,而是客戶要求我們敏捷。很難想象,乙個專案在閉關數月的時間裡,客戶還能夠忍耐那些案牘文件。我經歷過這樣閉門造車的專案,結果失敗了。其實,並非敏捷比其他專案開發方法要好,而是我們必須把握敏捷的精神,在於我們重視與客戶的交流,在於我們的團隊是自組織的,在於我們能夠在定期時間內交付可以工作的產品。
客戶希望看到的不正是這樣嗎?然而,我們一定要切忌收住那張誇談技術的嘴巴。客戶不希望聽到什麼方法,什麼技術。專案是否採用敏捷與他無關,即使採用瀑布式軟體開發,只要成功,客戶也會認可。因此,不管是何種方法,只要能夠定期高質量的交付產品,就是好的方法。唯一不同的是,成功實施敏捷或許能夠有助於消除客戶的誤解,增加客戶的信心。
我的外婆常常教導我:「不要做說話的巨人,行動的矮子!」誠哉斯言!
不要和你的客戶談方法
我有這樣的乙個經驗,當你拿著你的proposal去和你的客戶洽談,希望通過超強的技術拿下這個專案時,往往不能如你所願。誠然,當你炒出一大堆概念,例如物件導向設計 設計模式 aop 敏捷或者soa,客戶的談判代表往往會為你口若懸河的一番談吐而佩服得五體投地,甚至於暈暈乎乎,但客戶總能把握自己最後的底線...
和你的使用者談一場戀愛
最近讀了一篇文章叫網際網路的女性主義特徵,大體意思是說 網際網路的世界中雖然有男有女,但現如今的產品越來越重體驗,重情感和去中心化等都說明了網際網路時代的使用者具有強烈的女性主義特徵。既然如此我們在設計產品時不妨把使用者當做自己的女朋友談一場戀愛吧,只不過物件從女朋友變成了使用者,下面一些零星感悟。...
至聯雲和你談3 0的資料安全
在web1.0和web2.0時代,資料量相對較少,資料處理和管控上相對而言並不困難,資料的價值並未顯現。但隨著大資料和人工智慧技術的發展演進,網路中的資料量越來越大,網路使用者群體不斷增加,個人資料的價值也逐漸增大。使用者在使用網際網路平台的時候,自身資料在不知情和無意識的情況下被平台獲取和使用,甚...