XS, Inc has adopted the SCRUM methodology for its Software Development Lifecycle and has applied the best practices of SCRUM on all software development teams within the company. Our goal is to deliver functioning code in short iterations so the customer has several opportunities throughout the development lifecycle to provide feedback on the software being developed.
Agile Process Cycle

Why Not Traditional Waterfall?
In Waterfall development all requirements must be gathered up front for the developers and the customer is left hoping everything is going well until the entire project is complete and possibly not what was originally intended.
The waterfall approach assumes that it's possible to capture all requirements before design starts. For most projects this is ludicrous; by the time you've written down all of the requirements, they will have changed. Pete McBreen - Software Development: Dismantling the Waterfall
The Definition of a Sprint
Each sprint at XS is comprised of four weeks of deliverable work.
- 4 week Sprints to start on Monday and end on Fridays
- As stories are completed they are made available to the customers for preliminary testing.
- Every day – 15 minute daily standup for Core Team Members
- Every 4th Monday (Sprint start) – Sprint Planning meeting
- Every 4th Friday (Sprint end) – Sprint Review and Sprint Retrospective
- May reserve up to 20% of each sprint’s story points for internal reported stories (maintenance) or support
Key Members of SCRUM
- Product Owner - The Product Owner is the voice of the customer for the rest of the team and ensures that the team delivers value to the customer. The PO also adds stories to the backlog of work, prioritizes them, and provides final approval on the behalf of the customer.
- Scrum Master - The primary responsibility of the Scrum Master is to keep the team on track by removing impediments, keeping the team focused, and leading the morning standup meetings.
- Developers & QA - This is the core of the team and includes all of the people responsible for delivering the final product. Typically this part of the team consists of the 4 to 8 people that will perform the design, development, testing, and documentation tasks of the project.
- Customer - Sometimes referred to as the Stakeholder this is the team member for whom the project is being developed. Ultimately the customer is responsible for final approval and is typically involved in sprint reviews where the success of the sprint is discussed and iterative changes are suggested for the next sprint.
Meetings
-
Scrum - Each day the team meets for a maximum of 15 minutes to provide status updates on their respective tasks. In this meeting each member answers the following three questions.
- What did you do yesterday?
- What are you planning on doing today?
- Do you have any impediments or road blocks?
- Sprint Planning - This is held at the beginning of each sprint to discuss and estimate all of the work to be completed in the sprint.
- Sprint Review - The team meets with the customer to discuss the wok completed and provide a demo if applicable. This also is where the team can report on work that is not complete and the customer can suggest iterative improvement’s for the next sprint.
- Sprint Retrospective - This is an opportunity for everyone on the team to site highlights and challenges of the sprint just completed. The result of each retrospective should be action items to improve the next sprint.
-
Scrum of Scrums - Similar to the morning stand up this allows scrum masters to meet across teams and talk about improvements and challenges. Also similar to the morning meeting this group answers a set of questions.
- What has your team done since we last met?
- What will your team do before we meet again?
- Does your team have any impediment or road blocks?
- Will any of the process improvements you're planning impact the other team’s in any way?
The Bottom Line
Catching defects earlier in the process saves the developer time and the customer money. Below is a depiction of what the industry has identified as the average cost of fixing a defect during the different stages of the development lifecycle.
