0% found this document useful (0 votes)
81 views8 pages

Software Development Lifecycle Model SDL

.

Uploaded by

Walid Dahmani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
81 views8 pages

Software Development Lifecycle Model SDL

.

Uploaded by

Walid Dahmani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056

Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

SOFTWARE DEVELOPMENT LIFECYCLE MODEL (SDLC) INCORPORATED


WITH RELEASE MANAGEMENT
Ms. Gajalakshmi P.
*1Assisant Professor, Department of Computer Science Auxilium College (Autonomous), Vellore,
TamilNadu, India
---------------------------------------------------------------------***---------------------------------------------------------------------
Abstract - Software Development Life Cycle or System varying from those which are just guiding principles, to
development Life Cycle or simply SDLC (system and rigid systems of development complete with processes,
paperwork and people roles. It consists of a set of steps or
software is interchanged frequently in-accordance to
phases in which each phase of the SDLC uses the results of
application scenario) is a step by step highly structured the previous one. A Systems Development Life Cycle
technique employed for development of any software. (SDLC) adheres to important phases that are essential for
SDLC allows project leaders to configure and supervise developers, such as planning, analysis, design and
the whole development process of any software. There implementation. A number of system development life
are various SDLC models widely accepted and employed cycle (SDLC) models have been created: waterfall, spiral,
prototype and rapid application development model
for developing software. SDLC models give a theoretical
(RAD).
guide line regarding development of the software. Various software development life cycle models
Employing proper SDLC allows the managers to are suitable for specific project related conditions which
regulate whole development strategy of the software. include organization, requirements stability, risks, budget
Each SDLC has its advantages and disadvantages and duration of project. One life cycle model theoretical
making it suitable for use under specific condition and may suite particular conditions and at the same time other
constraints for specified type of software only. model may also looks fitting into the requirements but one
should consider trade-off while deciding which model to
Developers employ SDLC models for analyzing, coding,
choose. A software life cycle model is either a descriptive
testing and deployment of software system. Software or prescriptive characterization of how software is or
developed by employing the suitable SDLC models is should be developed. A descriptive model describes the
better performers in the market when compared with history of how a particular software system was
their competitors. SDLC Models helps in regulating the developed. Descriptive models may be used as the basis
software-system development time and helps in for understanding and improving software development
effective cost scheduling. A model which guarantees the processes A prescriptive model prescribes how a new
software system should be developed. Prescriptive models
development and delivery (release) teams engaged in
are used as guidelines or frameworks to organize and
some project have strong co-ordination and structure how software development activities should be
collaboration leading to enhanced productivity, performed and in what order.
efficiency, effectiveness and longer market life is To present an abstract definition of software
developed. This can be achieved by incorporating development life cycle model (SDLC) incorporated with
concept of Release Management with basic SDLC release management. There are various SDLC models
widely accepted and employed for developing software.
phases.
SDLC models give a theoretical guide line regarding
development of the software. Employing proper SDLC
Key Words: Software Development Life Cycle system,
allows the managers to regulate whole development
software system, application life cycle management. strategy of the software. Each SDLC has its advantages and
disadvantages making it suitable for use under specific
I. INTRODUCTION condition and constraints for specified type of software
The System Development Life Cycle framework only. We need to understand which SDLC would generate
provides a sequence of activities for system designers and most successful result when employed for software
developers to follow. The ideas about the software development. There are various SDLC models such as
development life cycle (SDLC) have been around for a long Waterfall, Spiral, Prototype, Incremental and RAD model
time and many variations exist, such as the waterfall, etc.
spiral, prototype and rapid application development
model (RAD). These variations have many versions

© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1536
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056
Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

maintenance costs, and more accurate and reliable results


[1],[5],[6].

Waterfall Model
The waterfall model is a sequential software
development process, in which progress is seen as flowing
steadily downwards (like a waterfall) through the phases
of Requirement definition, System and software design,
Implementation and unit testing, Integration and system
testing, Operation and maintenance. Small to medium
database software projects are generally broken down
into five stages.

