The Agile Way


One of the most fantastic ideologies of the agile development is in the unique values that the agile manifestos embodied. As an agile advocate, I believe there is agile development and other developments, what makes agile development relevant so much, especially in the area of product development and software engineering is its ability to give room for incremental development, customer involvement and waste reduction. Agile Manifesto (Individuals and Interaction Over Processes and Tools) The agile shift changes our focus from processes and tools to People and the interactions between them. The degree to which people can interact and collaborate will determine the degree or likelihood of the success of the product. It is more about the people than about the sophisticated tools and robust processes. The gap in the traditional management method is actually a collaboration gap, a system where instructions are given without consideration of teams contribution. You don?t need to be an expert in Agile development to start implementing agile, if you can give your team room to collaborate and interact, then I can tell you your team is going the agile way. Over the years I have learnt to prioritise my teams collaboration over the demand that the product being worked on may bring. This is because it takes a good team to build a good product, if they collaborate and understand themselves very well, I have noticed that they often developed the product faster. Advantages Of Individuals and Interactions Over Processes and Tools Communication: If the team can collaborate, they will eventually communicate which will affect the overall state of the product. As they communicate during collaboration sessions, the UI/UX designer have chances of explaining his design thoughts to the rest of the development team. It will be very difficult for a backend engineer to say he doesn?t know what services or api that will be needed since he has his team members at arms length to communicate with. There are some tools built to facilitate team communication and collaborations, some of which are Shop, Github, Jira, Confluence, Trello, Favro, Pivotal Tracker, Airtable and lots more. No matter how important a product to be developed is, it is in our best interest to create an environment that will facilitate collaboration during the project. Velocity: I recently managed a product which sprint was supposed to last for one month but ended up breaking the sprint into two. During our retro, we concluded that one of the major reasons while we could not deliver the increment within a month was because we rushed our sprint planning and didn?t give enough room for the team to understand and discussed about the product. You can not underestimate the importance of team collaboration in a sprint, it determines whether the product will be delivered earlier than estimated or later than estimated. Activities like team bonding, team offsite and other do more good to the team than what they actually cost. Sprint planning, Standups, Reviews and Retros are also activities within the sprint that facilitate interactions and collaborations. Knowledge: This is one area I pay close attention to in a team. As you collaborate with people, it gives you the privilege to know them and know how they want things to be done. Working in an agile environment has given me access to people while listening to them and working with them. I have had team members who have health challenges that the team has to cope with, we have had to manage and allocate tasks based on knowledge of Individuals that are on the team. Most of the time, we ended up meeting our definition of done and delivering the Increment. You cannot afford to be oblivious of the people in an agile environment, It takes the people to meet the definition of done. To the degree to which you collaborate with your team will determine the degree to which you can understand them. If you interact well enough, you will understand them which will affect the sprint. Contribution: If you are in an agile team, your contributions will be needed in the team. We all have worked within the four walls of the traditional system whereby information is distributed from top to bottom which sometimes reduces our confidence in carrying out the task. Agile development gives you the opportunity to be involved in the decision making in a development team whether you are a neophyte or an expert. Taking contribution from everybody in the team has a way of making them own the project or the product to be developed. Agile development does not encourage reticency among team members, your contribution to the team could make the difference. We have other values of agile development stated in the Agile manifestos, which might be the subject of discussion some other times.





Upload images with the blog.