In this article, I would like to share the tools and practices I use with my remote agile team.
In normal agile projects, people rely heavily on physical communication and materials to organize tasks and share ideas. For remote agile projects, we have to communicate exclusively through digital alternatives.
Centralize code on a software forge
We use Gitlab CE to manage our projects. Git version control is essential nowadays to collaborate on code. Once a contribution is submitted, it can be reviewed separately by others without fearing conflict with ongoing work. We use effectively the issue tracking feature to manage our tasks using kanban-style dashbard. Labels allow to categorize tasks and estimate the complexity.
Plan with an online collaborative spreadsheet
We use Sheets to communicate backlog information in a standardized way. User stories are written in the format "As a [role], I want to [goal] because [why]". Each user story has a description on "How to test" and a link to a visual mockup. Tasks for the current sprint are prioritized and updated daily for the burndown chart.
Visualize better with mockups
Moqups is a great tool to explain business ideas visually with the team. Creating and discussing over wireframes help detect potential complications early on and adjust the development accordingly. A simplee way to express concepts, is to use pen and paper and send aphoto with a phone.
Make the most of communications tools
For our sprint meetings, we usually use Hangouts. The screensharing feature comes in handy at time to demo a feature or share a working document. In case, it’s notpossible to show or attend live, we can also record screen videos in advance.
For asynchronous communication, we have Mattermost, an open source alternative to Slack. It’s an enterprise-grade communication messaging tool very popular among developers. We use it to ask and answer specific questions missed in the meetings. Features such as group messaging, pinned posts, reply threads allow to follow up better the conversation.
Working as a product owner with a development team remotely is possible using only digital tools. The strategy is to formalize different types of information with adequate collaborative web applications, thus saving time in the understanding process :
- Application business with mockups and video demos
- Project planning and monitoring through spreadsheets
- Software development and testing using a code repository
This will enable to have quality meeting time for reviewing, discussing and deciding the coming actions in a remote team. Finally, chat helps cover the remaining use cases.