Software development methodology at Sankalp

Requirement analysis

At Sankalp requirement analysis is a key constituent of the development cycles, emphasis here is laid on visualizing the user needs vis-à-vis technical requirements to be able to offer best possible solution and also provide for traceability of the requirement changes during the course of project execution. The primary motive here is to elaborate on cascading effects of functional changes over the other development phases like design and testing. This stage also involves exhaustive study of the client processes, bottlenecks and intended objectives and suitably documenting the same. The deliverables for this stage are a Functional Requirements Specification document (FRS) and a System Requirements Specification document (SRS). The above mentioned documents act as a benchmark for the project objectives for the client as they map needs into functional/ system / design aspects providing for a comprehensive cross - reference. The logical conclusion of this stage is a pre-cursor to actual software development phase.

Design

This stage involves identifying the architectural requirements of the project. This is achieved in three stages firstly by identifying the components of the proposed system, secondly the necessary interface requirements, thirdly the necessary techniques/ algorithms/procedures that need to be deployed for each of the components. The first> deliverable of this stage is a Software Design document (SDD) consisting of architectural diagrams, data models, interface descriptions, algorithms etc. The other artifact of this stage would be a Hardware Design Document (HDD) consisting of block diagrams, schematics, bill-of-materials etc as the case may be. This phase may have as an option development of a prototype demonstrating the functional capabilities of the proposed design.

Implementation

This stage involves identifying the priorities and implementation sequence for each of the components of the proposed system. The criteria employed here are necessarily to optimize on the time requirements and better project management. This phase also brings out the latent associations of various components and leverages on the experience of similar development cycles undertaken in the past. The version control and configuration management mechanisms are applied at this stage. The deliverables here are a user manual and technical reference manual as decided by the nature of system being developed.

Testing

This phase contains test case design, test execution and results capture. There are five different kinds of tests typically deployed Unit tests, integration tests, validation test, system test and performance testing. Artifacts are two documents Engineering Test Plan (ETP), test results document as the case may be.