At Stigasoft, we recognize that a solution may only be a vision in the customers mind and that all requirements cannot always be thought out and planned at the outset. The process therefore requires constant interaction between Stigasoft and the customer, to provide feedback from both sides about how the project is going.
Scrum is an agile process most commonly used for product development, especially software development. Scrum is a project management framework that is applicable to any project with aggressive deadlines, complex requirements and a degree of uniqueness. In Scrum, projects move forward via a series of iterations called sprints. Each sprint is typically two to four weeks long.
The main phases of a project are Planning, Project Incremental Development, Incremental Deployment and Project Closing. The Incremental Development stage is organized into consecutive Sprints or iterations where different tasks are carried out to implement a set of requirements.
As the project starts, the team is formed and planning activities take place to organize the work, this is called Iteration Zero. The Release planning includes the requirement gathering and fully understanding of the expectation of the customer. A product backlog is created, with the list of product requirements. The technical vision is documented and a high level system architecture and design are established.
The following project criteria are established in this stage:
At Stigasoft our development teams work according to a well-defined methodology which manage and control software and product development using iterative, incremental practices. This process significantly increases productivity and reduces time to benefits while facilitating adaptive, empirical systems development. The Stigasoft development methodology is designed to be flexible throughout the project. It provides a control mechanism for planning a product release and then managing variables as the project progresses. Development is planned and executed in short cycles called Sprints or iterations.
The work is organized into a living backlog: the list of requirements or user stories. The backlog is prioritized by the Product Owner according to business needs. The goal is to deliver first what it is the most valuable to the Client, to get the best ROI.
By the end of a sprint, the team demonstrates the increment to the Product Owner and Stakeholders. Feedback is gathered as to make the necessary improvements to the product and the process.
A brief "lessons learned" meeting takes place, at which all team members review the sprint with Scrum Master. The purpose of this meeting is to identify what worked well and what didn't work well and identify what needs to be done to address the problems. This results into team-resolvable and organizational impediments and next steps to solve them.
A release cycle includes many iterations (typically 4 to 6). For every release to a production environment, one more iteration is planned to do thorough testing, bug fixing and final tuning. During the release iteration, no new features are developed.