The various implementations of agile all centre around the concept of a team, with well-defined, cross-functional roles present. Scrum, one of the most popular implementations of the agile methodology, has key roles in a team to ensure the smooth execution of the methodology. Clearly aligned communication flows in scrum teams are facilitated by product owners, scrum masters and external stakeholders to ensure that the team is set up for success.
The adoption of scrum by multiple teams in an organisation leads to issues around scrum at scale, managing multiple teams aligned towards a common project goal. However, the model for professional services, open source contributors, college students and small start-up teams is to have 1-2 person 'scrum' teams. Role delimitation is impossible, as a team member wearing multiple hats in a given day becomes the scrum master, the developer, the integrator and the tester. Over the lifetime of a project this could extend to several more core roles, bringing a wider ranging viewpoint to bear on a problem from a single individual.
The absence of separation of responsibilities within any team can eventually lead to so-called 'technical debt' as well as an overall reduction in the quality of the product. The concept described here is small-scale scrum. While it has many obvious challenges, it also presents an opportunity to be quality centric and deliver real value to the end user.
This session outlines forced adjustments made to the traditional scrum methodology while taking inspiration from wider ranging agile disciplines, to ensure that small-scale scrum not only functions, but also delivers highly resilient, quality driven and minimal technical debt projects. We will draw on our real world experience of implementing small-scale scrum across 4 consultancy engagements and 4 final-year student projects, comparing that to where we started. We'll show work from several non-agile inspired small team consultancy projects and finally compare it to a functioning 'normal' scrum team from a quality perspective. This data-driven approach shows the tweaks and changes that helped us deliver an agile mindset to small team projects, and discusses the core challenges of trying to live an agile mindset in a high-pressure, small team environment.
Agnieszka Gancarczyk is a part-time MSc student at Waterford Institute of Technology and Red Hat Mobile consultant by day. Her focus is on trying to implement small-scale scrum while working on several small-size projects.
Leigh holds a PhD in software engineering, having worked as a researcher in the telecoms sphere for 8 years. This work led him to become an agile practioner. While serving as a senior software engineer for several multinationals, he always brought an agile view to the table, culminating in his becoming a scrum master and later scrum coach for his current employer. Day to day he is an engineering manager with Red Hat Mobile and agile coach for the mobile team. He's also helping to guide the wider middleware team as they replicate the success of the mobile team and help transition to an agile way of working.