Supplementary Note 2

advertisement

CSUN Information Systems

IS Theories & Practices

IS 655:

Supplementary

Note 2

System Development

Process &

Project Management

Process vs. Project

Management

Process Management is an ongoing activity that documents, manages the use of, and improves an organization’s chosen methodology

(the “process”) for system development. Process management is concerned with the activities, deliverables, and quality standards to be applied to all projects.

Project Management is the process of scoping, planning, staffing, organizing, directing, and controlling the development of an acceptable system at a minimum cost within a specified time frame .

2

System Development

Methodologies

Architected Rapid Application Development

(Architected RAD)

Dynamic Systems Development Methodology

(DSDM)

Joint Application Development (JAD)

Information Engineering (IE)

Rapid Application Development (RAD)

Rational Unified Process (RUP)

Structured Analysis and Design

 eXtreme Programming (XP)

3

System Building Blocks

4

1. Scope Definition

Purpose: define perceived problems, opportunities, and directives ( POD ); assess the risk of project; establish scope, preliminary requirements and constraints, participants, budget and schedule

( preliminary study )

Issues: Is the project worthwhile? (using PIECES framework) Define the scope of project

Deliverable: Project charter/plan

Feasibility check: Cancel project / Approve to continue / Reduce or expanse the scope with budget and schedule modification

5

PIECES Framework for

Systems Improvement

P the need to improve performance

I the need to improve information (and data)

E the need to improve economics , control costs, or increase profits

C the need to improve control or security

E the need to improve efficiency of people and processes

S the need to improve service to customers, suppliers, partners, employees, etc.

6

2. Problem Analysis

Purpose: to study and analyze the existing system from the users’ perspectives as they see

Data,

Processes, and Interfaces

Issue: Cost/benefits of building new system to solve these problems

Deliverable: system improvement objectives

(business criteria to evaluate the new system)

Feasibility check: Cancel project / Approve to continue / Reduce or expanse the scope with budget and schedule modification

7

3. Requirement Analysis

• Purpose: discover users’ needs or expectations out of the new system in terms of Data, Processes, and Interfaces

Issue: Specify requirements for the new system

( WHAT TO BE DONE ) without prematurely expressing technical details (HOW)

Errors and omissions in requirement analysis result in user dissatisfaction of final system and costly modifications

Deliverable: business requirements statement

8

4. Logical Design

Purpose: translating business user requirements into a system model that depicts only WHAT TO DO without specifying any possible technical design or implementation of those requirements ( conceptual design ).

Issue: using graphical model of a system to represent user requirements in terms of Data,

Processes and Interfaces , and to facilitate improved communication between system stakeholders.

Caution: Analysis paralysis – excessive system modeling dramatically slows progress toward implementation of the intended system solution.

Deliverable: Logical Systems Models (DFD, ERD etc)

9

5. Decision Analysis

Purpose: identify all candidate solutions, analyze the feasibility of each candidate, recommend a candidate system as the target solution

Issue: Feasibility analysis in terms of technical, operational, economic, schedule ( TOES ), and risk

Deliverable: approved system proposal

Feasibility check: Cancel project / Approve system proposal with budget and schedule modification /

Reduce the scope of proposed solution with budget and schedule modification

10

Decision Analysis

Candidate solutions evaluated in terms of TOES and Risks :

T echnical feasibility – Is the solution technically practical? Does our staff have the technical expertise to design and build this solution?

– O perational feasibility – Will the solution fulfill the users’ requirements? To what degree? How will the solution change the users’ work environment? How do users feel about such a solution?

– E conomic feasibility

– Is the solution cost-effective?

S chedule feasibility – Can the solution be designed and implemented within an acceptable time?

– Risk feasibility – What is the probability of a successful implementation using the technology and approach? (Risk

Management)

11

6. Physical Design

Purpose: to transform business requirements into technical design specifications for construction

Issue: HOW technology will be used to build the system in terms of Data , Processes , and Interfaces

Design by Specifications vs. Design by Prototyping

Deliverable: System design specifications

(blueprints)

Feasibility check: Continue/ Reduce or expanse the scope with budget and schedule modification

12

7. Construction Phase

Purpose: to build and test a system that fulfill business requirements and design specs; implement interfaces between new and existing systems

Issue: Construct database, application programs, user/system interfaces, implement purchased or leased software

Deliverable: proposed system within budget and schedule

13

8. Implementation Phase

Purpose: deliver the production system into operation

Issue: Train users, write manuals, load files, populate database, final test

Conversion plan: parallel systems, switch point

Deliverable: system up and running

14

Abrupt cutover

Installation/Conversion

Strategies

Old System

Parallel conversion

Old system

New System

New System

Location (Pilot) conversion

Old System New System

Staged (Phased) conversion

Old System New System

15

s k i

R

Abrupt

Cutover

Installation/Conversion

Strategies …

Location

Conversion

Staged

Conversion

Parallel

Conversion

Cost

16

Operation and Support

Ongoing system support would be provided until the system becomes obsolete and is replaced by a new one

Issues: technical support for user, fixing bugs, recovering plan, adapt to emerging requirements

When a system has reached entropy , new project for new system should be initiated

17

Summary: Systems

Development Process

Scope Definition Phase : What Business Problem

Problem Analysis Phase : What System Issues

(Info/Data, Processes, Communications/Interfaces)

Requirement Analysis Phase : What User Needs

Logical Design : Conceptual Model – What to Do

Decision Analysis Phase : What Solution

Design Phase : Physical Model: How to Do

Construction Phase : Do It

Implementation Phase : Use It

18

Classic Project Phases

19

Model-Driven

Development

20

Model-Driven

Development

