Systems Development Life Cycle
Systems Development Life Cycle, or Software Development Life Cycle (SDLC), relates to models or
methodologiesthat people use to develop systems, generally computer systems. Computer systems have become more complex and usually (especially with the advent of Service-Oriented Architecture) link multiple traditional systems often supplied by different software vendors.
To manage this, a number of system development life cycle (SDLC) models have been created: waterfall, fountain, spiral, build and fix, rapid prototyping, incremental, and synchronize and stabilize. Although in the academic sense, SDLC can be used to refer to various models, SDLC is typically used to refer to a waterfall methodology.
SDLC adheres to important phases that are essential for developers, such as planning, analysis, design, and implementation, and are explained in the section below. There are several SDLC Models in existence. The oldest model, that was originally regarded as “the SDLC” is the waterfall model: a sequence of stages in which the output of each stage becomes the input for the next. These stages generally follow the same basic steps but many different waterfall methodologies give the steps different names and the number of steps seems to vary between 4 and 7.
There is no definitively correct SDLC model, but the steps can be characterized and divided as follows:
To generate a high-level view of the intended project and determine the goals of the project. The feasibility study is sometimes used to present the project to upper management in an attempt to gain funding. Projects are typically evaluated in three areas of feasibility: economical, operational, and technical. Furthermore, it is also used as a reference to keep the project on track and to evaluate the progress of the MIS team (Post & Anderson, 2006)The MIS is also a complement of those phase.This phase is also called the analysis phase.
Requirements Gatherings And Analysis
The goal of systems analysis is to determine where the problem is in attempt to fix the system. This step involves breaking down the system in different pieces and drawing diagrams to analyze the situation. Analysts project goals, breaking down functions that need to be created, and attempt to engage users so that definite requirements can be defined.
Functions and operations are described in detail, including screen layouts, business rules, process diagrams and other documentation. The output of this stage will describe the new system as a collection of modules or subsystems.
Build or Coding
Modular and subsystem programming code will be accomplished during this stage. This stage is intermingled with the next in that individual modules will need testing before integration to the main project.Planning in software life cycle involves setting goals, defining targets, establishing schedules, and estimating budgets for an entire software project.
The code is tested at various levels. Unit, system and user acceptance testing are often performed. This is a grey area as many different opinions exist as to what the stages of testing are and how much if any iteration occurs. Iteration is not generally part of the waterfall model, but usually some occurs at this stage.
Types of testing:
* Data set Testing
* Unit Testing
* System Testing
* Integration Testing
* User acceptance
* Black Box Testing
* White Box Testing
Operations and Maintenance
The life of the system includes "akhilesh bhambri"changes and enhancements before the decommissioning or sunset of the system. Maintaining the system is an important aspect of SDLC. As key personnel change positions in the organization, new changes will be implemented, which will require system updates.
Baselines in the SDLC
Baselines are an important part of the SDLC. These baselines are established after four of the five phases of the SDLC and are critical to the iterative nature of the model (Blanchard & Fabrycky, 2006, p.31). Each baseline is considered as a milestone in the SDLC.
Functional Baseline: established after the conceptual design phase.
Allocated Baseline: established after the preliminary design phase.
Product Baseline: established after the detail design and development phase.
Updated Product Baseline: established after the production construction phase.
Few people in the modern computing world would use a strict waterfall model for their SDLC as many modern methodologies have superseded this thinking. Some will argue that the SDLC no longer applies to models like Agile computing, but it is still a term widely in use in Technology circles.
An alternative to the SDLC is
Rapid Application Development, which combines prototyping, Joint Application Development and implementation of CASE tools. The advantages of RAD are speed, reduced development cost, and active user involvement in the development process.
It should not be assumed that just because the waterfall model is the oldest original SDLC model that it is the most efficient system. At one time the model was beneficial mostly to the world of automating activities that were assigned to clerks and accountants. However, the world of technological evolution is demanding that systems have a greater functionality that would assist help desk technicians/administrators or information technology specialists/analysts.
Complementary to SDLC
*Joint Applications Design (
Rapid Application Development(RAD)
Extreme Programming(XP); extension of earlier work in Prototyping and RAD.
Object Oriented Programming
* Blanchard, B. S., & Fabrycky, W. J.(2006) Systems engineering and analysis (4th ed.) New Jersey: Prentice Hall.
* Cummings, Haag, , (2006), Management Information Systems for the Information Age, Toronto, McGraw-Hill Ryerson
* Computer World, 2002, Retrieved on
June 22 2006from the World Wide Web: http://www.computerworld.com/developmenttopics/development/story/0,10801,71151,00.html
* Management Information Systems, 2005, Retrieved on
June 22 2006from the World Wide Web: www.cbe.wwu.edu/misclasses/MIS320_Spring06_Bajwa/Chap006.ppt
* Post, G., & Anderson, D., (2006). "Management information systems: Solving business problems with information technology". (4th ed.). New York: McGraw-Hill Irwin.
Application Lifecycle Management
Software Lifecycle Processes
* [http://www.ed.gov/fund/contract/about/acs/acsocio1106.doc US Department of Education - Lifecycle Management Document]
* [http://www.house.gov/cao-opp/PDFSolicitations/SDLCPOL.pdf U.S. House of Representatives Systems Development Lifecycle]
* [http://www.isaca.org/Template.cfm?Section=Home&Template=/ContentManagement/ContentDisplay.cfm&ContentID=18676 System Development Lifecycle (SDLC) Review Document G23 from the Information Systems Audit and Control Association (ISACA)]
* [http://www.ambysoft.com/essays/agileLifecycle.html The Agile System Development Lifecycle]
* [http://www.SaaSSDLC.com Software as a Service Application Service Provider Systems Development Lifecycle]
* [http://www.pbgc.gov/docs/ITSLCM%20V2007.1.pdf Pension Benefit Guaranty Corporation - Information Technology Solutions Lifecycle Methodology]
* [http://www.gantthead.com/gig/gigDisplay.cfm?gigID=234&profileID= SDLC Industry Interest Group]
Wikimedia Foundation. 2010.
Look at other dictionaries:
Systems Development Life Cycle — En este artículo sobre informática se detectaron los siguientes problemas: Necesita ser wikificado conforme a las convenciones de estilo de Wikipedia. Carece de fuentes o referencias que aparezcan en una fuente acreditada. Podría ser demasiado… … Wikipedia Español
Life-cycle assessment — Cradle to grave redirects here. For other uses, see Cradle to the Grave (disambiguation). A life cycle assessment (LCA, also known as life cycle analysis, ecobalance, and cradle to grave analysis) is a technique to assess environmental impacts … Wikipedia
Life cycle of a relational database — The life cycle of a relational database is the cycle of development and changes that a database goes through during the course of its life. The cycle typically consists of several stages. There is possibility that the database designer/developer… … Wikipedia
Dynamic Systems Development Method — (DSDM) is a software development approach originally based upon the Rapid Application Development (RAD) methodology. DSDM is an iterative and incremental approach that emphasizes continuous user involvement. Its goal is to deliver software… … Wikipedia
Dynamic systems development method — Model of the DSDM Atern project management method … Wikipedia
Safety life cycle — The safety life cycle is the series of phases from initiation and specifications of safety requirements, covering design and development of safety features in a safety critical system, and ending in decommissioning of that system. The basic… … Wikipedia
Systems design — is the process or art of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. One could see it as the application of systems theory to product development. There is some overlap and… … Wikipedia
Systems Modeling Language — Sysml diagrams collage The Systems Modeling Language (SysML) is a general purpose modeling language for systems engineering applications. It supports the specification, analysis, design, verification and validation of a broad range of systems and … Wikipedia
Systems engineering process — A systems engineering process is a process for applying systems engineering techniques to the development of all kinds of systems. Systems engineering processes are related to the stages in a system life cycle. The systems engineering process… … Wikipedia
Cycle De Développement — Il existe différents types de cycles de développement entrant dans la réalisation d un logiciel. Ces cycles prendront en compte toutes les étapes de la conception d un logiciel. Sommaire 1 Les grandes familles 1.1 Modèle en cascade 1.2 Cycle en V … Wikipédia en Français