敏捷软件开发与宫本武藏
——《敏捷软件开发》读后感
读了《敏捷软件开发》后有一个深刻印象,作为二十一世纪的美国软件开发人员竟然从十七世纪的日本武士宫本武藏那里学到东西。作者说:“我的职业与宫本武藏的职业有一部分相似性:他的职业是帮助别人杀人,而我的职业是帮助别人交付软件。”作者从独特的视角总结了宫本武藏的观点,及其在敏捷软件开发中的应用:
l 使用合适的工具
l 直接的解决方案
l 反思和技能开发
l 微触动的干预
使用合适的工具 指充分了解你使用的工具,并了解你在某个时刻需要什么,这样你才会在使用工具中获益。
直接的解决方案 宫本武藏的观点是“一击就砍断对方的手”。用软件的语言来说,是否能够恰好“做完它然后回家”,不要浪费时间。
反思和技能开发 指每隔一段时间就花时间反思一下,不断提高技能。
微触动的干预 进攻时砍手不是最终目的,应迅速解决战斗,而使武士毫发无损。软件开发时迅速切入问题的核心,使开发人员尽可能用最少的工作来完成任务。可见微触动干预表现为:理解得越好,必须的干预就越小;很多微小的变化联合起来就能产生非常大的影响。作者对这个观点还有自己新的见解。有时,微触动干预不行,而需要改变整个项目的结构。但是,了解“什么时候重新构建项目”、“什么时候微触动干预”,是一门艺术。
软件开发不仅是一种工程,更是一门艺术。本书作者的思想来自于几十个开发团队、八个方法集设计和所参与过的很多成功的项目。不仅如此,作者经常提醒自己定期参考宫本武藏、Peter Naur和Pelle Ehn等著作,使自己的开发经验有了升华。这点很有意思,我们中国文化博大精深,国内的软件开发人员是否能从我国文化中汲取营养,总结出更有中国特色的软件开发方法。
吴怡