top of page

Software Development Life Cycle


Requirement gathering and analysis

Design

Implementation or Coding

Testing

Deployment

Maintenance


1) Requirement gathering and analysis:

Business requirements are gathered in this phase. This phase is the main focus of the project managers and stake holders. Meetings with managers, stake holders and users are held in order to determine the requirements like:


1. Who is going to use the system?

2. How will they use the system?

3. What data should be input into the system?

4. What data should be output by the system?


These are general questions that get answered during a requirements gathering phase. Afterwards, these are analyzed for their validity and the possibility of incorporating the requirements in the system is also studied. Finally a Requirement Specification document is created which serves the purpose of guidelines for the next phase of the model.


2) Design

In this phase the system and software design is prepared from the requirement specifications which were studied in the first phase.


System Design helps in specifying hardware and system requirements and also helps in defining overall system architecture.


The system design specifications serve as input for the next phase of the model. In this phase testers come up with the test strategy, where they mention what and how to test.


3) Implementation / Coding

On receiving system design documents, the work is divided in modules/units and actual coding is started.


Since, in this phase the code is produced so it is the main focus for the developer.


This is the longest phase of the software development life cycle.


4) Testing

After the code is developed it is tested against the requirements to make sure that the product is actually solving the needs addressed and gathered during the requirements phase.


During this phase all types of functional testing are performed, reported, tracked, fixed and retested (e.g):

  • Unit testing - individual units of source code, sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures, are tested to determine whether they are fit for use.

  • Integration testing - modules are combined and tested as a group

  • System testing - testing conducted on a complete integrated system to evaluate the system's compliance with its specified requirements.

  • Acceptance testing - Formal testing with respect to user needs, requirements, and business processes conducted to determine whether or not a system satisfies the acceptance criteria and to enable the user, customers or other authorized entity to determine whether or not to accept the system.

  • Non-functional testing - testing of a software application or system for its non-functional requirements: the way a system operates, rather than specific behaviors of that system.

5) Deployment

After successful testing the product is delivered / deployed to the customer for their use.


As soon as the product is given to the customers they will first do the beta testing. If any changes are required or if any bugs are caught, then they will report it to the engineering team.


Once those changes are made or the bugs are fixed then the final deployment will happen.


6) Maintenance

Once the customers start using the developed system then the actual problems come up and need to be solved from time to time.


This process where the care is taken for the developed product is known as maintenance.

Recent Posts

See All

Source Control

Source Control allows you to track certain files over time. If you mess up or delete something you need back you can always return to a...

Commenti


bottom of page