Feb. 11 13:19~13:50
下午準備前往位於大通公園的電視塔,經過大通公園地下通道。這個明亮的地下通道,又寬又長,兩旁有許多有趣的店家,還有可以喝咖啡休息的座位,令人印象深刻。
可愛的玩偶,一個微笑一個嘴角下垂。
地下通道每個一段距離有露天的開口,可以讓陽光和新鮮空氣進入地下通道,很棒的設計。
***
出了地下通道,望眼看去就是熱鬧的高樓大廈,遠遠可以看到高聳的電視塔。往電視塔走去,沿途可看到漂亮的小花,還有幾株楓樹做為代表,以紅衣相迎。
***
友藏內心獨白:很棒的地下通道。
Feb. 11 13:19~13:50
下午準備前往位於大通公園的電視塔,經過大通公園地下通道。這個明亮的地下通道,又寬又長,兩旁有許多有趣的店家,還有可以喝咖啡休息的座位,令人印象深刻。
可愛的玩偶,一個微笑一個嘴角下垂。
地下通道每個一段距離有露天的開口,可以讓陽光和新鮮空氣進入地下通道,很棒的設計。
***
出了地下通道,望眼看去就是熱鬧的高樓大廈,遠遠可以看到高聳的電視塔。往電視塔走去,沿途可看到漂亮的小花,還有幾株楓樹做為代表,以紅衣相迎。
***
友藏內心獨白:很棒的地下通道。
Eiffel:要挑哪一本書好勒!
Teddy:書中自有小貓咪,我比較想要黃金屋啊XD。
自從領養Eiffel,想學小王子和狐狸建立馴養關係,因此花了不少時間陪牠。加上最近偷懶沒看什麼新書,部落格又快斷炊了。只好使出老招,把書出來抄…嗯嗯,是介紹才對。有一陣子沒寫測試的文章,就來介紹《xUnit Test Patterns: Refactoring Test Code》書中提到的幾個關於測試案例的壞味道,應該可以擋一陣子先。
書中把壞味道分成三大類,每個分類各有若干個壞味道:
***
這15個壞味道,有些看名字就大概可以猜出內容是什麼。日後會逐一介紹每一個壞味道,今天要先談這三個分類的意義。首先,Code Smells是指必須透過閱讀程式碼(測試案例)來判斷的壞味道,例如Conditional Test Logic(條件式測試邏輯)顧名思義就是測試程式中出現了條件判斷式,又例如Test Logic in Production指的是在production code裡面出現測試邏輯。這些壞味道都和測試程式碼的結構直接相關。
Behavior Smells是指影響測試案例執行結果的壞味道,例如Slow Tests一看就知道是跑得很慢的測試案例,Manual Intervention則是需要人工介入的測試案例。這兩種情況都是鄉民們在撰寫自動化測試案例不希望看到的結果。
Project Smells用來表示專案整體健康狀況,不用看測試程式碼甚至不用執行它也可以發現這些壞味道。例如有著Buggy Tests(有臭蟲的測試案例)的專案不用說一定是不健康的專案,還有Developers Not Writing Tests(開發人員不寫測試案例)當然也是很嚴重的問題。
***
知道三個分類的意義之後,就可以進一步逐一來認識每一個測試壞味道的。
***
友藏內心獨白:知道定義是很重要滴。
Feb. 24 22:13~23:15
2月5日是C.C. Agile Sprint 30舉辦的日子,時間過的好快轉眼也辦了30次聚會。本次的主題是「Coding Dojo – Prepared Kata 程式道場之套路練習」,邀請北科大電機系博士生葉明哲與林子閎,為我們打出一套保齡球的Prepared Kata。
Coding Dojo中文翻譯為程式道場,專門為了習「武(程式)」之人所創造出的環境,進行的方式有Prepared Kata(預備套路)和Randori Kata(亂鬥)兩種。一般Coding Dojo大多採用Randori Kata的方式進行,選定題目之後,由參加者輪流上台,在固定的時間內(例如五分鐘)採用pair programming與TDD的方式來解題,時間到了之後每次換一個新人上台接手。
Prepared Kata的進行方式則需要請分享者事先準備好題目和熟練解題過程,在台上藉由TDD、refactoring和baby steps逐步展示解題的過程,讓觀眾「欣賞」分享者美妙的解題招數。因為Prepared Kata需要有人事先準備,而且這個準備過程需要花費不少時間熟練,所以一般Coding Dojo比較少採用(因為大家都懶的準備啊XD)。
***
這次因為Teddy上學期在北科資工所兼任一門「敏捷與精實軟體開發」課程,其中有些人的期末報告的題目是Prepared Kata,一魚兩吃機會難得,課程結束後順便請修課學生來C. C. Agile打一套拳給鄉民們欣賞。
***
當日活動投影片在此
***
友藏內心獨白:有病治病,無病強身。
Feb. 24 11:12~12:45
翻拍自《Essential Scrum》
在〈四種專案複雜度〉介紹了《Strategic Management and Organisational Dynamics: The challenge of complexity》書中依據需求與技術的不確定性將專案區分成4種不同類型(參考下圖)。
上圖在很多介紹Scrum的書中都出現過,在《Essential Scrum》參考另外一篇文章,將專案類型分成5種,除了原本的simple、complicated、complex、chaotic(anarchy)以外,增加了disorder這一類。《Essential Scrum》把這5類解釋得很清楚,今天重新回頭再體會一次這幾種專案分類的意義,以及Scrum適合應用在那種專案之中。
***
最適合Scrum的專案類型是Complex,當鄉民們把Scrum應用在其他類型的專案時,要小心提醒自己是否用了不合適的工具。
***
友藏內心獨白:看法又多了一層。
Feb. 21 16:20~16:43
專心打獵XD。
今天介紹《Essential Scrum》提到開發團隊所需技能/特性的最後四點。
***
最後這四點是開發團隊的特性,你的Scrum團隊是否具備這些特性呢?
***
友藏內心獨白:每天自願加班不是正常Scrum團隊的特性。
Feb. 20 17:14~17:55
一個人怎麼組Scrum團隊啊…Orz。
今天繼續介紹《Essential Scrum》書中提到開發團隊所需的技能。
Musketeer Attitude反應在很多地方,例如在一個運作良好的開發團隊,不會有人說:「我的工作已經完成,你的工作卻沒有做完,所以導致這個story無法完成。」在打考績方面,Scrum建議不要有個人考績,只有團隊考績。最後,swarming(團隊成員聚
***
友藏內心獨白:Software development is all about communication。
Feb. 10 23:32~23:52
離開札幌舊都廳之後走回札幌車站附近的百貨公司找吃的,來到一個叫做「拉麵共和國」的地方,隨意找了一間店吃飯。點了一碗拉麵和一碗乾麵,好好吃。來日本吃拉麵幾乎不會採到雷。
***
吃完午餐之後在伊勢丹百貨逛了一下,原本想找個地方喝下午茶,結果看到驚人的抓娃娃機。商品除了娃娃之外,還有餅乾,連北海到新鮮玉米都有,好神奇啊。
最後在地下街找到喝下午茶的地方。
帳單。雖然餐點沒有很精緻但價錢也不算貴。
***
友藏內心獨白:終於可以休息一下了。