At eSwiftSoftware, we believe in “Requirements well-captured initially is half of the project done”. Therefore, we we believe in adopting a personal approach to every customer and project. Our development methodology practices are focused to address the specific business requirements focusing on transparency and automation.
There can be no denial in the fact that Discipline is the key to success in any activity. Software Development is no exception to it. And that discipline is laid out by SDLC (Software Development Life Cycle or System Development Life Cycle). We religiously follow the SDLC Process no matter how big or small the project is.
PHASES OF SDLC
1. System Analysis – We conduct a feasibility Study of the Project. It is very important that one studies the Project Proposal to ensure if the Project is viable or not. This feasibility study will include primarily, the operational, time and cost estimation subjected to resources available. The initial assessment will decided the fate of the project.
2. Requirement Analysis – It is very important that the requirements are studied, analyzed and more importantly, documented. If it is a legacy system, the existing system must be evaluated. As part of the Requirement Analysis, the following are documented in detail after thorough research and study of the system.
- Business Requirement Document (BRD) – The intent behind this document should describe about the results we want from the system.
- Functional Specification Document (FSD) – This document is more of a technical response to the BRD. The intended audience for an FSD is usually the Software Developers who code/develop.
- At times, few organizations tend to focus on Software Requirements Specification (SRS) which contains both the functional and non-functional behavior of a system.
3. System Design – Now that the requirements are documented, we transform them detailed system design. The input for a system design is the requirement Phase. The following are documented as part of the System Design.
- HLD – High Level Design –Overall System Design with respect to System Architecture and Database.
- LLD – Low Level Design – Much more detailed design document for a developer which includes the word description of the program to be developed.
4. System Development (Coding) – If the design document is reviewed and accepted the Team leads, it’s time for the developer to take charge of the code. The source code is developed in this phase taking inputs from the Requirements and Design Document developed in earlier phases.
5. System Integration & Testing – Once the development is done and ready to be released for testing, the QA subjects the designed test cases against the system and records bugs in our internal Bug Tracker System.
6. Deployment – Once the Testing Phase is completed and the client has passed the User Acceptance Testing (UAT) signoff, we deploy the code on the server for the users.
7. Maintenance – Post-Deployment, the system is bound to spring surprises in the form of issues or mandatory change request. In order to fix them, patches/change requests versions are developed and released.
For detailed blog. please visit here