Do you at any point struggle to know what your team is working on? Do you struggle to update your clients on the team’s progress? Do you feel like you’re constantly running but going nowhere? Transparency and visibility continue to be a major concern among software development teams resulting in issues of mistrust between developers and management. On one end you have a development team that feels tired, overworked and unappreciated while on the other end of the stick, you have frustrated bosses who cannot see any tangible work being done by the team. This is commonplace in many of the organizations that still use traditional methodologies of software development.
Agile methodologies is how we ensure there’s transparency within the team at ihub Software Consulting (iSC). We use Scrum, a leading Agile methodology used by some of the best software development companies across the world. For scrum to work, everything has to be open, visible and transparent. Not only is this good for management and business but also for the development team, who are often left in the dark during project scoping and planning.
So how does this work for us?
The following aspects of scrum have enabled us to increase transparency within the software team and thus make work open and visible:
For all our projects, we put together a scrum team that is comprised of the following:
- Product Owner - This is a representative from the client side who is tasked with ensuring that the work executed by the development team aligns with the business’s expectations and objectives. They are also responsible for ensuring that the product backlog entries are clearly listed and ordered in terms of priority to the business.
- Development Team - The development team is made up of a mix of designers, backend and frontend engineers and QA specialists. This team is responsible for delivering a functional software product.
- Scrum Master - This is a representative from the working team who ensures that each sprint is properly executed. They facilitate scrum events, remove any blockers to the team’s progress and work closely with the product owner to ensure the scope of work is understood by everyone
The scrum team brings together a cross-functional team with a rich mix of skills to deliver a software project. Working together in this way encourages collaboration and transparency.
Scrum prescribes at least four formal events within a sprint. A sprint is the basic unit of development and is usually a timebox of say, 2 weeks, in which the development team can potentially ship a new version of the product.
Four events are important for a sprint to be considered successful
- Sprint Planning - This meeting allows the team to discuss what features and tasks will be covered in the sprint. The meeting is attended by the product owner, scrum master and development team, meaning any work the team discusses and commits to complete within the sprint is openly visible to everyone and can be demonstrated at the end of the sprint.
- Daily Standup - In this event, the team shares what they have worked on the previous day, what they commit to work on on the current day, and any impediments to their progress. This allows everyone to know where the team is at, and allows the scrum master to remove any blockers to the project, early.
- Sprint Review - During the review, the team demonstrates the work that was done during the sprint, and consequently the product owner is able to determine what was “done” and “not done” based on the goals set during the sprint planning session.
- Sprint Retrospective - This happens immediately after the sprint review and the team inspects how the last sprint went with regards to people, processes and tools. The team shares what went well, what didn’t go well and how this can be improved in the next sprint.
All these ceremonies, encourage collaboration and open communication within the team, thus ensuring work remains visible and any blockers to the project are noted and removed early in the project.
Scrum Task Board
This is a visual display of the work in progress. A task board is a tool that makes stories and tasks within the project cycle, visible at a glance.
The general columns visible in the task board are stories, to do, in progress, ready for testing and done. This enables everyone in the team to quickly view the status and progress of work at any point in time during a sprint, thus making work open and visible.
These are generally some of the ways we ensure that we make work visible at iSC and consequently ensure that developers, management and clients remain mostly happy.
Interested in learning more about our projects and services? Drop us a line at consulting[at]ihub.co.ke