software development life cycle

6
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

Upload: vikram-gupta

Post on 30-Jan-2016

216 views

Category:

Documents


0 download

DESCRIPTION

Its a research paper on software systems

TRANSCRIPT

Page 1: Software Development Life Cycle

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

Page 2: Software Development Life Cycle

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

Page 3: Software Development Life Cycle

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.

Page 4: Software Development Life Cycle

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.