<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Agile - Random Thoughts]]></title><description><![CDATA[About business and information technology]]></description><link>https://christoffer.soop.ch/</link><image><url>https://christoffer.soop.ch/favicon.png</url><title>Agile - Random Thoughts</title><link>https://christoffer.soop.ch/</link></image><generator>Ghost 5.46</generator><lastBuildDate>Tue, 09 Jun 2026 11:04:59 GMT</lastBuildDate><atom:link href="https://christoffer.soop.ch/tag/agile/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Replacing Agile with the Studio Model?]]></title><description><![CDATA[The Agile Manifesto was written over 20 years ago and according to some it's age is starting to show. After all, 20 years in IT should be a good approximation of eternity given the rate of change in the industry...]]></description><link>https://christoffer.soop.ch/replacing-agile-with-the-studio-model/</link><guid isPermaLink="false">645818765c4dcc000153cb67</guid><category><![CDATA[Agile]]></category><category><![CDATA[Development]]></category><category><![CDATA[Methodology]]></category><dc:creator><![CDATA[Christoffer Soop]]></dc:creator><pubDate>Sun, 15 Nov 2020 22:36:09 GMT</pubDate><media:content url="https://christoffer.soop.ch/content/images/2020/11/hockey-stick-1.jpg" medium="image"/><content:encoded><![CDATA[<!--kg-card-begin: markdown--><img src="https://christoffer.soop.ch/content/images/2020/11/hockey-stick-1.jpg" alt="Replacing Agile with the Studio Model?"><p>The Agile Manifesto was written over 20 years ago and according to some it&apos;s age is starting to show. After all, 20 years in IT should be a good approximation of eternity given the rate of change in the industry...</p>
<p>In 2017 <a href="https://www.linkedin.com/in/kurtcagle/?ref=christoffer.soop.ch">Kurt Cagle</a>, a veteran IT expert, Forbes Innovation columnist and self-proclaimed &quot;Futurist, Technologist, Information Architect, Blogger&quot;, wrote an article <a href="https://www.forbes.com/sites/cognitiveworld/2019/08/23/the-end-of-agile/?ref=christoffer.soop.ch#647e0ac52071">The End of Agile</a> that sparked quite a bit of controversy and a massive feedback on social media. In the article he comically compares a daily scrum session to a religious cult where members confess their sins while passing on the holy hockey stick from one to another:</p>
<blockquote>
<p>I knew the end of Agile was coming when we started using hockey sticks. Every morning, at precisely eight o&apos;clock, the team of developers and architects would stand around a room paneled in white boards and would begin passing around a toy hockey stick. When you received the hockey stick, you were supposed to launch into the litany: Forgive me, Father, for I have sinned. I only wrote two modules yesterday, for it was a day of meetings and fasting, and I had a dependency upon Joe, who&apos;s out sick this week with pneumonia.</p>
<p>The scrum master, the one sitting down while we were standing, would duly note this in Rally or Jira (I forget which), then would intone, &quot;You are three modules behind. Do you anticipate that you will get these done today?&quot;</p>
<p>&quot;I will do the three modules as you request, scrum master, for I have brought down the team average and am now unworthy.&quot;</p>
<p>&quot;See that you do, my child, for the sprint endeth on Tuesday next, and <em>management is watching</em>.&quot;</p>
</blockquote>
<p>The hyperbole goes a long way to prove the point that Agile and Scrum has a strong resemblance to religion with its own dogmatic &quot;truth&quot;. Defendants may argue that the way Agile is taught and practiced is not always true to the tenets of the <a href="https://agilemanifesto.org/?ref=christoffer.soop.ch">Agile Manifesto</a> but this just further drives home the point.</p>
<p>In the deluge of comments a few were constructive and Cagle chose to publish one made by Scott Heffield (VP of <a href="https://www.veracitysolutions.com/?ref=christoffer.soop.ch">Veracity Solutions</a>) on his own blog: <a href="https://www.forbes.com/sites/cognitiveworld/2019/08/28/the-end-of-agile-a-rebuttal/?ref=christoffer.soop.ch">The End of Agile: A Rebuttal</a>. This rebuttal from Scott does not really go into the details of contradicting the argument Cagle puts forth. Instead it only says that what Cagle describes is not what he has experienced, goes on to quote experts of the Agile pantheon like Martin Fowler and Alistair Cockburn explaining why Agile is great, and the he concludes by pointing out that Cagle was not there to sign the manifesto like said experts, which somehow should be construed as a reason for his argument to be false.</p>
<p>Right. By appealing to personal experience, experts and not actually addressing the argument <em>per se</em>, Heffield just helped kill Agile himself and even buried the corpse by sounding like a religious zealot.</p>
<p>Cagle does not say that everything with Agile is wrong. His main point is that Agile was created in a different context where developers where struggling with a different set of problems from today. Most projects at the time when Agile was conceived dealt with vertically integrated projects where the final, end-user facing application was responsible from everything from the UI to the database. Also they were typically short with a duration up to six months or so. There are entire classes of projects where Agile does not work well.</p>
<p>In particular he highlights enterprise data projects that he sees reflecting a paradigm change in mainstream application development. Projects in this space are typically not time boxed but ongoing, they have an emphasis on data modeling, are not client facing and require minimal custom development. Instead of the vertically integrated projects of yore, applications today are more and more a conduit of a stream of data with mainly a thin presentation layer.</p>
<p>Cagle concludes the original article with</p>
<blockquote>
<p>While aspects of Agile will remain, the post-Agile world has different priorities and requirements, and we should expect whatever paradigm finally succeeds it to deal with the information stream as the fundamental unit of information.</p>
<p>So, Agile is not &quot;dead&quot;, but it is becoming ever less relevant. There&apos;s something new forming (topic for another article, perhaps), but all I can say today is that it likely won&apos;t have hockey sticks.</p>
</blockquote>
<p>In a <a href="https://www.forbes.com/sites/cognitiveworld/2019/08/28/agile-and-the-studio-model/?ref=christoffer.soop.ch#31b6963178de">follow-up article</a> posted a week later he expands on just what could replace Agile as the next big thing in software development: the Studio Model. He even proposes his own manifesto.</p>
<p>While the manifesto does not read as well as the original it strives to replace, it still makes some good points about the short comings of Agile.</p>
<blockquote>
<p>Yet, there are two key sets of problems that the Agile community faces. The first, and foremost, is that it decentralizes responsibility too much - it essentially punts on the whole issue of governance or editorial guidance. This is that whole vision thing all over again. Most people see editors as quality control people, but editors are actually stewards - they are people who serve to establish, preserve and modify a particular vision, and their role in that regard is roughly analogous to the movie director or software architect as given above.</p>
</blockquote>
<p>In the Studio Model he sets movie production and other IP rights development as an example for software development. Here the creative vision is key and is used to guide developers across teams, thus addressing some of the challenges when doing Agile development. Instead of the Agile catch phrase of &quot;fail fast&quot; he emphasizes flexibility and the minimal viable product is not considered something good as the value is an emergent property that comes from the larger ecosystem.</p>
<p>Since the origianl posts in 2017 Cagle has written a follow up article on the Studio Model: <a href="https://www.forbes.com/sites/cognitiveworld/2019/09/03/when-does-the-creativity-happen-design-agile-and-the-studio-model/?ref=christoffer.soop.ch#28a49b4d6755">When Does The Creativity Happen? Design, Agile and the Studio Model</a></p>
<p><strong>TL;DR</strong></p>
<ul>
<li>Agile is often equated with Scrum and has started to become a religion in the enterprise context.</li>
<li>While Agile has benefits some of the basic ideas of adapting the frameworks and methodologies to the task at hand has been replaced by dogma.</li>
<li>The context of main stream software development has changed and some of the Agile tenets may have to be revisited and adapted to our times.</li>
<li>Modern development requires curation and people with a strong vision such as software architect.</li>
</ul>
<!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[Toyota and Waterfall methdology for developing software]]></title><description><![CDATA[<!--kg-card-begin: markdown--><p>As you may know Agile software development is inspired by the principles of <a href="http://en.wikipedia.org/wiki/Lean_manufacturing?ref=christoffer.soop.ch" title="Lean Manufacturing">Lean Manufacturing</a> which in turn is derived from the <a href="http://en.wikipedia.org/wiki/Toyota_Production_System?ref=christoffer.soop.ch" title="Toyota Production System">Toyota Production System (TPS)</a>. One Agile methodology, <a href="http://en.wikipedia.org/wiki/Lean_software_development?ref=christoffer.soop.ch" title="Lean Software Development">Lean Software Development</a> even borrows the name Lean to make the connection explicit. Since the principles in Lean and TPS have</p>]]></description><link>https://christoffer.soop.ch/toyota-and-waterfall-methdology-for-developing-software/</link><guid isPermaLink="false">645818765c4dcc000153cb5b</guid><category><![CDATA[Agile]]></category><category><![CDATA[Development]]></category><category><![CDATA[Lean]]></category><category><![CDATA[Methodology]]></category><category><![CDATA[Toyota]]></category><dc:creator><![CDATA[Christoffer Soop]]></dc:creator><pubDate>Wed, 17 Mar 2010 08:57:55 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: markdown--><p>As you may know Agile software development is inspired by the principles of <a href="http://en.wikipedia.org/wiki/Lean_manufacturing?ref=christoffer.soop.ch" title="Lean Manufacturing">Lean Manufacturing</a> which in turn is derived from the <a href="http://en.wikipedia.org/wiki/Toyota_Production_System?ref=christoffer.soop.ch" title="Toyota Production System">Toyota Production System (TPS)</a>. One Agile methodology, <a href="http://en.wikipedia.org/wiki/Lean_software_development?ref=christoffer.soop.ch" title="Lean Software Development">Lean Software Development</a> even borrows the name Lean to make the connection explicit. Since the principles in Lean and TPS have much in common with how Japanese always have approached manufacturing and that TPS supposedly permeates the whole of Toyota, it comes as a real surprise that <a href="http://blog.crisp.se/henrikkniberg/2010/03/16/1268757660000.html?ref=christoffer.soop.ch#" title="Toyota&#x2019;s journey from Waterfall to Lean software development">Toyota uses a waterfall process for software development</a>!</p>
<!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[Crystal Clear - by Alistair Cockburn]]></title><description><![CDATA[<!--kg-card-begin: markdown--><p>Crystal Clear is the smallest of a series of methodologies for software development, all created by Alistair Cockburn. It is smallest in the sense of the project size it addresses (up to eight developers) and in the number of things it prescribes. Other Methodologies, deriving their names from the colors</p>]]></description><link>https://christoffer.soop.ch/crystal-clear-by-alistair-cockburn/</link><guid isPermaLink="false">645818765c4dcc000153cb55</guid><category><![CDATA[Agile]]></category><category><![CDATA[Development]]></category><category><![CDATA[Lean]]></category><category><![CDATA[Method]]></category><dc:creator><![CDATA[Christoffer Soop]]></dc:creator><pubDate>Wed, 09 Apr 2008 22:18:29 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: markdown--><p>Crystal Clear is the smallest of a series of methodologies for software development, all created by Alistair Cockburn. It is smallest in the sense of the project size it addresses (up to eight developers) and in the number of things it prescribes. Other Methodologies, deriving their names from the colors of crystal, are increasingly heavier. They all share the same &#x201C;DNA&#x201D; though, which is &#x201C;expressed&#x201D; differently with increasing project size and criticality, the latter meaning the higher cost in terms of money or at the extreme human life.</p>
<p>The book in itself has an interesting setup where each chapter addresses an aspect of Crystal Clear in a different format, tone and style. The purpose of this setup is to appeal to a large audience where each reader can find at least one chapter that conveys the essence of Crystal Clear to her clearly. The most peculiar chapter is probably the one where an ignorant Alistair queries a fictive Crystal character over a series of letters about the inner workings of a successful software development team; thus mimicking a Socratic dialogue. I am not sure this stunt works in practice, but at least true to the intent some chapters work better for me than others&#x2026; All chapters are, however, still written in an easy and personal prose.</p>
<p>In the first chapter Cockburn discusses methodologies in the context of the skill set of the practitioner &#x2013; somebody who masters software development probably need not pay too close attention to the exact steps in any given methodology since she understands the deeper principles and is able to derive what actions are needed from the principles in any given context. True to this the book&#x2019;s reading instructions call readers experienced in Agile development methods to read the last chapter first and then (after they stop smirking) go back to read certain key chapters. Knowing something about Scrum and XP this is exactly what I did, including the smirking part&#x2026;</p>
<blockquote>
<p>Chapter 9</p>
<p>Distilled (The Short Version)</p>
<p>At the end it is time to roll it all back up again: What is the core of Crystal Clear, and what puts the team farther into the safety zone? This chapter is very short.</p>
<p>Crystal Clear is a highly optimized way to use a small, co-located team, prioritizing for efficiency, habitability, and safety in delivering a satisfactory outcome. The brief description of Crystal Clear for level-3 practitioners is just this:</p>
<p>The lead designer and two to seven other developers<br>
in a large room or adjacent rooms,<br>
using information radiators such as whiteboards and flip charts,<br>
having easy access to expert users,<br>
distractions kept away,<br>
deliver running, tested, usable code to the users<br>
every month or two (quarterly at worst)<br>
reflecting and adjusting their working conventions periodically.</p>
<p>The team members establish the safety properties below using the techniques they consider appropriate. The first three properties are required in Crystal Clear, the next four get the team further into the safety zone.</p>
<p>1.Frequent Delivery<br>
2.Reflective Improvement<br>
3.Osmotic Communication<br>
4.Personal Safety<br>
5.Focus<br>
6.Easy Access to Expert Users<br>
7.A Technical Environment with Automtaded Tests, Configuration Management, and Frequent Integration</p>
<p>All the other pages in this book only expand on this page.</p>
</blockquote>
<p>The above is the entire chapter and it really does succeed in summarizing Crystal Clear.</p>
<p><strong>Patterns</strong></p>
<p>Crystal Clear does not require any particular techniques but Cockburn still mentions a number of patterns of particular importance or not often seen elsewhere (according to the author). The patterns are divided in Strategies and Techniques. I find the Exploratory 360&#x2DA;, Early Victory, Blitz Planning, Process Miniature and Side-by-Side Programming the most novel and interesting. Others like Walking Skeleton (aka Tracer Bullet or Spanning Application), Incremental Rearchitecture, Information Radiators, Methodology Shaping, Reflection Workshop, Daily Stand-Up Meetings and Burn Charts are, at least to me, well known from other Methodologies such as Scrum and may be considered standard practice; i.e. they are good patterns but hardly novel or unique in Crystal. The two remaining techniques Delphi Planning Using Expert Rankings and Essential Interaction Design are a bit too involved to my taste but may serve their purpose in some circumstances.</p>
<p><em>Exploratory 360&#x2DA;</em><br>
Simply put the Exploratory 360&#x2DA; strategy means that the project team should perform a gap analysis on all that is required to run a project successfully. In particular it also means to cover topics that really are the responsibility of others outside the development team, like the fact that there is proper funding and that the proposed project really has a clear recipient who wants the project to succeed. Cockburn supplies a list of the most common things to check for but there may be additional things particular to the organization or the project&#x2019;s circumstances. If the gaps revealed are too wide or many the project can (and probably should) be terminated early and if nobody else have brought this to management&#x2019;s attention it is the responsibility of the development team.<br>
The Exploratory 360&#x2DA; strategy is something that is close to being self evident but I would guess often forgotten when starting a new project.</p>
<p><em>Early Victory</em><br>
Many projects start out with the most difficult tasks first in order to minimize the risks. While this may be sound in theory, giving the team members an easy task to start with will boost morale when the team succeeds in it as well as show the sponsor(s) that the team is performant. Addressing the most difficult task first and then failing can be catastrophic for the team&#x2019;s spirits and very late first delivery may erode the team&#x2019;s credibility.<br>
While I have given team&#x2019;s easier tasks to start with in order to get things going I have never thought of it in terms of an Early Victory and as a reason to celebrate.</p>
<p><em>Blitz Planning</em><br>
The Blitz Planning technique is similar to XP&#x2019;s planning game or Scrum&#x2019;s Sprint Planning but Blitz Planning uses index cards in a new, creative way. The project sponsor, developers and end users gather together and brainstorm on all the tasks that need to be done to deliver the system. Cards are collated and duplicates removed. The developer most likely to perform a task should make estimate on how long it will take to perform it. The tasks are then arranged in sequence on a large table parallel tasks are placed side-by-side and sequential tasks top to bottom. The sequence is divided in iterations and releases and cards are moved around to optimize development, to fit the sponsor&#x2019;s priorities, make an Early Victory or a Walking Skeleton and so on. The planning may very well reveal the need for additional resources, change in scope etc. The outcome of the Blitz planning is a draft project plan.<br>
What I like with the Blitz Planning is the simple and cooperative fashion in which the project plan is derived. Using index cards on a table makes changes easy and the result is very graphical.</p>
<p><em>Process Miniature</em><br>
In order to learn a lengthy and/or complicated process a miniature version of the process may be run in a few minutes to a few days depending on the process being learned. If it is a development process, only trivial functionality may be developed or what is being built may simply be faked. Using Process Miniature is a variation of learning by doing but where the learning is substantially accelerated.</p>
<p><em>Side-by-Side Programming</em><br>
In Pair Programming is a controversial technique in Extreme Programming. Some people find Pair Programming wasteful though proponents of XP claims it saves time in the end due to the lesser number of defects found in the final product. While this may be true some people simply do not like to program in pairs. An alternative to Pair Programming is Side-by-Side Programming where two developers sitting side-by-side with workstation of their own, helping out and reviewing code continuously. A similar effect as with Pair Programming is achieved but possibly with less wasted time.</p>
<p><strong>Summary</strong></p>
<p>What is interesting about the Crystal series of Methodologies (Clear, Yellow, Orange, Red) for software development is that they are founded on Alistair Cockburn&#x2019;s interviews of people in successful software development projects, often in a fixed price, fixed scope contract situation. Agile methods are adaptive and often at their best in an explorative situation where the neither the scope nor the resources required are known beforehand. Thus Agile Methodologies are difficult to handle with a fixed price and scope. This begs the question as exactly what makes Crystal different. After reading the Crystal Clear I am still not clear on exactly why it should work better in fixed price and scope situation &#x2013; the only reason seems to be developer participation in making estimates and a focus on always producing a workable system. And this is something that Crystal shares with all Agile methods.<br>
Crystal Clear is probably the lightest of the Agile Methodologies I have come in contact with so far (mostly Scrum and XP) and this makes it true to its intent &#x2013; it really is the minimum set of rules that could possibly work.</p>
<p>Since Clear only is applicable for projects up to eight developers due to its requirement of Osmotic Communication and many projects are substantially larger, it would be interesting to see how the &#x2018;genetic code&#x2019; is adapted to fit larger projects. I guess I must read Cockburn&#x2019;s other books as well&#x2026;</p>
<!--kg-card-end: markdown-->]]></content:encoded></item></channel></rss>