{"id":670,"date":"2011-02-23T21:34:53","date_gmt":"2011-02-23T20:34:53","guid":{"rendered":"http:\/\/www.andrewj.com\/blog\/index.php\/2011\/ahole-driven-development-and-other-anti-patterns\/"},"modified":"2011-02-23T21:43:25","modified_gmt":"2011-02-23T20:43:25","slug":"ahole-driven-development-and-other-anti-patterns","status":"publish","type":"post","link":"https:\/\/www.andrewj.com\/blog\/2011\/ahole-driven-development-and-other-anti-patterns\/","title":{"rendered":"A$$hole Driven Development and Other Anti-Patterns"},"content":{"rendered":"<p>During a project management meeting today, I was driven to look for a reference to &#8220;Document Driven Development&#8221;, a great anti-pattern developed a few years ago by the Agile crowd, in order to emphasise the importance of working solutions, not documents, as the goal of IT projects. I was in for a few surprises&hellip;<\/p>\n<p>Oddly, although the wonderful &#8220;<a href=\"http:\/\/www.waterfall2006.com\/\" target=\"_blank\">Waterfall 2006<\/a>&#8221; web site still exists, I couldn&#8217;t find DDD on it. So I checked with Google and found a couple of references to non-ironic (as far as I can tell) papers on the subject. Yes, some people seem to think that document-driven development is a good idea! Now I might be prepared to concede this for applications where documents are themselves the key business objects (some legal processes, for example), but as far as I can see this isn&#8217;t what those papers were referring to. If that&#8217;s the case, they really haven&#8217;t understood&hellip;<\/p>\n<p>What I did find, however, was a wonderful blog post from a few years ago with the excellent title &#8220;<a href=\"http:\/\/www.scottberkun.com\/blog\/2007\/asshole-driven-development\/\" target=\"_blank\">Asshole Driven Development<\/a>&#8220;, in which Scott Berkun has collected a wide variety of development and project management anti-patterns. It takes a while to read through all the comments, but doing so is quite rewarding, if mainly as a form of therapy. At least you know you&#8217;re not alone.<\/p>\n<p>The list is pretty comprehensive, but despite over 300 contributions, I couldn&#8217;t see my own b?te noir. A lot of large corporate organisations now seem to follow a governance methodology I term IAKOM (the &#8220;It&#8217;s A Knock Out Method&#8221;), known on the continent as la Methode Jeux Sans Frontieres (MJSF). Those of a certain age will remember a series of hilarious television games in which relatively simple tasks (such as carrying a bucket of water) were rendered impossible by the imposition of progressive handicaps and obstacles (such as carrying the bucket up a greased slope against a rubber bungy while wearing clown shoes and being pelted with wet sponges). <\/p>\n<p>Some IT governance is like that. Just when you think you might have a fair run at doing something, a new governance hurdle or document check is inserted into the process. It wouldn&#8217;t be so bad if it all made sense, but sometimes it feels almost capricious. Some organisations are more enlightened than others, but as a general industry trend it&#8217;s inescapable.<\/p>\n<p>I don&#8217;t know what the answer is. If you do, let me know!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Musings on antipatterns in development, project management and IT governance <a href=\"https:\/\/www.andrewj.com\/blog\/2011\/ahole-driven-development-and-other-anti-patterns\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,4,2],"tags":[],"_links":{"self":[{"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/posts\/670"}],"collection":[{"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/comments?post=670"}],"version-history":[{"count":0,"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/media?parent=670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/categories?post=670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.andrewj.com\/blog\/wp-json\/wp\/v2\/tags?post=670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}