![AI as a member of the Scrum Team](https://scrumorg-website-prod.s3.amazonaws.com/drupal/s3fs-public/styles/cke_media_resize_medium/public/2024-07/Scrum%20Team%20%282%29.png?itok=Raf3PUdo)
Every Scrum Team wishes they had time each Sprint to accomplish more. By leveraging Artificial Intelligence (AI), teams can get that time back and become more effective. AI is revolutionizing various industries, and its potential to enhance how people and teams work is becoming increasingly evident. The term “co-pilot” used most often by Microsoft is a great one as it lends a competent “right-hand” to enhance the abilities of a professional. The AI engine isn’t left on its own, it is part of a team where individuals can work with the engine to jump start and validate their work, while validating what the engine provides at the same time. Think of it almost as how pair programming in software development works where developers work together to develop, test and validate software development. Imagine AI integrating seamlessly into your Scrum Team, not just as a tool, but as a team member.
AI engines can be leveraged in many ways. Sometimes it may be asking questions (prompts), you can use addons to the existing engine, tools have AI built in or you can integrate with the engines API.
Playing a Role in the Scrum Team
There are three accountabilities in Scrum: Scrum Master, Product Owner and Developer, and each of these accountabilities can benefit from AI support. Scrum was born out of software development and has moved well beyond to almost every type of complex product creation and management.
AI as a Scrum Master Assistant
The Scrum Master accountabilities involve helping the Scrum Team members as well as others throughout the organization. This can include a lot of facilitation, coaching, teaching and more. AI can help with some of these accountabilities by:
- Facilitating Meetings: AI can suggest different facilitation techniques for meetings. If you are having difficulty with Scrum Team members engaging in Sprint Retrospectives, for example, just ask the AI, “I am having a problem getting my Scrum Team to fully engage in Sprint Retrospectives any ideas?” for example.
When it comes to some of the administrative tasks, let AI reduce the overhead as it can help schedule and manage meetings, generate agendas and even take notes during meetings. Tools like Otter.ai can transcribe and summarize discussions, making it easier to communicate the discussions on Slack for example while tracking decisions and action items.
- Monitoring Progress: For an individual team or across multiple teams, AI can be integrated into change management tooling like Jira or AzureDevOps to track Sprint progress, providing views of flow metrics, and identifying potential bottlenecks while suggesting interventions. The analysis can span data from various sources to provide broad insights.
- Removing Impediments: By adding simple wait states to each phase, for example waiting to test, waiting to release, etc. AI can provide quick and easy bottleneck identification. This can be accomplished in real-time and by analyzing patterns in historical team activities and suggesting solutions or ways to resolve them.
AI as a Product Owner Assistant
The Product Owner accountable for maximizing the value of the product. Product Owners provide clarity to the team about a product’s vision and goal. For Product Owners, AI can assist with:
- Prioritizing Backlog Items: AI can analyze market trends, customer feedback, and usage data to suggest priority items for the Product Backlog. This provides the team with inputs into prioritization and potential new items that have yet to be described.
AI can be used to test hypotheses about Product Backlog items for you by asking questions like: “What if I removed this feature, what impact would it have?” “What if we only focused on this feature, what changes would occur in the Product Backlog?”. A Product Owner or other Scrum Team member can do this work, but often don’t have the time and AI can do it quickly and provide different scenarios while removing many individual biases.
- User Story Refinement: Instead of spending a lot of time writing, feed the AI with information about the requirements. AI can take those inputs and write a great user story quickly and at a level of understanding and you can then ask AI to help refine into smaller stories and suggest acceptance criteria.
- Predictive Analytics: AI can forecast the potential impact of features based on current and proposed usage, helping Product Owners make data-driven decisions about which features to develop next.
- Persona Discovery and Creation: By describing potential features and capabilities of a product or feature and potential uses and user types, AI can analyze data to suggest potential user types of a service, product or product feature. Through this analysis, the creation of personas can help drive better product descriptions and decisions.
- Product Discovery and Validation: Quickly prototype ideas for testing with potential users by having AI create a survey to capture data about what is being proposed and analyzing the results. This will help to speed time to discovery of potential uses or areas where requirements are lacking.
- Ideation and Market Analysis: AI can analyze vast amounts of data from social media, market reports, and other sources to identify emerging trends and consumer preferences. Through machine learning algorithms AI can process customer feedback and reviews to highlight common pain points and desired features.
- Competitive Analysis: AI can track competitors’ activities and market position, providing insights that help in strategic decision-making.
AI as a Developer Assistant
Developers are accountable for all work related to delivering a product to market. AI can assist all types of Developers with:
- Backlog Management: AI can help in breaking down user stories into tasks, estimating the effort required based on similar Product Backlog items.
- Design and Prototyping: AI can generate multiple design alternatives based on specific constraints and requirements, allowing developers to explore a wider range of possibilities while simulating various conditions and stress tests on virtual prototypes, helping to identify potential issues early in the design process.
- Quality Assurance and Testing: AI-powered vision systems can inspect products for defects more accurately and consistently than human inspectors. By analyzing production data to identify patterns that might indicate quality issues, allowing for quicker resolution.
AI can assist Software Developers with:
- Code Generation and Review: AI tools like GitHub Copilot can suggest code snippets, detect bugs, and even automate code reviews. This speeds up development and ensures higher code quality.
- Automated Testing: AI can automate repetitive testing tasks, identify edge cases, and even predict areas of the code that might fail, thus improving the reliability of software releases.
- Test Data Generation: Using real data in testing is risky and often illegal while creating realistic test data can be time consuming and often impossible. By providing the data model and including data types to AI, it can provide data that is realistic and appropriate for application testing.
AI Assisting the Entire Scrum Team
Some work crosses everyone on the Scrum Team and doesn’t fall to a specific accountability, like the creation of the Definition of Done, for example. AI can also improve overall team collaboration and communication:
- Creating the Definition of Done: By analyzing prior work and gaining inputs from existing corporate and team processes, AI can help craft a Definition of Done that incorporates these inputs.
- Knowledge Sharing: AI can serve as a repository of project knowledge, making it easy for team members to find information, past decisions and code snippets.
- Research Assistant: AI is a great place to ask questions and receive answers. However, it is important that you do the research to validate the responses, not taking a definitive answer, as an incorrect answer will be written with the same confidence as a correct one.
- Language Translation: For distributed teams, AI can translate communications in real-time, ensuring that language barriers do not impede collaboration.
- Team Sentiment Analysis: AI can analyze team communication to gauge morale and detect potential conflicts, allowing the Scrum Master to address issues proactively.
Conclusion
These are just some of the examples of how AI is helping Scrum Teams today. The current state of AI is not magic. AI tools do not replace the need for choices, innovation and teamwork. But they can augment individual and team activities to quickly provide different perspectives and reduce mundane activities. This frees up people to spend more time on solving the problem.
One word of caution - the use of these tools can increase the volume of “stuff”. For example, some software development bots have been accused of creating too many lines of code and adding code that is irrelevant. That can also be true when you get AI to refine stories, build tests or even create minutes for meetings. The volume of information can ultimately get in the way of the value that these tools provide. So rather than blindly applying tools without thought, the adoption of this technology should be done in an agile way by inspecting and adapting iteratively along the way as a team. Like any agile undertaking, over time technology combined with practice will increase team value.