Amura Development Methodology

Amura Development Methodology is organized by using the Scrum approach.
Scrum is an agile process that can be used to manage and control complex software and product development using iterative, incremental practices. It produces a potentially shippable set of software functionality at the end of each sprint iteration.

The different phases involved in the methodology are:

Define
This phase involves reviewing existing business and technical requirements and stakeholder interviews to highlight key areas of focus for the application. Key requirements are prioritized and validated into use cases, user stories or process specifications.

Design
Based on the analysis of requirements a high level system architecture for the application is proposed. The system architecture facilitates in finding any further ambiguity in the requirements, communication between stakeholders, and allows reuse of design components and patterns within the project. The design phase is followed by an estimation meeting where each use case is given use case points by the team to determine the "functional complexity". The total number of use case points will determine the project size and the duration of the project.
Deployment planning begins at the end of the design phase. This planning involves load estimation, Capacity planning, and Infrastructure finalization.

Product Backlog
The project requirements are gathered in smart use cases. They are then prioritized in a list. The outcome of the estimation meeting is a list called the Product Backlog. This product backlog is sorted according to the priorities set by the business, split up into "will have" and "might have" requirements.

Sprint
Every Sprint begins with a planning meeting. Before the start of a new iteration, the team selects the use cases to implement according to the business priorities of that moment. Then the selected use cases are split in tasks on the project dashboard.
Each product backlog item is analyzed further to create the detailed implementation plan. The sprint backlog is a greatly detailed document containing detailed implementation information about the requirements for the upcoming sprint. Each of the sprint backlog items is then assigned and implemented by the team. The team goes through a detailed design and development phase. Representatives from the testing team are also involved in the planning meeting. As soon as the sprint design is complete, the testing team develops test cases and scripts. The types of testing conducted depend on the items to be implemented in the sprint.
The testing process also contains a User Acceptance Testing (UAT) cycle wherein actual users of the system are involved and feedback is obtained on the system. This process ensures that the product is always in-sync with the client’s requirements.

Closure
This indicates the final application delivery and deployment of the application at the production site. The project is open to the environment until the Closure phase. The deliverable can be changed at any time during the Planning and Sprint phases of the project.