710: foundations of information systems chapter 8: information systems development

28
710: Foundations of Information Systems Chapter 8: Information Systems Development

Upload: edmund-ross

Post on 25-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 710: Foundations of Information Systems Chapter 8: Information Systems Development

710: Foundations of Information Systems

Chapter 8: Information Systems Development

Page 2: 710: Foundations of Information Systems Chapter 8: Information Systems Development

2 © Jakob Iversen, 2003

Spectacular Software

• Baggage handling at Denver International– Delayed the opening of the airport for months

causing billions of dollars in lost revenue

• Space Shuttle– Runs on 5 computers from the 1970s. Modified

for every mission. Last error recorded 10 years ago.

• Ariane 5– Exploded because software was reused in new

context

• Linux/Apache/Mozilla (and other open source products)– Developed by people who never see each other

Page 3: 710: Foundations of Information Systems Chapter 8: Information Systems Development

3 © Jakob Iversen, 2003

Characteristics of Software

• Software is developed – not produced

• Software doesn’t wear out (but still requires maintenance)

• Most software is developed for specific purposes – not based on standardized components

• Changes/mistakescan be costly

110

100

Definition Development Maintenance

Price of changes

Page 4: 710: Foundations of Information Systems Chapter 8: Information Systems Development

5 © Jakob Iversen, 2003

Wait a minute…

• I’m not going into IT, why should I care about how systems are developed? This is never going to be my job!– True, but most projects involve users and

business managers need to understand the process.

– You may be a customer of a project– Most businesses depend on their IS for

survival (remember strategic systems?)– You will likely be involved in at least one

systems development project in your career (grab the chance if you get it).

Page 5: 710: Foundations of Information Systems Chapter 8: Information Systems Development

6 © Jakob Iversen, 2003

Participants in Systems Development

Page 6: 710: Foundations of Information Systems Chapter 8: Information Systems Development

7 © Jakob Iversen, 2003

The Information Systems Planning Process

• Purpose: Look at the entire company before deciding on specific systems to be developed

• Overall strategy determines what types of systems are developed

Page 7: 710: Foundations of Information Systems Chapter 8: Information Systems Development

8 © Jakob Iversen, 2003

Steps in IS Planning

Page 8: 710: Foundations of Information Systems Chapter 8: Information Systems Development

9 © Jakob Iversen, 2003

Classical Approach: The Waterfall Model • Advantages

– Easy to understand– Easy to start using– Known from other

disciplines– Can be used for controlling – Curbs featuritis (scope

creep)

• Disadvantages– Highly inflexible– No iteration possible– No changes to

requirements– Results come late– More effort in some phases

Systems Investigation

Analysis / Req. Spec.

Design

Generate Code

Test

Maintenance

Page 9: 710: Foundations of Information Systems Chapter 8: Information Systems Development

10 © Jakob Iversen, 2003

Systems Development Life Cycle

Page 10: 710: Foundations of Information Systems Chapter 8: Information Systems Development

11 © Jakob Iversen, 2003

Phase: Systems Investigation

• Purpose: Determine probability of success of proposed system’s development project

• Feasibility Analysis

Page 11: 710: Foundations of Information Systems Chapter 8: Information Systems Development

12 © Jakob Iversen, 2003

Phase: Systems Analysis

• Purpose: Examine the business context, and define the problem.

• Major activity: – Collect data about current system(s),

desired new system• Deliverable: Systems Requirements

– What is the system supposed to do?• Problem: Communication between

users and developers

Page 12: 710: Foundations of Information Systems Chapter 8: Information Systems Development

13 © Jakob Iversen, 2003

Sources of Data

Page 13: 710: Foundations of Information Systems Chapter 8: Information Systems Development

14 © Jakob Iversen, 2003

Request for Proposal (RFP)

• One of the most important documents generated during systems development.

• Results in a formal bid that is used to determine who gets a contract for new or modified systems.

• Specifies required resources in detail.

Page 14: 710: Foundations of Information Systems Chapter 8: Information Systems Development

15 © Jakob Iversen, 2003

Phase: Testing

• Purpose: Making sure the system does what it is intended to do (adheres to specification)

• Not just done at the end!

• Test specification is ideally developed with req. spec. (V-model)

Page 15: 710: Foundations of Information Systems Chapter 8: Information Systems Development

16 © Jakob Iversen, 2003

Phase: Systems Design

• Analysis: WHAT will the system do?

• Design: HOW will it do it?

• Deliverable: Design Specification– Final documentation

before programming starts

• Issue: Control Scope creep (featuritis/gold plating)

• Elements of Design– Interface design

• What does it look like? Standards?

– Data design• How are the data

structured?– Process design

• What does it do? Rules?

– Object design• How are objects

defined and structured?

– Physical design• Which hardware?

Page 16: 710: Foundations of Information Systems Chapter 8: Information Systems Development

17 © Jakob Iversen, 2003

Phase: Programming

• Purpose: Use programming language to code the design specification

• Typically the most resource-demanding phase (but not the most critical in terms of project success)

• Deliverable: A running system

