microsoft power point - sdlc1

85
The Systems Development Life Cycle AMIT K. BHARDWAJ Life Cycle (SDLC)

Upload: piyush1053

Post on 29-Nov-2014

88 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Microsoft Power Point - SDLC1

The Systems Development Life Cycle

AMIT K. BHARDWAJ

Life Cycle(SDLC)

Page 2: Microsoft Power Point - SDLC1

The System Development Life

CycleIt was started in the 1960s and 1970s as the first

documented approach to computer systems

development. All the stages of the development

system are thought about, planned, monitored

AMIT K. BHARDWAJ

system are thought about, planned, monitored

and Completed. SDLC is the process by which an

Information System comes to life and maintains

its usefulness to a business as it moves from

inception to replacement.

Page 3: Microsoft Power Point - SDLC1

Business need - changing business conditions prompt request for new/improved computer system

System Development Life

Cycle

AMIT K. BHARDWAJ

new/improved computer system

System development - analyse, design and implement a system to meet the business need

System installation - move new system into production

Page 4: Microsoft Power Point - SDLC1

System operation - period of active use

System obsolescence - system no

System Development Life

Cycle

AMIT K. BHARDWAJ

System obsolescence - system no longer reflects changed business needs

Page 5: Microsoft Power Point - SDLC1

Need

Develop

Obsolete

System Life Cycle - illustration

AMIT K. BHARDWAJ

Develop

Install

Operate

Page 6: Microsoft Power Point - SDLC1

Critical Success Factors for Systems Development:

� effectively meet the stated business needs

System Development

Challenges

AMIT K. BHARDWAJ

� effectively meet the stated business needs

� build a flexible and maintainable system

� build a reliable system

� produce a system on time and within

budget

Page 7: Microsoft Power Point - SDLC1

The phases of the SDLC are described

Differently depending on the author:

Kendall & Kendall terminology

Terminologies for the SDLC phases

AMIT K. BHARDWAJ

Kendall & Kendall terminology

Shelly terminology

Powers et al terminology

Etc.

Page 8: Microsoft Power Point - SDLC1

Investigation

� Identify problems and opportunities

Determine requirements

System Development Life Cycle

(Kendall & Kendall terminology)

AMIT K. BHARDWAJ

Analysis

Design

Develop software

System Test

Implement and evaluate

Page 9: Microsoft Power Point - SDLC1

System Development Life Cycle

(Kendall & Kendall terminology)

AMIT K. BHARDWAJ

Page 10: Microsoft Power Point - SDLC1

� Systems planning

�Preliminary investigation report

� Systems analysis

�System requirements document

Systems Development Life Cycle

(Shelly terminology)

AMIT K. BHARDWAJ

�System requirements document

� Systems design

�System design specification

� Systems implementation

�Complete functioning information system

� Systems operation and support

�Operational information system

Page 11: Microsoft Power Point - SDLC1

SDLC – (Shelly terminology)

.

AMIT K. BHARDWAJ

Page 12: Microsoft Power Point - SDLC1

� Systems planning

� Purpose – identify problem’s nature/scope

� Systems request – begins the process &

describes desired changes/improvements

Systems Development Life Cycle

AMIT K. BHARDWAJ

describes desired changes/improvements

� Systems planning – includes preliminary

investigation or feasibility study

� End product – preliminary investigation report

Page 13: Microsoft Power Point - SDLC1

� Systems analysis

� Purpose is to learn exactly how the current

system operates

� Fact-finding or requirements

Systems Development Life Cycle

AMIT K. BHARDWAJ

determination is used to define all

functions of the current system

Page 14: Microsoft Power Point - SDLC1

�Options

�Develop a system in-house

�Purchase a commercial package

�Modify an existing system

Systems Development Life Cycle

AMIT K. BHARDWAJ

�Stop development

�The end product for this phase is the systems

requirements document

Page 15: Microsoft Power Point - SDLC1

� Systems design

�Purpose is to satisfy all documented

requirements

�Identify all outputs, inputs, files, manual

Systems Development Life Cycle

AMIT K. BHARDWAJ

�Identify all outputs, inputs, files, manual

procedures, & application programs

