software development life cycle
DESCRIPTION
Its a research paper on software systemsTRANSCRIPT
Software Development Life Cycle
Abstract- In recent times software maintaining ability is
the main ongoing business issue in large scale
applications which is been focused adequately during
software development process in order to minimize the
time for completion. Inclusion of the features targeting
for maintainability features in the software application
during its development can scrutinize the efforts in real
time use. Software Development Life Cycle is a well-
defined and approach which is being practices towards
the development of a high scale software system. This
paper will provide set of activities and practices for
people involved in planning, architecting , coding and
testing and maintenance software development
applications. This deals with five of those models namely
Waterfall model, Iterative model, V-shaped model, Spiral
model, agile model. This paper also studies one of the
existing SDLC model and prove with statistical results
that proposed new SDLC model is capable of building
maintainable application.
1. INTRODUCTION
Maintainability refers to as the measure that would ease
and speed up with which a system process can be restored
to operational status after a failure. Generally the process
of building any computer software and information
systems has been always challenged by different
development methodology refers to the framework that is
used to plan , manage and control process of developing
an information system. Over the last few decades to
improve software quality, with varying degree of success
various process and methodologies have been evolved.
But not even a single approach that will prevent project
over runs failures in all cases. The branch of software
engineering(SE) has been evolved as the application of a
quantifiable, disciplined, systematic, to the development
maintenance of software and the study of these
approaches. The application of engineering to software as
it integrates significant computer science, mathematics
and practices which have roots in engineering. A software
development process is a structured development of a
software product. It basically provides Information
Technology(IT) managers with the tools to help ensure
successful implementation of systems or applications that
satisfy strategic and business objectives. The
documentation provides a mechanism to ensure that
executive leadership, managers and user sign- off on the
requirements and implementation of the system. The
process provide management with the capability of design,
develop and implement your intended system and ensure
that its completed on time delivery and within proposed
budget. SDLC is a process that is used by a system analyst
for developing an system, including requirements,
validation, training, and ownership. An SDLC is a high
quality system that meets or exceeds customer
expectation that will reach be completed within the time
and cost estimates, works effectively and precisely
planned Information Technology infrastructure that is
inexpensive for maintaining and cost- effective.
There are various stages in the Software Developmet Life
Cycle like.
1. Project Planning
2. Requirement definition
3. Design
4. Development
5. Test
6. Installation & Acceptance
It is a step by step procedure with output form a
specific page acts as the initial input for the following
stage.
2. HISTORY
The history of “System Development Life Cycle” came into
existence in an imprecisely way since 1960 where
developers started to create programs for specific needs.
Initially the term has been observed by different software
development companies like format of planning, building,
testing and implementing, software companies have
developed their own version of developing specific
products for their clients for each version of software
development is called “Model’.
The Data processing group consisted of a small tight group
of programmers who could easily communicate with each
other with minimal tools to develop software applications.
In last 15 years, many other affected the IT culture that
demand stringent methodologies. Newlaws such as the
Sarbanes-Oxley Act of 2002 were created by Congress in
response to major corporate and accounting scandals that
cost investors billions of dollars. Now, they literally are
involved in every aspect of Information Technology IT
security and compliances with good practices and COBIT
(Control Objectives for Information and related
Technologies) are now a very serious and almost
dominating factor in all IT decision-making. Many
companies now spend considerable monies and resources
on IT Governance the catchword for this effort. These
developments can be applied in various situations to
ensure product created should succeed for various
applications. (SDLC forms, n.d.)
3. STAGES
1. Planning and requirement analysis: It is the first
stage in SDLC. Usually performed by a senior member
of the team with inputs from customers, sales
department and experts. Planning for the sake of
quality and identification requirements of risks
associated with the project is completed in this
phase. The technical outcome is to define the various
technical approaches that should be followed to
implement the project with minimum risks and a
successful one.
2. Defining Requirements: In this phase various
needs of the company are outlined. The higher
authority and users make their list of things to be
completed by software in time. Analysts conquer
questions about the intended use of software for
various applications ad kind of data that can be
processed, Steps for as the data to be handled by
software and how the data can be accessed in system
once.
After the requirements phase the software
should have a detailed list of functions that the
system can perform. Developers will use either a
specific language to create a software or they could
use available one. They determine the technical
requirements in building the software. As developers
in this stage create a workflow that will be the basis
of actual design.
3. Design: A software will need to be made based
on the needs and architectural plans designed by
the developers. This differs from other models
where some actually use a specific language
while some use tools without the use of a
language while other models will use the
available components to create a software.
Focus will be on how the ideas of requirements
gathering phase are accomplished, designers
consider different criteria from hardware and
operating systems platform that hosting the
software to the way sub systems will
communicate with each other. Te total emphasis
during this stage is on making a practical,
working design for what has been outlined in the
phase.
4. Development and testing : This the stage where
actual development start and product is built.
The code is generated by DDS in this stage. If the
design is performed in a detailed and well-
structured manner, code generation can be
accomplished without much difficulty.
The main objective is to ensure the
system is working according to the sponsors
requirements. The system components,
communications, applications, procedures and
associated documentation are acquired and
integrated.
5. Implementation: During this phase the enhanced
system is installed in production environment
where users are trained. It is sent through
serious testing before integrating in real
environment. The software is available for
sleected users and gradually opened for public
use but in beta version. A cycle of testing from
“closed beta” to “open beta” will summarize the
capabilities for multiple users. Developers might
look out for bugs and work on them before the
software is integrated on to the system.
6. Maintenance: Routine hardware and software
maintenance upgrade are performed to ensure
effective system operations. User training
continues during this phase to acquaint new
users to system to introduce new features to
current users. Any additional user support is
provided as an ongoing activity to help resolve
problems reported by previous users.
7. Deposition: After some time a pertaining
software will be of no use. A new version
spftware will replace the older one as it may no
longer answer the concern of its users. These are
some of the reasons why a software should be
disposed. Developers will have to inform its
users in advance the discontinuation of support
to the product before disposing. In software
development environment, the disposal phase
usually means another system is in the work to
replace the software to be disposed.
1. Waterfall method: It is one of the oldest and
classical models of software engineering that is
widely used in various major and government
companies for developing various systems. In
this model each phase must be completed
before the starting of next one to avoid
overlapping. It illustrates the software
development process in a linear sequential flow
hencoe called as linear sequential life cycle
method.