Project Manager Interview - Software Development Life Cycles

2/07/2011 No Comment

System Development Life Cycle Questions in a Project Manager Interview.

Explain in detail the different software development life cycles which you have used in projects.
Answer :  This is one of the most important questions for someone appearing for a Project Manager's interview. Its good to prepare for it before hand so that you remember all the models and their pros and cons. You may even be asked about the type of model you followed in your project.

SDLC (System Development Life Cycle) is a comprehensive process of developing software and information systems through multiple process and systems from investigation and analysis of initial business requirements , design of the software, coding, deployment and implementation, support and maintenance. In olden days, when softwares were not so complex even a 
COBOL programmer used to do everything right from analyzing, testing and implementing the software systems. But now a days the systems and softwares have become complex, that a huge team is required for every task and different set of people like architects and designers, business analyst, programmers, testing professionals, and even end users. As such for management, a number of SDLC models have been created so that processes can be defined at each stage of the project.

Some of the most popular models are cited below.  

Water Fall Model

One of the oldest model model used in Software and IT industry.  Still widely popular and in use. Its a design process having sequence of stages; and output of one stage becomes input for the other step.
  • Requirements Gathering : This is the first and the most essential stage of software engineering where the end user and other stakeholders requirements are gathered and documented. In this model, most of the requirements are gathered before the project begins. The system and software requirements are captured in a product requirements document.
  • System Design : The requirements gathered from the first stage are analyzed and a detail design is created. The detail requirements, screen layout, business processes, logic and rules, process diagram, pseudo code, database schema and other documentations are prepared. The overall architecture is also defined in this stage
  • Coding : 30-40% of the time is spend on coding. One of the most critical part, coding is done to implement the actual requirements based on the design documents 
  • Integration and Testing: - All pieces of software that are created are brought together and tested. Bugs and errors are itentified and are removed in this phase. 
  • Acceptance, Installation and Deployment: - This is final stage of the software engineering process where software developed is put in production environment and delivered to business
  • Support and Maintenance: - This is the last phase which runs forever till the software is not replaced by an entirely new one. Change in code, correction, modifications, addition of new features etc are done in this phase which comes in the form of Change Request (CR) to the maintenance team. Require maintenance and deployment activities for new releases are very common.
Though waterfall model is very preferred choice in creating software systems, yet it is limited to software which are of low risk in performance requirements, but high risk in budget and schedule predictability and control. One of the main drawback of waterfall is that it it doesn't allow much of reflection or revision, it assumes that all requirements are clear and fixed and can be gathered in advance, which unfortunately is not the case as requirement grows and changes through various stages of the project.

Spiral Model 

Spiral Model tried to address some of the drawback of waterfall model, by providing emphasis to go back and forth to the earlier stages of the process as the project progresses. Going back and reiterate earlier stages for a number of times helps to overcome the rigid nature of waterfall model. Viewed from a higher level, this model is nothing but a series of short waterfall cycles, each producing an early prototype representing a part of entire project. This is done by creating Proof of Concept (POC) at the early stage of the software development life cycle. 

Incremental Build Model 

This is another software development process where we divide products into builds,  where the product is designed, tested and implemented incrementally. This model combines some of the elements of waterfall model in a incremental manner. After each build regression testing is carried out, and as such errors can be easily found out and fixed. Also, since it is easier to debug and test, it results in quicker delivery in much lesser costs. However, it is not at all suitable for complex software designs.

Rapid Prototyping Model

One of the most commonly used software development process, this model is also called as Rapid Application Development. Int the initial stage emphasis is given on creating a prototype that looks and acts like the desired product which enables to understand the customer requirements at a very early stage of development, thus leading to faster development. Once customer/business approves the prototype,  the actual software development process starts from scratch. Since the prototype doesn't hold the actual logic, sometimes the prototype moves ahead to become the final product not meeting the actual requirements and this can be considered bad from design point of view. As also the cost is high as there are lot of efforts to build the prototype.

Build and Fix Model 

The build and fix model also known as "Ad-hoc" model is the most way free-lancers work. The software is build without any specifications or formal design. The idea is to write some code and keep modifying it until the customer is satisfied with it. It is very good approach for small portfolio, personal websites or desktop software, but for even mid-size software it can be considered very dangerous and risky. As such, in IT and software industry, developers are asked to stay away from this model.

No comments :

 

Aired | The content is copyrighted and may not be reproduced on other websites. | Copyright © 2009-2016 | All Rights Reserved 2016

Contact Us | About Us | Privacy Policy and Disclaimer