What Does It Mean to Become Agile?
by Peter Doyle, on June 17, 2019
The Agile Framework is all the rage these days at your garden-variety tech company. Training, workshops, and meet-ups abound with people sharing their latest successes and methodologies. Agile lingo permeates daily routines and punctuates the beginning, middle, and end of a work day.
If you’ve obtained your certification or have done additional research up to this point, you may be familiar with the following terminology: continuous process improvement, collaborative learning, stand-ups, pointing, Kanban, scrum, product backlog, sprints, and the list goes on. If these don’t look familiar, this easy-to-use Agile dictionary may help you get started.
But in the real world of a tech company, how do you get meaningful results from applying Agile Values and Principles, especially when there isn’t always a one-size-fits-all approach? Agile was conceived specifically with software in mind. What if you don’t work in a typical software delivery environment?
Here are some thoughts on how you might approach it.
Don’t Let the Perfect Become the Enemy of the Good
All too often we set our expectations so high, that we fail to see the value of modest incremental improvements. When looking to become more Agile, you assume if you’re not a fully Agile shop overnight, you’re doing something wrong. You’re not! For small startups, implementing Agile will come more naturally. For mid-sized companies, it may take more time, and for very large institutional hierarchical organizations, the pace can seem glacial at times. At the local Agile meet-ups I attend, the conversations run the gamut of these experiences. The important thing is progress.
Remember: People over Processes
As a starting point, let’s take a look at the Agile Manifesto, the governing set of Agile values. The first value emphasizes the importance of individuals and interactions over processes and tools. This seems intuitive at first, but it’s often neglected, especially in large and slow-changing organizations. Talents (of every variety and flavor) are what produces value, not processes. Processes do need to be implemented and adhered to for structural and continuity purposes, but we should recognize that human capital outweighs the process.
One way this value gets realized in an Agile environment is through self-directed, self-organizing teams bounded by guidelines. Ideally these teams are co-located, i.e. working proximate to each other at a particular location. This allows for free-flowing discussions and collaboration as well as instant feedback, usually in the form of demos in front of key stakeholders. These teams are also cross-functional. In a software development context, this means each team is comprised of all the people needed to get the job done: a scrum master, who guides and serves the entire team; the product owner, who represents the business and key stakeholders; and a development team, comprised of both developers and testers, who design, build, and test software product in increments. Team members are in regular face-to-face discussions hashing out the contours of the requirements, which are being modified iteratively per the guidance of the product owner representing the stakeholders as functionality is developed, tested, and released in the course of the sprint, a defined block of time in which this iterative process takes place and after which shippable functionality can be deployed. In addition, there are regular formal events, or scrum ceremonies, built into the process to guarantee that team interaction takes place at critical points in the sprint. One of them is the daily stand-up, limited to 15 minutes, to note progress and blockers. Another is the sprint retrospective, where team successes and failures are reviewed, not with the purpose of assigning blame, but with an eye on improvement for the next iteration.
Collectively these comprise the rough outlines of an Agile process. How likely are you to implement these perfectly and get immediate results? Not very. But what you will see is incremental improvements over time. And you may be surprised how quickly things like regular face-to-face interactions and discussions yield productive results. And really, that’s what it’s all about.
-Peter Doyle, Business Analyst at Arkatechture