Agile is all the rage, and for good reason. It’s effective, it works, and it works effectively. (Yes, agile methodology can bring such good results that we’ll repeat ourselves three times.) However, like any trend in the business world, there can often be adopters of a practice that do so in name only. This is prevalent enough that people can say the term agile is meaningless! If you’re thinking about implementing agile in your workplace, there are five things you need to know first.
Implementing agile requires more than a vocabulary change
A child playing doctor simply needs a white coat, a stethoscope, and a tongue depressor, and voila – they are a doctor!
It is quite easy for an organization to appear agile. Call your projects “epics,” insist your meetings are “stand-ups,” and call your to do lists “backlogs…” and presto – you are an agile organization. Right? Wrong.
Agile isn’t about vocabulary, and it isn’t even about the particular methods it describes. Agile, if really defined, is a method to ensure effective team-wide communication and respect – and that teams include every stakeholder for a project, including the users. (This is something Kent Beck and Martin Fowler, both signatories of the original Agile Manifesto, keep explaining to anyone who wants to listen.)
That’s it. That’s agile. The rest is just an argument about the best ways to achieve it.
Implementing agile is about implementing a mindset in the organization. You want to change the way people see their work, see its purpose, and how they approach it. More importantly, you want teams thinking together, holistically, with the users in mind and every other stakeholder involved in the project every step of the way. You can call your output “velocity,” you can call it “Larry” if you wish – it isn’t about the vocabulary.
Agile requires planning – the question is where
Agile seems like a managed chaos method, and it is – but while many focus on the “chaos,” professionals know that the real focus is on the “managed.” In fact, to an outsider or hanger-on, agile can seem like it requires no planning! However, agile methodology requires as much planning, if not more, than traditional project management. The only difference is where and when this planning takes place.
In traditional methods of project management, there is a planning stage, which takes place before project kickoff. With agile, the planning is a concurrent process with the project. Agile isn’t just continuous delivery, it is also continuous planning! In the infinity loop above, the place where the paths cross is the nexus of planning and delivery. When implementing agile, it is crucial to remember that project planning remains front and center in your focus, without getting caught up in the hype.
A good tip for implementing agile is to see the continuous delivery and continuous planning as two sides of the same coin. With each sprint, and each delivery, you then take into account all changes and necessary fixes, etc. – and this forms the basis of your next sprint. Plan leads to delivery leads to plan leads to delivery leads to…
Agile requires more documentation than you think
…more documentation. It is crucial to document every step of the process, or that planning-delivery-planning dynamic gets blown up. Agile is holistic in nature, and that means it demands everything as an input! You can’t input what you don’t have recorded – and that means you need to record everything.
Before you start creating an encyclopedia of every detail ever thought of in your project, it is important to know HOW to document everything. Agile documentation means taking the essential pieces of information, and keeping them updated always. Knowing what is essential is predicated on knowing what stakeholders need to know – the value of any information is dependent on the purpose it will be used for, after all. Nailing these three aspects is key: when implementing agile, you need to define those three elements and a process for documentation.
Implementing agile requires discipline. Running it does too
Agile is not a free for all. Like a circus, it can seem chaotic to the observer – but like the ringmaster knows, there is actually a highly disciplined, task-oriented team creating the show. The chaotic aspect of agile is not the absence of rules – it is the set of rules that allows for the wide swath of space a team can inhabit while working. Agile is actually highly structured, and a rule-based process.
Implementing agile requires laying down the rules, and ensuring they are kept. Running agile as a methodology requires keeping to the process. Agile is a set of rails like any other methodology, and people doing their own thing will run off the rails. It is crucial you do not let this happen when implementing agile, or it will never take.
Change must be managed carefully
Implementing agile is no different than implementing any kind of organizational change. You need to define what is changing, and determine the impacts of that change. When implementing change, you must develop communication channels devoted to managing it, and train people for the new method. Changing organizational methods requires building a support structure and a help network for the beginning steps.
Moving an organization to agile is not like flipping a light switch. Without a carefully managed change process, you will not only fail, but cause damage to the organization as a whole! Manage the change process carefully, and ensure that everyone from top to bottom is on board and taking part.