Free Online Articles Directory
18.11.2008 Sign In Register Hello Guest
Email:
Password:
Remember Me 
forgot your password?


Software Development Life Cycle Models

Author: Paulita C. Lobrin Author Ranking Blue | Posted: 27-09-2008 | Comments: 0 | Views: 111 | Rating:  (223) Article Popularity - Blue (?) Got a Question? Ask.
Sign Up Now!

Before, whenever a developer is tasked to perform programming or coding, he immediately would jump to it, start programming with or without full knowledge of what the system would look like, how the features are arranged, etc. It is probably okay only if you’re just building a very simple system. However, if you’re building a complex and sophisticated system, it will take a long time for you to finish. Worse, you start to suffer from “groping in the dark” syndrome since your full of ideas, you want to implement them all, but you tend to forget about them because other features need to be prioritized.

That was before. Now, whether an IT system is small, medium or large scale, it is important to have a proper software/system development plan from beginning to end. It saves time, features of the system are well documented and will not be forgotten regardless of priority, and above all, there is proper management and execution of plans.

System Development Life Cycle (SDLC) models help in the complete development of a system, right from the conceptual stage to the customer delivery stage. SDLC is very useful if one has a complicated system to build. SDLC is the overall process of developing information systems through a multi-step process, from investigation of initial requirements to analysis, design, implementation and maintenance.

To properly illustrate the SDLC models, I shall present them in bullet form.

1. Waterfall Model

· One of the older SDLC models

· Each single step in the process of system development is first written down in the form of specifications and reports. Only then are the actual phases initiated in practice

· The execution of a project appears as a sequence of stages in which the output of each stage becomes the input for the next

· The stages in Waterfall method are divided into the ff:

1. Project planning / feasibility study – commonly known as Requirements Stage. It is in this stage that developers/stakeholders determine the project goal

2. System analysis – refines project goals into defined functions and operations. It also analyses end-user information needs (Specification stage)

3. System design – describes desired features and operations in detail (Design stage)

4. Implementation / Coding (Implementation stage)

5. Integration and testing – brings all the individual system components into one, then testing it for errors, bugs, etc. (Integration stage)

6. Acceptance, Installation, Deployment – final stage of development where the software is put into production

7. Maintenance – this goes on apparently forever since changes, additions, etc are always essential, important and needed in a software application especially in the area that involves business and monetary transactions.

· Drawbacks

1. Works well on simplistic activities

2. Assumes that the only role of users is in specifying requirements and that all requirements can be specified in advance. Unfortunately, requirements grow and change

3. It is, thus, well suited to projects that has low risk in the areas of user interface and performance

2. Spiral Model

· Most generic of the models. Most life cycle models can be derived as special cases of the spiral model

· Set of important requirements are selected for each prototype. Thus, developers can split the requirements and work first on those with high priority

· Employs a risk management approach to software development especially in the stages of Specification, Design, Implementation and Integration

· Emphasizes the need to reiterate earlier stages a number of time as the project progresses

· Actually a series of short waterfall cycles, each producing an early prototype, representing a part of the entire project. It’s like using the waterfall model as guide in doing one prototype only.

· If one prototype is finished (except perhaps the polishing of graphics), a developer can proceed to the next prototype. Build, test and integrate to the first prototype

· Helps demonstrate a proof of concept early in the cycle

· Incorporates prototyping and software quality objectives

· Gives early focus to reusable software

· Accommodates life cycle evolution, growth and requirement changes

· Focus on early detection and design (architecture) flaws

· Useful in hardware-software projects

 

3. Build and Fix Model

· Crudest of the models

· Implementation of system without specification nor design

· May work for small scale projects

· Code is written, then modified until client is happy

· VERY RISKY!

· I know of a developer who does just this kind of work strategy. He was given an assignment, but instead of planning properly, he will just code it immediately without specification or design. He improves it until his client is happy. If the client is dissatisfied, he doesn’t give a damn about it.

4. Rapid Prototyping Model

· Emphasis is on creating a prototype that looks and acts like the desired product in order to test its usefulness

· Develop a system with reduced capability

· Present to client for approval

· Once the prototype is approved, it is discarded and the “real” software is written.

· Develops specification with better understanding

· Exactly like the Spiral Model, where a prototype or only “shadow” of the real software is made, where the system (during implementation stage) is not that graphically perfect but features are functioning well for testing purposes

· Only difference is, in Rapid Prototyping, it requires client approval prior to the building of the “real” software

5. Incremental Model

· Divides the product into builds, where sections of the project are created and tested separately

· Each build contains an operational quality subsystem

· Each additional build, a new subsystem is integrated with the previous build

· You will notice that this model is very much like the Spiral Model except that instead of prototype, they’d rather call it builds. These builds, like prototypes, are tested separately first. Each build has a subsystem in Incremental Method, whereas in Spiral, subsystems may or may not be used

