Monday 7 October 2013

Software Development Life Cycle (SDLC)

Here in this blog I will tell you what is software development life cycle,the phases of software development life cycle and Methods of SDLC.

What is Software Development Life Cycle?

SDLC, Software Development Life Cycle is a process used by software industry to design, develop and test high quality softwares. The SDLC aims to produce a high quality software that meets or exceeds customer expectations, reaches completion within times and cost estimates.

SDLC is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software. The life cycle defines a methodology for improving the quality of software and the overall development process.
There are various software development approaches defined and designed which are used/employed during development process of software, these approaches are also referred as
Software Development Process Models (SDLC MODELS) 
(e.g Waterfall model, V model, Incremental model, Spiral model)

Software life cycle models describe phases of the software cycle and the order in which those phases are executed. Each phase produces deliverables required by the next phase in the life cycle. Requirements are translated into design. Code is produced according to the design which is called development phase. After coding and development the testing verifies the deliverable of the implementation phase against requirements.
There are following six phases in every Software development life cycle model:


  1. Requirement gathering and analysis
  2. Design
  3. Implementation or coding
  4. Testing
  5. Deployment
  6. Maintenance

1) Requirement gathering and analysis
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; Who is going to use the system? How will they use the system?  What data should be input into the system?  What data should be output by the system?  These are general questions that get answered during a requirements gathering phase. After requirement gathering these requirements are analysing for their validity and the possibility of incorporating the requirements in the system to be development is also studied.

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.

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 unit testing, integration testing, system testing, acceptance testing are done.
5)  Deployment: After successful testing the product is delivered / deployed to the customer for their use.
6) Maintenance: Once when the customers starts using the developed system then the actual problems comes up and needs to be solved from time to time. This process where the care is taken for the developed product is known as maintenance.



21 comments:


  1. It is really a great work and the way in which u r sharing the knowledge is excellent.Thanks for helping me to understand basic concepts. As a beginner in software testing your post help me a lot.Thanks for your informative article. software testing Training

    ReplyDelete
  2. hello!!!
    Good Post! Thank you so much for sharing this pretty post, it was so good to read and useful to improve my knowledge as updated one, keep blogging…I really enjoyed reading your blog. I really appreciate your information which you shared with us.
    Software Testing Training in Chennai

    ReplyDelete
  3. Nice information about the software development life cycle. The each phase of the software development life cycle are explained in an easy and understandable manner my sincere thanks for sharing this post
    Software Testing Training in Chennai

    ReplyDelete
  4. Thanks for posting useful information.You have provided an nice article, Thank you very much for this one. And i hope this will be useful for many people.. and i am waiting for your next post keep on updating these kinds of knowledgeable things...Really it was an awesome article...very interesting to read..please sharing like this information..
    selenium training in chennai

    ReplyDelete
  5. It is really a great work and the way in which u r sharing the knowledge is excellent.Thanks for helping me to understand basic concepts.Thanks for your informative article.. Customized School Software | Best School Management System Software | Institute Management Software

    ReplyDelete
  6. Thanks for posting useful information.You have provided an nice article, Thank you very much for this one. And i hope this will be useful for many people.. and i am waiting for your next post keep on updating these kinds of knowledgeable things... Software Testing Training in Chennai | Selenium Training in Chennai

    ReplyDelete
  7. eNvent software Technologies is the trusted IT company in Lucknow. Hire best software developers for providing remarkable custom software development services.

    ReplyDelete
  8. This comment has been removed by the author.

    ReplyDelete
  9. I have read your blog and I gathered some needful information from your blog. Keep update your blog. Awaiting for your next update.

    Software Testing Training in Marathahalli|
    Software Testing Training in Bangalore|

    ReplyDelete
  10. Interesting blog post.This blog shows that you have a great future as a content writer.waiting for more updates... Selenium Training in Chennai | Software Testing Training in Chennai

    ReplyDelete
  11. This is an awesome post.Really very informative and creative contents. These concept is a good way to enhance the knowledge.I like it and help me to development very well.Thank you for this brief explanation and very nice information.Well, got a good knowledge.




    Software Testing Training in Bangalore


    Software Testing Training in BTM Layout


    Software Testing Training in Marathahalli

    ReplyDelete
  12. Those guidelines additionally worked to become a good way to
    recognize that other people online have the identical fervor like mine
    to grasp great deal more around this condition.


    Selenium Training in Chennai

    ReplyDelete

  13. The strategy you have posted on this technology helped me to get into the next level and had lot of information in it... Java Training in Chennai | Blue prism Training in Chennai

    ReplyDelete
  14. Whatever we gathered information from the blogs, we should implement that in practically then only we can understand that exact thing software testing courses for beginners clearly, but it’s no need to do it, because you have explained the concepts very well. It was crystal clear, keep sharing..

    ReplyDelete
  15. This comment has been removed by the author.

    ReplyDelete

Please do not enter any Spam link in the Comment box

Featured post

10 Best Ways to Earn Money from Facebook

10 Best Ways to Earn Money from Facebook Facebook is a household name all over the world. The social networking platform has more than...