I’m sure most of you have heard about the 3C’s before. This was first blogged about on 30 August 2001! That’s right – well over a decade ago. The reason why we still use it is because of its simplicity. 3 little things to consider and remember when crafting requirements. Its easy to get bogged down by details and solutions to problems. This is how giant requirement documents came to be. The true art is in the conversations that take place around a requirement.
Card – This refers to index cards which are usually used to write down requirements. Even if you are using a tool, what is important is that the card is just a ‘reminder of a conversation’ that needs to take place. It is useful to contrast it to a detailed requirements specification. Clearly everything you need to know cannot be contained on a single index card.
Conversation – If the details aren’t on the card, then people wonder where they will get them. This is where conversation fits in. Agile requirements are understood through conversations. If possible face-to-face conversations, with the entire team. This way people can ask questions, clarify understanding, suggest changes, etc. Often people with traditional project experience are used to reading documents and only then asking questions. This is not the same. This is the conversation before anything is written down, this conversation helps to form the requirement. If people find requirements documentation helpful, we suggest they decide what needs to be written down during the conversations.
Confirmation – The confirmation is how everyone will know that the requirement has been met. It is usually statement in the form of an acceptance test, essentially what a user would do in the system and what they would expect to happen once this requirement is done. Traditionally acceptance tests were written on the back of the index card. If people don’t know what to write here: ask “how will you know when it’s working”?
In our book “Growing Agile: A Coach’s Guide to Agile Requirements” we have a workshop you can run with your team to help them learn about this topic.