�Avoid misunderstanding through manager and

user involvement

�End product is system design specification

Page 16: Microsoft Power Point - SDLC1

� Systems implementation

�Construct/deliver information system

�Prepares functioning, documented system

�Write, test, document application programs

Systems Development Life Cycle

AMIT K. BHARDWAJ

�Write, test, document application programs

�User and manager approval obtained

�File conversion occurs

�Users, managers, IS staff trained to operate and

support the system

�Post-implementation evaluation performed

Page 17: Microsoft Power Point - SDLC1

� Systems operation and support

�New system supports business operations

�Maintenance changes correct errors or meet

requirements

�Enhancements increase system capability

Systems Development Life Cycle

AMIT K. BHARDWAJ

�Enhancements increase system capability

�After several years of operation, systems

experience need for extensive changes

�Systems development life cycle ends with

system replacement

Page 18: Microsoft Power Point - SDLC1

2. Determine requirements

3. Analysis

1. Investigation -Identify problems,opportunities

System Development Life Cycle illustration

AMIT K. BHARDWAJ

3. Analysis

4. Design

5. Develop software

6. System Test

7. Implement and evaluate

Page 19: Microsoft Power Point - SDLC1

Many organisations and many authors use different terminology for the phases of the SDLC

Other Terminology for SDLC phases

AMIT K. BHARDWAJ

of the SDLC

However essentially the same activities are performed

Refer to examples of other terminology

Page 20: Microsoft Power Point - SDLC1

Investigation phase

Analysis and General Design phase

Detailed Design and Implementation

System Development Life Cycle(Powers et al terminology)

AMIT K. BHARDWAJ

Detailed Design and Implementation phase

Installation phase

Review phase

Page 21: Microsoft Power Point - SDLC1

Initial investigation

Feasibility study

� Financial feasibility

Investigation phase

AMIT K. BHARDWAJ

� Financial feasibility

� Technical feasibility

� Operational feasibility

� Legal /ethical feasibility

Page 22: Microsoft Power Point - SDLC1

Existing system review� build model of existing system

New system requirements� from User’s point of view

Analysis and General Design phase

AMIT K. BHARDWAJ

� from User’s point of view

New system design� sufficient information for management to decide

whether to proceed

Implementation and Installation planning� plan to cover next phases

Page 23: Microsoft Power Point - SDLC1

Technical design� for programs (pseudo-code), files, records,

reports, screens

Test specifications and Testingprepare test plans

Detailed Design and Implementation phase

AMIT K. BHARDWAJ

prepare test plans

Programming and Testing� write and test program code

User Training

System and Acceptance test� by Users, simulating production conditions

Page 24: Microsoft Power Point - SDLC1

File conversion� run programs to convert files into new format

System installation� critical system transition to production

Installation phase

AMIT K. BHARDWAJ

� critical system transition to production

Options for installation are:� Cutover can be abrupt

� Operate old and new systems in parallel (for 2 weeks)

� Phase in new system, over time

� Install version of the system

Page 25: Microsoft Power Point - SDLC1

Development recap

� team review of project, for benefit of

future projects

Post implementation review

Review phase

AMIT K. BHARDWAJ

Post implementation review

� evaluate how well the system is working

� to what extent are project benefits being

achieved?

Page 26: Microsoft Power Point - SDLC1

Business Survey

Feasibility

Systems Analysis

Systems Design

S D L C Phases (general)

AMIT K. BHARDWAJ

Systems Design

Programming

Testing

Implementation

Post Implementation Review

Maintenance

Page 27: Microsoft Power Point - SDLC1

AMIT K. BHARDWAJ

Page 28: Microsoft Power Point - SDLC1

Management needs to know:

� project is on time

� project is within budget

Why have a System Development Life Cycle?

AMIT K. BHARDWAJ

� project is within budget

These project control stages (checkpoints) are the end of each phase of the System Development Life Cycle

Page 29: Microsoft Power Point - SDLC1

Initial broad term report

Estimate:

� project cost

1. Business Survey

AMIT K. BHARDWAJ

� project cost

� project resources (people)

� project time

Recommend whether go on to Feasibility

