Вы находитесь на странице: 1из 7

ASSIGNMENT-1 (SE)

MODELS:

WATERFALL MODEL:

Sometimes also called as the classic life cycle, this model suggests a systematic,
sequential approach to software development that begins with customer specification of
requirements and progresses through planning, modeling, construction, and deployment,
culminating in on-going support of the completed software. Here the phases are
organized in linear order.

Below is the diagrammatic description of how the waterfall model works

ADVANTAGES:

1. Its main advantage is its simplicity. It divides the large task of building a software
system into a series of cleanly divided phases, each phase dealing with a separate logical
concern..

2. Linear ordering of activities helps to clearly identify the end of a phase and the
beginning of the next.

LIMITATIONS:

1. Its linear nature leads to problem of “blocking states” in which some team members
must wait for other team members of the team to complete dependent tasks.
2. It is often difficult for the customer to state all the requirements explicitly. So if new
changes need to be made according to changed user requirements then we need to restart
the whole process starting from the first phase.

ITERATIVE MODEL:

It combines the elements of the waterfall model applied in an iterative fashion. The basic
idea is that the software should be developed in increments, each increment adding some
functional capability to the system until the full system is implemented.

ADVANTAGES:

1. At each step extensions and design modifications can be made.

2. It can result in better testing because testing each increment is likely to be easier than
testing the entire system.

3. No blocked states here.

RAPID APPLICATION DEVELOPMENT MODEL:

The RAD model is a “high-speed” adaptation of waterfall model,in which rapid


development is achieved by using a component based construction approach…it helps to
create a fully functional system within a very short time period ,if the requirements are
well understood …

ADVANTAGES:

1. It is very fast as compared to the waterfall model.

LIMITATIONS:

1. Cannot be used if high performance is considered.

2. If customers and developers are not committed then the project may fail.
3. It is not appropriate to use this model when technical risks are high.

EVOLUTIONARY MODELS

Such models are iterative in nature. They are characterized in a manner that enables
software engineers to develop increasingly more complete versions of the software

PROTOTYPE MODEL:

The basic idea here is that instead of freezing the requirements before any design or
coding can proceed,a throwaway prototype is built to help understand the requirements…
a prototype is built based on the currently known requirements..

ADVANTAGES:

1. Well suited for projects where requirements are hard to determine and the confidence
in the stated requirements is low..

2. It helps reduce risks involved with the systems

3. Modifications can easily be introduced

LIMITATIONS:

1. It is feared that developmental costs may become large

2. Developer often makes implementation compromises in order to get a prototype


working quickly so quality may suffer.
SPIRAL MODEL:

Activities in this model can be arranged like a spiral that has many cycles..each cycle in a
spiral begins with the identification of objectives for that cycle,the different alternatives
that are possible for achieving the objectives and the constraints that exist..this model
couples the iterative nature of prototyping with the controlled and systematic aspects of
the waterfall model
LIMITATIONS:

1. It may be difficult to convince customers that the evolutionary approach is


controllable. It demands considerable risk assessment expertise and relies on this
expertise for success. If a major risk is not uncovered and managed, problems will occur.

COMPARISON OF DIFFERENT MODELS AND PROJECTS


WHERE THEY ARE USED :
STRENGTHS WEAKNESSES TYPES OF PROJECTS

Waterfall • All or nothing • For well


approach understood
• Simple problems, short
• Requirements frozen duration project,
• Easy to execute early automation of
existing manual
• Intuitive and logical • Disallows changes systems.
• Cycle time too long

• May choose
outdated hardware
technology

• User feedback not


allowed

• Encourages req.
bloating

Prototyping • Front heavy process • Systems with


novice users
• Helps in • Possibly higher costs
requirements • When uncertainties
• Disallows later in requirements
elicitation
changes
• Reduces risk • When UI very
important
• Leads to a better
system

Iterative • Each iteration can • For businesses


have planning where time is of
• Regular/quick overhead essence
deliveries
• Cost may increase as • Where risk of a
• Reduces risk work done in one long project cannot
iteration may have to be taken
• Accommodates be undone later
changes • Where
• System architecture requirements are
• Allows user feedback and structure may not known and will
suffer as frequent be known only with
• Allows reasonable changes are made time
exit points
• Avoids req. bloating

• Prioritizes
requirements

Вам также может понравиться