Agile是一種工作態度

67 views
Skip to first unread message

Anthony Tsai

unread,
Jun 28, 2012, 4:58:42 AM6/28/12
to agile_m...@googlegroups.com
碩士班 林廷原 於2012/6/24分享之敏捷方法心得

這兩年來自始至終都實行敏捷方法,
以pair programming為基礎與同學一起研究、工作,
獲益良多,我所獲得最大的心得是:
敏捷方法雖是一套軟體的工法,但實際上是一種工作態度。
此種態度強調開發中應把力氣與時間用在真正能運作的產品上而非文件、以面對面溝通取代文件、正視變動且快速應對之。
重視工作效率與節奏,不以工作量及工時衡量,而是以品質取勝。
符合現在的潮流。

個人認為可貴之處在於敏捷的「精神」,可以將精神應用於各種領域。
例如教育、文創產業、製造工業等等。
可以改善流程、提升效率。
也能讓自身生活更有品質,達到工作與休息平衡。
人與人的相處也會更融洽。

在這兩年研究期間,敏捷方法幫助我們突破許多困難。
由於學術研究型的軟體存在許多bug,資訊太新而不完整,
文件也不齊全。
常常需要邊走邊試驗,觀察後再修改程式,需求捉摸不定,
方向模糊,技術瓶頸多,改變頻繁而劇烈。
敏捷的態度使我們逐步摸清方向,克服技術難點,常有漸入佳境的感受。
敏捷方法特別適用於方向不明的研究上,這點是自身另一個體驗。

我們用敏捷方法開發一套JADEX軟體作為研究。
JADEX是代理人系統,是具有BDI思考力的代理人軟體,很新,尚未非常普及化,
能查到的相關使用上的技術資料也不多,研究時常處處碰壁,唯有官方文件可參考。但文件也不完善。
OWL是可以用來讓資料富有語意的標籤語言,讓程式能夠理解生硬資料背後的真正意涵。
我們想要用JADEX搭配OWL寫一套旅遊系統,但是旅遊系統也是個模糊的概念,要實作出旅遊的何項功能並不清楚。
原因是此種研究性質的工作往往不像成熟的技術,成熟的技術應用廣,需求由客戶指定且較明確。
我們連需求都是一團渾沌。

在釐清需求與規劃架構的過程,數次大幅修改文件,漸漸才能釐清需求及架構,我們經由不斷的面對面討論,
有效率的修正思考方向,我們的討論時間比起正規開會而言非常短,但效果高,原因是我們的討論句句命中核心問題。
從原先連旅遊系統要執行的工作都不知道,到最後旅遊系統是用來幫人直接挑出最佳行程。
我們的討論時間也很彈性,並非一成不變。看似時間較傳統會議少,但效率遠超過傳統會議。
因為面對面溝通是一個很大的幫助。
此外文件因為精實而量少,所以文件是活的、有效的。
且不吝惜大幅修改文件(包含構想書、scenario&acceptance test case、architecture design、程式碼本
身等等),搭配面對面溝通,效果非常好。
溝通、文件同步快速變化,能夠趕得上外界變動。
工作量縮減來自於溝通量的增加。

另外開發團隊中有7人,5個人是大學部學生,2人是碩士生,雖由碩士生主導,但必須分配工作給大學生,
我們將大學生分為2組,分派性質雷同但實際上不同的工作。
大學生尚未熟習基礎技術及程式語言,如Java,對JADEX與OWL更是完全不知。
其實對於大學生而言,此工作難度很高,因為JADEX與OWL都建置於成熟的技術之上,JADEX建置於Java之上
OWL建置於XML之上,若對基礎都不了解,更無法實作高層次的程式,況且處理的資料有語意,這讓情況更加棘手。

如何讓大學生能夠上手成了最大的難題,我們慢慢的漸進灌輸他們JADEX與OWL的概念,並且要求他們詳讀我們規劃的系統文件。
適時的問進度,僅在開始之初施予壓力,工作開始後,給予較大的彈性讓他們自己利用空閒學習。
教大學生的時候,都是以面對面板書直接教學、討論,一周至兩周一次請他們來實驗室學新東西,
接著他們回家找時間多研究,並且鼓勵他們多溝通,多聯絡組員。
依照他們研讀的進度再適時教新東西。
過程中,也告訴他們東西會一直改變,要隨時看看新東西,有問題盡量找我們,多與組員討論。
並且,我們找了兩台電腦放在實驗室供專題生使用,鼓勵他們多來實驗室進行面對面溝通。
有問題時我們也親自下去幫忙解決。
起初相當擔心團隊是否有辦法成功經營起來,但後來漸入佳境。
最終順利完成系統的基本功能,大框架完工。
整體流程相當順暢,且成員感情良好,平順完成工作也不至於有太大壓力。

其實在研究JADEX這麼新的系統,與帶領一個沒有堅固基礎的團隊,雙重困難之下,
能夠默默的順利完成,歸功於敏捷的精神。
這些精神環環相扣。

我仍是覺得可貴之處並不是拘泥於一成不變的工序,
是在於抓住行事的態度、精神與準則,可應用於一切事情。
敏捷方法可以因應情況調整,成為行事的良好信仰。
困難不攻自破。

感謝陳振炎教授兩年來敏捷方法的薰陶,獲益良多。
Reply all
Reply to author
Forward
0 new messages