SDLC Models:
Based on requirements and need of client we can adopt any one of the following SDLC model to develop application
- Waterfall Model
- Prototype Model
- Incremental Model
- Spiral Model
- RAD Model
- Fish Model
- V- Model
- Agile Model
1. Waterfall Model:
- It is also called as linear sequential waterfall model. It contains all the SDLC phases
- This model is easy to develop application.
- This model is preferable for small application, clear requirements & routine type of projects.
Disadvantages:
- Early stages identifying are not possible due to later stage of testing.
- In this model will not allow any change request during development process
2. Prototype Model:
- It is a sample application without functionality.
- This model is preferable when requirements are not clear to develop application
- In this approach we develop prototype of application based on initial requirements.
- With that prototype we give demo to the customer to collect client satisfactions based on that we develop application.
- If client is not satisfied with our prototype we collect his feedback based on that again we develop new prototype to give demo to client.
- This process will continue until client satisfied then only we develop application.Disadvantages: Prototypes are not reusable that cost has to be done by development team.
3. Incremental Model:
This model is preferable for big application when it is difficult to develop application all at once and when early stages deliverables are expecting by the client.
- In this approach application will developed module by module which are deliver to the client after testing.Whereas 1st module will be core functionality module that will be delivering to the client then we implement other features in next increment to deliver to the customer / client.Disadvantage: It is open ended SDLC model; there is no fixed date to develop whole system.
4. Spiral Model:
This model is applicable for research applications & machinery applications.
In this approach application developed like increment model where as modules are not delivered to the client during development process.
Disadvantage: Time Consuming
5. RAD Model:
This model is preferable when we need to develop application in short span of time like 60 – 90 days. In this approach we use existing pre- defined components from other environment in our application like date field, status bas, fax number, edit box from ActiveX controls.
6. Fish Model:
It provides theoretical mapping between development activities to testing activities.
Verification: It is a process to check correctness and completeness of documents which we prepared in order to develop application
It is a static testing approach (i.e., without execution)
Verification performed on BRS, FRS, Design doc, Test Plan, Test Cases etc.
Verification Techniques are:
- Peer Review
- Walkthrough
- Inspection
Ø Peer Review: It is an informal meeting, where author will deliver document to reviewer to identify any mistakes.
Ø Walkthrough: It is a semi informal meeting, where author will present the document to the reviewer to identify any mistakes in that document.
In this meeting 2 – 3 members will participate.
Ø Inspection: It is a formalized meeting. In these meeting 5-6 members will participate.
In this meeting following members will participate.
Author, Reviewer / Inspector, Presenter, Scribe / Recorder, Moderator
Validation:
It is performed to check developed programs or application correct or not.
It is a dynamic testing approach (i.e., execution / operation is required).
Validation techniques are unit testing, integration testing, functionality testing, performance testing…etc.
7. V – Model:
- V stands for Verification & Validation
- In general we prefer V – Model to develop applications
- This model is preferable for big projects with clear requirements
- In this model testing activities ( i.e., reviews ) will start early stages with development activities
Disadvantages:
This model will not allow dynamic change request during development process.
8. Agile Model:
- This model is suitable to handle dynamic change request.
- In this approach we develop application like incremental model whereas client will closely associates with development team.
- After developing each component / unit / module that will be delivered for testing team and should get approval form client before developing next unit.
- If any change requests are there those will be consider in next unit.
- In agile model we follow XP (Extreme Programming) scrum to develop application.
Disadvantage: It is difficult to schedule different teams.
Case study on SDLC models:
1) Waterfall model : Small applications with clear requirements
2) Prototype Model : Requirements are not clear to develop applications
3) Incremental Model: Complex to develop whole system at once and early stages deliverable's as expected.
4) Spiral Model: For research and machinery applications which we doesn’t know implementation possible or not at early stage
5) RAD Model: Extremely short span of time application need to develop
6) Fish Model: There is no practical method
7) V- model: Big projects with clear requirements
8) Agile Model : Which have the dynamic change requirements
No comments:
Post a Comment