· Likely to find errors in user requirements quickly

 

6. Synchronize and Stabilize Model

· Type of Incremental Model

· Allows many teams to work efficiently in parallel

· A nightly compilation of builds of the entire project is made to piece together all current components

· An alpha release was done for internal testing, a couple of beta releases took care of a wider testing range outside the company. Finally, a release candidate leading to the final version, called a gold master, was released to manufacturing

· At some point before each release, specifications would be frozen and the remaining time spent on fixing bugs

· There is heavy emphasis in schedule management and perfection

7. Fountain Model

· Support Incremental Development

· Recognizes that some activities can’t stand before others, yet there’s a considerable overlap of activities throughout the development cycle

· Implies that you do some analysis, then some design, then some implementation

· Parallelism among various phases and iteration within phases

· Development of an object-oriented system that more likely to lead us to focus on sections of the whole known as clusters or subsystems

· Subsystems are collections of classes which work closely together

· Supports human learning and is recommended for most projects

SDLC is a systems approach to problem solving and is made up of several phases. A developer may or may not use or apply SDLC, but based on my experience, it is highly advantageous to use one. We did a system before where we didn’t plan much how we will execute, start and finish building a system. The result was a complete catastrophe! We suffered “groping in the dark” syndrome, regretted ever working with one another, and suffered too many expenses and too much time delay. Learning from the lesson, it is, thus, highly recommended to properly plan the flow of activities in building a system through SDLC as one of the tools in management.

plobrin@gmail.com

 

Rate this Article: Current: 0 / 5 stars - 0 vote(s).

Article Source: http://www.articlesbase.com/programming-articles/software-development-life-cycle-models-580863.html

Print this Article Print article   Email to a Friend Send to friend   Publish this Article on your Website Publish this Article   Send Author Feedback Author feedback  
About the Author:

The author of this article is Paulita C. Lobrin from Iloilo, Philippines. To know more, click http://bonifaciosd.blogspot.com/

Submitting articles has become one of the most popular means to drive traffic to your website and promote yourself and your business. Join us today - It's Free!

Article Comments

Comment on this article Comment on this article
Your Name
Your Email:
Comment Body
Enter Validation Code: Captcha


Related Articles

Measuring The Success Of Your Outsourcing
By: Steve Mezak | 10/09/2005 | Business
There is no need to measure while the programmers are there in the same room. Or is there? When I worked as a programmer in the 1980s, my boss used to joke that.

Download Music, Movies and Games for Free - A Hot Issue
By: Harry Rackers | 18/05/2006 | Music
More and more people are using the Internet to download music, movies games and various other soft-wares for free. This downloading is a hot legal and ethical issue, and it probably will stay a hot issue for a long time to come.

Custom Software Development Checklist
By: Michael Cordova | 19/11/2006 | Advertising
Custom database software development is facilitated by the use of a checklist of standard questions to be answered before a system is created, and before analysis begins.

Music and Movies Download Sites - are They a Scam?
By: Harry Rackers | 22/09/2007 | Software
The so called music and movie download sites are under attack. In America the RIAA (Recording Industry Association of America) and Hollywood's MPAA (Motion Picture Association of America) are trying to shut them down, and seasoned Internet users are calling them a scam. Do they deserve this?

E-commerce Website Design Guide for Small Business Owners
By: Julia Ramyalg | 15/01/2006 | ECommerce
When a small business owners starts thinking of having his own e-commerce web site he starts looking for reliable, handful and affordable e-commerce solution. Learn what features are needed to run the e-commerce business successfully.

Web Design: a First Look
By: HEREIAMLIVE | 19/03/2008 | Web Design
Web Design and Development. Web design can be very simple with the advanced web design tools to help you that are available today.

Infopark - Belarus Association of Software Development Companies Supports the Ukrainian Outsourcing Forum 2007
By: Natalya Arseyeva | 21/08/2007 | Software
Scientific technology association "Infopark", uniting software development companies of Belarus Republic, is going to partner the Ukrainian Outsourcing Forum 2007 (UOF 2007), that is organized by Ukrainian Hi-Tech Initiative organization, and will take place in November 1-2, 2007 in Kyiv.

The Dark Side of Outsourcing.
By: Jwaltz | 13/07/2006 | Outsourcing
Many organizations are a shell of what they once were or a shadow of what they could be, because they give the best work to outsiders. I don't think anyone intentionally out sources the best work—that is, the most important projects and the critical business relationships—but it happens all too often.

Got a Question? Ask.

Ask the community a question about this article:

Frequently Asked Questions

What is pc software
By: kmcgrew | 23-10-2008
what is pc software

I need a test management tool and one of my ...
By: Serene | 22-10-2008
I need a test management tool and one of my friends suggested Zephyr. But I would like to hear from those who have actually used Zephyr.

What is the best fundraising or foundation ...
By: DCar | 21-10-2008
what is the best fundraising or foundation software program?