Page 30: Microsoft Power Point - SDLC1

Assess feasibility of the project:� operational feasibility

� technical feasibility

2. Feasibility

AMIT K. BHARDWAJ

� financial feasibility

Identify possible solutions and options

Recommend most appropriate to management

Outline of development plan

Page 31: Microsoft Power Point - SDLC1

Information Gathering

User Requirements refined to specify the new system

Goal - User Requirements Document

3. Systems Analysis

AMIT K. BHARDWAJ

Goal - User Requirements Document� design for the new system

� just enough technical detail for the customer

Report contents geared towards customer

Page 32: Microsoft Power Point - SDLC1

Convert User Requirements into computer terms

Specify

4. Systems Design

AMIT K. BHARDWAJ

Specify

� how system will operate

� what programs are needed

� what the programs will do

Page 33: Microsoft Power Point - SDLC1

Convert specifications into program code

Prepare test plans� for unit testing (individual programs)

5. Programming and Design Aim

AMIT K. BHARDWAJ

� for unit testing (individual programs)

Page 34: Microsoft Power Point - SDLC1

Design aim must ensure that the system is:� Accurate • Implementable

� Maintainable • Acceptable

5. Programming and Design Aim

AMIT K. BHARDWAJ

� Maintainable • Acceptable

� Timely • Flexible

� Robust • Economic

� Efficient • Secure

� Compatible • Portable

Page 35: Microsoft Power Point - SDLC1

System Testing & Acceptance Testing

System Testing

� test program as part of the whole

6. Testing - make system “bullet

proof”

AMIT K. BHARDWAJ

� test program as part of the whole

system e.g. new program in whole

payroll system

Page 36: Microsoft Power Point - SDLC1

Acceptance Testing

� Customers / Users now involved

� usually have their own test plans

� sometimes also use programmer

6. Testing - make system “bullet

proof”

AMIT K. BHARDWAJ

� sometimes also use programmer

tests

Sign-Off document - signed by Customer Coordinator

Page 37: Microsoft Power Point - SDLC1

Implementation Plan or Update Log

Provides project leader with a list of all:

� files - new / amended

7. Implementation

AMIT K. BHARDWAJ

� files - new / amended

� screen messages - new / amended

� programs (sources) - new / amended

Timing for lodgment in production environment decided with customer

Page 38: Microsoft Power Point - SDLC1

BUILDING of the system is now complete

Development recap

� team review - what can be learned from the

project

8. Post Implementation

Review

AMIT K. BHARDWAJ

project

Post Implementation Review (after 3 or 4

months)

� degree to which system meets objectives

� often results in recommended improvements

Page 39: Microsoft Power Point - SDLC1

Ensure customer changes to the system:� retain quality

� adhere to standards and procedures

Now back at the beginning of the SDLC

9. Maintenance

AMIT K. BHARDWAJ

Now back at the beginning of the SDLCSize of maintenance change will determine whether all (or subset of) phases of the system Development Life Cycle are required

Page 40: Microsoft Power Point - SDLC1

Life-Cycle Models

1. The waterfall model

2. The spiral model

3. Rapid application development

AMIT K. BHARDWAJ

3. Rapid application development

4. Joint application development

5. The V model

Page 41: Microsoft Power Point - SDLC1

Each Phase of SDLC has an

“Output”

PhaseRequirements analysis

OutputSoftware Requirements Specification (SRS),

Design Document,

AMIT K. BHARDWAJ

Design

Implementation

Test

Design Document,Design Classes

Code

Test Report, Change Requests

Page 42: Microsoft Power Point - SDLC1

“Life-Cycle” Models

Single-Version Models

Incremental Models

Single-Version with Prototyping

AMIT K. BHARDWAJ

� Single-Version with Prototyping

Iterative Models

Page 43: Microsoft Power Point - SDLC1

“Life-Cycle” Models (1)

Single-Version Models

� Waterfall Model

� Waterfall Model with “back flow”

AMIT K. BHARDWAJ

� “V” model: Integrating testing

Page 44: Microsoft Power Point - SDLC1

Incremental vs. Iterative

These sound similar, and sometimes are

equated.

Subtle difference:

AMIT K. BHARDWAJ

