What is the life cycle model used for the development?



What is the life cycle model used for the development?..

Answer / kuldeep

there many modela for software development.
some of them is mentioned below:


Software Development Life Cycle Models

1>The General Model:

Software life cycle models describe phases of the software
cycle and the order in which those phases are executed.
There are tons of models, and many companies adopt their
own, but all have very similar patterns. The general, basic
model is shown below:
General Life Cycle ModelGeneralModel

Each phase produces deliverables required by the next phase
in the life cycle. Requirements are translated into design.
Code is produced during implementation that is driven by
the design. Testing verifies the deliverable of the
implementation phase against requirements.

Requirements

Business requirements are gathered in this phase. This
phase is the main focus of the project managers and stake
holders. Meetings with managers, stake holders and users
are held in order to determine the requirements. Who is
going to use the system? How will they use the system?
What data should be input into the system? What data should
be output by the system? These are general questions that
get answered during a requirements gathering phase. This
produces a nice big list of functionality that the system
should provide, which describes functions the system should
perform, business logic that processes data, what data is
stored and used by the system, and how the user interface
should work. The overall result is the system as a whole
and how it performs, not how it is actually going to do it.

Design

The software system design is produced from the results of
the requirements phase. Architects have the ball in their
court during this phase and this is the phase in which their
focus lies. This is where the details on how the system
will work is produced. Architecture, including hardware and
software, communication, software design (UML is produced
here) are all part of the deliverables of a design phase.

Implementation

Code is produced from the deliverables of the design phase
during implementation, and this is the longest phase of the
software development life cycle. For a developer, this is
the main focus of the life cycle because this is where the
code is produced. Implementation my overlap with both the
design and testing phases. Many tools exists (CASE tools)
to actually automate the production of code using
information gathered and produced during the design phase.

Testing

During testing, the implementation is tested against the
requirements to make sure that the product is actually
solving the needs addressed and gathered during the
requirements phase. Unit tests and system/acceptance tests
are done during this phase. Unit tests act on a specific
component of the system, while system tests act on the
system as a whole.

So in a nutshell, that is a very basic overview of the
general software development life cycle model. Now lets
delve into some of the traditional and widely used variations.



2>Waterfall Model:

This is the most common and classic of life cycle models,
also referred to as a linear-sequential life cycle model.
It is very simple to understand and use. In a waterfall
model, each phase must be completed in its entirety before
the next phase can begin. At the end of each phase, a
review takes place to determine if the project is on the
right path and whether or not to continue or discard the
project. Unlike what I mentioned in the general model,
phases do not overlap in a waterfall model.
Waterfall Life Cycle ModelWaterFallModel

Advantages

* Simple and easy to use.
* Easy to manage due to the rigidity of the model ? each
phase has specific deliverables and a review process.
* Phases are processed and completed one at a time.
* Works well for smaller projects where requirements are
very well understood.

Disadvantages

* Adjusting scope during the life cycle can kill a project
* No working software is produced until late during the
life cycle.
* High amounts of risk and uncertainty.
* Poor model for complex and object-oriented projects.
* Poor model for long and ongoing projects.
* Poor model where requirements are at a moderate to
high risk of changing.



3>V-Shaped Model

Just like the waterfall model, the V-Shaped life cycle is a
sequential path of execution of processes. Each phase must
be completed before the next phase begins. Testing is
emphasized in this model more so than the waterfall model
though. The testing procedures are developed early in the
life cycle before any coding is done, during each of the
phases preceding implementation.

Requirements begin the life cycle model just like the
waterfall model. Before development is started, a system
test plan is created. The test plan focuses on meeting the
functionality specified in the requirements gathering.

The high-level design phase focuses on system architecture
and design. An integration test plan is created in this
phase as well in order to test the pieces of the software
systems ability to work together.

The low-level design phase is where the actual software
components are designed, and unit tests are created in this
phase as well.

