SLDC Model
Waterfall Model
Linear-sequential life cycle model. It is simple to understand and use. In this model, each phase is completed before starting the next phase.
Advantage:
· Allows for departmentalization
· Simple and easy
· Easy to manage
· Phases are completed one at a time
· Works well for smaller projects
Disadvantage:
· Do not allow going back once the stage is completed
· It is difficult to state all the requirements explicitly at the start
· Difficult to implement the complex project
· Problem detected at the deployment stage, at that time it was too late.
V-shape Model
The process is executed in a sequential manner in V-shape. We called as a Verification & validation model. This model is based on the association of a testing phase in each phase. The next phase starts only after completing the previous phase.
Advantage:
· Simple and easy to use
· Testing activity happens well before coding
· Proactive defect tracking
· Avoids the downward flow
· Worka well for a small project
Disadvantage:
· During implementation, no early prototype of the software was produced.
· Do any changes during the development, should update all documents.
Spiral Model
Combines the idea of interactive development with the systematic control aspect of the waterfall model. This model is a combination of an interactive development process model and a sequential linear development model.
Advantage:
· Additional changes or functions can be addCost estimation becomes easy
· Continuous or repeated development
· Have space for customer feedback
Disadvantage:
· Risk not meeting on schedule or budget
· Work for large projects (demand risk assessment)
· Protocol needs to follow strictly
· Documentation is more
Agile Model
Advantages:
· More Effectively
· Improved customer engagement
· Increase productivity
· Visibility
· Agree on a clear definition
Disadvantage:
· Large software deliverable is difficult to assess.
· Lack of emphasis on necessary designing and documentation
· Only senior developers can take the decisions while in the development phase.
RAD Model
A software development process based on prototyping without any specific planning. The functional modules are developed in parallel as prototypes. This model follows the iterative and incremental model
Business model — The product is under development is designed in terms of the flow of information and the distribution of information between various business channels.
Data Modelling — Information gathered in the business modelling phase is reviewed and analyzed from a set of data objects vital for the business. Attributes of all data sets are identified and defined.
Process Modelling — data object set defined in the data modelling phase is converted to establish the business information flow. Need to achieve specific business objectives.
Application Modelling — The actual system is built and coding is done by using automation tools to convert process and data models
Testing and Trunover — the overall testing time.
Use of RAD Application:
· RAD should use only when a system can be modularized
· It should be used if there is high availability of designers for modelling
· Use only if the budget permits the use of automation code-generating tools.
· Choose only domain expert persons
· When requirements change during the project.
Advantage:
· The changing requirement can be accommodated
· Progress can be measured
· Iteration time can be short
· Reducing development time
· Encourage customer feedback
Disadvantage:
· The technical strong team required
· Requires highly skilled developers and designer
· High dependency on Modelling skills.
Management complexity is more.