� Incremental: add to the product at each phase

� Iterative: re-do the product at each phase

Some of the models could be used either way

Page 45: Microsoft Power Point - SDLC1

The waterfall model

� First described by Royce in 1970

There seem to be at least as many

The Waterfall model

AMIT K. BHARDWAJ

There seem to be at least as many versions as there are authorities -perhaps more

Page 46: Microsoft Power Point - SDLC1

Waterfall Model

Requirements

Design

AMIT K. BHARDWAJ

Design

Implementation

Test

Each phase “pours over” into

the next phase.

Page 47: Microsoft Power Point - SDLC1

Waterfall Model

Managers love waterfall models:

� Nice milestones

� No need to look back (linear system), one

activity at a time

AMIT K. BHARDWAJ

activity at a time

� Easy to check progress : 90% coded, 20%

tested

Page 48: Microsoft Power Point - SDLC1

Waterfall Model

� Traditional life cycle

� Analysis, design, code, test & maintenance

� Top down rigidity

� No iteration between phases

AMIT K. BHARDWAJ

� No iteration between phases

� Difficult accommodating uncertainty & risk

� Black box approach

Page 49: Microsoft Power Point - SDLC1

Why Not Waterfall?

2. Requirements are not stable/unchanging.

The market changes—constantly.

The technology changes.

AMIT K. BHARDWAJ

The technology changes.

The goals of the stakeholders change.

Page 50: Microsoft Power Point - SDLC1

Why Not Waterfall?

3. The design may need to change during

implementation.

Requirements are incomplete and changing.

AMIT K. BHARDWAJ

Too many variables, unknowns, and novelties.

A complete specification must be as detailed as code itself.

Software is very “hard”.

� Discover Magazine, 1999: Software characterized as the most

complex “machine” humankind builds.

Page 51: Microsoft Power Point - SDLC1

V - Model

The V Model Distinguishes

between Development and

Verification Activities

AMIT K. BHARDWAJ

Verification Activities

Page 52: Microsoft Power Point - SDLC1

V - ModelEach phase has corresponding test or validation counterpart

Requirements Analysis

System Design Integration

Acceptance Test

AMIT K. BHARDWAJ

System Design

Program Design

Implementation

Unit Test

Integration Test

Page 53: Microsoft Power Point - SDLC1

V - ModelLevel of Detail

LowAcceptance

TestingProblem with V-Model:

Client’s Perception is the same as the

Developer’s Perception

Client’s Understanding

Developer’s Understanding

RequirementsElicitation

AnalysisSystem

Testing

AMIT K. BHARDWAJ

Project Time

High

Analysis

Design

Testing

Object Design Unit Testing

Integration Testing

Page 54: Microsoft Power Point - SDLC1

Problems with V - Model

The V model does not model iteration

AMIT K. BHARDWAJ

Page 55: Microsoft Power Point - SDLC1

Boehm Spiral Model

Four major activities

1. Determination of objectives, alternatives, and constraints

2. Risk analysis and prototyping

AMIT K. BHARDWAJ

2. Risk analysis and prototyping

3. Waterfall approach to next level product

4. Plan for the next phase cycle:

Page 56: Microsoft Power Point - SDLC1

Boehm Spiral Model

AMIT K. BHARDWAJ

Page 57: Microsoft Power Point - SDLC1

Identify risks

Assign priorities to risks

Develop a series of prototypes for the identified risks

starting with the highest risk.

Spiral Model Deals with Iteration

AMIT K. BHARDWAJ

Use a waterfall model for each prototype

development (“cycle”)

If a risk has successfully been resolved, evaluate the

results of the “cycle” and plan the next round

If a certain risk cannot be resolved, terminate the

project immediately

Page 58: Microsoft Power Point - SDLC1

Limitations of the Waterfall

and Spiral ModelsNeither of these model deals well with frequent change� The Waterfall model assume that once you are

done with a phase, all issues covered in that

AMIT K. BHARDWAJ

done with a phase, all issues covered in that phase are closed and cannot be reopened

� The Spiral model can deal with change between phases, but once inside a phase, no change is allowed

What do you do if change is happening more frequently? (“The only constant is the change”)

