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

1

MINI PROJECT ON
DIFFERENT SOFTWARE LIFE CYCLE MODELS



SUBMITTED BY: SUBMITTED TO:
ALOK PANDIT MISS SANDEEP KAUR
11005100
CSE 309
K2001
B21


2

TABLE OF CONTENT

INTRODUCTION
OBJECTIVE
MODULES
SYSTEM REQUIREMENTS
APPLICATIONS
DESIGN
SOURCE CODE
SNAPSHOTS
LEARNING OUTCOMES
CONCLUSION








3

INTRODUCTION
A software life cycle model (also called process model) is a descriptive and diagrammatic
representation of the software life cycle. A life cycle model represents all the activities required
to make a software product transit through its life cycle phases. It also captures the order in
which these activities are to be undertaken. In other words, a life cycle model maps the
different activities performed on a software product from its inception to retirement. Different
life cycle models may map the basic development activities to phases in different ways. Thus,
no matter which life cycle model is followed, the basic activities are included in all life cycle
models though the activities may be carried out in different orders in different life cycle
models. During any life cycle phase, more than one activity may also be carried out. For
example, the design phase might consist of the structured analysis activity followed by the
structured design activity.
SDLC consists of following activities:
1. Planning: The most important parts of software development, requirement gathering or
requirement analysis are usually done by the most skilled and experienced software
engineers in the organization. After the requirements are gathered from the client, a scope
document is created in which the scope of the project is determined and documented.
2. Implementation: The software engineers start writing the code according to the client's
requirements.
3. Testing: This is the process of finding defects or bugs in the created software.
4. Documentation: Every step in the project is documented for future reference and for the
improvement of the software in the development process. The design documentation may
include writing the application programming interface (API).
5. Deployment and Maintenance: The software is deployed after it has been approved for
release.
6. Maintaining: Software maintenance is done for future reference. Software improvement
and new requirements (change requests) can take longer than the time needed to create
the initial development of the software.
4

Different software life cycle models :
Many life cycle models have been proposed so far. Each of them has some advantages as well
as some disadvantages. A few important and commonly used life cycle models are as follows:
Classical Waterfall Model
Iterative Waterfall Model
Prototyping Model
Evolutionary Model
Spiral Model

OBJECTIVE
The development team must identify a suitable life cycle model for the particular project and
then adhere to it. Without using of a particular life cycle model the development of a software
product would not be in a systematic and disciplined manner. When a software product is being
developed by a team there must be a clear understanding among team members about when
and what to do. Otherwise it would lead to chaos and project failure. This problem can be
illustrated by using an example. Suppose a software development problem is divided into
several parts and the parts are assigned to the team members. From then on, suppose the
team members are allowed the freedom to develop the parts assigned to them in whatever
way they like. It is possible that one member might start writing the code for his part, another
might decide to prepare the test documents first, and some other engineer might begin with
the design phase of the parts assigned to him. This would be one of the perfect recipes for
project failure.
A software life cycle model defines entry and exit criteria for every phase. A
phase can start only if its phase-entry criteria have been satisfied. So without software life cycle
model the entry and exit criteria for a phase cannot be recognized. Without software life cycle
models (such as classical waterfall model, iterative waterfall model, prototyping model,
evolutionary model, spiral model etc.) it becomes difficult for software project managers to
monitor the progress of the project.
5

MODULES
Modules covered in this mini project are :
Classical Waterfall Model
Iterative Waterfall Model
Prototyping Model
Evolutionary Model
Spiral Model

SYSTEM REQUIREMENTS
Operating system: MS Windows XP or Windows Vista or Windows 7
Language: C Language
Processor: Pentium IV Processor or Core2Duo
RAM: 512 MB
Hard disk: 5 GB
Software: Turbo C compiler

APPLICATIONS
The SDLC or Systems Development Life Cycle is any conceptual method being used in a project
management. Working with SDLC involves not only the study and maintenance, but also the
processes in between like development of different applications.
When to use the Waterfall Model
Requirements are very well known
6

When it is possible to produce a stable design
E.g. a new version of an existing product
E.g. porting an existing product to a new platform.

Iterative waterfall model
most widely used model.
But, suitable only for well-understood problems.

Prototype model is suitable for projects not well understood:
user requirements
technical aspects

Evolutionary model is suitable for large problems:
can be decomposed into a set of modules that can be incrementally
implemented,
incremental delivery of the system is acceptable to the customer.

The spiral model:
suitable for development of technically challenging software products that are
subject to several kinds of risks.



7

DESIGN
Classical Waterfall Model

Iterative Waterfall Model

8

Prototyping Model



Evolutionary Model



9

Spiral Model









10


LEARNING OUTCOMES
switch switch ( <expression> ) <statement>. Causes control to branch to one of a list of
possible statements in the block defined by <statement>.
case - The list of possible branch points within <statement> is determined by preceding sub
statements with case <constant expression> : where <constant expression> must be an int
and must be unique.
rectangle Draws a rectangle (graphics mode).
Declaration: void far rectangle(int left, int top, int right, int bottom);
line line draws a line between two specified points.
Declaration: void far line(int x1, int y1, int x2, int y2);
outtextxy outtextxy displays a string at the specified location (graphics mode).
Declaration: void far outtextxy(int x, int y, char far *textstring);
setcolor setcolor sets the current drawing color.
Declaration: void far setcolor(int color);
arc arc draws a circular arc.
Declaration: void far arc(int x, int y, int stangle, int endangle, int radius);
settextstyle Sets the current text characteristics.
Declaration: void far settextstyle(int font, int direction, int charsize);
circle circle draws a circle
Declaration: void far circle(int x, int y, int radius);

11


CONCLUSION
All software development life cycle models share common phases of development:
gathering of requirements, designing of the software system, coding of software, and the
testing of the system. The Waterfall life cycle model is one of the simplest and easiest to use; it
consists of five discrete phases that are executed sequentially. The Incremental life cycle model
applies a series of iterations to the Waterfall model. The Spiral life cycle model builds upon the
Waterfall and Incremental models and focuses on risk analysis.