The implementation phase is, again, where all coding takes
place. Once coding is complete, the path of execution
continues up the right side of the V where the test plans
developed earlier are now put to use.
V-Shaped Life Cycle ModelVShapedModel

Advantages

* Simple and easy to use.
* Each phase has specific deliverables.
* Higher chance of success over the waterfall model due
to the development of test plans early on during the life cycle.
* Works well for small projects where requirements are
easily understood.

Disadvantages

* Very rigid, like the waterfall model.
* Little flexibility and adjusting scope is difficult
and expensive.
* Software is developed during the implementation phase,
so no early prototypes of the software are produced.
* Model doesn?t provide a clear path for problems found
during testing phases.



4>Incremental Model

The incremental model is an intuitive approach to the
waterfall model. Multiple development cycles take place
here, making the life cycle a ?multi-waterfall? cycle.
Cycles are divided up into smaller, more easily managed
iterations. Each iteration passes through the requirements,
design, implementation and testing phases.

A working version of software is produced during the first
iteration, so you have working software early on during the
software life cycle. Subsequent iterations build on the
initial software produced during the first iteration.
Incremental Life Cycle ModelSpiralModel

Advantages

* Generates working software quickly and early during
the software life cycle.
* More flexible ? less costly to change scope and
requirements.
* Easier to test and debug during a smaller iteration.
* Easier to manage risk because risky pieces are
identified and handled during its iteration.
* Each iteration is an easily managed milestone.

Disadvantages

* Each phase of an iteration is rigid and do not overlap
each other.
* Problems may arise pertaining to system architecture
because not all requirements are gathered up front for the
entire software life cycle.



5>Spiral Model

The spiral model is similar to the incremental model, with
more emphases placed on risk analysis. The spiral model has
four phases: Planning, Risk Analysis, Engineering and
Evaluation. A software project repeatedly passes through
these phases in iterations (called Spirals in this model).
The baseline spiral, starting in the planning phase,
requirements are gathered and risk is assessed. Each
subsequent spirals builds on the baseline spiral.

Requirements are gathered during the planning phase. In the
risk analysis phase, a process is undertaken to identify
risk and alternate solutions. A prototype is produced at
the end of the risk analysis phase.

Software is produced in the engineering phase, along with
testing at the end of the phase. The evaluation phase
allows the customer to evaluate the output of the project to
date before the project continues to the next spiral.

In the spiral model, the angular component represents
progress, and the radius of the spiral represents cost.

Spiral Life Cycle ModelSpiralModel

Advantages

* High amount of risk analysis
* Good for large and mission-critical projects.
* Software is produced early in the software life cycle.

Disadvantages

* Can be a costly model to use.
* Risk analysis requires highly specific expertise.
* Project?s success is highly dependent on the risk
analysis phase.
* Doesn?t work well for smaller projects.

Is This Answer Correct ?    8 Yes 2 No

Post New Answer

More HR Questions Interview Questions

how many languages do you know?

0 Answers   Nabard,


If you have to go to onsite, how will you communicate with people there?

0 Answers   Amazon,


Suppose U solve a problem and after that U are getting an almost same problem with high complexity (and lower complexity). How will U approach to the next problem.

0 Answers   Honeywell,


describe yourself in one word

0 Answers   EXL,


What qualifications do you have that make you think that you will be successful in this career?

0 Answers   Tech Mahindra,






Tell me two things which you liked about your university or college?

0 Answers   Blue Star,


Have you considered starting your own business?

0 Answers   Cisco,


Is there any quarrel in ur team how would you handle it?

10 Answers   CTS, HCL,


You've been with your firm a long time. Won't it be hard switching to a new company?

1 Answers  


At Apple we like to hire those who are natural leaders. When have you taken on a leadership task in the workplace without being asked?

0 Answers   Apple,


tell us about your qualification?

0 Answers   IBPS,


What salary are you seeking at Under Armour?

0 Answers   Under Armour,


Categories