In today’s environment, continuous evolution, responding to change and ever increasing demands are must for every organization. Agility in practice, both at organizational and individual levels, thus becomes very important and key to giving an organization a competitive edge.
Agility in its simplest sense is nothing but continually moving in the right direction, introspecting, and course correcting along the way.
Agility is bound by a set of principles or guiding obligations that one should adhere to. Agility is achieved by first “knowing agile” followed by “doing agile” and eventually getting to a state where agility becomes second nature or the “being agile“ state ! This is easier said than done, and this blog lists out the 12 principles that could help you and your organization get started.
All the below listed principles are equally important and all should be given due importance while designing your agile transformation journey and aligning the best practices, mindset and culture to your context.
Continuous engagement, feedback, and demonstration of products built – at shorter and frequent intervals of time is critical. The essence is to deliver usable, valuable software to the customer in increments, rather than in one single go.
Adjust parameters like time & cost, descope, prioritize requirements to accommodate frequent changes in customer requirements through product development.
Breaking the deliverables into 2 or 3 week iterations, ensuring they are working functionalities, and delivering them at frequent intervals is most important. Avoid following a traditional linear delivery model – delivering the entire functionality at the end of the project.
In the traditional approach of project management business analysts, developers, quality analysts work in silos and the work is mostly linear in fashion. Agile encourages frequent interactions between businesses, customers, and development teams (developers and QA). The requirements are vetted out to the development team at various points of the project life cycle. This allows the incorporation of changes needed by the business and customers at every phase.
Moving away from command and control, and trusting the development team to deliver what they have committed to is a key ingredient. Trusting the team to meet its goals is as important as providing it with the necessary support in terms of tools, infrastructure et al. The leaders must focus on “what“ and the “why” – trusting the team to figure out the “how” (development )
Effectively engage team members and other concerned stakeholders – ideally face to face. Face to face engagement helps to proactively identify impediments, resolve issues faster, and clarify relevant matters most effectively.
Success of the project is not just defined by delivering within time, scope and budget. Delivering valuable functionality that customers require, and one which solves their problems is as important – if not more.
It is important to maintain a cadence throughout the life of the project to avoid shunt effect like in traditional projects. So working iteratively and incrementally at a steady and sustainable pace is paramount.
Attention to code and product quality is crucial. Mechanisms to reduce technical debt periodically must be embedded within the plan. As much as a working feature is the primary measure of success, to make these high quality features focus must also be on improving the technical areas.
Focus on finishing any work taken up. Avoid switching tasks to complete the work as context switching complicates the work and results in waste. Focus and re-plan on how work items can be taken to completion.
Lead and engage with teams in a way that motivates them to innovate and design solutions. Provide psychological safety and openness – allowing them to fail, ideate, and discover their own ways of working
Team members get together and introspect their ways of working, in terms of performance, processes, systems etc so as to improve when and where required
Let us explain the above 12 principles in a nutshell and how well they are intertwined.
Working hand in hand with businesses and clients is key to delivering value added services or products in today’s VUCA world. Continuously incorporating customer feedback, making improvements and showcasing value-added deliverables at frequent intervals is important to –
It is also crucial to effectively engage team members and other concerned stakeholders- preferably face to face and to continually evolve the team in terms of pertinent technology advancements. We also need to prepare the team to improve in areas of performance, stability, resilience etc through better technical design and architecture. This plays a major role in delivering value added functionality, satisfying our customers and managing other challenges posted in the VUCA world.
To sum it up, agility is all about making everything around you simpler. And last but not the least, do remember that team focus should also be futuristic – look at what needs to be done to deliver as opposed to dwelling on the past!
We would love to hear your feedback on the above best practices. Please reach out to us at “email@example.com” for further details on these steps or for any support in your agile transformation journey.
Sudha Madhuri B