Fig Steps of the Software Development Life Cycle

II. RELATED WORK


WHAT IS SDLC
Software Development Life Cycle is a process to
develop software. This process is divided into some
phases such as of the areas there are many other papers
that describe relevant work. Fig : Water Fall Model

A. Requirement Analysis: Stages of the Waterfall Model


Requirement analysis is the initial phase of the
Software Development Life Cycle. The goal of this phase is Requirement Analysis and Definition
to understand the client’s requirements and to document
them properly. The emphasis in requirement analysis is an All possible requirements of the system to be developed
identifying what is needed from the system. It is most are captured in this phase. Requirements are a set of
crucial phase in Software Development Life Cycle. The functions and constraints that the end user (who will be
output of requirement analysis is Software Requirement using the system) expects from the system. The
Specification (SRS) [4],[5]. requirements are gathered from the end user at the start
of the software development phase. These requirements
B. Design: are analyzed for their validity, and the possibility of
It is the first step to move from the problem incorporating the requirements in the system to be
domain towards the solution domain. It is the most developed is also studied. Finally, a requirement
creative phase in Software Development Life Cycle. The specification document is created which serves the
goal of this phase is to transform the requirement purpose of guideline for the next phase of the model.
specification into structure [1]. The output of this phase is
Software Design Document (SDD). Advantages

C. Coding:  Simple to understand and use.


In this phase Software Design Document (SDD) is
converted into code by using some programming Easy to arrange tasks.


language. It is the logical phase of the Software
Development Life Cycle. The output of this phase is Process and results are well documented.


program code.
Each phase has specific deliverable and a review.


D. Testing:
Works well for projects where requirements are
This is most important and powerful phase.
well understood.
Effective testing will contribute to the delivery of high
quality software products, more satisfied users, lower

© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1537
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056
Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

 Works well when quality is more important than


cost/schedule.

Disadvantages
 It is difficult to measure progress within stages.

 Cannot accommodate changing requirements.

 No working software is produced until late in the


life cycle.

 Risk and uncertainty is high with this process Fig : Prototype Moedel
model.
Advantages


Adjusting scope during the life cycle can end a
project Users are actively involved in the development

 When prototype Model is shown to the user, he


2. Prototype Model
gets a proper clarity about his requirements. And
In this model prototype is built as per the client feel the functionality of the software, so can
requirements. Instead of freezing the requirement before suggest the changes and modifications.


a design or coding can proceed. The purpose of a
It reduces risk of failure, as potential risks can be
prototype is to allow users of the software to evaluate
identified early and steps can be taken to remove
proposals for the design of the eventual product by
that risk.
actually trying them out, rather than having to interpret

and evaluate the design based on descriptions.
The customer does not need to wait long for
Prototyping has several benefits: The software designer
working software.
and developer can obtain feedback from the users early in
the project. The client and the developer can compare if Disadvantages
the software made matches the software specification,
according to which the software program is built. It also  Wastage of Time and money to build prototype, if
allows the software engineer some insight into the client not satisfied.
accuracy of initial project estimates and whether the
deadlines and milestones proposed can be successfully  Too many changes can disturb the rhythm of the
met. A prototype model is not a standalone, complete developer team.


development methodology, but rather an approach to
handle selected part of a larger, more traditional Long term procedure.


development methodology. It attempts to reduce inherent
project risk by breaking a project into smaller segments It follows the Quick and dirty approach- the
and providing more ease-of-change during the prototype is through away after showing to the
development process. User is involved throughout the client.
development process, which increases the likelihood of
user acceptance of the final implementation. Small-scale
mock-ups of the system are developed following an
iterative modification process until the prototype evolves III. NEW PROPOSED SDLC MODEL
to meet the user‟s requirement. While most prototypes
are developed with the expectation that they will be The New SDLC model is designed in such a way
discarded, it is possible in some cases to evolve from that it allows client and developer to interact freely with
prototype to working system. A basic understanding of the each other in order to understand and implement
fundamental business problem is necessary to avoid requirements in a better way to produce a high quality
solving the wrong problem [3],[8],[9]. software within budget and schedule. As the Software
Development process began with the client’s need, so the
proposed model tries to discover most of the
requirements of the client. It helps in developing an
efficient software product that satisfies client. In the
sphere of computer based system products, client

© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1538
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056
Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

satisfaction is dependent on how system development change is possible and its impact is little or very less then
process evolves to build operational product systems that change will be accommodated
satisfy the perceived and actual client’s need and
associated system requirements. Ultimately, client B. Matchmaker Team
satisfaction depends upon the depth of „through-life‟ Matchmaker team is an expert team and its team
understanding about the client needs and associated user members are updated with new technologies and new
requirements for a future system, and the ability to software products. This team interacts with coordinator
communicate those requirements to the system developer. and technical team during its or king. Matchmaker team
In addition, client satisfaction and confidence depends studies the requirements Received from the coordinator
upon the level of system assurance offered throughout the which in turn get these requirements from the client. This
system development lifecycle. Requirements team identifies and gets the existing software whose
understanding problems inevitably lead to poor client- requirements match with the current proposed Software’s
developer relationship, unnecessary re-work, and overrun requirements. And accordingly breakdown the
cost and time. The client satisfaction is totally depended requirements into two parts implemented requirements
on client needs for this reason SDLC focus on the initial and non-Implemented requirements. Implemented
phases. requirements are those requirements which are already
implemented in some existing software.

C. Technical Team
It is a technically expert team. The member of this
team is full of skills and interacts with coordinator and
matchmaker team. Technical team works on non-
implemented requirements. This team studies the
feasibility of requirements to check whether these are
technically possible or not. This team also identifies and
resolves the various risk associated with the
implementation of non-implemented requirements. After
feasibility study and risk analysis the technical team verify
the final requirements and pass these to the next phases,
i.e. designing, coding, testing, each of these phase also
followed by validation process.

IV. SYSTEM IMPLEMETNATION

4.1 Developing Software

Server-Application-Support Engineer
Fig: New Proposed SDLC Model Release manager responsible for analyzing the
troubleshoot problems with an application not typically at
A. Coordinator a code level but more at initial analysis level. He is even
responsible for analyzing release policy and release plan.
Coordinator have a general knowledge of every aspect of They help in identifying the problems that might occur
software development process, software applications, during the later stages of the development of the software.
various applicable operating systems or platforms as well There might be many issues that are likely to occur and
as various business functions to be performed. He will lead to reduce functionality of the software being
coordinates with all the phases of the software developed. If these futuristic problems are identified and a
development process. Coordinator deals with the client for help desk is stood against them then the efficiency and
gathering the requirements and passes these effectiveness of the software will increase manifolds. Thus
requirements to the matchmaker team and any query of server application support engineers' responsibility
client is also solved by the coordinator. After finalizing increases in early stages of SDLC as most of the
requirements coordinator estimates the cost, time and requirements both functional and technical are identified
effort required to develop the software product. Then he and most likely problems that might associate with them
passes the final requirements to the technical team. If are identified. Following are the two main functions being
client wants any change in the final requirements during performed by the server application support engineers,
the process, then coordinator firstly checks whether it can
be implemented or not and what are impacts of change on Analyze Release Policy: Release policies are high-level
the whole process in terms of cost, schedule and effort. If statements of how releases are to be managed, organized,
© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1539
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056
Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

and performed in your environment. Policies include Guidelines are followed for performing a simulation
management goals, objectives, beliefs, and responsibilities. study for software development life cycles. It is composed of
Use these topics to learn more about release policies and ten processes, ten phases, and thirteen reliability evaluation

 Release policy purpose: Release policies are


to learn how to view, create, and edit the policies. stages. Its purpose is to assess the credibility of every stage
after simulation and match it with the initial requirements and
typically written at an overall strategy level. The
specifications. The model provides one of the most
management directives contained in a policy
determine the way in which activities and tasks documented descriptions for simulating life-cycles in the
software engineering field.
 View release policy: Use this procedure to view
