CSUN Information Systems
IS 655:
Supplementary
Note 2
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
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
4
•
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
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
•
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
• 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
•
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
•
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
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
•
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
•
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
•
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
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
Location
Conversion
Staged
Conversion
Parallel
Conversion
Cost
16
•
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
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
19
20
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
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
23
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
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
26
27
28
–
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
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
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
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
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
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
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
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
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
38
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