The 7 phases of Software Development Life Cycle (SDLC) - Useless Computer

The 7 phases of Software Development Life Cycle (SDLC)

Share This
SDLC

What is SDLC?

SDLC stands for Software Development Life Cycle. It is a systematic process for building a high-quality software product that ensures the quality and correctness of the software built.

Keep reading this tutorial, I have covered core concepts of all these phases.

The 7 phases

7 Phases Of Software Development Life Cycle Infographic

Phase 1: Requirement collection and analysis

Requirements Gathering is the first stage in the SDLC process which need teams to get detailed and precise requirements. Identifying and then prioritizing technical and functional requirements with inputs from all the stakeholders and domain experts in the industry tops the business analyst's list of responsibilities. This helps companies to finalize the scope of the entire project and the anticipated issues, opportunities, and directives to finish the work of that system.

Phase 2: Feasibility study

Feasibility Study represents a definition of a problem or opportunity to be studied, an analysis of the current mode of operation, a definition of requirements, an evaluation of alternatives, and an agreed upon course of action. This process conducted with the help of  Software Requirement Specification (SRS) document which includes everything to be designed and developed during the project life cycle by a Business Analyst of an organization.

Five types of major feasibility checks
  1. Economic: Can we complete the project within the budget or not?
  2. Operation: Can we create operations which is expected by the client?
  3. Technical: Need to check whether the current computer system can support the software
  4. Legal: Can we handle this project as cyber law and other regulatory framework/compliance.
  5. Schedule: Decide that the project can be completed within the given schedule or not.

Although business analysis is a relatively new discipline in IT, a handful of organizations already offer certifications to help boost your resume and prove your merit as an analyst. For more information about how to earn one of these certifications and how much they cost see uCertify's IIBA-CBAP/CCBA

Phase 3: Design

In this third phase, the system and software design documents are prepared as per the requirement specification document. This helps define overall system architecture.
There are two kinds of design documents developed in this phase
  1. High Level Design (HLD) is the overall system design - covering the system architecture and database design. It describes the relation between various modules and functions of the system. data flow, flow charts and data structures are covered under HLD.
  2. Low Level Design (LLD) is like detailing the HLD. It defines the actual logic for each and every component of the system. Class diagrams with all the methods and relation between classes comes under LLD. Programs specs are covered under LLD.

Phase 4: Coding

The next phase is coding once the system design phase is over. This is the longest phase of the Software Development Life Cycle process. In the coding phase, tasks are divided into units or modules and assigned to the various developers and they start to build the entire system by writing code using the chosen programming language and programming tools like compiler, interpreters, debugger to generate and implement the code.

Phase 5: Testing

The testing team starts testing the functionality of the entire system, once the software is deployed in the testing environment. This is done to verify that the entire application works according to the customer requirement. During this phase, QA and testing team may find some bugs/defects which they communicate to developers. The development team fixes the bug and send back to QA for a re-test. This process continues until the software is bug-free, stable, and working according to the business needs of that system.

Phase 6: Installation/Deployment

Once the software testing phase is over and no bugs or errors left in the system then the final deployment process starts. Based on the feedback given by the project manager, the final software is released and checked for deployment issues if any.

Phase 7: Maintenance

Customers will start using the developed system, once it is live. The main focus of this SDLC phase is to ensure that needs continue to be met and that the system continues to perform as per the specification mentioned in the first phase. Maintenance consists three activities
  1. Bug fixing - Bugs are reported because of some scenarios which are not tested at all.
  2. Upgrade - Upgrading the application to the newer versions of the Software.
  3. Enhancement - Adding some new features into the existing software.

Conclusion

Although the SDLC is a key part of information technology practices in today's enterprise world, Agile has changed the face of what we think of as software development processes. We will look everything about Agile in the next article.

Did you find this blog post helpful? Share it with a friend who has enthusiasm in technology.

1 comment:

  1. hy
    every Software developer needs to know the basic introduction regarding own field. Thank you sharing with us.

    ReplyDelete

Pages