within a given release work-flow are performed.
Software engineering process simulation model (SEPS) is
release policies that have been written and posted
used in proposed system for the dynamic simulation of
to the database. These policies provide guidelines
software development life cycles. It is based on using
 Create/Edit release policy: Use this topic to
for carrying out a release work-flow.
feedback principles of system dynamics to simulate
specify a link to a release policy that you have communications and interactions among the different SDLC
created or edited. After you create the link, the phases and activities from a dynamic systems perspective.
policy name and description are displayed in the
Release Policies table. The policy document can Basically, Software engineering process simulation model
then be opened and reviewed by any user in your is a planning tool meant to improve the decision-making of
environment who is involved with IBM Tivoli managers in controlling the projects outcome in terms of cost,
Release Process Manager time, and functionalities. Discrete open source event
simulation model is used for simulating the programming and
the testing stages of a software development process using
Analyze Release Plan: A release planning meeting is used
Math Lab.
to create a release plan which lays out the overall project.
The release plan is then used to create iteration plan for Assumptions and Specifications
each iteration release. It is important for technical people
to make the technical decisions and business people to Prior to simulating the Waterfall model, a number of
make the business decisions. Release planning has a set of assumptions and specifications must be clearly made.
rules that allows everyone involved with the project to Basically, projects arrive randomly at a software firm with
make their own decisions. The rules define a method to inter-arrival time from a Triangular distribution with a
negotiate a schedule everyone can commit to. lower limit of 30 days, an upper limit of 40 days, and a
mode of 35 days. The probability density function is then
EVALUATION RESULT: given as:
 Develop the process iteratively by knowing all
requirements in advance. Several software
development processes exist that deal with
providing solution on how to minimize cost in
terms of development phases.

 Manage requirements and always keep in mind


the requirements set by users.

 A use component that breaks down an advanced


Projects can be divided into three groups based on their
project is not only suggested but in fact
complexity and scale: 70% of the projects are small-scale
unavoidable.
projects, 25% are medium-scale projects, and 5% are
 Model Visually: Use diagrams to represent all large-scale projects.
major components, users, and their interaction to
The business analysis phase requires a Uniform
make this task more feasible.
distribution with a lower limit of 3 days and an upper limit

of 5 days.
Verify quality: Always make testing a major part
of the project at any point of time. Testing
becomes heavier as the project progresses but
should be a constant factor in any software
product creation.

© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1540
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056
Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

The design phase requires a Uniform distribution with a


lower limit of 5 days and an upper limit of 10 days.

The implementation phase requires a Uniform distribution


with a lower limit of 15 days and an upper limit of 20 days.

The testing phase requires a Uniform distribution with a


lower limit of 5 days and an upper limit of 10 days.

Essentially, the existing model consists of a set of resource,


queue, task, probability branch, capture and counter
modeling elements. The resources are the basic employees
and workers assigned to work on the phases of the
Waterfall model. Each resource has a FIFO queue which
accumulates and stores processing events to be processed
later.

Resource Average Utilization

Business Analysts 4.8

Designers 10.2

Programmers 20
Fig: Utilization of the Designer Resource in Waterfall
Testers 6.5 Model

The simulation model was executed 5 times, for 1500


Maintenance 1.9 milliseconds (2.5 minutes) with 50 incoming projects
using the Simphony.NET environment. Delineates the
Table: Resources with their Average Utilization in obtained statistics including the number of projects
Waterfall Model received and delivered, in addition to the time based on
release management. Delineates the average utilization of
Essentially, the existing model consists of a set of resource,
every resource after the completion of the simulation with
queue, task, probability branch, capture and counter
release management. Furthermore, a graphical
modeling elements. The resources are the basic employees
representation for resource utilization is plotted in Fig A-
and workers assigned to work on the phases of the
12 for the programmer resource while, is for the designer
Waterfall model. Each resource has a FIFO queue which
resource
accumulates and stores processing events to be processed
later
Resource Average
Utilization
Business 5.2
Analysts

© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1541
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056
Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

Designers 11.6

Programmers 21.02

Testers 7.4

Maintenance 2.09
Table 2: Simulated Resources with their Average
Utilization incorporating Release Management

The model starts with a new entity element which sets the
number of incoming projects and a counter that counts the
number of projects being received, and ends with another
counter that counts the number of projects being
delivered.

CONCLUSION
SDLC system/software development life cycle is a
step by step systematic approach from planning to testing
and deployment of the software. There are some basic
phases that are strictly followed in the specified order as
analysis, designing, coding, testing and implementation.
Different SDLC models are employed for developing
variety of software’s depending upon the type and
usability of the software. Release Management is an
entirely new concept that has come into scenario in recent
days. Conceptually release management itself has some
major phases that ensure smooth and timely delivery of
the software-system to the client. The proposed SDLC
model merges the basic phases of software development
and release management in such a manner that a new
SDLC model is evolved making the fullest use of release
management thus increasing the effectiveness and
software life in the market. The proposed model is
basically a four tier architecture comprising of Client side,
End user, Developer side and the Release manager as
Fig: Utilization of the Programmer Resource after individual (units) levels. It maps various release managers
Release Management onto specific SDLC phases thus providing complete co-


ordination of various release managers along with
Divide the Waterfall model into independent analyzers, designers, coders, testers over specified phases
phases. of SDLC. Release managers are provided with the

centralized control over SDLC phases leading to regular
Understand the concept and the requirements release cycles. Clear guidelines have been established to
that lie behind every phase. address, which Release Manager has to do what and when

in the various stages in SDLC.
Define the resources, tasks, entities, and the work
flow of every phase.
The above model is practically successful as all
 Simulate each phase apart and record results. the phases and the roles and responsibilities of each
person involved are clearly established. Their interaction
 Integrate the whole phases together, simulate the and inter-relation with each other is well defined and thus
system, and record results. this model successfully addresses all development phases
that are integrated with the concept of release
management.

© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1542
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056
Volume: 03 Issue: 04 | Apr-2016 www.irjet.net p-ISSN: 2395-0072

REFERENCES:
1. Ian Sommerville, Software Engineering, Addison
Wesley, 9th ed., 2010.
2. Richard H. Thayer, and Barry W. Boehm, software
engineering project management , Computer
Society Press of the IEEE, pp.130, 1986.
3. Craig Larman and Victor Basili, )terative and
)ncremental Development: A Brief (istory , IEEE
Computer, 2003.
4. N. Munassar and A. Govardhan, A Comparison
Between Five Models Of Software Engineering ,
IJCSI International Journal of Computer Science
Issues, vol. 7, no. 5, 2010.
5. P.Humphreys, Extending Ourselves: Computational
Science, Empiricism, and Scientific Method , Oxford
University Press, 2004.
6. Royce, W., Managing the Development of Large
Software Systems , Proceedings of IEEE WESCON
26, pp.1-9, 1970.
7. IEEE-STD-610, A Compilation of )EEE Standard
Computer Glossaries , IEEE Standard Computer
Dictionary, 1991.
8. Andrew Stellman, Jennifer Greene, Applied
Software Project Management , O'Reilly Media,
2005.
9. Jim Ledin, Simulation Planning PE, Ledin
Engineering, 2000.
10. Software Methodologies Advantages &
disadvantages of various SDLC models.mht
11. No.1, January 2010, Evolving A New sModel (SDLC
Model-2010) For Software Development Life Cycle
SDLC PK.Ragunath, S.Velmourougan, P.
Davachelvan, S.Kayalvizhi, R.Ravimohan.
12. Hoek, A. van der, Wolf, A. L. (2003) Software
release management for component-based
software. Software—Practice & Experience . Vol.
33, Issue 1, pp. 77–98. John Wiley & Sons, Inc.
New York, NY, USA.

© 2016, IRJET | Impact Factor value: 4.45 | ISO 9001:2008 Certified Journal | Page 1543

You might also like