Model-driven development – a system development strategy that emphasizes the drawing of system models to help visualize and analyze problems, define business requirements, and design information systems.

– Process Modeling – a process-centered technique popularized by the structured analysis and design methodology used models of business process requirements to derive effective software designs for a system.

– Data Modeling – a data-centered technique to model business data requirements and design appropriate database systems.

– Object Modeling – a technique to merge the data and process concerns into singular constructs called objects. Object models are diagrams that document a system in terms of its objects and their interactions.

21

Model-Driven

Development …

Advantages:

Planning ahead

Extensive modeling current system and requirement analysis

Analyze many alternative technical solutions

– Suitable for well understood systems

Disadvantages:

Long duration

– Passive participation of user as they don’t see the product

Requirements in each phase should be fully addressed: impractical and/or inflexible

22

Rapid Application

Development

23

Rapid Application

Development

 Rapid application development (RAD) techniques emphasize extensive user involvement in the rapid and evolutionary construction of working prototypes of a system to accelerate the system development process.

RAD is based on building prototypes that evolve into finished systems (often using time boxing)

A prototype is a smaller-scale, representative or working model of the users’ requirements or a proposed design for an information system.

– A time box is a non-extendable period of time, usually 60-120 days, by which a candidate system must be placed into operation.

Improvements will be released in later versions

24

Rapid Application

Development …

 Advantages:

Handle uncertain or imprecise user requirements

Active user participation in building physical product: increase enthusiasm, support

Early detection of errors and omissions: with testing and modifying prototype

Reduce risk with iterative prototyping

Disadvantages:

Increase lifetime costs to operate, support, and maintain the system (constantly doing and fixing)

– Short problem analysis may result in solving wrong problems

Discourage an analyst from considering other technical alternatives than the one being used in prototyping

25

Hybrid Strategies

26

Hybrid: Multiple

Implementation

27

Hybrid: Staged

Implementation

28

Measures of Project

Success

The resulting information system is acceptable to the customer.

– The system was delivered “on time.”

– The system was delivered “within budget.”

The system development process had a minimal impact on ongoing business operations.

29

Poor Expectations

Management

Scope Creep – the unexpected and gradual growth of requirements during an information systems project.

Feature Creep

– the uncontrolled addition of technical features to a system.

30

Causes of Project Failure

Failure to establish upper-management commitment to the project

 Lack of organization’s commitment to the system development methodology

Taking shortcuts through or around the system development methodology

Poor expectations management

Premature commitment to a fixed budget and schedule

Poor estimating techniques

Overoptimism

The mythical man-month (Brooks, 1975)

Inadequate people management skills

Failure to adapt to business change

Insufficient resources

 Failure to “manage to the plan”

31

Inter-task Dependencies

Finish-to-start (FS)—The finish of one task triggers the start of another task.

Start-to-start (SS)—The start of one task triggers the start of another task.

Finish-to-finish (FF)—Two tasks must finish at the same time.

Start-to-finish (SF)—The start of one task signifies the finish of another task.

32

Task Splitting & Delaying

Critical Path

– the sequence of dependent tasks that determines the earliest possible completion date of the project.

– Tasks that are on the critical path cannot be delayed without delaying the entire project schedule. To achieve resource leveling, critical tasks can only be split .

Slack Time

– the amount of delay that can be tolerated between the starting time and completion time of a task without causing a delay in the completion date of the entire project.

Tasks that have slack time can be delayed to achieve resource leveling

33

Project Initiation

5-3-2001 N/A

5-3-2001 N/A

Preliminary Investigation

5-3-2001 5-12-2001

5-3-2001 5-11-2001

Problem Analysis

5-12-2001 6-12-2001

5-12-2001 6-14-2001

PERT Chart

Task

Scheduled

Start

Actual Start

Scheduled

Finish

Actual

Finish

Requirements Analysis

5-28-2001 7-15-2001

5-30-2001 7-18-2001

Legend intertask dependency

Decision Analysis

6-13-2001 7-30-2001

6-13-2001 8-3-2001

Design

7-3-2001 9-25-2001

7-5-2001 10-9-2001

Task

Scheduled

Start

Actual Start

Scheduled

Finish

Actual

Finish

Construction

7-19-2001 11-13-2001

7-20-2001 In Progress

Implementation

9-10-2001 12-14-2001

TBD TBD

34

Microsoft Project

PERT Chart

35

TASK A

Mon 2/5/01 3 days

Mon 2/5/01 0 days

TASK B

Wed 2/7/01 2 days

Wed 2/7/01 0 days

Critical Path

TASK D

Tue 2/20/01 7 days

Tue 2/20/01 0 days

TASK C

Fri 2/9/01

Fri 2/9/01

2 days

0 days

TASK F

Wed 2/14/01 3 days

Fri 2/16/01 2 days

TASK E

Mon 2/19/01 6 days

Tue 2/20/01 1 day

TASK G

Fri 2/16/01 2 days

Tue 2/20/01 2 days

Duration

TASK I

Tue 2/27/01 5 days

Tue 2/27/01 0 days

The critical path is highlighted in red

TASK H

Thu 2/15/01 1 day

Tue 2/20/01 3 days

Slack Time

36

Gantt Chart

5

6

3

4

7

1

2

ID Task Name

Preliminary investigation

May

Problem analysis

Requirements analysis

Decision analysis

Design

Construction

Implementation

Jun Jul Aug

2001

Sep Oct Nov Dec

Today

Complete Task

Legend

Incomplete Task

37

Microsoft Project

Gantt Chart

38

Scheduling Strategies

Forward Scheduling

– a project scheduling approach that establishes a project start date and then schedules forward from that date.

Reverse Scheduling

– a project scheduling strategy that establishes a project deadline and then schedules backward from that date.

39

Download