Iterative model of software development works in parallel with the continuous analysis of the results and adjustment of the previous phases of work. The project in this approach in each phase of development is an iterative cycle: Planning - Implementation - Testing - Evaluation (plan-do-check-act cycle). Iterative methods for developing software that are being used at QArea:
Rational Unified Process (RUP)
RUP is a methodology for software development, created by Rational Software. RUP is based on the following core principles:
- Early identification and continuous (up to the end of the project) eliminating of the project risks.
- Focusing on the implementation of customer requirements (analysis and building of cases model).
- Waiting for changes in requirements, design decisions and implementation in the development process.
- Component architecture that is implemented and tested within the early stages of the project.
- Continuous quality assurance at all stages of the project.
- Work on the project in a cohesive team, the key role in which belongs to the architects.
Agile Software Development
Most agile methodologies are aimed at minimizing the risk by making the development process being a number of short cycles called iterations. Each of the iterations typically lasts one or two weeks. The iteration itself looks like a miniature software project, and includes all tasks required for the issuance of the mini-increase of functionality: planning, requirements analysis, design, coding, testing and documentation.
At the end of each iteration the team performs a re-evaluation of priorities for development. The core principles of this methodology are presented in so-called Agile Manifesto. Here they are:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
The most famous and the most effective Agile approaches are Scrum and Kanban methodologies, which are widely used by our company.