How To Choose A System Development Life Cycle



Similar documents
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN

Software Engineering

IT2404 Systems Analysis and Design (Compulsory)

Systems Analysis and Design

Systems Analysis and Design

Systems Oriented Architecture, Unified Process Life Cycle, and IS Model Curriculum Compatibility: Meeting Industry Needs

DATABASE DEVELOPMENT LIFE CYCLE

Classical Software Life Cycle Models

The most suitable system methodology for the proposed system is drawn out.

The W-MODEL Strengthening the Bond Between Development and Test

Scaling Down Large Projects to Meet the Agile Sweet Spot

AN INFORMATION SYSTEM TO IMPROVE CUSTOMER SERVICE IN A MAJOR RETIREMENT COMMUNITY

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler

How To Understand The Limitations Of An Agile Software Development

Chapter 1 The Systems Development Environment

The Divided Software Life Cycle of ERP Packages

Hamid Faridani March 2011

How To Understand Software Engineering

Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture

The use of Trade-offs in the development of Web Applications

Test Cases Design for Software Database Provisioning Development

Chapter 4 Software Lifecycle and Performance Analysis

A Survey of Software Development Process Models in Software Engineering

Agile Engineering Introduction of a new Management Concept

PROJECT MANAGEMENT METHODOLOGY OF OBJECT- ORIENTED SOFTWARE DEVELOPMENT

Requirements Analysis (RA): An Analytical Approach for Selecting a Software Process Models ABSTRACT

SYLLABUS. OFFICE AND HOURS: Karnoutsos 536 (Access through K506) M 12, T 1, R 10, 12, 2 or by appointment. I am available by at all times.

WHAT MAKES AGILE DEVELOPMENT DIFFERENT?: A CASE STUDY OF

Principles of Software Engineering: Software Methodologies. COSI 120b, Spring 2005

CIS490 Design in Software Engineering. Course Syllabus for the Virtual Class

Agile Techniques for Object Databases

How To Model Software Development Life Cycle Models

Christina Wallin ABB Corporate Research Department of Industrial IT Västerås +46 (0)

Name of pattern types 1 Process control patterns 2 Logic architectural patterns 3 Organizational patterns 4 Analytic patterns 5 Design patterns 6

D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013

Project Management Methodologies By Jason Charvat, published by Wiley, NJ, 2003 (A book review by R. Max Wideman)

Software Life Cycles and Configuration Management

Process Models and Metrics

CS4507 Advanced Software Engineering

Systems Analysis and Design

A FRAMEWORK FOR INTEGRATING SARBANES-OXLEY COMPLIANCE INTO THE SOFTWARE DEVELOPMENT PROCESS

IT3205: Fundamentals of Software Engineering (Compulsory)

Basic Testing Concepts and Terminology

LECTURE 1. SYSTEMS DEVELOPMENT

Development Methodologies Compared

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

What is a life cycle model?

IES - Introduction to Software Engineering

(Refer Slide Time: 01:52)

Objectives. The software process. Basic software process Models. Waterfall model. Software Processes

A COMPARISON BETWEEN DIFFERENT TYPES OF SOFTWARE DEVELOPMENT LIFE CYCLE MODELS IN SOFTWARE ENGINEERING

GPS - Software Project Management

TOGAF usage in outsourcing of software development

Educational Software Development Life Cycle Stages. Salah Alkhafaji, B. Sriram. Sur University College, Sur, Sultanate of Oman

Chapter 8 Approaches to System Development

COURSE OUTLINE OLG 611 : STRATEGIC HUMAN RESOURCE MANAGEMENT THE OPEN UNIVERSITY OF TANZANIA FACULTY OF BUINESS MANAGEMENT

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

Software Process and Models

Software Project Models

Scrum Method Implementation in a Software Development Project Management

To introduce software process models To describe three generic process models and when they may be used

I219 Software Design Methodology

The Challenge of Productivity Measurement

3C05: Unified Software Development Process

Evolving a Ultra-Flow Software Development Life Cycle Model

A Software Project Management Innovation (SPM) Methodology: A Novel Method for Agile Software Development

STUDENT ATTITUDES TOWARD WEB-BASED COURSE MANAGEMENT SYSTEM FEATURES

RULE BASED EXPERT SYSTEM FOR SELECTING SOFTWARE DEVELOPMENT METHODOLOGY

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

!! " "!! # $ % " & ' $ % (! %) * +, $ ( ) ' " -

Software Life-Cycle. Series of steps through which software product progresses. A life-cycle is selected during requirement Phase

IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3

Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3

Elite: A New Component-Based Software Development Model

TDWI strives to provide course books that are content-rich and that serve as useful reference documents after a class has ended.

Management Science Letters

Planning a Project with the Rational Unified Process Author: David West

WORK BREAKDOWN STRUCTURE: A TOOL FOR SOFTWARE PROJECT SCOPE VERIFICATION

Information Strategy Planning in Construction: Framework and Processes

