1 / 31

Scaling Agile Teams Architect Insight Conference Colin Bird & James Dawson March 2007

Learn about scaling Agile teams and architecting through Agile and SCRUM methodologies. Discover insights on building large-scale Agile programs, requirements, Source Control, Engineering & Quality Practices, Environments, Automation, Deployment, and Visual Studio Team System integration. Dive deep into the world of Agile development infrastructure and the benefits it offers.

paulflewis
Download Presentation

Scaling Agile Teams Architect Insight Conference Colin Bird & James Dawson March 2007

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Scaling Agile Teams Architect Insight Conference Colin Bird & James Dawson March 2007

  2. What is Agile / SCRUM? • Agile • Agile is a number of lightweight methodologies including DSDM, Extreme Programming (XP) and SCRUM • Agile methods are disciplined processes that focus on people and the way software is developed • Its about developing software that is more aligned to business needs • Iterative - deliver business value in small regular batches • Empirical • Solicit and respond to business feedback with each delivery • Make decisions based on track record • Measure what is left to do Agile According to Dilbert

  3. Scrum on a Slide

  4. Ok, so Agile’s great for a small team but what happens when you have to work on a big project?

  5. What does “Big” mean? • Typical individual Agile team is 5-10 people • Above this number the team doesn’t function efficiently • Common interpretations of Scale • Large or many teams • Geographically dispersed • Agile adoption at an organisational level • Often all of the above!

  6. An Example

  7. Scaled Agile Programme Requirements • Integrated Source Control • Consistent source structure • Share common code • Consistent engineering and quality practices • Lots of environments • Sandboxed team development environments • Sandboxed team testing environments • Integration environments • Automation • Builds • Deployments • Regression testing • Regular performance testing • Overview of requirements • Dependency mapping • Reuse opportunities – components and frameworks • Team metrics • Programme metrics

  8. Scaled Agile Development Infrastructure

  9. Integrated Source Control An enterprise source control system is a fundamental to a successful large-scale Agile development effort. • Larger teams of concurrent users • Robust branch/merge support • Geographically dispersed teams Key Points: • If migrating from SourceSafe to TFS, do not under estimate the transition for developers • A consistent source structure can simplify automation (a la convention over configuration), and minimises friction of people moving between teams • Sharing common code is always important in Agile, but in larger scale scenarios the resulting dependencies between teams can get complex. Have a simple and robust way of handling this, and make sure everyone is 100% clear on it!

  10. Consistent Engineering and Quality Practices Consistency across teams is more important than the precise detail of the practices! Key Points: • Consistency is easier to automate • Consistent approaches across teams supports programme-level metrics • Consistent approaches across teams reduces friction of move people between teams

  11. Lots of Environments You rarely have enough environments! Branching in source control brings new environments out of the woodwork. Rapid provisioning is key, and virtualisation ‘answer’…. Albeit not a panacea. Teams need to be able to work autonomously but regularly synchronise with each other. Time to treat developers as users

  12. Scaled Infrastructure Support

  13. Automation and Streamlining Total automation not necessarily worth the additional effort. Standardise and Package Develop tools to support developers: • Abstract ‘niche’ technologies (Wix) • Encapsulate core processes (e.g. build, deployment, configuration management etc.) Aim for self-maintaining processes • Avoid processes that rely on ‘non-default’ behaviour • Avoid manually maintained lists to drive processes • Standardised structures and naming conventions go a long way

  14. Build Automation

  15. Deployment Automation

  16. Deployment Management • The Challenge: • What needs to deployed where? • How does this vary between environments? • No single person or team will know all the answers

  17. Scrum for Team System

  18. Visual Studio Team System 2005 • Microsoft’s new full lifecycle, integrated team development platform • Scrum for Team System • Scrum Process Template to optimise Microsoft’s development platform for the Scrum team • Collaboration with Ken Schwaber and Microsoft • Expresses requirements and tasks in Scrum terminology • All standard Scrum ‘artefacts’ e.g. Product Backlog, Sprint Backlog, etc… • Sprint and Product Burndown charts plus many other reports • Excel Integration • 4000+ downloads and rising • Active, lively forums • Further development in the pipeline • FREE! • Demonstration of our thought leadership and expertise in Scrum and Agile, it attracts the best clients - and recruits • Process Guidance • Online, provides first-class Scrum guidance independent of plug-in www.scrumforteamsystem.com

  19. Scrum in VSTS Together Team System and the Scrum Plug-in provide benefits that include: • Removal of the impedance mismatch between methodology and tools providing an improved team dynamic and increased efficiency. • Reduced effort required capturing and increased richness of the empirical information used to steer Scrum projects. • Support for the engineering practices on which Agile projects depend. • Supportive environment for team members who are less experienced with Scrum processes.

  20. Scrum Guidance In depth Scrum and Scrum for Team System guidance produced in association with Ken Schwaber

  21. Product Backlog in Team System

  22. Office 2003 Integration Non technical team members interact with Scrum artefacts with familiar tools

  23. Scrum Reporting Project and Sprint Velocity

  24. Scrum Reporting • Depth empirical information to help the team optimise their performance • Breadth reporting with zero effort for the stakeholders

  25. Scrum for Team System – Support for Scale Customer Burndown Programme Burndown Comprehensive Team Metrics

  26. Questions? colin.bird@conchango.com james.dawson@conchango.com http://blogs.conchango.com www.scrum-master.com www.scrumforteamsystem.com

  27. Conchango Agile Services • Advice, Mentoring and Training • We’ve got a depth of delivery experience and some of the most skilled and respected Agile practitioners in the industry. We offer formal training and accreditation in partnership with some of the industry gurus as well as on the job mentoring and consulting to help you develop your team and your approach. • Agile Project Delivery • We’ve worked with some of the UK’s leading companies to deliver mission critical projects using Agile methods. We help clients identify projects where Agile methods can improve the quality and certainty of delivery, and then work closely with clients to deliver them successfully. • Agile Lifecycle Tools and Engineering • We’ve built a range of tools and practices that help make Agile teams work, and we constantly scour the market for the best tools available. These tools can make the difference between success and failure. We help clients to choose, implement and get the most out of the tools available.

  28. Scrum for Team System Additional Slides

  29. Sprints in Team System

  30. Sprint Backlog Tasks in Team System

  31. Classic Scrum Views + Additional Traceability

More Related