Skip to main content
Enterprise Agile Planning icon with arrows

This post is from the Collabnet VersionOne blog and has not been updated since the original publish date.

Last Updated Sep 16, 2015 — Enterprise Agile Planning expert

How Much Ceremony Do We Need?

Enterprise Agile Planning

The agile world has a number of myths that tend to be perpetuated, often for private agendas. One of them is that agile means no documentation or formality in its approach. A counter to this are the conversations about professional behaviour as described in “The Clean Coder” from Robert Martin, or Uncle Bob as some know him. This kind of behaviour means that we recognise the nature of the work we do and the requirements for ceremony that is required for it – in short that we act as professionals. Let’s look at this question of ceremony first by defining ceremony and understanding what it means. Ceremony has a number of aspects and we can turn up and turn down the level that we apply each of these aspects. As professionals, sometime we can’t make popular or easy decisions, but considered ones. Here are some example aspects, with a short discussion about options. Now there is quite a lot to talk about here and some people will say that some of the extremes are not agile. But we are professional, so what is the right level and why? Take two examples.

  1. We are coding a web site for curry recipes and need to be able to provide a few basics such as search, create, update, read and delete services. OK it should look nice and be easy to use. There may be some security NFRs as well, but no personal data is maintained in the system.
  2. We are coding a system that monitors the status of various points in a nuclear power plant. If something is going wrong we shut the reactor down. It must never fail. If something unexpected happens shut down now, better safe than sorry. Demonstrate that this is so.

That seems pretty clear. So the first agreement is that we would use an agile approach in both cases. I say yes as disciplined agile is the best way to produce code to the level of quality needed. But consider the ceremony dial, where do we set it for each of these situations, and again why. Please bear in mind that we have a professional standard to maintain. This includes the need to deliver value for money, over/engineering is as bad as under/engineering. So now let’s think about this from the point of view of the aspects that we have looked at. Do you agree with the following? Yes/No and Why/Why Not. In some cases the level of ceremony is not optional. The regulatory requirement for a safety critical application would demand that certain things happen. Consider what would happen if the recipe site crashed, the worst case is that dinner will be late. What if the nuclear reactor safety system fails? Will the police be involved, lawyers? If it turned out to be software that you wrote, and you couldn’t prove that you met the required regulations what could happen? You might lose a client, or your liberty. And could you live with yourself for the consequences? In all cases the level of ceremony should be decided upon and not defaulted because we cannot be bothered to think about it. In the extreme example it is hardly a surprise that we need to crank everything up to really loud, man. But what is the minimal level that we should agree to. Remember we have professional standards that we need to maintain. We follow Test Driven Development (TDD) because it is our natural tendency. Someone coming up behind us will need some clues as to how we created the application and how they can extend it. Using a platform such as the VersionOne Enteprise Agile platform will put some of the aspects higher up the volume scale automatically. For example an audit trail will be in place as you work through epics, features stories, tasks and tests. So this may start at “7” and be taken high by including additional artifacts in the audit trail. In all cases you may need to justify your decisions, in some cases to a court, which may be uncomfortable. Make sure that what/ever level you turn the knob to, that you can justify it as being an appropriate decision. And please stay out of jail!

More from the Blog

View more
Digital.ai Government Cloud
Apr 12, 2022

Digital.ai Government Cloud receives FedRAMP Authorization through sponsorship from the United States Department of Veterans Affairs

Enterprise Agile Planning
Flagship Digital.ai Agility solutions can effectively scale agile deve ...
Read More
Nov 22, 2021

What are the qualities of highly effective agile teams?

Enterprise Agile Planning
A team is the core unit of productivity in an agile organization. Wher ...
Read More
Nov 15, 2021

How an open-first attitude revolutionized government tech development

Enterprise Agile Planning
Public perception of government is often that it is slow-moving, reluc ...
Read More
cross functional
Nov 08, 2021

6 best practices for building resilient cross-functional teams

Enterprise Agile Planning
Agile frameworks prize the quality of resilience within every facet of ...
Read More
Contact Us