Page 17: 710: Foundations of Information Systems Chapter 8: Information Systems Development

18 © Jakob Iversen, 2003

Implementing New Systems

Strategy Description Time Req.

Cost Risk

Direct conversion

Old system replaced overnight

Minimal Low High

Pilot start-up

New system used in a few parts of organization

Moderate

Moderate

Moderate

Phased implemen-tation

Components of system introduced one at a time

High Moderate to high

Low

Parallel implemen-tation

Old and new system used simultaneously for some time

High High Low

Page 18: 710: Foundations of Information Systems Chapter 8: Information Systems Development

19 © Jakob Iversen, 2003

Start-Up Options(implementation)

Page 19: 710: Foundations of Information Systems Chapter 8: Information Systems Development

20 © Jakob Iversen, 2003

Maintaining and Reviewing Systems

• Maintenance– Improvements,

modifications, corrections, updates, etc.

– New needs may come up

– New uses of existing systems

– Most of the cost is in this phase!

• Post Implementation Review– Some months after

system delivery– What was learned

from the effort?– Involves both

customers and developers

– Facilitates learning from experiences

– Is often ‘forgotten’

Page 20: 710: Foundations of Information Systems Chapter 8: Information Systems Development

21 © Jakob Iversen, 2003

Analyze Design Code Test Increment 11

Analyze Design Code Test Increment 33

Analyze Design Code Test Increment 22

Incremental Model

• Total system is developed in increments• First increment: Basic functions implemented

– 80/20 rule: 80% of needs covered in 20% of functionality• Change requests are pooled and implemented in later increments• A large system can be developed by fewer people (over longer time)• This model is used for most consumer software (PC software)• Can be more expensive than waterfall model (but may give better

results)

NOTE: Not included in the book!

Page 21: 710: Foundations of Information Systems Chapter 8: Information Systems Development

22 © Jakob Iversen, 2003

Prototyping, JAD, RAD

Build/ReviseModel

Listen to Customer

CustomerTests Model

• Characteristics– Involves customers/users– Build-and-discard– Iterative

• Advantages– System meets needs– Handles uncertainty– Short turn-around time

• Disadvantages– Prototype looks finished:

customer won’t wait– Quick-and dirty

development forgotten along the way

Page 22: 710: Foundations of Information Systems Chapter 8: Information Systems Development

23 © Jakob Iversen, 2003

Extreme Programming (XP)• Take good software

engineering practices and take them to the extreme

• Becoming a very popular method

• Focuses on delivering results very quickly

• An example of an ”agile methodology”

• Learn more– www.xprogramming.org– www.extremeprogrammi

ng.org

• Peer review is good– Extreme: Pair

programming• Customer involvement is

good– Extreme: Customer is

part of team• Communication is good

– Extreme: Everybody in the same room

– Very little written documentation

• Fast results are good– Release system every 2-

4 weeks• Testing is good

– Extreme: Test before writing the code

Page 23: 710: Foundations of Information Systems Chapter 8: Information Systems Development

24 © Jakob Iversen, 2003

Capability Maturity Model for Software (CMM)

• Becoming very popular for software process improvement (SPI)

• Takes a long time (5-10 yrs to L5)

• Pervades all aspects of SW-development

Page 24: 710: Foundations of Information Systems Chapter 8: Information Systems Development

25 © Jakob Iversen, 2003

The Make-or-buy decision

• Do-it-yourself– Meets all needs, but expensive and

possibly low quality• Buy packaged software

– Cheap, but may not meet all needs– Usually high quality

• Customize packages – Problems when upgrading– Possibly low quality of customizations

Page 25: 710: Foundations of Information Systems Chapter 8: Information Systems Development

26 © Jakob Iversen, 2003

Page 26: 710: Foundations of Information Systems Chapter 8: Information Systems Development

27 © Jakob Iversen, 2003

Outsourcing of SW development

• Hiring a consultant or software house• Advantages

– Better expertise, Fines for delays, Clear division of responsibility, Larger projects can be handled

• Problems– Difficult communications, Problems stay hidden,

More expensive, Loss of expertise/knowledge,

• Can also be international (e.g. India)– Raises a host of new issues– Companies getting more experienced with this– A very hot topic as IT jobs are lost in the US

Page 27: 710: Foundations of Information Systems Chapter 8: Information Systems Development

28 © Jakob Iversen, 2003

Outsourcing of IT Operations

• Focus on core competencies– “Do what you do best, outsource the rest”

• Common for large companies to outsource IT operations– Often billions of dollars over 10+ years

• Major players– EDS, IBM, AT&T, CSC

• Advantages– No need to worry about day-to-day operations

of network, PCs etc.

• Disadvantages– Difficult to get out of contract

Page 28: 710: Foundations of Information Systems Chapter 8: Information Systems Development

29 © Jakob Iversen, 2003

Next Week

• Lecture– Chapter 9

• Group Presentations– Team 7 and 8

• Student Opinion Surveys• Exam

– Blackboard– Friday – Sunday – Two hours available– Multiple choice and short answer questions