Software Engineering for Software-Intensive Systems: III The Development Life Cycle

Software Development Processes. Software Life-Cycle Models

A Risk Management Approach Based on Situational Method Engineering

Software Development Life Cycle

A Comparison between Five Models of Software Engineering

Object-Oriented and Classical Software Engineering

And the Models Are System/Software Development Life Cycle. Why Life Cycle Approach for Software?

Instructional Scaffolding for Online Courses

Chapter 3 Technology adapted

COMP 354 Introduction to Software Engineering

Writing Quality Learning Objectives

Transcription:

EVALUATING THE SYSTEMS DEVLOPMENT LIFE CYCLE Dr. Roy A. Boggs, Florida Gulf Coast University, Rboggs@fgcu.edu David DeMoya, Florida Gulf Coast University, ddemoya@swfla.rr.com ABSTRACT The Systems Development Life Cycle is represented by an increasing number of models, from the Historical-, Incremental-, V-, W-, Spiral-, and Unified models to the Ethics model. Each model has its particular strengths and weaknesses, a set of characteristics that distinguishes it from other models. The following looks at these characteristics and proposes a process for using them to better understand the various SDLC models. Keywords: Systems Development Life Cycle, SDLC, Systems Analysis and Design INTRODUCTION The discovery, design, development and delivery of information systems are often linked together in a process labeled the Systems Development Life Cycle (SDLC). While many other terms and taxonomies are used, the SDLC process is usually iterative and involves distinct steps leading to a deliverable product. Almost every (M)IS student has studied an SDLC model, especially the well known Waterfall model. Other models exist, with names such as the Historical Model, the Incremental Model, The V-Model, the W-Model, the Spiral Model, the Rational Unified Model and the Ethics Model. New ones can be expected. Which SDLC one prefers is often a matter of personal choice. Sometimes in both private and public agencies one or the other is proscribed, while some are found more in academic literature than in actual practice. Nevertheless, each SDLC has its strengths and weaknesses, and each may provide better functionalities in one situation than in another. SDLCs vary greatly, for example in their scope, end-user involvement, risk assessment, and quality control. There arises then the question of which provides what functionalities and under what expectations. How does one select one SDCL over another, assuming a choice is available? Without providing a direct answer at this point to such questions, the following submits a set of characteristics against which to evaluate and select SDLCs. The goal is to establish criteria, which may in turn be used by students and practitioners to examine and evaluate SDLCs as they learn about them or examine them for possible use. 32

EVALUATING THE SYSTEMS DEVLOPMENT LIFE CYCLE IACIS 2003 TWO SCENERIOS Scenario One: A large governmental agency is considering a project that would enable client agencies to submit documents via the Internet. The project will involve very large numbers of sensitive documents and data protection is a primary consideration. The new system will be highly structured, risk sensitive, static in scope, and exhibit very limited end-user interaction. The project can be built incrementally and is time management sensitive. Scenario Two: A large governmental agency is considering a project that would enable it to track the welfare of children assigned to its client agencies. The client agencies will need to interact on a continual basis from portable computers, creating/retrieving, updating and submitting sensitive data. The project must provide for heavy end-user involvement, must be adaptive to constant change while being developed, should provide for possible outsourcing for development, and is not sensitive to time-to-market pressures. WHICH SDLC? Given the two actual scenarios above (both are from public agencies, one federal and one state), it becomes clear that one or the other SDLC might not suffice for both scenarios. One has only limited end-user interaction and the other is heavily end-user oriented. One is highly structured; the other must be adaptive. One is to be completed in-house; the other must provide for possible outsourcing. And one is time management sensitive; the other is not sensitive to time-to-market considerations. Both are data sensitive. Table I 33

IACIS 2003 EVALUATING THE SYSTEMS DEVLOPMENT LIFE CYCLE Without implying that one or the other of the two SDLC models in Table I is the best or that one or the other might be selected for one of the scenarios above, it can be seen that they are quite different. The model on the left represents the traditional Waterfall model, proposed as early in the 1980s by Silver and Silver, and still in popular use. The model on the right is representative of the FAST System Development Phases (pg 85) of Whitten, Bently and Dittman (2001). For a highly structured project, with clear incremental segmentation, one might be better; while for significant end-user interaction the other might be better. What would be helpful is a set of characteristics against which the SDLCs can be evaluated. As a starting point, the following SDLC characteristics are suggested. These are followed by a table for comparing various SDLCs. The ultimate goal is to arrive at a set of characteristics for both pedagogical and practitioner use. The application is then a better understanding of the various SDLCs that have been, or might be proposed. SDLC CHARACTERISTICS The proposed characteristics below are presented in alphabetical order. To do otherwise might suggest that one characteristic is more important than another. The characteristics are themselves neutral. They have been assembled from discussions, both pro and con, in the literature cited in the bibliography. The goal is to discover which combinations of characteristics are represented in which SDLC and to what degree. First the characteristics. Adaptive The model has the ability to react to operational changes as the project is developed. Change orders are easily assimilated without undue project delay and cost increases. Documented The model s structure and functions are well document. They have been practitioner tested and results are readily available. Incremental Each step of the project is to be completed before another is begun. Project units are distinct and easily identifiable. Iterative Certain aspects of the project, for example risk management, are increasingly developed as the project moves toward completion. The project expands from a prototype, in which all aspects of the project are encapsulated. Maintenance Systems are dynamic and the model offers to ability to produce a final project that is inherently designed for maintenance. This includes such items as cumulative documentation. 34

