160 likes | 470 Views
Using SCRUM in a Start-Up. Miguel Madeira CTO Finsolutia http://www.arquitecturadesoftware.org/blogs/miguelmadeira. AGENDA. Company Methodology adoption Technology SCRUM Team Sprint Planning Meeting Product Backlog Sprint Tasks Daily Scrum Meeting Sprint Demo Tests & Bug Tracking
E N D
Using SCRUM in a Start-Up Miguel Madeira CTO Finsolutia http://www.arquitecturadesoftware.org/blogs/miguelmadeira
AGENDA • Company • Methodology adoption • Technology • SCRUM • Team • Sprint Planning Meeting • Product Backlog • Sprint Tasks • Daily Scrum Meeting • Sprint Demo • Tests & Bug Tracking • Improvements
COMPANY • Fin Solutia is a special situation company • A Joint Venture led by UBS Investment Bank, and Espírito Santo Investment with Ongoing Strategy, incorporated in April 2007, to assist in facilitating loan Portfolio transactions, as well as the provision of specialist advisory and consultancy services in Iberia for the acquisition and/or management of loan portfolios. • Is an independent one-stop-shop of specialist services, offering a full suite of services on loan portfolio and balance sheet management, which include: • Due Diligence • Independent Pricing • Specialty Consulting • Risk Management • Surveillance • Special Servicing • REO Services.
COMPANY • The goal was to create an application to manage NPL Transactions • The application pre-requisites are: • Parse information from different sources and formats • Loan Management • Proposal Resolution Workflow • Document Management System • CRM System • User & Group Control Access • ... and a lot of business logic!!!
Methodology Adoption • Company Evangelization • Explain the methodology to board members • Resources • Sustainable Competitive Advantages • Request the commitment of all company members • Scrum Training Sessions • Team members & other participants • Occurred Mainly in Company Team Building Sessions • Adapt to the company • SCRUM is not “One Size Fits All”
TECHNOLOGY • Team Foundation Server 2008 • Source Control • Team System Web Access (http://tfs.solutiaservicing.com:8090) • ScrumForTeamSystem – Cochango • Scrum Template for Team System • CruiseControl - ThoughtWorks • Continuous Integration Server • 2 Builds (Nightly and CI Build) • Several Plug-ins • FXCop, StyleCop, NDoc, etc ... • MOSS 2007 • Wiki (http://extranet.finsolutia.com:99/Wiki/) • Feature Wishlist (http://extranet.finsolutia.com:99/Docs/Lists/Wishlist/General.aspx)
TEAM • 1 Product-Owner • Partial • 1 Scrum-Master • Full-Time • 3 Developers • Full-Time • 2 Testers • Partial • More resources are recruited if needed... • Other roles on-demand • Designer • Outsourcing only for specialized services • i.e: Windows Workflow Foundation
SCRUM - SPRINT • At the beginning with 2 weeks iteractions • Architecture Design • One Release Each 2 Weeks • Lauch of the most-wanted features ASAP • Now 5 weeks • 4 weeks for Development • 1 Week for Tests, Documentation, Go Live & Planning Next Sprint • During the current sprint, Requirements Management Team members are producing specifications for the next sprint.
SCRUM – SPRINT PLANNING MEETING • A wishlist is maintained in a Sharepoint List • Each employee may contribute with a feature request • PART I • Once a month, a meeting occurs where the most voted features are included in the Product Backlog • PART II • Sprint preparation with all team members
SCRUM – PRODUCT BACKLOG • Each PBI should have a story • The requestor describes the feature to the Requirements Management Team, which then produces a specification document. • The story is explained to the team by the feature requestor • Very, very important to manage expectations. • Team may contribute to the feature improvement. • PBI’s are then decomposed in tasks and SBI’s are created in TFS. • Estimation • Scrum Poker
SCRUM – SPRINT BACKLOG ITEMS • Each SBI title is prefixed with the title of PBI • Better for sorts & searchs in TFS Queries • The SBI’s are created without assignment • SBI’s are assigned at Daily Scrum Meeting or by member request. • Each SBI should not have more than 8hrs • If longer then should be separated in several SBI’s
SCRUM – DAILY SCRUM MEETING • Participants • Team Members • All others are invited • In the last week, the Product Owner presence is suggested • Actions • Answer to the common 3 questions • What did you do yesterday? • What will you do today? • Is there anything blocking your work? • Task time report • Delegation • When the Scrum Master is not available, a team member should be designated to assume his role.
SCRUM – SPRINT DEMO • At the end of Week 4 a new release is published to the Staging environment • Scrum Team presents a Demo session to all company members • No changes are accepted!!! • Feature improvements suggested are pushed to the wishlist to be prioritized • Tests starts immediatly after the Demo session
SCRUM – TESTS & BUG TRACKING • An Excel Spreadsheet was created to assists manual tests • During Tests, all bugs found are reported in TFS • All issues found by a tester are reported as BUG in TFS • Work Item has been customized with TFS Power Tool to include “Assign To” field • Workflow was changed to mark all items as Ready for Test instead of Done • The team self-organizes for bug fixing • At the end of Tests a report is produced
IMPROVEMENTS • Automated Tests • UI Test • Invest time and resources in test automation • Several applications were tested. (HP QA Manager, Compuware Test Center & Test Complete) • Expensive • Not very user friendly. • Needs to be managed by non IT people.
SCRUM Q & A