SDLC Model(or) Waterfall Method!!!
Printed From: One Stop Testing
Category: Software Testing @ OneStopTesting
Forum Name: Beginners @ OneStopTesting
Forum Discription: New to the Club...!!! Don't Worry, We are here for you...!!! Learn the very basics of Software Testing and other pertinent Informations.
URL: http://forum.onestoptesting.com/forum_posts.asp?TID=2768
Printed Date: 18Jul2025 at 5:02pm
Topic: SDLC Model(or) Waterfall Method!!!
Posted By: tanushree
Subject: SDLC Model(or) Waterfall Method!!!
Date Posted: 11Oct2007 at 12:10am
A. System Development Life Cycle (SDLC) Model
This
is also known as Classic Life Cycle Model (or) Linear Sequential Model
(or) Waterfall Method. This model has the following activities.
1. System/Information Engineering and Modeling
As
software is always of a large system (or business), work begins by
establishing the requirements for all system elements and then
allocating some subset of these requirements to software. This system
view is essential when the software must interface with other elements
such as hardware, people and other resources. System is the basic and
very critical requirement for the existence of software in any entity.
So if the system is not in place, the system should be engineered and
put in place. In some cases, to extract the maximum output, the system
should be re-engineered and spruced up. Once the ideal system is
engineered or tuned, the development team studies the software
requirement for the system.
2. Software Requirement Analysis
This
process is also known as feasibility study. In this phase, the
development team visits the customer and studies their system. They
investigate the need for possible software automation in the given
system. By the end of the feasibility study, the team furnishes a
document that holds the different specific recommendations for the
candidate system. It also includes the personnel assignments, costs,
project schedule, target dates etc.... The requirement gathering
process is intensified and focussed specially on software. To
understand the nature of the program(s) to be built, the system
engineer or "Analyst" must understand the information domain for the
software, as well as required function, behavior, performance and
interfacing. The essential purpose of this phase is to find the need
and to define the problem that needs to be solved .
3. System Analysis and Design
In
this phase, the software development process, the software's overall
structure and its nuances are defined. In terms of the client/server
technology, the number of tiers needed for the package architecture,
the database design, the data structure design etc... are all defined
in this phase. A software development model is thus created. Analysis
and Design are very crucial in the whole development cycle. Any glitch
in the design phase could be very expensive to solve in the later stage
of the software development. Much care is taken during this phase. The
logical system of the product is developed in this phase.
4. Code Generation
The
design must be translated into a machine-readable form. The code
generation step performs this task. If the design is performed in a
detailed manner, code generation can be accomplished without much
complication. Programming tools like compilers, interpreters, debuggers
etc... are used to generate the code. Different high level programming
languages like C, C++, Pascal, Java are used for coding. With respect
to the type of application, the right programming language is chosen.
5. Testing
Once
the code is generated, the software program testing begins. Different
testing methodologies are available to unravel the bugs that were
committed during the previous phases. Different testing tools and
methodologies are already available. Some companies build their own
testing tools that are tailor made for their own development operations.
6. Maintenance
The
software will definitely undergo change once it is delivered to the
customer. There can be many reasons for this change to occur. Change
could happen because of some unexpected input values into the system.
In addition, the changes in the system could directly affect the
software operations. The software should be developed to accommodate
changes that could happen during the post implementation period.
|
|