EVALUATING THE SYSTEMS DEVLOPMENT LIFE CYCLE IACIS 2003 Management Control Management will have the ability to redirect and if necessary redefine the project once it is begun. A key phrase is incremental management control, with each step under tight management control. Outsourcing The project can be designed so that pieces can be outsourced. This might include in-house systems analysis and design with development outsourced under lose or tight specifications. Quality Control Each module of the project can be thoroughly tested before another module is begun. Project requirements are measured against actual results. Milestones and deliverables can be included for each step of the project. Risk Management Levels of risk are identifiable and assessment strategies available. Strategies are proved for over-all and unit risks. Simple The model is easy to understand and to implement. Even if the model can be expanded to various levels, a logical overview exists. Time Management Time-to-market considerations are central. Time-constraints are evident and a strongly structured project formulation is available. End-User Involvement The model lends itself to strong and constant end-user involvement. This includes project design as well as interaction during all phases of project development. The twelve characteristics described above are certainly not all inclusive, but they do offer a solid structure for examining SDLCs for their functionality, strengths and weaknesses. They become ever more useful when combined in a table. One possible table is suggested below. SDLC ASSESSMENTS An assessment table, once completed and verified for relative merit, provides one tool for selecting one SDLC over the other, given the parameters of a proposed project. The statement being made here is that one SDLC does not fit all projects. An understanding of a SDLCs strengths and weaknesses is not only valuable, but it becomes useful for a wide range of pedagogical and practitioner related activities. 35

IACIS 2003 EVALUATING THE SYSTEMS DEVLOPMENT LIFE CYCLE SUMMARY: THE TWO SCENERIOS The completed matrix will make an evaluation and selection of a suitable SDLC quickly and easily available. The first scenario given above would look for relevant evaluations in areas related to project structure, in-house development, time management and limited end-user involvement. The second scenario would look for high end-user involvement, easily adaptable, outsourcing possibilities, and with limited time-to-market considerations. There might be several models that would suffice. However, models with unacceptable limitations could be avoided. There is also a strong pedagogical implication for this activity. There are currently many SDLC models available and they have differing capabilities. New ones are certain to be offered. The SDLC is one of the most important tools for information systems development and management. An overview is not only worthwhile but also important. BIBILIOGRAPHY 1. Alter, S.A. (1978). Development patterns for decision support systems, MIS Quarterly (3), 33 42. 2. Haug, M., Olsen, E. W., Vallet, G., O. Becart, Editors, (2001). Software Management Approaches: Project Management, Estimation, and Life Cycle Support. Springer-Verlag Berlin Heidelberg. 3. Hoffer, Jeffrey A., George, Joey F., Joseph S Valacich (2002). Modern Systems Analysis & Design 3 rd Edition, Prentice Hall. 36

EVALUATING THE SYSTEMS DEVLOPMENT LIFE CYCLE IACIS 2003 4. Ikuta, Keiji. (2002). A List of Important Points of Software Development. [To Be Verified] 5. Janson, M.A. & L.D. Smith, (1985). Prototyping for Systems development: A Critical Appraisal. MIS Quarterly (4), 305-315. 6. Kruchten, Philippe (1999). The Rational Unified Process: an Introduction, Addison Wesley Longman, Inc. 7. Marakas, G.M. (1999). Systems Analysis and Design: An Active Approach. Upper Saddle River, NJ: Prentice Hall. 8. Martin, Robert C. Iterative and Incremental Development (IID). [To Be Verified] 9. Mumford, Enid & Mary Weir (1979). Computer Systems in Work Design the ETHICS Method. Halstead Press, New York. 10. Satzinger, John W., Jackson, Robert B. and Stephen D. Burd (2002). Systems Analysis and Design in a Changing World, Second Edition, Course Technology. 11. Silver, Gerald, and Silver, Joan (1976). Introduction to Systems Analysis, Prentice-Hall. 12. Silver, Gerald, and Silver, Myrna (1989). Systems Analysis and Design, Addison-Wesley Publishing Company, Inc. 13. Weinberg, R.S. (1991). Prototyping and the Systems Development Life Cycle. Journal of Information Systems Management, (2), 47-53. 14. Whitten, Jeffrey L., Bentley, Lonnie D., and Kevin C. Dittmann. (2001). Systems Analysis and Design Methods 5 th Edition. McGraw Hill. 37