Page 59: Microsoft Power Point - SDLC1

Rapid Application

DevelopmentRAD is a methodology for compressing the analysis, design, build, and test phases into a series of short, iterative development cycles.

AMIT K. BHARDWAJ

development cycles.

This has a number of distinct advantages over the traditional

sequential development model.

Page 60: Microsoft Power Point - SDLC1

AMIT K. BHARDWAJ

Page 61: Microsoft Power Point - SDLC1

Rapid Application Development

Iteration allows for effectiveness and self-correction.

Iterations results into many small refinements and improvements.

AMIT K. BHARDWAJ

Iterations results into many small refinements and improvements.

An important, fundamental principle of iterative development is that each iteration delivers a functional version of the final system

Page 62: Microsoft Power Point - SDLC1

Rapid Application Development

Like prototyping, uses iterative

development

Uses tools to speed up developmentGUI

AMIT K. BHARDWAJ

� GUI

� reusable code

� code generation

� programming, language testing and debugging

Page 63: Microsoft Power Point - SDLC1

Rapid Application Development

RAD projects are typically staffed with small integrated teams comprised of developers, end users, and IT technical resources.

Small teams, combined with short, iterative

AMIT K. BHARDWAJ

Small teams, combined with short, iterative development cycles optimizes speed, unity of vision and purpose, effective informal communication and simple project management.

Page 64: Microsoft Power Point - SDLC1

Rapid Application Development

High Speed

High Quality

And Lower Cost

Quality is a primary concept in the RAD

AMIT K. BHARDWAJ

Quality is a primary concept in the RAD environment. Systems developed using the RAD development path meet the needs of their users effectively and have low maintenance costs.

Page 65: Microsoft Power Point - SDLC1

Preliminary working version of a system (or one of its parts)

built quickly and inexpensively

using “friendly, powerful” software

reviewed by end users

Prototyping

AMIT K. BHARDWAJ

reviewed by end users

suggest changes for system improvements.

Page 66: Microsoft Power Point - SDLC1

Iterative process, say 10 versions

Result - evolve to become final system, or

... throw away, but clarified SDLC

Prototyping

AMIT K. BHARDWAJ

... throw away, but clarified SDLC requirements

Page 67: Microsoft Power Point - SDLC1

Identify Basic User RequirementsIdentify Basic User Requirements

Rapidly Develop PrototypeRapidly Develop Prototype

Prototyping Process

AMIT K. BHARDWAJ

Users work with PrototypeUsers work with Prototype

Obtain User FeedbackObtain User Feedback

Modify the PrototypeModify the Prototype

IterativeIterativeenhancementenhancement

ThrowawayThrowawayPrototypePrototype

EvolutionaryEvolutionaryPrototypePrototype

Page 68: Microsoft Power Point - SDLC1

Prototype

Steps followed by a systems analyst using a prototype during the systems analysis phase are

AMIT K. BHARDWAJ

the systems analysis phase are shown

Page 69: Microsoft Power Point - SDLC1

Prototype

*

AMIT K. BHARDWAJ

Page 70: Microsoft Power Point - SDLC1

Prototyping can help to obtain complete and reliable system requirements

Prototyping process:

Prototyping

AMIT K. BHARDWAJ

Prototyping process:

� iterative

� User works with latest version of prototype

to determine the refined requirements

� prototype quickly amended (by the User

and systems analyst)

Page 71: Microsoft Power Point - SDLC1

Interactive software development tools

Allows designer to quickly:

� design screens, create files, data entry

Prototyping tools

AMIT K. BHARDWAJ

design screens, create files, data entry

routines,

� basic reporting functions

Tools should be flexible and easy to use

Page 72: Microsoft Power Point - SDLC1

Prototyping goal is to enhance the System development process. Prototyping focuses on the Analysis and General Design phase.

Prototyping and the SDLC

AMIT K. BHARDWAJ

Outcome –� one extreme is prototype actually becomes the

finished system (after many iterations)

� other extreme is throw away prototype and build system using conventional methods

� BUT now have very high level of confidence with accuracy and completeness of User Requirements

Page 73: Microsoft Power Point - SDLC1

