Agile Matters

Agile Matters

When it comes to software development, the end product is often much different from what has been planned at the beginning. It comes as no surprise since it is never 100 percent clear as to how the software is ultimately going to solve the addressable problem until it is deployed or at least tested within a closed group. It thus becomes imperative that the entire development cycle is broken down into smaller iterations, each resulting in a deployable solution.

Here are the some of the most prominent ways in which agile can help us manage large and complex projects:

  1. Short development cycles between documenting the project, reporting to the customer and getting feedback enabling deep focus on real goals of the project, which is delivering what the customer wants rather than what was originally planned.
  2. Accommodating changes requested by customers that give them competitive advantages, even if they come in late in the phase, enabling them to stay nimble in their feet and pivot without having to reinvent their wheel.
  3. Delivering software frequently from couple of weeks to a couple of months embracing changes and cutting down on massive planning and documentation which even delays the implementation and slows down the entire development cycle.
  4. Closely knitting up a diverse team including developers, QA, product, business development and deployment who now use a common set of tools and shared resources optimising cost and time and facilitating free exchange of ideas that are transparent and crystal clear across the board.
  5. Cutting down on the need to micromanage and focusing on efficiency of the project by enabling a highly motivated team that delivers without any roadblocks or delays that may have caused due to managerial inefficiencies. Now a talented team is entrusted with what they are good at instead of being told what they should be doing at every step.
  6. Embracing face to face conversation within the development team which is the most efficient and effective method for conveying information. This cuts down on lengthy conversation loops through emails and other communication channels that dampens free flow of messages, leading to delay in decision making and execution. For a geographically distributed team, Agile encourages the use of communication channels like video conference or teleconference where there is nearly no delay between a request and a response.
  7. Staying focused on the bigger goal or the business objective of the project rather than just checking off development tasks from the list of things to be done. In this case the process is used to achieve the goal of the project instead of letting the process itself becoming the end goal.
  8. Short sprints and constant delivery promotes sustainable development enabling the sponsors, developers and users to maintain a constant pace indefinitely. One of the primary benefits of short sprints besides accepting more changes is that they keep the team motivated. Over taxing or working longer hours are not encouraged. Instead of that the right team is picked for the job who would work hard but not get overtaxed thus not putting the quality of the project in jeopardy.
  9. Encouraging focus on technical excellence and good designing ability of the team. Whether it is about working on code or something more concrete, it ensures that there is constant improvement with every iteration. This also prevents the back and forth movement between development and bug-fixing, evolving every delivery to the next level.
  10. Embracing simplicity as the art of breaking down complex problems into smaller, more understandable and executable parts. This is essential to be able to maximise the amount of work being done. Keeping thing as simple as possible also promoting good work ethics and streamlining the process.
  11. The ability to perform autonomously and independently encourages the team to come up with best architecture, requirement and design. The team can now move with more agility since they are motivated and can perform without a second guess.
  12. Short cycles between sprints enable the team to reflect upon individual performance and that of the team on regular basis, presenting the opportunity to address any issue rapidly, resulting in better quality deliverables with time. This also prevents the team members from becoming complacent and motivates them to improve constantly.

Whether we follow agile or not, the above principles give us the flexibility and swiftness to plan, execute and deliver in a rapidly changing environment where changes in requirements are mandatory for our clients and thus unavoidable for us as project managers and project leaders.

Have you been following Agile already? Do send in your experience and let us know how has it helped you in managing projects?

If not, what is stopping you from following Agile? It would be even more interesting to know!

要查看或添加评论,请登录

Suvrajit Sarkar的更多文章

社区洞察

其他会员也浏览了