Thursday, 13 February 2014

Basic Questions & Answers on SDLC

BASIC SDLC QUESTIONS AND ANSWERS

01.Q) What is SDLC?
A) In full SDLC is System Development Life Cycle. It is a process used by Software Professionals to create, modify or maintain software systems. It mainly defines the models and methodologies that is commonly used to develop these systems.

02.Q) What are the benefits of using SDLC?
A) Using SDLC properly should result in following benefits for Software systems.
        - A high quality system.
        - Meets or exceeds customer expectations.
        - Timely completion.
        - Complete within estimated budget.
        - Effective and efficient working system.
        - Inexpensive to maintain.
        - Cost-effective to enhance

03.Q) What are the different phases of SDLC?
A) Major phases of SDLC could be defined as 
         - Initiation
         - Feasibility
         - Requirements Collection
         - Design
         - Development
         - Verification
         - Maintenance and Review

04.Q) Explain Initiation and Feasibility phase.
A) The Objective of Initiation and feasibility is to 
         - Perform Initial Analysis
         - Explore alternate solution
         - Define costs and benefits
         - Propose preliminary plan

05.Q) Explain Requirement Collection phase.
A) Generally the following things are done in Requirement collection phase.
         - Problem Definition
         - Analyze current System
         - Focus on decision and related information need
         - Define Business Functionality
         - Define Requirements
         - Plan for training and user acceptance.

06.Q) Explain Design phase.
A) In Design phase the following things are generally being done.
         - Detailed Project Plan
         - Business needs
         - Logical Design
         - Business functions and rules
         - Overall Architecture
         - Process diagrams and other documentations
         - Database design
         - Other system interactions
         - Screen layouts
         - Hardware Procurement's
         - Overall testplans

07.Q) Explain the Development phase.
A) Generally following things are being done under Development phase.
         - More detailed design
         - Actual code development
         - Unit test is prepared and tested.
         - Test case preparation

08.Q) Explain Verification phase.
A) Following things are being done in Verification Stage
         - Verification test
         - Stress test
         - User Acceptance test
         - Security test

09.Q) Explain Maintenance and Review phase.
A) Following steps are being done under Maintenance and Review phase.
         - Process Review
         - Lessons Learned
         - Bug Fixing
         - Scheduled Maintenance
         - Enhancements

10.Q) What are the different Software development methods?
A) These are some of the most common development methodologies:
         - Waterfall
         - Prototyping
         - Spiral
         - Rapid Application Development

11.Q) What is Waterfall model?
A) Waterfall model is a simple and most common process model. It has following characteristics.
         - Sequential process model
         - Process resembles a waterfall
         - Progress of different phases moves downwards.
         - A phase completes before starting next phase.
         - 1st engineering approach of software development.
         - Organized and step by step development

12.Q) What are the different phases of waterfall method?
A) Different phases of waterfall models are 
         - Conception
         - Analysis & Design
         - Construction
         - Testing
         - Production/ Implementation
         - maintenance

13.Q) What is Prototyping model of Software development?
A) Prototype model is a method of developing software or part of a software by developing prototype first. It has following characteristics.
         - Develop Prototype first approach
         - Used to reduce risk
         - Gives early feel of what end product might be.
         - Not a complete development model

14.Q) What are the advantages of prototype model?
A) There are several advantages of Prototype model.
         - Early feel to end users.
         - Reduces risk by prototypes risky modules first
         - End users are most involved
         - Could help understand complications
         - Used to collect feedback
         - Used to collect requirements

15.Q) What are the disadvantages of Prototypes?
A) The disadvantages of prototype model:
         - Developed prototypes could be completely discarded.
         - Not a complete software model
         - No strict plans are involved.
         - Takes away development time.
         - Too much client interaction might reduce focus
         - Risk of scope creep

16.Q) What is spiral model?
A) Spiral model is a mix of Waterfall and prototype model. It attempts to benefit from both. Software development could be visualized as a spiral progression through 4 quadrants.
         - Analysis
         - Evaluation
         - Development
         - Planning
It has the following characteristics.
         - Project is broken down into smaller segments.
         - Smaller segments are easy to change.
         - Easier to evaluate risk and evaluate alternatives.
         - Each cycle progress in same series of steps.

17.Q) What is Rapid Application Development?
A) The basic approach for Rapid Application development is to develop software using iterations. It stresses mainly on delivering production quality software in short iterations.
These are other key characteristics of this methodology:
         - Quick delivery
         - High quality product
         - Reduces Project risk by handling risky modules earlier
         - Each iteration has all the phases (requirement, design, development, testing and release)
         - High user involvement
         - Low cost

No comments: