Home | BA-Interview-Questions  | Jobs | Resumes  | BA-Dictionary | Contact | Privacy Policy

 

Resources:

..

 

..

aa

 

SDLC software development life cycle

 

SDLC Process and methodologies 

SDLC or software development life cycle is the complete processes involved in the development of the software application. Generally, the software development life cycle follows broadly the steps as described :

a) Project Initiation

This is the stage where the initial feasibility of the project is done with the stakeholder management and actually laying the foundation of the software project.

b) Requirements Analysis

This is the stage where the stakeholder needs are analyzed, structured and documented.

c) Software Design

The requirements captured in the previous phase are converted into a viable solution design by the analyst and the solutions team.

d) Development or Coding

The actual programming or coding of the project happens in this stage and its essential that the actual requirements have been frozen.

e) Testing

This stage involves the various testing phases such as unit, integration, system , regression testing. The final acceptance testing is done by the users so as to test that there are no gaps in the requirements they signed off and the final delivery.

f) Deployment and support

This is final “go live” stage of the project where the system is deployed on client site and maintenance and support of the system is provided for a  previously agreed upon period of time.

 There are various SDLC methodologies which have developed over the past and guide us through the software development life cycles. The major SDLC methodologies are :

a) Waterfall method – this is the original model of SDLC and was one of the most widely used systems development process till the more advances software methodologies came up. Its still used in many major software projects and as with any other methodologies has its pros and cons. It is beloved to be very rigid in its structure and is believed not to have a very client friendly approach. A diagrammatically waterfall model is depicted with its different phases given in Fig A.

 Fig A – Waterfall Model(Original SDLC)

 b) Rapid Application development (RAD) – To counter the traditional, non agile software development processes, RAD was brought forward which involves iterative development and more interaction with the client at all stages of the project life cycle.

c) Prototyping Model – This model even though not very popular is a very useful methodology especially to the client. This is because it involves the presentation of a simplified prototype of the system based on the requirements gathered and analysed. So, based on the client's feedback on the prototype the rest of the software development process takes place.

d) Spiral model  - its an amalgamation of the waterfall and the prototyping method, in which after an initial version of the prototype is evaluated by the customer and the next version is developed. Each iteration in between follows the phases of the waterfall model.

 Usually, a hybrid of these SDLC methodologies are also used as they are the best fit for the success of the software project. Depending upon the project time lines, cost and customer expectations, the SDLC methodology should be selected as each methodology has its own advantages and disadvantages.

 

 

photo