Prototyping

Performing analysis, design, and implementation phases concurrently, and repeatedly

Users see system functionality quickly

AMIT K. BHARDWAJ

Users see system functionality quickly and provide feedback

Decision maker learns about problem

But can lose gains in repetition

Page 74: Microsoft Power Point - SDLC1

Prototyping

Design

Analysis

Need

Planning

AMIT K. BHARDWAJ

Design

Implementation

Prototype

System

Prototype Not OKPrototype OK

Page 75: Microsoft Power Point - SDLC1

Uses of Prototyping� Verifying user needs

� Verifying that design = specifications

� Selecting the “best” design

AMIT K. BHARDWAJ

� Selecting the “best” design

� Developing a conceptual understanding of novel

situations

Page 76: Microsoft Power Point - SDLC1

Uses of Prototyping� Testing a design under varying environments

� Demonstrating a new product to upper

management

AMIT K. BHARDWAJ

� Implementing a new system in the user

environment quickly

Page 77: Microsoft Power Point - SDLC1

Prototyping

Proposed Advantages

� Improved user communication

� Users like it

� Low risk

Disadvantages in practice

� Prototypes are used “as is”

� Integration often difficult

� Design flaws

Poor performance

AMIT K. BHARDWAJ

� Low risk

� Avoids over-design

� Experimentation and innovation

� Spreads labor to user department

� Poor performance

� Difficult to manage process

� Creates unrealistic expectations

� Documentation is difficult

Page 78: Microsoft Power Point - SDLC1

Advantages of Prototyping

Short development time

Short user reaction time

AMIT K. BHARDWAJ

Short user reaction time

Improved user understanding

Low cost

Page 79: Microsoft Power Point - SDLC1

Disadvantages of Prototyping

Gains may be lost in

Thorough understanding information

System’s benefits and costs

Detailed description of information needs

AMIT K. BHARDWAJ

Easy to maintain IS design

Well-tested IS

Well-prepared users

Page 80: Microsoft Power Point - SDLC1

Alternative methodologies to SDLC are: � Structured approaches.

� Structured System Analysis & Design Methodology

Alternative system development

methodologies

AMIT K. BHARDWAJ

Methodology

� Yourdon

� Jackson system development

� Merise

� Work flow systems

� Prototyping.

Page 81: Microsoft Power Point - SDLC1

Alternative methodologies to SDLC are:

� Joint Application Development

� Rapid Application Development

Alternative system development

methodologies

AMIT K. BHARDWAJ

� Rapid Application Development

� Object oriented analysis and design.

� Soft Systems Methodology.

Page 82: Microsoft Power Point - SDLC1

JAD

Joint application development (JAD)� Task force of users, managers, and IS staff

� Objectives� Gather information

AMIT K. BHARDWAJ

� Gather information� Discuss business needs� Define the new system requirements

� Methods� Team usually meets at specific location� Team has project leader and recorder(s)� Key users participate in intense development effort

� JAD can be costly, but highly effective

Package

Click to see Figure 3-11

Page 83: Microsoft Power Point - SDLC1

RADRapid application development (RAD)

� Team method similar to JAD, but goes further

� RAD phases resemble a mini-SDLC

� Requirements planning, user design, construction, and cutover

AMIT K. BHARDWAJ

cutover

� RAD involves a continuous design process

� Team can react quickly

� Final objective is a functioning system

� RAD can be faster and less costly, but stresses

system mechanics rather than strategic needs

Page 84: Microsoft Power Point - SDLC1

OOAD

Object-oriented (O-O) systems development� Object-based model

� Objects and their attributes are abstract entities

� Classes and subclasses

AMIT K. BHARDWAJ

� Classes and subclasses

Page 85: Microsoft Power Point - SDLC1

Review Questions

1. List and describe the major stages of the

systems development life cycle.

2. What is prototyping and what

advantages does it offer in the SDLC?

AMIT K. BHARDWAJ

advantages does it offer in the SDLC?

3. Explain why the investigation phase and

the initial analysis and design phases are

perhaps the most critical stages of the

SDLC.

4. Explain the systems life cycle and

describe why this concept is important to

systems developers.