Need suggestions
By: Serene | 18-10-2008
My team is globally dispersed and I spend most nights on conference calls. Is there any way out to handle my Quality Assurance team?

What encoder works with Flash 6?
By: cahanckgraphics | 17-10-2008
What encoder works with Flash 6?

What is the keygen of Nero-6.6.0.8a?
By: akshar | 17-10-2008
what is the keygen of Nero-6.6.0.8a?

Q&A Powered by:
Powered by Yedda 

Latest Programming Articles

Cool Desktop Wallpapers
By: Danny | 18/11/2008
Cool desktop wallpaper is accomplishments arrangement that displayed in the computer operating system. The wallpapers usually be acclimated in JPEG, BMP and GIF book formats. That wallpaper can be acclimated with Microsoft Windows, Linux and Macintosh Mac OS. Each adviser can be altered requirements, alike admitting wallpaper images advised for accepted monitors can be scaled up or bottomward to the fit size. Those are accessible on the internet for free. Some categories of wallpapers are a

Tips for Buying Software Online
By: Daniel Jowssey | 17/11/2008
Buying software online not only helps save the planet, it also has other benefits, including: * Ease and Simplicity. You can purchase software in your underwear at 4am if you really want to. Shopping online doesn’t have to be done within regular business hours, nor do you need to look your best to do it. It’s also easy to shop around for the best prices and takes less time than driving to the shops.

Mvc Design Pattern
By: TuVinhSoft .,JSC | 14/11/2008
Model-view-controller (MVC) is an architectural pattern used in software engineering. In complex computer applications that present a large amount of data to the user, a developer often wishes to separate data (model) and user interface (View) concerns, so that changes to the user interface will not affect data handling, and that the data can be reorganized without changing the user interface.

Advantages of Low Cost Contract Programmers in Freelance Programming
By: Joanna Gadel | 12/11/2008
It observed that web industry is getting tougher thus the necessity of freelance contract programmer is required for developing more effective website with flexible features. This article states the fruitful advantages of freelance programmers in contract programming.

A Guide to Cnc Kits
By: Martin Applebaum | 09/11/2008
CNC kits are a way in which to construct your CNC machine. This article will provide some information on these machines.

A Guide to Cnc Tube Bending Machines
By: Martin Applebaum | 08/11/2008
Are you familiar with a CNC tube bending machine? This article will shed some light on the main function and components of this machine.

Ways to Hire Dedicated Php Programmers
By: Jucick | 08/11/2008
It’s not at all easy to hire dedicated PHP programmers unless you know where and how to find them. Whether you need to fix, update or enhance your website you naturally want the job done quick and right.

Top 4 Reasons Why Addressing Web Accessibility is Important
By: Matt Cave | 05/11/2008
There are very high chances that web accessibility is more important to the performance of your web site than you realize. Article takes a look at the top 4 reasons why it would be important to address the issue of web accessibility.

More from Paulita C. Lobrin

Project Integration Management – a Key to Overall Project Success
By: Paulita C. Lobrin | 10/11/2008 | Information Technology
Let’s face it, it is indeed difficult to handle an IT project. So many matters to consider like schedule to meet, budget allocation, constant inquiries from stakeholders, team to manage, constant changes, etc. Due to the complexity of an IT project, many Project Managers (PM) tend to focus on the system to build rather than at the “big picture”.

Project Development Plan: the First Guide in Building an it System
By: Paulita C. Lobrin | 03/06/2008 | Information Technology
The Project Development Plan document is very important and essential especially if you’re into software development. Without this document as guide, an IT developer might experience “groping in the dark” in the middle of the project, NO FORMAL GUIDELINES AND STANDARDS established, and there is poor management in areas of budget, staffing, schedule and resources.

It Project Management and Systems Management
By: Paulita C. Lobrin | 16/04/2008 | E-Learning
But, the top three ever-present factors in a project that need to be considered are Cost, Scope and Time. These three are also the constraints in Project Management. There’s also a different kind of approach used in an analytical way to handle problem-solving and management issues, and that is Systems Management

What You Should Know About it Project Management
By: Paulita C. Lobrin | 26/03/2008 | Project Management
If you will bother to read my article, you will see the importance of IT Project Management. Through Project Management, software developers will be able to identify, coordinate and monitor tasks, activities and resources to meet the project requirements.

It Revolution, Marketing History and Online Marketing
By: Paulita C. Lobrin | 05/03/2008 | Internet Marketing
A branch of Commerce - Marketing - is one of the beneficiaries of IT's progress. Marketing started when man discovered the technology that improved our agriculture. With this discovery, abundant supply of food resources became abundant to such an extent that it is imperative to dispose products quickly. Through marketing, people are enticed to patronize and purchase goods and/or services. The basic concept of marketing and its

Article Categories





Give Feedback

Sign up for our email newsletter

Receive updates, enter your email below