Uploaded by Ipeleng Tsolo

System Analysis and Design Methods 7th

advertisement
_,
.. •
,
•
..
•
~~
..,.,
f~-
,,
~
'
•
-•
•,
...
....
,,
•
Jeffrey L. Whitten
Professor
)>
::)
Lonnie D. Bentley
Professor
Both at Purdue University
West Lafayette, IN
With contributions by
GaryRandolp?
Purdue University
0
-<
(/)
- ·
(/)
0
::)
Q_
0
(1)
SEVENTH EDITION
(/)
co
::)
s
(D
--t-
:T
0
Q_
(/)
ID McGraw-Hiii
tti1ii lrwln
Boston Burr Ridge, IL Dubuque, IA Madison, WI New York San Francisco St. Louis
Bangkok Bogota Caracas Kuala Lumpur Lisbon London Madrid Mexico City
Milan Montreal New Delhi Santiago Seoul Singapore Sydney Taipei Toronto
111#1 McGraw Hiil Co:np=J#ls
la McGraw-Hiii
D
lrwln
SYSTEMS ANALYSIS AND DESIGN METHODS
Pllblisb?d by McGraw-HiJVlrwio. a busins u.nitof'fbe ~fc(lraw-Hill Companies. hie.. 122 I
Avenue. of the Americas. New York. NY 1•)020. Copyright () 2007 by The ~fc(lraw-Hill
Companje.s, Ioc. AU rights NSen-ed. No pu'lof thjs publicatioo may be replOduced or distributed
in any form or by any moons. or stored in 1 dab.base or retrieval system. witlx>ut th?. prior -·ritten
coosentof'fbe ~fc(lraw-Hill Companies. hie.. ircludiog. but not Limited to. in any D?twort: or
other elec:t10nic storage or transmission. or broad:ast for dfatanoe. learniog.
Some ancillaries, includjog eleclronic alXI priot compooenlS. may rot be. a,•ailable. lO customers
outside th?. United Slates.
This book is P"inted oo ocid-free paper.
123456 7890VNHNNH 0 98765
ISBN- I3: 978-0-07-305233-5
ISBN-10: 0-07-305233-7
Editaial director. Brettt Gordo11
Executi,-e.edilOr: Poul Duchont
Projoct manager: 1W11a Hauger
Marketing manager: Satlkha Basu
Media producer: Greg Bales
Projoct manager: Kristin Bmdley
Le-ad proouction .super,•isor: Michoel R. McCor,.nit:"k
Senior desigper: Kami Carier
Photo rese.vch CCXX"dinator. Ihri Kramu
Media project manager: LyM M. Bluhm
Cowr de.sigi.,: Kami Carter
Interior desigo: Kami Carter
Cowr image: C Cabis
Typeface: IOIJ2 Garamo1td Light
Compositor. ~Los Mgtles, CA Campus
Printer: ~,. H<ff.1110M Corpororio1t
uorary orl:oognss u.11uogrng-1n-Yooucauo• Uat•
Whitten. Jeffre.y L.
Systems analysis and design metlxx:ls/ Jaffrey L. Whitteo. l..on.nje D. Beotle.y.- 7th ed.
p. cm.
locludes bibHographicaJ references and index.
ISBN-I 3: 978-0-07-305233-5 (alk. Pl-l)?r)
ISBN-10: ~ 07-305233-7 (aik. pap?r)
I. System de.sigi.,. 2. System analysis. J. Bentley. Lonnie. D. IL nue.
Q..\76.9.S88W48 2007
OOJ.2' l---dc22
2005054019
wwwmhlur:nm
-
0
To my lovely wile Cheryl and my children Robert, Heath, and Coty. To my
a,author and good friend Jeff and our twenty years of writing side by side.
-Lonnie
CD
Q_
n
0
----+·
To my father. You instilled in me the work ethic, perseverance, and curiosity for
l.iowledge that has made this book possible.
-Jell
0
::J
(1)
u
0
'--4-
> Intended Audience
SystenJSAn.alysts at1d Design ,lJethods, se,--enth edition, is intended to support one or
more practlcal courses in information systems development. These courses are nor.
(1)
mally taught to both information systems and business majors at the sophomore,
I.....
jtmlor, senior, or graduate le,"'el.
Q_
We recommend tl1..1t students take a computer- and lnformation systems-Ute.racy
course before using this text. Wlille not requlre.d or assumed, a programming cotttse
can significantly enhance the leunlng experience provided by thls textbook.
>
Why We Wrote This Book
,_lore than ever, today's student! are ..consumer-0riented," due ln part to the changing
world economy, which promotes quality, competition, and professional currency. Thei•
expect to walk away from a course wJth more d1an a grade and a promise that lhey1l
someday appreciate what the)"'-e learned.11,ey want to •practice" the application of
concepts, not Just study applications of concepts. We wrote this book (1) to balanre the
coverage of concepts, tools, tedmlques, and their appllcatlon, (2) to provide the most
cxrunplc.s of system analysis and dcslgn dclivcmblcs ava.ilabl-c in any book, and (3) to bal-
ance the coverage of classJc methods (such as structured analysis and lnfor,nation.
eughU1'rrlt1g) and emerging methods (e.g., object-oriented analysis, agile develop»umt,
and rapid appllcatlon developmenl).Addltionally, our goal ls to serve the reader by providing a postcourse, prof~ional reference for the best current practices.
We have written the book uslng a lively, conversational tone. This approach (and
the numerous examples) dell\o't'rs a comprehensive text that still connects with the
student throughout the learning process.
> Changes for the Seventh Edition
Reorganization for Better Cfarlty, The object-oriented analysis diapter has
become O,apter IO to better position It alongside the structttred analysis
chapters (Chapters 8 and 9). Other chapters ha>-. been reorganized Internally. For
example, Chapter 9, ln response to reviewer comments, has undergone extensive
reorganlz;itlon. Also, the discussion of sequential versus Jteratfve deveJopmenr has
been moved to O>apter 3 to pL1ce it with related methodology concepts.
E.-.:paoded Object-Oriented Coverage, As object-oriented analysis and design
grows ln importance, coverage continues to increase.111e seventh edition more
fully expL1tns the object-Orlenced approach and cracks both where tc follows the
same path as the traditional, ~uctLU'ed approach and where the two approaciles
part ways.11,e object-oriented analysis chapter (Oupter 10) features expanded
co,-.rage of activity diagrams. New to this edition In Otapter 10 ls coverage ol
system sequence dhtgrams. Oupter 18 features expanded coverage of objectoriented design. Persistence and system design das.,es are discussed as well as
entity, controller, and lnterface design classes. '01e discussion of sequence diagrams
and CRC cards has been expanded, and their role In the design process explained
more fully. co,-erage of design pattenis llas been greatly expanded with a dlsc,~slon
of the Gang of Four panems tnd an examination of two of the patterns.
UML 2.0, Both Chapter 1O and a,apter 18 ha,-e beet1 revised to cover the UML
2.0 specification. Each UJ\IL 2.0 dL1gram Is listed with an explanation of its
purpose. In Chapters 7, 10, and 18, lh-e of the tl1lrteen UJ\IL 2.0 diagrams are
developed in depth and tl1ree more are shown and discussed.
E.-.:pauded Discussion of Feaslblllty, The discussion of feasibility now includes
leg.11 feasiblllty and cultural (or political) feasibility as well as our tt2ditional four
tests of feaslblllry (oper2tlon,~ economic, schedule, and technical).
Use of Context Diagrams: Even as the move away from dara flow d11grams and
to U}.fl diagrams contlnues, 1he context d11gram continues ro be Jmportant as a
tool for w1derstandfng ~stem scope. It h ..,s bee.n added to the tools used lo
a,apter 5 and can be employed In the cla55room ,s a first modeling asslgnma,t..
Updated Teclmology References: The extensfve references to example
tedu1ologies has been continued In the seventh edition and updated to reflect
tedu1ological changes, version updates, and mergers and acqulsJtlons of
tedu1ology comp:ulies.
Revisio11 of the So,1ndStage Ru1ulh1g C1.se: The SoundStage case h,,s beetl
condetl.Sed,changed from a dialogue format to a n ..natt,--e format, and lntegrated
Into the openlng of each chapter. Fearurlng the perspectlve of a just.graduated
5)-sterns analyst In hls first assignment, SoundStage briefly Introduces the concepts
taught In each diapter and underscores d1elr Importance In a real S)'Slems project.
>
Pedagogical Use of Color
The seventh edition continues d1e use of color applied to an adaptatio11 ofZachman 's
Fra-,nett:ork for I11for111atf-011 Syste111s Architectu.re. The color mapplogs are displayed
In the Inside front cover of the textbook.
The infonnation ~'Stem.s building blocks matrtx uses these colors to introduce recurring concepts. System models then reinforce those concepts wlth 3. eotlSistent use
of the same colors.
>
Organization
Syswms Analysis a,uf Desfg11 Metbods, sevend1 edition, Is divided Into four parts. Toe
text's organization is flexJble enough to allow instructors to omit and resequence
d1apters according to what they feel is Important to thelr audience. Every effort has
beet1 made to decouple chapters from one another as much as possible to assi.st lo resequencing the materL1l- even to the extent of reintroducing selected concepts :u1d
terminology.
P:irt One, *The Context of ~stems Development Projects," presents the lnfonnatlon ;,ystems developmet1t scenario and process. Chapters 1 tlvough 4 introduce the
student to ~'Stems analysts, other p roject team members (h1duding users and management), Information systetllS building blocks (based on the Zad,man framework), a
Information Systems Framework
Color ls used consistet1tly througl1out tl1e text's framework to Introduce recurring concepts.
represents methods
represents data :u1cVor knowledge
represents process
represents communlcaUon/interface
represents people
v
contemporary systems development llfe cycJe, and project nw1..1gement. Part One can
be covered relatively qulddy. Some readers may prefer to omit project management
or delay It until the end of the book.
Part Two, "Systems Analysis Methods," covers the froot-et1d life-cycle acti,itles,
tools, and rechnJques for analyzlng business problems, specifying business require-
ments for an lnformatlon $)'stem, and proposing a business and ~stem solution.
Coverage ln Ch.apters 5 through 11 includes requirements gathering, use cases, data
modeling with entlty-relatioosillp diagrams, process modeling with data flow diagrams, object-oriented analysis.and solution ldentificatlon and the system proposal.
Part 11,ree, •Systems Design Methods," covers the mlddle life-cycle activities, tools,
and techniques. Chapters 12 through 18 Include coverage of both groeral and detailed design, with a partlctdar emphasis on application architecture, rapid development and prototyping, externtl design (inputs, outputs, and Interfaces), internal
design (e.g., database and software engineering), and object-oriented design.
Part Four, •eeyond Systems Analysis and Design; Is a capstone unit that places systems analysis and design Into perspective by surveying the back-,,od life-cycle activities. Specifically, Chapters 19 and 20 examlne system Implementation, sttw<>rt,
maintenance, and reenglneerlng.
>
Supplements and Instructional Resources
It has always been our intent to provJde a complete course, not Jlist a textbook. We
are especially excited about this edltJ011's comprehensJve support package. It
includes Web-hosted support, software bundles, and other resources for both t11e
student and the instructor. 1be supplements for the sevent11 edition include t11e
following componet1ts.
Web Site/OLC
A complete.ly redesJgned Web site provides easy-to-find resources for lnstructors and
students.
e
e
SYSTEMS ANALYSIS
& DESIGN METHODS
o,,,,..,e,...: TO~J',~•m:i W.ir'\\00 l)(.~()IHht .c:oic.oon Ql ~l)~.,6$ wdl t~ l)(fV.«11
edit:onol 1111$book. the-author~ '""1tleto 11,.. ~nce the CO*Cl'"Ot d COl'IOl$a,tools,tedTllQutt,
¥1d0'\fif .s:il)lt.;10f'4, .,...Otol)"O'ol~e ti'$ m(" e,4r~ <I 5'1Sttm •n.o1t.is ¥<14"-i;n
det,,cr4bles 4f.iil11blt i~4r'lf book The te,)1bc,o't 4lso 1ent$ the re4der 11$ 11 C!fOfenton.ol
lllf~,11~0 ' " l:i!Y.t ( U'l'llf'C: l)r'.;a;1Ck,
fnoo, -
.... ,. ...i;t,. , r,i,.....~.,.
"' )'.~... ,"'st:•:~,;;:!'..~=~~1!':.!:;=t.!'.;.:;r.:.:r.~~~....... ,..,,..tu-.,
vt
For the Instructor
Web Site/OLC
The book's Web sJte at www.mhhe.com/Whitten provJdes resources for instructors
and ,tudenrs using the text. The Online Learning Center (OLC) builds on the hook's
pedagogy and features with self-assessment quizzes,ext:ra material not found In the
text, \X'eb links, and other re.sources.111e Instructor side of the site offers a sea,re
location for downloading the L1test supplemental resources.
,0
Instructor's Monuol with PowerPoint Presentations
The lnstructor's manual ls offered on the Instructor's CD-ROAi, as well as on the
hook's Web site. This manual includes course planning materL1ls, teadllng guldeUnes
and PowerPolnr slides, tempL1tes, and ai1SWers to end-0f<l1..1pter problems, exercises,
and mitlicases.
The PowerPolnt presentations on the CD-RO?tt include o,-er 400 slides. All slides
are romplete with Instructor notes that provide teaching gttldellnes and tips. Instructors can (I) pick and choose the slides they wish to use, (2) customlze sUdes to thelr
own preferences, and (3) add new slides. Slides can be org,mlzed Into electronic pre,
t-Pnt~lon.c. nr l'W" pf'intP<l :as. rr:an.,:;p:1rPnrlP~ o r tr;in.,;parpnry m!l!':tf>f'Jll.
Test Bank
O The Instructor's CD-RO,lf also lndudes ait electronic test bank coverlng all the
diapters. COmputerized/NetworkTestlng wlth Brownstone Diploma software Is f,tliy
networkahle for LAN test admlnistration. Each chapter offers 75 questions in the following formats: true/false, multiple choice, setttence completion, and matching. The
test b.1nk and answers are cross-referenced to the page numbers in the textbook. A
levek>f-dlfflcttlty rating is also assigned to each question.
>
Packages
'o Student Resource CD
Ead1 text Includes a student CD with two case projects, templates and forms for
the projects, the same PowerPolt1~ slides provided to the Instructor, and a l 2o.day
evaluation copy of Mlcrosoft Projec~ accompanled by a stepby-step tutorL1l.
,0 System Architect Student Edition Version 8
An optional package combines d,e textbook, Student Resource CD, and a student
version of System Architect. System Archltect is a powerful, repository-based enterprise modeUng tool whlch supports a comprehensive set of cllagr.unmlng tedmlques
and learures, Including all nlne UML diagram types, business etllerprlse modeling, data
modeling, business modellt,g with IDEFO and IDEF3 notations, plus many more.
O
Visible Analyst Workbench
Anod1er optional package combines the textbook, Student Resource CD, and Vlslhle Analyst Workbench. This tool ltllegrates business function analysis, data modeling
and database design, process modellng, and object modeling In one easy-t<>-<rse package. Prhtt versions of each case can be ordered through ,_lcGraw-HJU's Custom J>ub.
llshlng group by visiting www.prlmiscontentcenter.com. A build yo·u r 0 1v1i project
modeJ ls retained for lnstructors and studettts who want to m.1xhnize '\o"alue by leveraging srudents• past and current work ex:perlence or for use with a Uve<lient project,.
II Primis Content Center
Primis Online
Print versions of projects and cases, :is well as other ?.(IS content, can be ordered
through McGrnw-Hlll's custom Publishlt1g Group.
vii
(/)
.....__
c
Q)
E
Q)
0)
uQ)
5
0
c
u
....:::L.
<{
\X'e are indebted to many indJvJduals who cootrlbuted to the development of this edition:
Grant Alex.ander, 1\ rortbeasterti Oklaho111a
State U11.iverslty
Rlcharo J. Averbeck, DeVry /11stitu.tes
Emerson (BUI) Batley, Park U11tverstty
Jack Briner, a,a,Jeston So·u therti U1ilversil)'
Jimmie Carraway, Old Do·1nl1ilo11 University
Casey Ceglelskl,Au.bum U11tversr.ty
,_Under 01et1, Geor~ il.fason U11iverslty
Gletlll Dietrich, Universf.ty of'lexas-Sa11
A11..to1i.to
Dorothy Dologite, Baruch College, CUNY
Tom Erickson, Unfversfty ofVirgln fa~
Vlrg/11/a Center for Cont/11:utng and
Professlo·,,al F.ducatto·n
Bob Kiimer, Mess/ab College
Avram Malkin, DeVry College of'IIH:Jmologv
Dat-Dao Nguyen, Galiji:m1ta State
Universlty-Norrbrltfge
Parag C. Pendharkar, Pe1i11 State University
Leah Pietron, Universf.ty of
Nebraska- Omaha
a,arlene Riggle, University of Sou.th
Florida-Sarasota,/Jlfan.atee
A special thank-you ls extended to the following focus group partlclpanrs:
Jeffrey Parsons, Memorial U11tversf.ty of
1\feU,fo·u11dland
Parag C. Pendharkar, Pe1i11 State University
Carl Scon, University of Houston
Ron n1ompson, Wake Forest Utilversr.ty
Steve W.'llczak, Colorado Ut1.iversity- De1J.Vtr
\X'e also are lndd>ted to many lndtvfduals wh.o
contrlbuted to the de1i--elopment of the prevJo tL"' Pciltiont- of thit- rPTI
Jeanne M. Alm, Moorhead State U11tverslty
O,aries P. Bilbrey, James Matllso11 Uttlverstty
Ned a,aph1, catljomr.a State
University-Hayward
Carol Clark, Mldtlle 'le1111essee State
University
GaU Corbitt, calljomia State
University-Cb/co
L"ry W. ComweU, Bradley U11tversf.ty
Barbara B. Denison, Wrlgbt State University
Unda Duxbury, Garleton Utttverslty
Dana Edberg, University of Nevada-Reno
Graig W. Fisher,Marlst College
Raot~ J. Freeman, Galljomla State
Universlty-Do·1rtl11gu.ez Hiiis
Detmis D. Gagi1on, Santa Barbara
Cf.ty College
Abhl)lt Gopa~ Uttlversity of catgary
viii
P:ltrlda). Guinan, Boston U11iverstty
BUI C. Harograve, U11tversf.ty of
Arka11sas-Fa)rettevllle
Alexander Hars, University ofSo·u tbern
catljornia
Rlcharo C. Housley, Golden Gate U11tver,f.ty
Constance Knapp. Pace University
Riki S. Kuchel<, Orange Coast College
Thom Luce, Ohio University
a,arles M. Lurz, Utah State University
Ross MaL1g,1, U11tverstty of
,lfaryland-Balrr.1nore Cou.1u:y
Ollp McGhlllls, Park College
William H. ,_loate.s, /1idfana State University
Ron.aid J. Norman, San Diego State U11tvtrslty
a,arles E. Paddock, U11tversf.ty of
1\ revada- Las Vegas
Jtme A. Parsons, Northeni ,lficblga11
Ut1-l1,'<W&f.ty
Harry Reli, james Madlso11 Universr.ty
Gall L Reln, SUNY-Buffalo
Rebecca H. Rutherfoord,Sou.them College of
'/eclmology
Graig W. SUnkmatl, University of
1e.ws-Arli1igto11
John SmUey,Ho(y Famt(y College
,_laryThurber, 1\tortbern Alberta /11str.n,te of
'/eclmology
Jerry1111man,Appalachian State Universf.ty
Jonathan Trower, Baylor Un lversity
Margaret S. Wu, University of Iowa
Jacqueline E. Wyatt, Middle 'llmnessee State
U1itverstty
Vlneetll C. Yetl, Wright State Universf.ty
Ahmed S. Zaki, College of William anti Mary
Flnally, we acknowledge the contributions,
encouraaemet1t. and patience of the su.ff at
McGraw-Hill. Special thanks to Brent Gordo11,
publisher; Paul Ducham, sponsoring editor;
Trina Hauger, developmental editor~ Greta
Kleinert, marketing manager; Kristh1 Bradley,
p roject manager; and Kami Carter, designer.
We also thank Judy Kausal, photo research coordinator; ~Uchael McConnlck, production
supervisor; Greg Bates, media producer~ and
Rose Range, supplemet1t coordinator.
To those of you who used our previous edJ..
tlons, thank you for your continued support.
For tl1ose ush1g the text for tl1e first time, we
l1ope you see a dlfferet1ce in this text. We
eagerly awalt yoltr reactions, comments, and
suggestions.
Jeffrey L. WNtte,,
Lo1111ie D. Bentley
(Brief Contents
Preface vi
PART ONE
The Context of Systems
Development Projects 3
1 The Conte21.'t of Systems Analysis and
Design Methods 4
2 Information System Building Blocks 42
3 Information Systems Development 66
4 Project Mrumgeme11t 118
PART TWO
Systems Analysis Methods 157
S Systems Analysis 158
6 Fact-Finding Tedmiques for
Req\1irements Discovery 206
7 Modeling System Requirements with
Use Otses 242
8 Data Modeling and Analysis 268
9 Process Modeling 314
1o Object-Oriented Analysis and Modeling
Using the UML 368
11 Feasibility Analysis and the System
Proposal 412
PART THREE
Systems Design Methods 443
12
13
Systems Design 444
Application Ard1itecture and
Modeling 474
14 Database Design 516
1 S Output Design and
Prototyping 548
16 In put Design and
Prototyping 580
17 User Interface Design 612
18 Object-Oriented Design and Modeling
Using the UML 646
PART FOUR
Beyond Systems Analysis
and Design 681
Systems Construction and
Implementation 682
20 Systems Operations and
Support 700
19
Photo Credits
720
Glossary,;Index 721
Ix
( Contents
Preface
vi
2
PART ONE
The Context of Systems Development
Projects 3
1
THE CONTEXT OF SYSTEMS
ANALYSIS AND DESIGN
METHODS 4
INFORMATION SYSTEM BUILDING
BLOCKS 42
Introduction 44
The Product- Information Systems 44
A Framework for lnforntation Systems
Ardlitccturc 46
KNOWl.l!DGI! B11i/dl11g Blocks 47
PRoa!ss B11i/dl11g Blocks 51
COA£llUNICA.110A''S Bu.t(dl11g Blocks 55
lntrodttctiat 6
A nan,ework fur ~ystems Analysis and IJcsign 6
The Player,-Systcm Stakeholders 7
Ncrwori< Technologies and the IS Building
Blocks 58
Syste111.1, Ou,,wrs 7
Systet11J Users
7
Systet11J Desig ners JO
Svsterm Bu.1/ders IO
svste111J A11alvsts 1 I
E.WemaJ Service Providers
The PrGj ect Mrmager J6
(3- -1-N-FO
- RMA
- -J-I O_N_s_YSTEMS
\._ DEVELOPMENT 66
Introduction (,8
The Procr:ss of Systems Develop ment (,8
16
The Capabllitv Matu.rf.ty Model 6!)
Business Dri,jt ts for Today's Information
Syste.ms 16
Globall:mtf.011 o f tbe Econo1nv 17
Electro·u lc Cotutuerce and Business
Life C}m versus Met/Jodology 70
UtJ.derlvtng Prlncip(es fo r Systetns
Devefop1ne1J.t 72
18
Security a11d Prlwcv 19
Collaboration and Partnership 20
K11-0t1Jt«lge Asset Afa11.age,11e11.t 2 I
Conrt,i:11ou.s l1nprovet11e111 and 1btal Quality
Afu1111sJJ11wn1
22
Technology Drivers for Today's Information
Systems 22
Netu,'OrlJs and' the /11ter11.et
22
Mobile and Wireless Teclmologtes 24
Ob/ect Tech11ologles 25
Collaborative Technologies 25
Enterprise APplicatlons 26
A Simp le System Oe,..,lopmcnt Process 30
svste,n. /11.:ltiatio,i 32
Systertl A.11alysfs 32
Svstem J)(!slg n 33
Svstern. In1plet1ientatto·n 33
svste11i su.pport and Contitiuous
/111-prove,netJ.t 33
x
76
Where Do Systems Development Projects Come
From? 77
The FAST Protect Phases 77
Crus~· Lt/fJ.C1J<.-ftt Ac.:.fivf.tltt~·
2I
B1af.1u1!S Process Redesign
A Systems Oe,..,lopmcnr Process
88
Seque11.tlal vers1a Iterative
J)(!velopment 89
Alternative Routc-s and Srrarcgic-s 92
11,e Afodel-Drlveti Develop ,netJ.f
Strategy !)4
The Rapid Appllcatfo11 J)(!velop me11t
Strategy !)8
11,e Cotntnercial Applicat/011, Package
I,npletne11.tatio1i Strategy
H }&rf.rl Strategies 104
svste111- Jl/al11tenance 104
Automated Tools and Technology
JOO
I 07
Co111-p uter-Asslsted Systetns E11gl11eer111g 108
A.ppllcntf.o·n Deve.top 111.ent E11viro111ne11.ts 109
Process and Pro/ea Managers 111
Task 2.5- Update or Refine t/Je Protect
Plan 183
~ ~ ~ ~ -4~ _
PRO
~ J_Ec
_T_MAN
~ _A
_G
_E
_M_E_NT
~_
1_
1a
~~)
lnrrocluctio11
'Jtlsll Z.6-con1:n1-·1111.tcaie Ft1utt11g s and
120
What ls Project Ma11agc.me.nt?
Recotutuendatlons 183
120
The Requirements Analysis Phase
The causes of Failed Profects 121
The Project Ma11agement Body of
K11owledge 123
TI1e Proj«t Ma11agcmem Life Cycle
Task 3. I - Identify and F.xpress System
Requ.lrenumts 185
Task 3.2- Prlorlrize System Requirements I 88
Task 3.3- Update or Refine the Protect
Pla11 188
Task ,3.4- Cot11:»1:uttlcate the Requfre,ne11-ts
Statenumt 189
127
Activity I - Negotiate Scope 130
Activity 2 - Jde11tl{y Tasks 130
Activity 3 - Estlmate Task Du.ratlo11s 132
Activity 4-Sped{v Intertask
Depende11cies 134
Activity 5 - Asstg11 Resources I 36
Activity 6 - 1)(.rect rhe Team Effi;, rt 139
The logical Design Phase
Requlre111.e11ts
140
(alter11attve) 192
Task 4.2- Validate Ftmcrio11al
Requ.lrenumts 192
Task 4.3- Deflne Accepta11ce Jest cases
I 4!)
The Decision Analysis Phase
Systems Analysis Methods 157
SYSTEMS ANALYSIS
Introduction
19 I
Task 4. lb- Prototype Fu.11ctlo11al Requ.tre111enrs
PART TWO
5
189
Task 4. Ja- Struc11,re Fu11ctlo·1U1l
.A.ctlvltv 8 - Assess Project Results and
B..~ptwfotJC'O$
189
011go-t11g Requ.lrenients ,lfanage11w11t
Activity 7- Afonitor and Con.trot
Progress
185
192
Task 5. I - Identify candidate Solutlo11s 194
Task 5.2- Analyze candidate Solutlws 195
Task 5.J- Compare ca,utldate Solutions 197
Task 5.4- Update the Protect Plan 197
'Jask 5,5- Recon1r,1,end a Syst.e,n
Solutto11 I 97
_)
158
192
160
What ls Systems Analysis? 160
Systems Analysis Approad1cs 161
i.lfodetDrlven A11al1:rt.s Approaches 161
Accelerated Systems A11alyslsApproacbes 163
Requ.h'etnents Discovery Afetbods 165
B11Slness Process Redesig n Afetbods
Introduction 208
An Introduction to Requirements Discovery 208
167
The Process of Rcq ttlrcn1c.nts Dlsco,"'t'-ry
Task I. J- Jde11ttfv Basellt1e Problems a1ul
Opportu11ltles I 69
Task 1.2- Negoriate Base/111.eScope 172
Task !.)- Assess Base/111.e Pro/eel
Worthiness I 73
Task J.4- Devetop Baseline Scbe<lu/e a11d
Budget 173
Task 1.5- Cot1it1J.1Jt1-f.cate the
Project Plan I 73
The Problem Analysis Phase
FACT-FINDING TECHNIQUES FOR
REQUIREMENTS DISCOVERY 206
I 66
FAST svstemsA11atvs1s StrateJ!J.es 166
TI1e Scope Definition Phase
6
174
Problen1 Discovery a11d-A11alysis 210
Requ.lretnents Discovery 2 I2
Doa,11,enting a ,ul A 11alvzi1ig
Requ lrettients 2 I2
Requ.lrenwnts ,lfanagenwnt 2 I 4
Fact.FmdingTecbniq ucs
215
Satnplltig of Exisrf.11g Docu1ne1itatfor., FornJS,
a,ul Flies 215
Research a,uf Site Visits 217
Observation of the Work Envlro11nient 2 I8
Task 2. J- U11dersta11d t/Je Problem
Domain 175
Task 2.2- Atiatvze Probletns a,ul
Oppornmltles I 80
Task 2.3- An.atvze B·usfness Processes
210
Qu.esttontmlres 220
lntervle,vs 222
180
Task 2.4- /Jstabllsb Svste,n Jn,prove,ne,it
Objectives I82
Hotv to Co11dua an /11.tervleu.1 224
Dlscouery Prototyping 228
foltU Req11tre1ne11.ts Planttl1,g 22!)
A Fact-Finding SttategJ' 234
xi
7
MODELING SYSTEM REQUIREMENTS
wrrH USE CASES
242
(!
PROCESS MODELING 314
Introduction 316
An Introduction to Process Modeling 316
System Concepts for Process Modeling 319
Introduction 244
An Introduction to Usc-C..se Modeling 244
Systetn Concepts for Use-Case Modeling 246
External Age11.ts 31!)
Data Stores 319
Process Concepts 321
Data Flows 325
UseGaws 246
Actors 247
Refaiio11sbtps 248
The Process of logical Process
Modeling 334
The Process of Rcguirctncnts Use-Case
Modding 251
Strateg ic Systems Plmmi11g 334
Process il·lodellng fo r Business Process
Redesign 334
Process ,lfodeflttg du.rl11g svstetns
At1alysls 335
Looking Ahead to Systems /)(!sign 337
Fact-Ff.11dl1ig and /11/omJ.atr.011 Gatheringfor
Step I: Jde11tifv Busl11essActors 251
Step 2: Jdenttfv B·us/11ess Requ tretnents Use
Gases 252
Step 3: Construct Use-Case Model
Diflgram 254
Step 4: Docu.nient Business Requ.f.retnenrs
Use-Case Narratives 256
.ProC'O$$
Use C..scs and Project Management 260
Jl!odq/Jng
3 37
Co1np11ter-Alded Syste111s Engt11e.erl11g (CASE)
Process Modell11g 337
Ra11kt1Y{ and Evaluaring Use Gases 260
Jdentff l,i11g Use-Case Depe1ule11cies 261
How to Construct Process Models 338
The Context Data Flow Diag ram 338
8
DATA MODELING AND
)
~ ~ ~ ~ -ANA
~_LY_s_1s~ 2_68
~~~~~~~
Introduction 270
What ls Dara Modeling? 270
Svstetn Concepts for Data Modeling 271
E11tltfes 27 I
Attributes 272
Relolio11sbtps 274
The Eveu~Respo11se or Use-Case List 341
Even.t DecortlJ>Osltf.011 Diagrmns 342
Even.t Dlag ratns 34.5
The System Diag ram(s) 347
Primitive Diagrams .H9
Comp leting the Speciflcatfo11
349
Synchronizing of Systctn Models 359
The Process of logical Data Modeling 283
Strategic Data .ilfodel/11.u
rbe Fu.11ctio11al Decotnposition
Diagram 339
283
Data and Process Model
Syncbro11i.zation 359
Process Dlstrtb11t1011 360
Data iWodeltng du.rtng Systetns
Analysts 285
Looking Ahead to Syste,ns Desig n 286
Au.tomated Tools for Data Mode/Ing 286
How to Construct Data Models 288
10
OBJECT-ORIENTED ANALYSIS
AND MODELING USING
THE UML 368
E11tlty Dlscowry 289
The Cot1.text Data Model 290
The Ke1·./Jased Data Model 292
Generalized Hierarchies 295
The Fu.ly Attributed Data Model 295
Analvzing the Data Model 298
Wbat Is a Good Data Model? 298
Dato Analysis 299
Normallzalio1i Iixample 299
Mapping D1ta Requirements to
Locations 306
xii
An Introduction to Objccr.Qricnted
Modeling 370
History of Object Modeling 370
System Concepts for Object Modeling 371
Ob/ ects, Attrlb11tes, Methods, at1d
E11caps11/alio11 371
Cft,sses, Ge11.erafl:Zatlo1i, and
Specialtzat/011 373
Ob/ect/C1ass Relatio,isblps 376
,lfessages and Afessaci Sending 378
Pblymorpblsm 380
for
TI1e UML Diagr:uns 381
TI1e Process of Object Modeling 383
PART THREE
Jlfodell1Jg rbe Functf-011.a l Descrf.p t(on of the
Systems Desi9 n Methods
443
System 383
Co11structi11g the Analysts Use-Case
Model 383
Modeling rbe Use-Case Activf.tles 390
G11lde(t11esfor Co11Structt11g Actf.vlty
Dlt1grams 394
Dratvlng Syste,n Sequence
Diagrams 394
( 12
Introduction 446
What ls SysteblS Design? 446
Systems Design Approaches 446
Model-Drlve11 Approaches 447
Rapid App/icatlot1 Development 451
FAST Systetns Destgn Strategies 453
Gulde(/11.es fo r Co11Structt11g Systetn Sequ.ence
Diagrams 395
fl11ding and Identifvi11.g the B·ust1wss
Objecrs 396
Orgar,lz/.11g the Objects atul ldentifytng 'J'beir
Relat1011ships 400
11
SysteblS Design for In-House nc-'Clop m<nt- The
"Build• Soltnion 453
Task 5. 1- Destgn rhe Application
Arcbltectu,-,, 453
Task 5.2 - Destgn rhe System Database(s) 457
Task 5-3- Destw , rhe Sysrem Interface 457
Task 5 . 4- Package Destg n
Speci.ftcatlo11s 459
Task 5.5- Update the Protect Plan 460
FEASIBILITY ANALYSIS AND THE
SYSTEM PROPOSAL 412
Syst~,s ~ign for Integrating Conuncrcial
Software- The 'Buy• Soltnion 460
Introduction 414
Feasibility Analysis and the Svstcm
Propostl 414
Task 4. I- Research 'J'eclnJ.tcal Crf.terla a11d
Options 462
Task 4.2-Solfclt Proposals or Q11otes from
VendOrs 462
Task 5A. I - Validate Vendor Claims Mui
Perfarma,u:es 465
'Jask 5A2- Evaluate and Rank Venthr
Proposals 465
Task 5A.3- Award (or Lei) Contract and
Debrle/Vetulors 466
Feastbtlitv An.atvsts- A Creept11g Cotntnittn.ent
Approach 414
S1'ste111s A11alvsts- Scope Defl1,ttlo11
Checkpoltll 416
Systetns Analysls- Probletn Atialysts
Checkpolt1t 416
SystenJS Desig n- Decision At,alysis
Checkpoint 416
Six Tests for Feasibility 417
/n1,pact of B1,v Decision 011 Ren1ai11J;ng
Lrfe-Oyde Phases 466
Operational Feastbtlltv 417
c,,tiu.mt (or .PotfttcalJ ltlastbtfllV
417
Teclmtcal Feasthl/f. ty 418
Scbed11le Feaslbllitv 4 18
Economic Feasibtlitv 4 I 9
Legal FeaslblJlty 419
Tbe Bottom Line 419
Cost-Benefit AnalvsisTechnigu~s 419
How M11ch Will rbe Sysrem Cosr? 419
Wbat Bene{lrs Will the System Provide? 420
Is the Proposed System Cos<Effecttvel 422
Feasibility Analysis of Candidate Systems 426
Candi.date Systetns ,llatrf~'< 426
Feaslbtlitv Analysis Matrtx 429
TileSystcn1Proposal 431
Wrf.ffen Report 431
Fortna[ Presentation 433
SYSTEMS DESIGN _44
_ 4_ _ _ _ _ __
~
\.__
PPUCATION ARCHITECTURE AND
MODELING 474
Introduction 476
Application Architecture 476
Physical Data Aow Diagrams 477
Phvslcal Processes 477
Phvslcal Data Flows 481
Physical E.wernalA[l!mts 481
Physical Data Stores 481
Information Technology Architecture 483
Dlstrlbured Systems 484
Data Archltecturos- Distrlbuted Rela.tiot1al
Darahases 494
xiii
Interface Architectu.res- /11pu.ts, ou.pu.ts, and
,lfldtlleware 495
p,.,x:essArc:hltect141'f!s- Tbe So(t1mre
Develop,ne1it E1ivtro1,1nent 500
Application Architecture Strategics for Systc.ms
Design 502
The Enwrprfse APplfcatto·n Arcbltec.ture
Strategy 502
'The Tactical Applicaffo11 Arcbltecture
Strategy 503
C
504
'/lJe Neui'Ork Arcbltect,,re 505
Data [)(strlbut/011 and 'Jechtiotos v
Asslgntnents 506
Process Distrf.bution and Techtiofogv
Asslg11111ents 507
17.Je Person/Alacbi11e Bo·u11.darl.es 510
558
Au.to11Ulted Tools for OUt(!ut Desf.gn a11d
Prototypi11g 558
OU.tfmt l)(!sfg 11 G11irle//1u,s 559
The Ou.fput Desf.gn Process 562
Web-Based OUpu.ts a11d E-Bust11ess 570
(>
Modeling the Application Ardutccturc of an
lnfornution System 503
Drawt11g Physical Data Flow Diagrams
Prereq11fsUes 504
How to Design and Prototype Outputs
INPUT DESIGN AND
PROTOTYPING 580
Introduction 582
Input Design Conccpts and
Guidelines 582
Data captu.re, Data E11.trH atJ.d.Data
Processl11g 582
/11put Aletbods and /111ple111e11tatlon 585
Syste,n User /ss,1.es for Input Desf.g ti 587
/11ten1al Controls- Data Edltf11g for
luputs 589
GUI Controls for Inp ut Design 590
~ ~ ~1_4~ D_AT.
_ AB
~ A_S_
E_
DE_s_1G
_N~ s_1_6~ ~ ~ )
Introduction 518
Conve.ntional Fues ,'<'rsus the Database 518
'/lJe Pros and 0>11s of C.01,ventlont,I Piles 518
'/lJe Pros and 0>11s of Databases 520
Database Concep ts for the Systems Analyst 520
Fields
521
521
Record,
Ft'les a,;d 'Tables
Databases 523
522
Pn:n:qttisitc for Database Dcsign-
Normalization 528
Conventional Fde Design 529
Modem Database Design 529
Goals and Prerequ lsf.tes to Database Desig n 530
'The Database Schema 5 30
Data a,uf Re{ere11tlal hlteg rlf:V 535
Roles 538
Database Distribution and Replicaffo11 538
Database Protor:vpes 539
Database cap actr:v Plmml11g 539
Database Structu.re Ge1ieratio11. 539
1 5 OUTPUT DESIGN AND
PROTOTYPING 548
Introduction 550
Output Design Concepts and Guidelines 550
Distrlbut/011. a1id A1,dte11ce of Outputs 550
l»1plet11e11.tatfo1, ilfethotls for Oup uts 553
xiv
Co1n·1no1i GUI Controls for Inputs
Adva11ced hrp ut Controls 596
592
How to Design and Prototype Inputs 598
Auto11,ated Tools for lt1p ut Desf.gn and
Prototypi11g 598
'The Itip ut l)(!sf.gn Process 599
Web-Based Inputs a11d E-Bust11ess 605
(17
USER INTERFACE DESIGN 612
Introduction 614
l·scr Interface Design Concepts and
Guidelines 614
Types of COttipuier users 614
H11n,a11. Factors 615
H11t1UltJ. Englneerl11.g Gu.ldel/1,es 616
Dialogue 1'0·1,e atid Tenn/1,ofogy 617
l"ser lnterfaccTcdmology 618
operati1ig svste,ns and Web
Bro,1vsers 618
Display Mo111tor 618
Keyboards a11d Pof.nters 619
Graplucal User Interlace Styles and
Considerations 619
Wl11do1vs and Fra1nes 620
ilfetJ.tJ-Drlveti Interfaces 620
/1utructf.01~Drlven /11terfaces 627
Questlo·,~A·nstiier Df.alog·t1es 629
Specia l Co11sitleraffo11s fo r User l11terface
Design 629
How to Design and Prototype a Uset lntetfacc 633
Auto·,nared 'Jools for User /11terface Desig n a11d
Prototypt11g 634
The User Interface Design Process 635
18
OBJECT-ORIENTED DESIGN
AND MODELING USING
THE UML 646
lntroductio11 648
TI1e Ocsig11 of an Object-Oriented System 648
The Construction Phase 684
Task 6.1- Butld and 'Jest Networks
(I/Necessary) 684
Task 6.2- Bt#ld and 'Jest Databases 687
Task 6.~',J- Jnstafl atid Test ,,relv Softtl.We
Packages (I/ Necessary) 687
Task 6.4- Wrlte and Test Neu; Progratns 688
The In1plementation Phase 689
Task 7.1Task 7.2Task 7.3Task 7.4Task 7,5-
Conduct System 'Jest 689
Prepare Conversion Plan 689
lnstal/ Databases 692
1ra111 Users 693
Convert to Nezv Svstetn 694
Entltv Classes 648
interface Classes 648
Control Gasses 649
Persl.stence Classes 649
Syste111 Classes 649
Desig n Relationships 650
Attribute ar1d MetbodVlslbl/ity 650
20
Ob[«t Rqsponslblllth>s 651
TI1c Co11lcJll of Sy:,ctc1u:, O p ctatio1.1 atit.l
TI1e Process of Object Design 651
SYSTEMS OPERATIONS AND
SUPPORT 700
Introduction 702
Suppon 702
Systen1 Maintenance 706
Reft11ing the Use-case Model 651
Jlfodell1Jg aass Interact(o11s, Behaviors,
and States That Support the Use-case
Scenario 656
Updating the Object Model to Reflect the
Jn,_ple1net1-tatlo11 Envtron111e11-t 665
Object Reusability and Design J>.mcms 666
Design Pattetns 668
TheStrategyPattern 669
The Adapter Pattern 670
Ob[ect Fra111et1..'orks a,ul Co1npone11.ts 67 I
Task 8.1. I - Validate the Problem 706
Task 8. l.2- Be11c/Jmark Program 707
Task 8.1.3-Studv ar1d Debu.g the Program 708
Task 8.1.4- Test the Prog ram 709
Systen1 Rccoverv 709
Technical Support 7 IO
System Enhancement 7 JO
Task 8.4.J Request
Task 8.42Task 8.43System
A11alvze Enbance,nen.t
712
Make the Quick Fix 712
Recover Exlst/11g Phvsica/
713
Additional UML Design and In1plcmentation
Diagrams 671
Systen1 Obsolescence 7 I 4
PART FOUR
Photo Credits 720
Beyond Systems Analysis and Design 681
Glossarv/lr1dex 721
19
SYSTEMS CONSTRUCTION AND
IMPLEMENTATION 682
Introduction 684
What ls Systems Construction and
Implementation? 684
xv
Systems Analysis and Design Methods
Part One
The Context of Systems Development Projects
product we will teach you how to
build-information systems. Specifi-
customer or user of those systen1S or
as a developer of those systems. Systems analysis and design is about
business problem solving and computer applications. The methods you
will learn in this book can be applied
to a wide variety of problem de>
mains, not just those involving the
computer.
Before we begin, we assume
you'Ye completed an introductory
course in computer-based information systen1s. Many of you have also
completed one or more programming
courses (using technologies such as
Access, JaM., CIC++, or l.fo,al
Basic). That will prove helpful, since
systems analysis and design precedes
ancllor integrates with those activities.
But don't worry- we'll review all
the neoessary principles on which
book. Try to keep that in mind as you
explore tbe big picture.
Systems development isn•t
magic. There are no secrets for success, no perfect tools, techniques, or
methods. To be sure, there are skills
that can be mastered But the complete and consistent application of
those skills is .still an art
We start in Part One with fundamental concep5, philosophies, and
trends that proTide the context of systems analysis and design methods-in other words, the basics! ff you
understand these basics, you will be
better able to apply, with confidence,
tbe practical tools and techniques you
will learn in Pats Two through Four.
You will also be able to adapt to new
situations and methods.
Four chapters make up this part.
Chapter I, "fbe Context of Systems
Analysis and Design Methods," introduces you to the participants in systems analysis and design with special
emphasis on the. mcxiern systems analyst as tbe facilitator of systems work.
You'll also Jean, about the relation-
s:ys:tem.s: :m.:tly.si..s: :md de.sign i..s: b:ls:ed.
ships between .systems: :i.n:a.lysts:, end
dependent on the principles th:a.t :ue
Part One focuses on tbe big picture. Before you learn about specific
activities, tools, techniques, methcxls,
and technology, you need to understand this big picture. A, you explore
the context of systems analysis and
design, we will introduce many ideas,
tools. and techniques that are not explored in great detail until later in the
users, nunagers, and other information systems professionals. Finally,
you'll learn to prepare yourself for a
career as an an:llyst (if that is your
goal). Regardless, you will understand how you will interact with this
important professional ,
Cbapter 2, "Information System
Building Blocks," introduces the
surveyed. This chapter inlroduoes two
modeling techniques for project management: Gann and PEKl. These tools
help you schedule activities, evaluate
progress, and adjust schedules.
This is a practical book about information systems development methcxls. All businesses and organizations
de,-elop information systems. You can
be assured that you will play some
role in the systems analysis and design for those systems-either as a
cally, you will learn to examine information systems in terms of common
building blocks, KNOWlJIDGB,
PROCESSES, and COMMUNCATIONSeach from the perspecti,-e of different
participants or stakeholders. A visual
matrix framework will help you organize tbese bwlding blocks so that you
can see them applied in the subsequent chapters.
Chapter 3, "Information Systems
Development," introduces a highlevel (meaning general) process for
information systems development.
This is called a systems de1·elopment
life cycle. We will present tbe life cycle in a form in which most of you
will experience it- a sysienJs del·elopment methodology. This methodology will be the context in which you
will learn to use and apply the systems analysis and de.sign methods
taught in tbe remainder of tbe book.
Cbapter 4, "~ect Management,"
introduces project management
techniques. All systems projects are
THE "PU'tERS"
•cw
z
J
0
•a:
..
.."
..
•w
••>
•
THE ~PRODUCT"
z
~
•<.>
..
0
a:
~
•cw
!
•w
•f
•
v
c
•
••
•>
..
..
•
..•
~
z
•c
!
2
•w
0
•w
••>
•
INFORMATION
SYSTEMS
Transaction Processing Systems
Management Information Systems
Decision Support Systems
Executive lnformatlon Systems
Expert Syslems
Communications & Collaboration Systems
Office Automation Systems
~
•>
•
•cw
0
•"
••w
••
•>
TECHNOLOGY
C H A PT E R 1 H OM E PA G E Each chapter in this book begins with a "home page" similar to
the one above. The home page is something of a chapter map, a visual framework for systems thinking
applicable to that chapter. Chapter 1 focuses on (1) the players in the systems game, (2) business drivers
of interest to business players, (3) technology drivers ar,d enablers of interest to the technical players,
and (4) the process used to develop systems. We will also examine the critical role played by systems
analysts in facilitating an understanding of how all four perspectives must come together.
The Context of Systems
Analysis and Design Methods
Chapter Preview and Objectives
This is a book about systems analysis and design as applied to information systems and
computer applications. No matter what your chosen ocoJpation or position in any business, you will likely participate in systems analysis and :lesign. Some of you will become
systems analysts, the key players in systems analysis and design activities. The rest of you
will .,.,.ork with systems analysts as projects come and gc in your organizations. This
chapter introduces you to information systems from fow clifferent perspectives. You will
understand the context for systems analysis and design methods when you can:
I Define information systeni and name seven types of information systen1 applications.
I ld!ntify different types of stakeholders who use or dtvelop information systems, and
give examples of each.
I Define the unique role of systems analysts in the de,-e.Jopmeot of inforn1ation systems.
I ld!ntify those skills needed to successfully function as an information systems analyst.
I De.scribe current business drivers that influence infonnation systems development
I De.scribe current technology drivers that influence information systems development.
I Briefly describe a simple process for developing information systems.
6
Part One
1ho Context of Systems l>owlopmont ProjOffl
It is Bob tttartfnez•s first week at work as an ai1..1lyst/programmer. Fresh out of college
wlth a degree In computer lnfonnatlon systems technology, Bob is eager to work with
information $)'stems In the real world. His employer is SoundStage Entertainment
Club, one of the fastest.growing music and video dubs In America. SoundStage Is Just
beginning systems analysis and design wod< on a reenglneering of thelr member services Information system. Bob has been appointed to the p roject team.
Thls morning was the lickoff meeting for the projec~ a meeting that lnduded the
vice president of member sen-ices, director of the audio d ub, director of the game
dub, director of marketing, diroctor of customer sen-i ces, and director of warehouse
operations. With that Uneup Bob was glad to mainly keep sllent at the meeting and
rely on h.1s boss, Sandra Shepherd, a senior ~·stems analyst. He was amazed at how
well Sandra was able to speak the language of each of the participants and to explain
the plans for the new lnformation system in terms they c ould tmderstand and wJth
benefits they could appreciate. Bob had thought that being Just out of college he
would know more about cutting-edge tedu1ology than most of h.1s co-wotkers.
system a gcup of interrelated components that function together to achieve a
desired result.
But !iaodrn seemed to w1derstmd everytJ:ung about e<0mmerce and ltSJng moblle
tecbnologles plus many things of wh.lch Bob was only '\o-aguely aware. He m1de a
note to read up on ERP systems as that had come up in the discussion. By the end of
the meeting Bob had a new appredatlon for the Job of systems analyst and of all tl1e
things he had yet to leam.
A Framework for Systems Analysis and Design
iaformatioo system (IS)
an arrangeme,t of people,
data, processes, and iitormation technology that interact to collect, process, store,
and provide as output the information needed to support
an organization.
lufo, ...u.adou tttlu.tul~y
(IT) a comemporary term
that describes the combination of computer technology
(hardware anc software) 'Mth
telecommunications technology (data, imaJe, and voice
networks).
t:raasactioo processing
system (TPS) an informationsystem that captures and
processes dat i about business transaciions.
man.agemeot ioforma-
tioo system (!\OS) an information system that provides
for management-oriented reporting basedon transaciion
processing anj operations of
the organization.
As Its tltle sugJ!l'stll, thls ls a book about systems analysts and design methods. In thls
chaptei;. '\\"'e will introduce the subject using a simple bur comprehensive '\oisual framewod<. fach dupter In thls book begins with a home page (see ~
that qulcktJ' and
visually shows whlch aspects of tbe total framewod< we will be discussing In the dupter.
We'll build thls visual framework slowly over the first four chapters to avold overwbeJm.
lng you with too much detaU too early. Toereafte,; ead1 chapter will hlghllght those
aspects of the full framewod< tlut are being taught In greater detail In dut chapter.
Ultimately, tills ls a book about •analy7ing" business requirements for Information
systems and ..deslgili.ng" infort1u1tto11 S):Ste,ns that fulfill those business re<Jltlremenrs.
1n other words, the proaUcr of
syscems ai1.atys1S and <1es1gi11s an lnformauon syscem.
111at product Is visually represented lt1 the visual framewod< as the large rectangle In
the center of the picture.
A system is a group of interrelated components that fw1ctlon together to adtieve
a desired result For lnslance, yoo may own a ltome theater system made up of a DVD
pL1yer, rec eiver, speakers, and display monltor.
Information systems (JS) lt1 organizations capture and ma,,age data to produce
useful. information dur supports ai1 orgail.izatlon and irs employees, customers, s12ppUers, and partners. ,_lany organizations consider lnformation systems to be essential ro
their abillty ro compete or gain competJtt,--e advancage. ~fost org.ul.izations have come
to realize that ail workers need ro participate ln the development of infonnatlon systems. Therefore, Information ~ems development is a reJevanr subject to you rtgardless of whether or nor you are studying to become an lnfonnatlon systems professional.
Information systems come in all shapes and sJzes.111ey are so interwoven lnro the
fabric of the business S)'sterns they support that It is often dlfllcult to dlstingulsh berween business systems and thelr support Information systems. Suffice It to say mat lo.
formation ~ems can be dassUled according to d1e fw1ctlons they serve. Tra.osactioo
processing systems (TPSs) process business transactions such as orders, time
cards, payments, and reservations. Management lnformatloo systems (MIS.) use
the transaction data to produce lnfonnatlon needed by managers to run the business.
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
d,optO< Ono
7
Ded<lou support systems (0555) help ,-arlous decision makers Identify and choose decisioo suppon system
between options or decisions. E.ucuth-e lnfonna tioo SJ,-Stems (E!Ss) are tailored to (DSS) an information system
the wlique information needs of executh,--es who pL1n for the business and asses., per- that either helps to identify
fornunce ag.1lnst those plans. Expert systems capture and reproduce d,e knowledge decision-maJ<inQopportunities
of an expert problem solver or declslon maker and then slmufate the• thlnklug" of that or provktes information to help
make decisions.
expert. Commuo.icatioo and collaboration S)'Steros enhance communlcatlo11 and
colfaboration betweet1 people, both internal and extemal to the organization. Finally,
office automatio11 systeins heJp employees create and share documents that support executiVe i.oformatioo
day-m-day office activities.
system (EIS) an information
As illustrated lo the chapter l1ome page, lnformadon systems can be '\oiewed from system that supe>orts the planni ng and assessment needs
various perspectives, lndudfng:
of executive managers.
Toe
The
Toe
The
players lo the lufonnation system (the "team").
busine.s., drivers influencing the lnformatlon system.
technology drivers used by the Information system.
process used ro develop the lnformatlon S'/stem.
Let's examine each of these perspectives in the remalnlng sections of the chapter.
( The Players-System Stakeholders
let's assume you are lo a position to help build an information system. Who are the
stakeholders lo this >)'Siem? Stakeholders for luformatlon systetns can be broadly cla.ssltled Into the five groups shown on the left~1.10d sire of Figure 1-l. Notice that each
stakeholder group has a dlfferei1t perspective of the s,me information system. The sy..
tems analyst is a unique stakel1older In Rgure 1-1. Toe >)'Siems analyst serves as a facilitator or coad1, bridging tJ,e communlcatlons gap that can naturally de.-elop bem-eeo the
11ontechnical ~tern owners and users and the tedmlcal system designers and builders.
All the above stakeholders have one thing In common- they are wt1..1t the U.S.
Department of Labor calls lnfonn.~tlou workers. Toe u,-.Uboods of Information
wod:ers depend 011 decisions made based on information. Today, more than 60 percent
of the U.S. labor force is involved h1 producing, dlstrlbuth1g, and ush1g Information.
Let's ex.amine the five groups of lnfonnation workers In greater detail.
let's briefly examloe the perspecth'es of each group. But before we do so, we
shotid point out tl1.1t these groups actually define "roles" pfayed lo systems de.-elopment In practice, any indJvJdual person may play more than one of these roles. For example, a system owner might also be a system user. SlmlLirly, a systems analyst may
expen S}'Stem an informa.
tion system that captures the
expertise of workers and then
simulates that e:cpertise to the
benefit of nonexperts.
commuoications aod
collabotatioo system an
information sysem that enables more etfec.tive communications between workers,
partners, customers, and suppliers to enhanc» their ability
to collaborate.
also be 2 system des:lgne,, 2nd a s:ys:tem designer might also be 2 system builder. 1\.ny
ufftl.t au1ouloldot1 ~y:,1eu1
combination may work.
an information system that
supports the wide range of
business office aciivities that
provide for improved work flow
between workers.
>
Systems Owners
For any lnformation $)'stem, large or small, there will be one or more system owners.
System owners usually come from the ranks of management For medJum to L1rge inforrmtlon systems, $)'stem owners are usually mklJJe or executh,--e managers. For
sm.1lier systems, system owners may be middle managers or supervisors. System owners tend to be Interested In the bottom line-how much will the system cost.? How
much '\o-a.lue or what benefits will the system return 10 the bush1ess?Value and benefits cin be measured In different ways, as noted h1 the margin checkllst.
>
Systems Users
System user,; make up the vast majority of the information worl<ers lo any h1formatioo
system. Unlike system owners, ~tern users tend to be Jes, concerned with costs and
bet1alts of the system. Instead, as Ulustrated lo Figure 1-1, they are concemed with
tl,e functionality tJ,e system pro,ides to their Jobs and the system's ease of leamlng
and ease of use. Although users l1..1ve become more tEdmolog)'-literate o,--er the years,
stakeholder any person
who has an inte·est in an existing or proposed information
system. Stakeholders may in.
elude both technical and nontechnical workers. They may
also include botil internal and
external workers.
i.aformatioo "'·orker any
person whose job involves
creating, collectng, processing, distributing, and using
information.
8
1ho Context of Systems l>owlopmont ProjOffl
Part One
••
"Pl A.YE.RS•
-
THE "PRODUCT• -
•
••
'HE PAUCEW'
AN IN~OAMA.110 N SYSTEM
-
~
~
ffi
•
z
•
) System owners pay for the aystem to bf built and o perated end eel
0
2
v
w
~
~
~
.."
>
~
-
"•z •
2
..,
~
...
0
"
~
~
•'
~
~
~
>
~
•z
•
~
..
2
~
~
>
~
SYSTEM OWNEAS' VIEW OF THE It-FORMATION SYSTEM
the vision and priorities forthe aystem. He,ce, they v iew an
information system in terms of ooeta and benefits to solve problems
and exploit opportunities,
'
~
~
"
Ill
~
•
I!!
~
>
~
•
SYSTEM USEAS' VlEW OFTHE INFORMATION SYSTEM
•
) S'f*tem user s define the business requi1ements and e,q>ectations
V
tortne s)ISlem. Hence, tneyv tgW an 1morrnat1on 8)1,!,t&m In ter~
or
•
the functionality provided to their jobs, e&Ee<>f.Jearning, or ease~·
use,
-
~
~
ffi
z
!2
~
w
Q
2
I!!
~
•
SYSTEM OESIGNEAS' VIEW OF THE N FORMATION SYSlEM
••
) S'f*tem d eeig n er s translate the business requirementa into a
•
>
~
z
fea.sible technical solution. Hence, they v iew an information ey.,.tem
in terms of a design blueprint to guide the construction of the final
eystem.
-
•
~
~
"l!I
...
~
m
2
w
--
•
SYSTEM BUILOEAS' VIEW OF THE INFORMATION SYSTEM
) System builder• oorutruct, deploy, end maintain the information
V eysf.em, Hence, they tend to view en information system in terms of
~
>
the actual working hardware and aoftwareto implement the evstem,
•
~
-
TE Ct
•
•• s
F I GU R E 1 • 1 Stakeho lders' Perspective of an Information System
system owoer an inforrna.
tion syswm's sponsor and
executive advocate, usually
responsible for funding the
project of developing, operat·
ing, and maintaining the
information sy31em.
their primary concent is to get the job don e. Consequently, discussions with most
users need to be kept at tl1e busloess requirements level as opposed to tl1e technical
requirements level. Much of tllls book Is dedicated to teaching you how to effectively
identify and communicate business requirements for an lnfonnatlon system.
There are many classes of SJ'stem users. Each class should be directly it1vol,--ed in
any Information system developmetll project that affects them. Let's briefly examine
these classes.
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
lntetnal System Users Internal system users are employees of the businesses for
wtlich most information systems are built. Internal users make up the largest per-
cent1ge of information $)'stem users In most businesses. Examples lndude:
Clerical a1ul servf.ce toorkers- perfonn most of the day-to-day transaction
processfr1g lo the average business. They process orders, lnvoJces, payments,
and the like. They type and fife correspondence. They fill orders In the
warehouse. And they manufacture goods on the shop floor. ltfost of the
fundamental data In any business ls captured or created by these workers,
many of whom perform manual labor In addition to processing data. Information systems tl1at target these workers tend to focus on transactJon processing speed and accuracy.
Teclmtcal a11d professto11a/ staff- consists largely of business and lndustrL1I
specL1llsts who perform highly skilled and spedalized work. Examples
Include lawyers, accotllltants, engineers, scientists, market analysts, advertlsh1g
designers, and statistidans. Because thelr work ls based on well-defined bodies of knowledge, they are sometimes called knowledge workers. lnform.1tlon systems that target technlcal and professional staff focus on data analysis
as well as e:eneratine: timeJy Information for problem soJvine:.
s,,pervisors, tntMle ni.anagers, and e.wcu.tlve ,nan.agers- are the dedslon
makers. supervisors tend to focus on day40-0ay problem soMng and decision
mal'ing. '-'Odd.le managers are more concen1ed with tactical (sl1ort-tenn) operational problems and decision maklng. Exec,,1th·e managers are concerned
with strategic (long4erm) planning and decision making. Information systems
for managers tend to focus enti.reJy on h1fonnatlon acces.,. '-'tanagers need the
right Information at the right time to lde11tlfy and solve problems and make
good decisions.
External System Users The Internet has allowed t:rad1tio11al information system
boundaries to be extended to include other businesses or direct consumers as system users. These exten1al system users make up an increasingly L1rge percentage of
system users for modern lnfonnation systems. Examples lnclude:
C1-t.sto111ers-any org.ul.izatlons or h1dl:viduals tl1,1t purchase our products and
senices. Today, our nistomers can become direct users of our information
~·stems when they can cllrecdy exec,,ne orders and sales transactions that
u.sed to require Intervention by an internal user. For example, lf you
purchased a company·s product vta the lntemec, you became an excemaJ
u.ser of that business's sales Information ~tern. (01ere was no need for a
separate h1ternal user of the business to Input your order.)
Suppliers-any orpnlzatlons from wblcb our ccmpany may purchase supplies
and raw materials. Today, these suppUers can Interact directly with onr com.
pany•s lnfonnatlon ~ems to detennlne our supply needs and automatically
create orders to fill those needs.111ere ls 110 Jo~er always a need for an lntero.al user to lnltiate those orders to a supplier.
Partners-any organizations from which our company purchases senices or
with which It partners. ~tost modern businesses contract or outsource a number of basic services such as grow1ds maintenance, network m:uugement, and
many others. And businesses h.a,--e learned to partner with other businesses to
more qulckly le,-ernge strengths to build better products more 12pldly.
e»iploJiees- those employees who work on tl1e road or who work from
home. For example, sales representatives usualtl spend much of tl1eir time on
the road. Also, m:uiy bush1es.,es permit workers to telecommute (meail.i.ng
"work from home") to reduce costs and impro•1e productivity. As mobile or
remote users, t11e.se employees require access t,) the same information systems as those needed by Internal users.
d,optO< Ono
9
POSSIBLE VALUES
AND BENEFITS OF
INFORMATION
SYSTEMS
Increased Business Profil
Reduced Busness Cosls
Cosls and Benefits of lhe
System
Increased Ma'kel Share
Improved Customer
Relations
Increased Effi,: iency
Improved Decision Ml.king
Better Complence with
Regulations
FeYre1 Mi~lake:s
Improved Serurity
Greater Capacity
system user a "customer'
who will use or is affected by
an information system on a
regular basis--capturing, vali.
dating, entering. responding
to, storing, and exchanging
data and information.
knowledge '\\l>tker any
worker 'M'lose 11sponsibilities
are based on a specialized
body of knowlec·ge.
10
Part ono
remote user a user 'M"lO is
not physically bcatscl on the
premises but vh:, S1il IrequirElS
access to inbnnation systems.
1ho Contoxt of Systoms l>ovolopmont ProjOffl
External system users are Increasingly referred to as remote tisers and mobile
users. T hey connect to our Information systems through laptop computers, h.andheld
computers, and smart phooes- efther wired or wireless. Designing lnfonnatlon systems for these devices presents some of the most contemporary of challenges tlur we
wlU address In this book.
m obile user a user 'M'lose
location is constantly chang.
ing but who re=1uires access to
information sy31ems from any
location.
system designer a techni.
cal specialist Vlo translates
system users'business requirements an:t constraints
into technical solutions. She or
he designs the computer
>
System d esig n ers are technology specL1lists for Information systems. As Figwe t -1
shows, system designers are Interested In lnformatlon technology d10Jces and In tl1e
design of systems that use chosen technologies. Today's system designers tend to fo.
alS on tedulical special ties. Some of you may be educath1g yourselves ro speclalize in
one of these tedulical specL1ltJes, such as:
Database ad,n-11,~rrators- spedalists lo database tedu1ologjes who desJgn
and coordht.1re dt.1nges to corporate databases.
1\ retwork architects- spechlists it1 networking and telecommunlcatJons rechnologles who design, Install, configure, optlmlze, and support local and wide
databases, inputs, outputs,
screens. net\Wrks, and soft.
ware that will meet the system
users' requirements.
area netwo tks, lnclu dlng connectio ns to the lnten1et and other extern:U
networks.
Web arcbf.tects- spedalists wt10 desJgn compJex Web sJtes for organlz.atlons,
lndudlng public Web sites for the lntemet, Internal Web sites for organlzatlons
(called l11tranets), an d private business-to-business Web sites (called e.m-auets).
Grapbr.c artl<ts- relatlvely new In today's IT wod<er mbc, specialists In grap hics technology and methods used to design and construct compelling and
easy-to-tlSe interfaces to systems, including interfaces for PCs, the \X'eb, h.andheJds, and smart phones.
Secu.rf.ty <!Xj>erts- specialists In tl1e technology and methods used to ensure
data and network security (a nd pri>-:tcy).
'/llclmo/ogy specia/fsts- expe,:ts In the application of specific tedUlologles
that will be used In a system (e .g., a specUk commercial software package or
a specUk type of hardware).
>
system builder a technical
specialist whoconstructs information syst~ms and components based on the design
specifications ;1enerated by
the system de.signers.
Systems Designers
Systems Builders
Syst e m b uilders (ag.1ln, see Flgiire 1-1) are another category of tedmology sped allsts
for frlformatJon ~ems. Their role is ro constrlK.1 the ~em accordtn,a to the system
designers• spedflcarions. In sm.1ll orgailizatJoos or wlth small Information systems,
systems designers an d systems builders are often the same people. But In large org.1nlzations and Information systems tl,ey are often separate Jobs. Some of you may be educating yourseh·es to spedaUze in one of d1elr technical speclaltles, such as:
Appllcaff.01,s progratunien- speclallsts who convert busit1es., requ.lrements
and staremenrs of problems an d procedures Into computer langt.tages. They
develop and rest comp uter programs to capture and srore data and to locate
and retrieve dara for computer applications.
S):Sfetns progran1111ers- spedaUsts who develop, rest, an d implement operating
systems-level software, tttllit!es, and services. Increasingly, they also develop
reusable software "components• for use by appUcatlons prognmmers (above).
Database programmer.s- spedallsts in database languages and technology
wt10 build, modify, and test database structures and the programs th.at use
and maintain them.
1\tetwork adtnitJ:f.strators-speclallsts wt10 desJgn, Install, troubleshoot, aod
optimize computer networks.
Secu.rlty ad111.l11istmtors-spedalists who design, irupJemenr, troublesho«,
and manage security and prh--acy controls In a network.
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
Choptw Ono
11
Webniasters- spedalists who code and maintain Web servers.
Software Integrators- specialists who Integrate software packages with hardware, networks, and other software packages.
Although thJs book Is not directly intended to e<l1cate the system b1ulder, it Is h,
tended ro teach ~tern designers how to better communicate design specl.tlcatlons to
systffll builders.
>
Systems Analysts
As you have seen, system owners, users, de.signers, and builders often have ,1-ef)' dJf.
ferent perspectives on any information ~·stem to be built and used. Some are interested lo generalities, wbUe others focus on details. Some are nontechnical, while
others are very technlcal.11lls presents a commwlications gap that h..,s always existed
bet\,,.een tl1ose who need computer-based business solutions and those wl10 understand lnformatio11 technology. The S)'Stems a.oalys1 bridges that gap. You can (and
probobly will) play a role as eltl1er a systems analyst or someone who works witl1 sys.
tem.s ai1.alysts.
.As IUu.sb'ared In Figure l t, their r o le lnrention..,lly overl'lJ)6 the roles of all the
other stakeholders. For the ~·stem owners and users, systems analysts ldentlfy and '\o-:tlidate busines., problems and needs. For the ~·stem desJgners and bu.llders, systems analysts ensure that the technical solution fulfllls the business needs and integrate the
tedll'Ucal solution Into the business. In other words, ~tem.s analystsfacfJttate the development of Information systems tlvough interactla.1 with the other stakeholders.
There are several Jegftlmate, but often confusing, variations on the Job tide we are
calliqi"systffllS :uulyst.• Aprogrammer/miaf)<t(or analyst/programmer) includes the
responsibilities of both the computer programmer and the systems analyst. A bust11ess
analyst focuses on only the nontechnlcal aspects of systems analysis and design. Other
synonyms for "~terns analyst• are systems consultant, business ai1..1lyst, systems architect,,,ystems engineer, information engineer, infonnatlo11 aiulyst:, and systems lncegrator.
Some of you will become ~·stems analysts. TI1e rest of you wUJ rotrtlnely work
with systems analysts wl10 wlll help you solve your business ai1d industrial problems
by cteatlng and improving your access to the data ai1d infonnation needed to do your
job. Let's take a closer look at systems a,1alysts as the key facilitators of information
systems development.
The ~ole of the Systems Analyst Systems anal)•Sls understand both business and
computing. They scudy bustnes., problems ai1d oppomul.ltles and men uansfonn busInes., and information requirements lnto sped.flcatioos for information systems t11..1t
will be Implemented by various tecbnlcal specialists including computer program.
mers. Computers and lnformatlon ~·stems are of value to a business only lf they help
solve problems or effect impro,--ements.
Systems analysts initiate change wlthiJ.1 an organJzatlo11. E,--ery new ~tern
dtanges the bush,ess. Increasingly, the very best systems a,1alysts literally change thelr
organlzatlons- pro"idfng information tl1..1t can be used for competitive advantage,
finding new markets and services, and even dramaticilly changing :u1d improving the
way the org.ul.izatlon does busine.s.,.
Toe systems analyst is basically a problem solver.1llroughout this book, the term
problem wUI be used to describe many situations, Including:
Problems, either real or anticipated, thac require corrective action.
Opportunltles to improve a situation desplte the absence of compL1ints.
Dlrectlves to d1..1nge a sltuatio11 regardless of whether anyone has compL1it1ed
about t11e current slcuatlo11.
Toe systems analyst's job presents a fusck1ath1g and exciting dtallenge to many
individuals. It offers high management vlsibillty and opportunlties for Important
systems ao.3-'!•st a special·
ist who studies he problems
and needs of an organization
to determine haN people,
aata, processes. ana 1morma.
tion technology :an best
accomplish improvements
for the business
12
Tho contoxt of Systoms Dovolopmont ProJo<ts
Part Ono
Executiw
Management
Finarcial
Management
0
.....
Finerce
A«<lurtilg
Human
REISC>urces
0
--
Errp¥*1t
..,,_,
eonpwae,
Empie,Bon.to
NOTE: TN, ,guna d,:,mohSfJllhO howvdl ( N)f~n;iki~nC$ n4*t in lhi;i
ti th;,
ligl,1'$. lhi;i n..rnbond b.11111, f'Rf toin.
rdlinanOM lhOI •pi.in llllil bJIIQt
O
Operations
0
"*'
"*'
Resear::h &
Dewlopnent
0
ln..n10,y
......
Contol
i:.oon:h
"°""""
Coftfol
'rodu<t
........
Oi•bJlicn
Information
Services
-· -·
-· -· -..
..1J.,,...
........
··,,_ ..j.,,...
,,_
..1A.,,...
i:;~
f)
E'9n,,ri119
f)
hclue:lriol
E'9n,,ri119
,,_
c,p..ion,
Pu~Oling
--
o,..""'9111a1
o~
.,....~
Dapsan,11111
Compulrl
o}S
..,.....
...,..
....,...
c....o-
&r\10$
""--"&
f)
ANNn:h&
Dapstm,11111
CompUfflg
-
",...,...
1J
o..11111..11a1
Qimp......
o~
.,...~
....,..
( F I GU R E l • 2 Systems Analysts in a Typical Organization
,,_
1A
...,,...
u - tignod
°""81ope,.
1A
O...opmert
f)
.,,...
0
)
decision making and creativity that may affect an entire orga11Ji.atlon. Furthermore,
this Job can offer these beneflls relatively early In your career (compared to other
enrry-le1i--el Jobs and careerS).
Where Do Systems Analysts Work? Every business organlzes itself wllquely. But
certain patterns of organlzatlou seem to reoccur. Figure 1-2 is a representative organJzatlon chart. The following Oltmbered bullets cross-reference and emphasize key
points In the figure:
O
0
O
System owners and system users are located lo d1e functional units and subun.l:ts of the business, as well as ln the executive management
System designers and builders are usually located in the Information systems
un.l:t of the buslness. l\ilost systems analysts work also for the h1fonnatlo11 services tmlt of ait organlzatio11.
As sbown In the figure, si.rerns analysts (along with systems designers and
b,tllders) may be permanently assigned to a team that supports a speclfl<:
business function (e.g., flnmdal systems).
Numbers 2 and 3 above represent a tradltlonal approach to organlzlog sy!tems
analysts and other developers. Numbers 4 and 5 below represent strategies Intended
to emphasize elther efficiency or business expertise. AU of the strategies can be
combin ed in a single organization.
The Next Generation:
Career Prospects for Systems Analysts
/1/v:Jny of you are considering or preparing for a career as
a ,ys...,,, analyst. The Iii,, of a ,y,tem, analyst i, both chcllenging and rewarding. But what are the pro,pem far the
fvturo? Do organization, need ,y,tem, analyst,? Will they
need them in the fare...able future? I• the job changirg
for tie future, and if so, how? These questions a re
add .....d in thi, box.
According ta the U.S. Department of Labor, compul<r·
related jab, account far 5 out of the 20 fa,test-growirg
occupations in the economy. What's more, the$9 faste!f·
growing computer-related occupation, pay better than
many other job,.
In 2002, <168,000 worker, were da.. ified a• ,ystem,
analyst,. 2012, that number will grow to 653,000, an
increo,e a 39%. Thi, mean• that at lea,t 185,000 new
,y,tem• analy,ts mu,t be educated and hired (not including those needed to replaai the ones who retire or move
sr
into managerial positions or other occupations). 1he need
is increasing because industry needs systems analysts 10
meet the ,eemingly endl.., demand far more information
systems and software applications. As some programmirg
job, are being out-,ourced to independent contractors ard
othercountri.., the need grow, 9""n greater for ,killed ,y,lem• analy,i., who can create ,olid de,ign ,pecification,
for rtmote development teams. Opportunities for suca»s
will be the greate,t for the most educated, qualified, ,killed,
and oxperienced analyst,.
\',1,at happen• to the ,ucces,ful ,ystem, analy,t?
a position as a systems analyst lead to any other career$J
Indeed, there are many career path,. Some analysb leave
the information systems field and join the user community.
Their experience with developing busine$S applications,
combined with their total sysh~m$ perspective, can make
expeienced analy$1$ unique bu$ines$ $pecialist$. A~ernativelr. analy$1$ oon becane project managers, information
$Y$h~m$ manager$, or technical $peciali$t$ (for databases,
telecanmunications, microcomputer$, and $0 forth). FinalV,
,killed ,y,tem,analysbareoften recruaed bytheconw~irg
o,,..
O
0
z
CD
x
G)
and oubourcing indu$lries. The career
path opportunitie$ are virtually limitle$S.
---+
A$ with any profe$sion, $Y5h~m$ analyst, can expect change. While it i• alway$ dangerou$ to predict changes,
we'll toke a ,hot at it. We believe that
organizations will become increasingly
dependent on external sources for their
:::J
$ysh~m$ analyst$---<:On$ultanb and out•ourcers. Thi, will be driven by ,uch fac--;
tors a, the complexity and rapid change
of 19chnology, the de,ire to accelerate
,y,tem• development, and the continued
difficulty in recruiting, retaining, and retraining ,killed ,ystern, analy,i. (and
other information technology profe$·
:::J
$ional$) . In many ca$9S, internally em(/)
ployed •Y•tem• analy,1, will manage
projects th rough consulting or oubourcing
agreements.
We believe that an increasing percentage of tomorrow'$ sy$tems analyst$
will not work in the information $Y$·
lem• department. ln,19ad, they will work
directly for a busine$S unit within an organization. This
will enable them to better ,erve their u,en. I will al,o
give user$ more power over what $y$lem$ arE-built and
,upported.
Finally, we also believe that a greater percentoge of
,ystem• analyst, will come from noncomputing background$. At one ti me mo$ t ana ly$t$ were can~uter s,peciali, b. Today, computer gradua'96 are beconing more
bu$inC:ll$$·1iterate. Similarly, todays bu$ineu and noncomputing graduate, are becoming more computer-li'9rale.
Their full-time help and in,ightwill be needed to meet demand and to provide the bu,in.., badcground nece..ary
far tomorrow'• more complex applications.
CD
CD
0
0
Systems analysts (along with system designers ,nd builders) may also be
pooled and cemporarlly assigned to specific projects for any business
ltmctlon as needed. (Some organlzatlons beUeve this approach yields greater
efficiency because analysts and other developers are always assigned to the
hlghest-priority projects regardless of business area expertise.)
Some systems analysts may work for smaller, departmental computing organizations that support and report to their own specific business functions.
(Some org.ul.izatlons believe this structure results in systems analysts that
deveJop greater expertise In their assigned business area ro complement their
1edmlcal expertise.)
All of the above strategies can, of course, be reflected within a single org.ul.ization.
13
14
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
Regaroless of where systems analysts are assigned within the orga11lzation, it ls Jm.
ponant to realize that they come together in project tea-,ns. Project teams are usually
created and disbanded as projects come and go. Project teams must also indude appropriate representation from the other stakeholders tl1at we previously discussed
(system owners, system users, system designers, a11d system builders). Accordingly,
we will emphasize team building and teamwork tbrougl1out this book.
Skills Needed by the Systems Analyst For those of you with asplntions of becoming a systems ai1..1lyst, this !ectlon describes the skills you will need to de,-etop.
11lls book introduces many systems analysis and design concepts, roots, and techniques. Bur you will also need !kills and experJences thar neither this book nor your
systems analysis and design course can fully pro,ide.
When all else falls, the systems analyst who remembers the basic concepts and
pri11clples of • systems thlnkln@• will still succeed. No tool, teclmlque, process, or
meti1odology ls perfect in all situations! But concepts and pri11dples of systems tlllnki11g will always help you adapt to new and dlfferetll situations. This book emph,sizes
systems thinking.
Not too long ago, it was tl1ought that the systems aiul)'st's only reaJ roots were paper, pend.I, and a flowchart template. Over the years, several tools and teduliques
ha>-. been developed to help the systems analyst. Unfortunately, mall)' books emphasize a speclflc class of tools that ls assoc.L1ted with one methodology or approach to
systems analysis and design. In this book, we propose a• roolbox' approach to systems
analysis and design. As you read this book, your toolbox will grow to include mmy
tools from different methodologies Md approaches to systems analysis and design.
Subsequently, you shot~d pick and use tools based on the mall)' different slmatlons
you wUl encowller as an analyst- the right tool for the right Job!
In addition to having fonnal systems analysis and design skills, a systems analyst
must develop or possess other skills, knowledge, and tnlts to complete the Job. These
include:
Workl11g knowledge of injor111atlon teclniologf.es- The analyst must be
aware of both exlstlng and emerging information technologies. Such knowl-
edge can be acquired ht college courses, prof~Jonal development seminars
and courses, and in-house corporate tralnlng programs. Practlclng analysts
also stay current through disciplined reading and participation in appropriate
profe~Jonal societies. (fo get started, see the Suggested Readings at the end
of this and subsequent chapters.)
co·,npurer progran11ntng fXpertence a,uf experttse- lt lS dlfficuJc to tmaglne
how systems analysts could adequately prepare bush,ess and technical speclfi.
cations for a programmer if they didn't have some programmh1g experience.
,_lost ~tem.s analysts need to be proficient in one or more high-level programming languages.
General Jn1-0t1J!edge of b ·u.st11ess processes and temttnology- Systems antlysts
must be able ro communicate wfth bush1ess experts ro gain an understanding
of their problems and needs. For the analyst, at least some of this knowledge
comes only by way of experience. At ti,e same tlme, aspiring analysts should
avail themselves of every opportunity to complete basic bush1ess Uteracy
courses a"-allable h1 colleges of business. ReJeYanr courses may include fin..10dal accow1ting, management or cosr accotmtlng, finance, marketing, man.
ufacrurh1g or operations nunagemenr, quality maiu.gement, economJcs, and
business law.
General problem-solving si,lll<- The systems analyst must be able to take a
large business problem, break down ti1at problem into its parts, determine
problem causes and effects, and then recommend a solution. A11..1lysts must
avoid the tendency to suggest the solution before analyzing the problem.
For aspiring analysts, many colleges offer philosophy courses that teach
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
Choptor Ono
FIGURE l ·3
U., I
The Systems
Analyst as a
Facilitator
..,,,
• •
•
•
A.ppli~tioll.l
pro,t11m111.,.
U.wN
problem-solving skills, critical thhlklng, and reasoning. These •soft skills• will
serve an analyst well.
Good (;nterperso11.al co1u1nu.nicatio11. skills- An analyst must be able to communicate effectively, both orally and ln wrJting. Almost wjd1out exception,
your communJcatlons skills, not your technJcal skills, wlU pro,-e to be the.
single biggest factor Jtt your career success or failure. These skills are learnable, but most of us mllst force ourselves to seek help and work hard to
bnprove them. ~lost schools offer courses such as busfr1ess and techn1cal
wcitlng, business and technJcal speakh1g, lnteniewfr1g, and listening- all useful skills for the ,ystems analyst. These skills are taught In a,apter 6.
Good l11..terperso11.al tr1/atio1JS skills- As Illustrated in Figure 1-3, systems
analysts lnteract with all stakehoJders in a systems development project.
These interactions require effective interpersonal skills that enable the aiialysc to deal with group d)•nanucs, buslness pollttcs, conflJct, and change.
blai1y schools offer valuable lnterpersonal-skllls development courses on
subjects sud1 as teamwork, principles of persuasion, managing change and
confllct, and leadershlp.
flexlbi/1.ty and adaptabl/1.ty- No two projects are alike. Accordh1gly, there Is
oo single, magical approad1 or standard that is equally applicable to a ll pro}
ects. Successful systems analysts lean1 to be flexible and to adapt co unique
challenges and sltuatlons. Our aforen1entioned toolbox approad1 is lncended
10 encour.tge llexibillry In the use of systems analysis and design tools and
methods. But you must develop an attitude of adaptability to properly use
any box of tools.
Character a-nd ethics- The natltre of the systems analyst's job requires a
strong character and a sense of rlghc and wrong. Analysts often gain access
to sensitive or co1lfldeotlal facts and lnfonnatlon rhac are nor meant for
public disclosure. Also, the products of systems analysis and design are usu,Uy considered the Intellectual property of the employer. 1l1ere are several
standards for con1puter ethJcs. One sud1 standard, from the Compucer
Ethlcs hlStltute, ls called ..The Ten Commandments of Computer Etll.ics" and
Is shown In Figure 1-4.
IS
16
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
F IG U R E 1 • 4
Ethics for Systems Analysts
'
The Ten Commandments of Computer Ethics
1. Thou shalt nol use a oompulor lo harm other people.
2. Thou shalt nol interfure with other people's oompul<>r work.
3. Thou shalt nol snoop around in other people's oompul<>r files.
4. Thou shalt nol use a oompulor lo sl9al.
5. Thou shalt nol use a computar k> bear false witness.
6. Thou shalt nol copy or use proprierory software for which you hove not paid.
7. Thou shalt nol use other p«l)le's computer resources without authorization or proper
compensation.
8. Thou shalt nol appropriate other people's intellectual output.
9. Thou shalt think about the social consequence, of the program you are wri~ng or he
sys-tern yoo are designing.
10. Thou shalt alway, use a oompul<>r in ways that inwre consideration and , ..poet fer
your r..llow humans.
>
External Service Providers
exteroal service
provider (ESP) a syS1Sms
111ose of you with some computing experlence m.1)' be wondering where consultants
analyst, system designer, or
system builde1 who sells his
or her expertise and experi.
ence to other businesses to
help those businesses pur.
chase, develop, or integrate
their information syS1ems
solutions; may be affiliated
'Mth a consulting or services
organization.
framework. But they are there! Any of our stakeholder roles may be filled by Internal
flt ln our taxonomy of staL::el10Jders.1l1ey are not Immediately apparent in our Tt.sual
or extenul workers. Consultants are one example of an extenul service provider
(F.SP). tttost ESPs are systems analysts, desJgners, or builders who are contracted to
bring specL1I expertise or exp,rlence to a specific project. Examples lndude technol<>g)' engineers, sales engh1eers, systems consultants, contract programmers, and
systems integrators.
>
pf'Oject m .:io:iger an oxpo
rienced professional who
accepts respo1sibilityfor
planning, monitoring, and
cootrolling projac.ts with respect
to schedule, bJdget, deliver.
ables, customer satisfaction,
technical standards, and
system quality
The Project Manager
We">.. Introduced most of the key players In modem hlfonmtlon ")'stems developmentsystems owners, users, desJgi1ers, builders, and analysts. We should conclude by
emphasJzing the reality that these lndtvJduals must work together as a team to successfttlly build h1formatlon systems and applications that will benefit the bush1ess.
Teams require leadership. For this reason, usuall)• one or more of these stakeholders
takes on the role of project m.ao...'lger to ensure tl1at systems are deveJoped on time,
within budget, and with acceptable quality. As Figure 1-1 Indicates, most project
managers are experienced systems analysts. But in some organizations, project managers are seJected from tl1e railks of what we ha,-e called "system owners." Regard.Jes.,,
most orgartizatlons have learned that project management ls a specL1lized role that
requires distinctive skills and experJence.
Business Drivers for Today's Information Systems
Another way to look at our h1formatlon system product Is from the perspecth.. of busi-
ness drtvers. Using Rgure 1-5, let's now briefly examine the most lmportant business
tre11ds that are Impacting Information systems. Many tre11ds quickly become fads, but
here are some business trends we believe wUJ influence systems de,--elopment In the
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
THE
TfC H
L
OAIVEAS
F I G U R E 1 • S Business Drivers for an Information System
comJng years. ,_lany of d1ese trends are reL1red and integrated such t11..1r they fonn a new
business philosophy that will Impact d,e way everyone works In the comlng years.
> Globalization of the Economy
Sh1ce tl,e 1990s, there has been a slgnJJlcant trend of economic globaUzatlon. Competltlon ls globa~ wlth emerging h1dustrial nations offering lower-cost or hlgher.quallry
Choptor Ono
17
18
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
alternatives to many products. American businesses find themselves wJth new inter11ational competitors. On the other hand, many American businesses have discovered new and expanded international mad.:ets for their own goods and ser,·Jces.
111e bonom Une is that most businesses were forced to reorganize to operate In tllis
global economy.
How does economic globaUzatlon affect the players In the systems game? first,
informatJon systems and computer applications must be Internationalized. They
must support multiple languages, currency exchange rates, lnten1atlonal trade regulations, and different business cultures and practices. Second, most informitJon
systems ultimately require lnformatJon consolidation for performance analysis and
declsJon making. The aforementioned langtiage barriers, currency exchange rates,
transborder Information regulatlo11s, and the UL::e, complicate such co11solidation.
Finally, there exists a demand for pL1yers who can commwlicate, orally and in writing, wlth management and users tl1.1t speak different languages, dialects, and slang.
Opportunities for International employment of systems analysts should continue to
expand.
>
electtooic rommerce
(e-commerce) the buying
and selling of goods and
seNice.s by using the Internet.
electtooic business
(e-busit1ess) the use of the
Internet to conduct and sup.
port day-to-da'j business
aciivities.
Ele<tronic Commerce and Business
In part due to the globaliz.atlon of the economy, and ln part beclltSe of the pervash"eness
of the lnteme~ businesses are clunglng or expanding their business model to lmplanent
eJectro11ic commerce (e«>mnerce) and electronic b,1sloe.ss (e-busiaess). 111e
Internet Is fundamentally dia~lng the rules by whlch business is conducted. We
U,-e in a world where consumers and bush1esses wUJ Increasingly expect to conduct
commerce (bush1ess transactions) using the Internet. But tl1e Impact ls even more
substantive. Because people who work h1 the business world have become so comfortable with •surfing the Web; organlzatlons are Increasingly embracing the Web Interface as a suitable arcllitecture for conducting day-to-day business zvltbl-n t11e
organizatio11.
There are tlvee basic type! of e-commerce- and e-business-enabled lnforrmtlon
systems applications:
Marketing of corporate lm,ge, products, and services ls the simplest form of
eJectronic commerce applkatlon. 111e \X'eb is used merely to .. lnform" customers about products, services, and policies. ,_lost busines.,es have adlieved
tllis JeveJ of eJectronic commerce.
Bus/1,ess-10-co1,su.111er (B2C) eJectronic commerce attempts to offer new.
Wel>based channels of distribution for traditional products and senices. You,
as a typlcal consumer, can researcl1, order, and pay for products directly ,·1a
tl1e Internet. Examples in d ude Amazon .com (for books and music) and
E-trade.com (for stocks and bonds). Both companies are businesses tl1.1t were
created on tl1e \X'eb. 111eir competltio11, however, lncludes tradftlonal busJ..
nesses that have added Web-based electronic commerce front ends as an
alternative consumer option (such as Barnes and Noble and ,_lerrill Lynch) .
Figure 1-6 illustrates a typical B2C Web storefront.
Bus/1,ess-10-b·ust,wss (B2Bj electro1lic commerce is the real future. This ls the
most complex form of electro1lic commerce and coldd tLltim.ateJy evolve into
electronlc buslness-d,e ccmplete, paperless, and digital processing of >irtually
all business transactions that occur witllin and between bush1esses.
One example of 828 electtonlc commerce ls eJectron.ic prOCltrement. All businesses purchase raw materlals, equlpment, and supplies- frequently tens or htmdreds
of millions of dollars worth per year. 828 procurement allows employees to browse
eJectro1lic storefronts and catalogs, inltL1te purchase reqt.tlsltions and work otders,
route requisitions and wort orders electronlcally for expenditure approvals, ord<r tl,e
goods and services, and pay for the de!l,-.red goods and completed services- a ll
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
~
~
•• ......
...a,,,.;1 . ~
19
looll ...-
~ __.!l_~
4._,..
!:,~-...
i"".'· ii.
~ ,J_R__:
BA.RNES&NOBLEO
· -
Choptor Ono
c,-
• • ...(QoJ •
lilil.. ~-· ·- ]El
e .... ;,,- ... o- -
Slwqi s.,.,-. . . fl... lhtro Kr,
BOOK<>BROWSER
NewReleases
-~==--·
,,.......,. ,Ul'I ..
._,..--.o,,,,,,.
P~l,...W.,IO
, au.a .N11 K,a,U\'t ,wnuw1111>11>,~11" 9oidl»), w:11
S<~,r~. 0¥~1!1 H«.tl!Um, Ad. Mc>td/, 41'-"
H#f P\'IN,WtMS<"f...4 ~ ti£,
itdll li Ii
• mro lYMtf
PM
7>,,HntJ,(,~
• 1!!!!!s. A..,...t.o, ~.-11n,p\lJPt lJ11"1¢0'fb'fl
,..........,_h·•=
•feRetui•"••:
• Sh~ ..
·-
fatllet'l:O.,lt.,._ t6th:flnlUI• Perfec.t Gift Ntr.
•r11e,m f'i:f
• fllllki YHtf:I
• Tht ~ttttts I Ht
·~Rt•~>
·tt..u•"-"'o.•
~··
• We11,c,e A..
Hti•t
~m
·.....
• fhef•ih•
· ·· .._.,Ml>h•dh.-...1..•
se- 1jl, • t iy,.J. (O!t14'1Cl'8C .,,,mDwidft~
•
"''"""~J
-.,..mp1mt1. r>io,-..,~ tt-•
- . . - ~.., suM ..u 1. .thft )'Ht lGt,111. •• ....
~~ ~tdtr,,'1\111\.. ll'll MWltillO"
\rfu(l l- .
• «..l ,
Y!f!o eett
•
• MJ4fth't l,t b.
=:,iv
lbl!lW Ctt!l>f'lt)! •
· ~··~~ptl:~to\Mlrllt1»11:t
"l,'Mb':Hr\
tJ
~~.in
~
'
~
... 0 ¥'0&.,.. .
fi]tiii:J>oo-~(~~-"'--~.,.~~
Fu
RE 1 - 6
An Electronic Commerce Storefront
wjth)ut the tradJtlonal time-consumlng and costly ptper flow and bureaucracy. Ffg.
W'C 1-7 illust.mtcs a snmplc Web-based procurement sto.rcf.ront.
largeJy due to the trend toward these e-buslness and e-commerce applicatlons,
most ne\\' information systems applications are being deslgned for an Internet
ardlitecture. Not that long ago, we. were redesigning most: applkatlons to operate
within a Wln.dot'1S user lnterface. Today, we lncreash~· see applications designed to
rtm witllin an Internet browser sud1 as Internet E:'(p!orer or 1\fetscape. The cholce of
a desktop operating system, such as Wtndotvs, il.fact11tosb, or IJ11ux, ls becoming less
Important d1an the availability of the browser Itself.
>
Security and Privacy
As t11e dlgitaJ economy continues to e,--olve, citizens and orgai1izatlons allke have developed a heightened awareness of the securfty .u1d prtvacy Issues Ul\--olved in today's
economy. SecurJty issues tend to revolve arow1d business continuity~ that is, "How will
the business continue ln the event of a breach or disaster- any event that causes a disruption of business actlvity?• Additionally, busine~es must ask themselves, .. How can
t11e business protect its d.Jgital assets from outslde threats?" It is true that these questions ulUmateJy come down to technology; howe,,-er, the concerns l1ave become
funcbmental busJness concerns.
)
20
Part Ono
Tho contoxt of Systoms Dovolopmont ProJo<ts
Hold )IOUff'l"IOUM ~ •
button foi • fflOff
det.a,led apa....ion
r r o """"" ....
F I GU RE 1 • 7
An Electronic Commerce Procurement Storefront
Re.lated ro security is the Issue of pri"-acy. Consumers are increasingly demaodJng
prjvacy in the dJgltal eco11omy. Governments are regulating privacy Issues, and the.
regulations will Uke.ly become more strlogent as the digital e.c onomy conrinues to
evolve. Go to your favorJte commercial \X'eb sites. Almost every business now has a
privacy policy. Consumer groups are beginning to analyze and monltor such privacy
polldes, holdlog companles accountable and lobbying governments for stricter
regulations and cnf01'ccmcnt.
As Information >)'Stems are developed and changed, you will Increasingly 1,e expected to incorporate more strlnge11t securJty and prtvacy controls. In the global
economy, you wlll need to become sensitive to a wjde array of reguL1tlons that "-at)'
cooslderably from one cow1try 10 another. Certalnly,security and privacy mechaalsms
will be subject to the same internal audJts that have become routine ln systems that
support or lnteract with financial systems.
>
Collaboration and Partnership
Collaboration and partnership a.re sJgnJflcant busine.s., t.re11ds that are influend.ag information systems applications. Within organizations, management Is emphasl~ the
need to break down the walls that separate organJzatlon departments and fw1ctJons.
1'ilanagement speaks of"cross-functloual,. teams that collaborate to address common
business goals from lnterdlsclpllnary perspectives. For example,new product design
used to be the exduslve domaln of engineers. Today, new product design typically ln""'Olves a cross-fw1ctional ream or' representatives from many organizational unlts,sud1
as e1lgi.neerlng, marketing, sales, manufacturing, ln,,..entory control, dlstrlbutlon, and,
yes, information $)'stems.
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
Similarly, the trend toward colL1borntlon extet1ds beyond the organization to lo.
dude other organizations- sometlmes even competitors. OrganJz.atlons choose to dJ.
rectly collaborate as partners in business ve11tures that make good business sense.
,_Ucrosoft and Orade sell competitive database management systems. But ,_Ucrosoft
and Oracle also partner to ensure that Ora.de appUcatloos wUJ operate on a t.Ucrosoft
database. Both comparties benefit fuundally from sucl1 cooperation.
In a similar vein, businesses have learned that It can be beneflclaJ for their information ~tem.s to Interoperate with one another. For example, wbUe Wal-?ttart could
generate lts own restocking orders for merd1andJse and send them to Its suppliers,
it makes more sense to Integrate their respectl,. e. fnventory control ~·stems. Suppliers can monitor Wal-f\fart's lnventory levels directly and can automatically inltlate
busluess-to-busfness transactions to keep the sheJves stocked with thelr merdiaodlse. Both companles benefit.. (Of course, this also raises the aforementioned
issue of requirements for good security.)
>
Knowledge Asset Management
What is knowledge? KtJ.OtlJledge is the result of a continuum of how we process raw
data lnto useful lntOrmatlon. lntOrmatio11 systems collect raw data by captu.rlng business facts (about products, employees, customers, aod the like) and processing buslne55 transactions. Data gets combined, tlltered, org,10lzed, and analyzed to produce
Information to help managers plan and operate tl,e business. Ultimately, infonnatlon
is refined by people to create knowledge and expertise. Increasingly, organlzatlons
are asking themseJves, ..How can the company m.1nage and share knowledge for competitive advantage? And as workers come and go, how can the workers• knowledge
and expertise be preserved wlthiJ.1 the organizatio11?"
Thirty years of data proce~lng and infonnation ~stems have resulted in an enormous volume of data, Information, and knowledge. .'\JJ three are considered critical
b·ustness resources, equal In importance to the classic economic resources of land,
labo~ and capital.
The need for knowledge asset management Impacts informatio11 systems on a '\o-:triety of fronts. Although we have captured (and continue to capture) a great amount
of data and information in information systems, they are loosely Integrated In most
organizations- indeed, redw1dant and contradictory data and information are common in informatio11 systems. As new information ~·stems are bulh, we wUJ increasingly be expected to focus on integration of the data and Information that can create
and preserve knowledge In the organizatio11s for whldt we work. Tills will greatly
complicate systems analysis and de.sJgn. ln this book, we plan to Introduce you to
man~· tools and tedtnlques that can heJp you Integrate systems for improved
knowledge m.u1..1gemenr.
> Continuous Improvement and
Total Quality Management
lnfonnation systems automate and support: business processes. In an effort to continuously lmprove a business process, co11tin11011s process impro""etlleut (CPI)
examines a business process to implement a series of small changes for lmprovement
These changes can resltlt In cost: reductions, impro,--ed efficiencies, or increased value
and profit.. Systems analysts are both affected by continuous process improvements
and expected to hlitlate or suggest sud1 lmproveme11ts wltlle designlng and Implementing informatio11 ~tem.s.
Anotl1er ongoing business driver is total quality management (TQM). Businesses
have learned that quality has become a critical sucre55 factor in competition. They
have also learned that quality management does not begin and end with the products
and services sold by the business. Instead, lt begins with a culrure that recognlzes that
Chapter Ono
21
data raw facts about people,
places, events, and things that
are of importance in an organization. Each fact is, by itself,
relatively meaningless.
i..aformatioo :tata that has
been processed or reorganized into a more meani ngtul
form for someore. lnbrmation
is formed from combinations
of data that hop~fulty have
meaning to the recipient.
knowledge data and infor.
mation that are further refined
based on the facts, truths, beliefs, judgments experiences,
and expertise o1 the recipient.
Ideally informati, n leads to
wisdcm.
business pt()('esses tasks
that respond to Ousiness
events (e.g., an order). Busi.
ness processesare the work,
procoduroe, anC: ruloe ro
quired to complete the busi.
ness tasks, independent of
any information technology
used to automa1e or support
them.
contiouous process
impro,•emeot ( CPI) the
continuous monitoring of
business processes to effect
small but measurable
improvements in cost
reduction and value added.
t0t3.l quality -maoagemeot
(TQ.\l) a comi,ehensi\19 approach to facilitating quality
improvements ard management 'Mthin a b~siness.
22
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
everyone In the business Is responsible for quality. TQM commltmet1ts require that
every business function, lnclucllng Information services, Identify quality lndlettors,
measure quality, and make appropriate cha!ll!l'S to Improve quality.
Information systems, and hence systems analysts, are part of the TQM requlremet1t.. OUr discussions wtth college graduate recruiters suggest tl1at an .. obsessh,--e" attitude toward quality m.u1..1gement will become an essential d1..1racterlstic of
successf,d systems analysts (and all Information tedmology professionals). Tivough,
our tllis book, continuotis process Improvement and total quality m:u1..1gemet1t will be
an underlying theme.
>
business process
redesign (BPR) the study,
analysis, and redesign of
fundamental bJsiness
processes to r;duce costs
ancVor improw value added
to the business.
Business Process Redesign
As scared earlier, many infonnation systems support or automate busines., pro«s.,es.
,_lany businesses are learning that tl1ose business processes have not d1..1nged subscantially in decades and tl1..1r those business processes are grossly lneffident ancVor
costly. ~L1ny business processes are overly bureaucratic, and all their steps do not tndy
contrlbute value to the busfr1ess. Unfortw1ately, lnformatlon systems have merely automated many of these lnefficiendes. Enter business process redesign!
Bushiess process redesign (BPR) Involves malting substantive cha!1ges to bus•
ne.s., processes across a larger system. In effect, BPR seeks to Implement more subsuntial
changes and lmpro,--emenrs rl1an does CPL In a BPR, business processes are carefully
documented and analyzed for timeliness, bottlenecks, costs, and whether or not each
step or task truly adds '\o-:tlue to the org.'tnfzacion ( or, conversely, adds only boceaucracy). Business processes are men redesigned for maximum efficiency and lowest
posslble costs.
So how does BPR affect infonnation systems?111ere are two basic ways to lmplemet1t any Information system- build it or buy Jr. In other words, you can wrlte the
software yourself, or you can purchase and lmplemet1t a commercial software package. In both cases, BPR figures promltm1tly. ln writing your own software, It Is useful
to redesign bush1es., proces.,es before wrfth1g the software to automate them. Tills
way, you avoid automating w1derlylng lnefflclet1des. Alternatively, In purchasln@ software packages, most businesses ha,--e disco,-ered it is easier to redesJgn the business
processes to work with the software package than to attempt to force (and even
cripple) the software package to work with existing buslt,ess processes.
Technology Drivers for Today's Information Systems
Ach--ances h1 h1formatlon technology can also be drtvers for information systems (as
suggested In Figure 1-8). In some cases, outdated technologies can preset1t sJgnlfica.nt
problems that drive Information S)'stero developmet1t projects. In other cases, newer
technologies present business opportunities. Let's ex.amine several tedu1ologies that
are influencing today's Information systems.
>
Networks and the Internet
Scott ~tcNealy, Stm Computer's charismatic CEO, is oftet1 clred as stating, '111e network has become the computer;" Few woldd argue tl1at today's Information ~tem.s
are instaUed 011 a network architecture conslsth1g of local and wide area nef\\'Orks.
111ese networks lndude mainframe computers, network servers, and a variety of desktop, L1ptop, and handhekl client computers. But today, the most pervast,--e networking
technologies are based on the Internet. Some of the more relevant Internet technologies that you need to become aware of, lf not develop some basic skill with, are
described In the following list. (For now, don't be lntlmldated by these terms- we
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
THE
8
1E PLAYER:
••
R
ER 8
THE ' PRODUCT'
..•
•..
HE P~
"
'
•
••
'
•
•
•
•
•
••
;f
•
•
•
•
0
23
Choptor Ono
•
•..
..
"
'
INFORMATION
SYST EMS
..••
..
..•
•
,f
,f
,f
,f
,f
Networks 3nd the Internet
Mobile and wireless techndogies
Object tecnnologies
Collaboralive technologies
Enterprise applications
ii,
•..
F IG U R E 1 • 8
..
..
,:
0
..•9
•
Technology Drivers for an Information System
will be teaching you more about these tedu10Jogies and how ro desJgi1 ~·stems t11..1r
use them througl1out this textbook.)
:,f ftML and XML are the fundamental Lwguages of Web page authoring and
Internet appUcatlon developmet1t. Extensible Hypertext Marl-tip Lsnguage
<xlffML) is the emerging secondi!et1eratlon venlon of lffML, the language
used to construct Web pages. Extensible Madrnp Language (XML) Is the
language used to etfectl\'e!)• transport data content along with its proper Inter-
z
•
•
24
Part Ono
Tho contoxt of Systoms Dovolopmont ProJo<ts
pretation over the Internet. Introductory xtf1'1'{l and Xl\fl courses ha,-e become
core requirements ln most information systems and Information technology
college curricula.
Scripting languages are simple programming languages designed specifically
for Internet applications. Examples Include Per4 VBScrlp~ and JavaScript.
These languages are Increasingly taught In college Web development and
programming courses.
\X'eb-spedflc programming languages sudl as Java and Cold Fusto·n have
emerged to speclflcally address construction of complex, Web-based apptications that fn,lolve multiple servers and \X'eb browsers. These languages are
also becoming prevalent In college programming curricula.
Intranets are essentL1lly pdvate lnternets desJgned for use by employees of
an organli.atlon. Tiley offer the look and feel of the lnten1et; however, se..."ttrity and firewalls restrict their use to employees.
E.xtmnets, ll.L::e lntranets, ate pci"-ate Inteme.ts. Bln extranets are for use
betweet1 specific organlzadons. Only the employees of those identllled businesses can access and use the extranet. For example, an automotive manufacturer sud1 as Chevrolet ~ht set up an enranet for the sole use of irs realers. Tb.rough th.ls extr.tnet, the nunufacture.r c:ut communJcnre lnform:itlon
about parts, problems, sales Incentives, and the like.
Portals (ht corporations) are ..home pages" that can be customized to the
speclflc needs of dlfferetll lndlviduals who use them. For example, portal
ted1nology can define Web pages that provide approprL1te lnformatlon and
applications for dJfferent roles in the same company. Ead1 lndtvJduat•s role
determines whJch In.formation and appUcations that person can use from her
or his \X'eb page. Example! of roles lndude "customer;' "suppUer; and dlfferetll types of •employee.• Portals can also effectlvely Integrate public lntemet,
pri'\o-ate Intranet, and extrauet content into each indJvJdual user's home page.
Web services are the latest rage. Web services are reusable, Web-based programs that can be called 6om any other lntemet program. For example, let's
say you need to wrlte a program to accept credit card paymenrs over the
'>"'eb. Sure, you could write, debug, and test tl,e credit card validation program yourself. But an alternative approad1 would be to purchase the right to
use a credJt card '\o-:tUdatlon program over the Web. By dolng so, you need not
maintain responsibility for the credit card valldatlon code. You need only
•cau• the Web service from your program, mud, as you would call an Internal subroutine. Of course, you wtU pay for the pri"ilege of using Web setvJces since somebody had co wrJce the orJgtnal Web sen-1Ce program.
...
........
1:i2.!~
,.....
These are but a few of the network and Internet ted111ologles tl1at you should
seek out du.ring your e.d ucatlon. But you must recognize the voJatlUty of the Internet
and accept that these and otherteclmologies wUl emerge and disappear frequently In
the near future.
>
( Wireless Handheld )
Mobile and Wireless Technologies
Moblle and wireless tedlllologle< are poised to slgolllcantly d,ange the next geneiatlon
of lnfonnatlon systems. Handheld computers, or perso1U1l data assfsta11.ts (PDAs, such
as tl,e HP IPaq, Palm, and RIM BlackBerry"), have become common in the ranks of
information workers. These de;ices are lncreasinglj• Including wireless capabilltles
(see margin photo) that pro,ide Web access and e-ruall. CeU phones are also Increasingly
featuring lnten.1et and e-mail capabllities. And now, integrated devJces such as s111art
phones are eme,glng that lntegr.,te the capab!Ut!es of POAs and cell phones Into a single
de>ice (see margin photo). For those who prefer separate devices, technologie< like
Bluetooth are emerging to allow the separate de'\oices to interoperate as one logical
de'\oice whlle presening each one's form factors and advantages.
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
Choptor Ono
2S
Addltlo1ully, laptop computers are Increasingly equlpped with wireless and mobUe
capabilities to allow lnfonnatlon workers ro more easily move between locations while
preserving connectMty to Information systems. All of these tedmlcal trends will sigruj:
icandy Impact the analysis and design of new lnfonnatbn systems. Increasingly, wireless
acce.s., must be assumed. And d1e limitations of mobile del-ices and screen sizes must be
accommodated In an information system's design.Thls textbook wUI teach and demo,~
stmte tools and technlques to deal wid1 dte design of emerging mobUe applications.
>
Object Technologies
Today, most contemporary information systems are built using object technologies.
Today's pervasive programmlng languages are object-oriented. Tuey lndude C+ +,Java,
Smailtalk, and Visual Baste .NE/'. Object tedlnologlesallow programmers to build software from software parts called objects. (We will l!l't into more specifics about objects
later In this book.) Object-oriented software offers two fundamental ad,,inta&l'S over
nonobject software. First, objects are reusable. Once they are designed and built, objects
can be reused In multiple Information systems and appkations.Thls reduces the time required to de,'dop future software applications. Second, objects are extensible. Tuey can
be ch.'tnged o r expanded easily wtthout adversely lmp.cting any pt'e"ious applic:iti01u;
that used them.11lls reduces the lifetime costs of malmalnlng and Improving software.
The lrupact of object tedmology Is slgnllkant in the world of systems analysis
and design. Prior to object technologies, most programming languages were based on
so.called structu.red methods. Examples !ndude <XIBOL (the dominant language), c;
FORrRAJ\; Pascal, and Pl/I. It ls not Important at this time for you to be able to differentiate betweet1 structured and object technoJogfes and methods. Suffice to say,
structured methods are Inadequate to the task of analyiing and designlng systems that
will be built uslng object tedmologles. Accordlngly, object-orlented analysis and
design methods ha,--e emerged as the preferred approach for building ,no.st contemporary information systems. For this reason, we will integrate object-oriented ai1..1lysls
and desJg1.1 tools and techniques tlvoughout this l:ook to gtve you a competitive
ach--antage in tomorrow's job mad.:et.
At the same time, structured tools and techniques are still lmportai1t. Databases,
for example, are still commonly designed using structured tools. And structured tools
are still preferred by many systems analysts for analyzing and deslgnlng work flows
and business processes. Thus, we will also teadt you several popular structured tools
and technlques for systems analysis and design.
It ls easy to become a devout dtsclple of one ai1..1lysls and design strategy, sud1 as
strucrured ai1..1lys1S and destgn or obJecr-0rJenced a1..1lys1S and desJgn. You should
a'\o-old doing sol We will advocate both and tead1 you when and how to comblne
structured and object-oriented tools and techniques for systems analysis and design.
As we write this chapter, this approach- called aglledevelopment- ls galnlng favor
among experienced analysts who h.ave become weary of overly prescriptive methods that usually insist that you use only o,ie methodology's tools and processes. At
the risk of oversimplifying agile methods, tlllnk of it as assembling a toolbox of dlf.
ferent tools and technlques- structu.red, object-oriented, and others- and then selecting the best tool or technique for whatever problems or need you encotmter as
a systems at1..1lyst..
>
Collaborative Technologies
Another slgnlJlcant tedlnology trend ls the use of collaborative tedmologles. Collaboratl,--e teclutologies are those that ertbance interpersonal communications ai1d teamwork.
Fottr important classes of collaborative technologies are e-mal~ instant messaging,
groupware, and work flow.
Everybody knows what e-mail is. But e-mail's importai1ce in information systems
developmetll ls changing. Increasing!)', modern lnfornution systems are e-maf/.enabled;
( Smart Phone
)
object tecbnology a softw&ira tactinn lom1 th&i t dafinA.<:
a system in terms of objects
that consolidate data and behavior (into objects). Objects
become reusable and extensi.
ble components for the soft.
ware developers.
object-orieoted anal}'Sis
aod design acollection o f
tools and techni~ues for
systems development that 'Mii
utilize object technologies to
construct a syst~m and its
software.
agile development a
systems development strategy
wherein the sysl9m developers
are given the fla:ibility to select
from a variety of appropriate
tools and technques to best
accomplish the asks at hand.
Agile devebpment is believed
to strike an optimal balance
between produc:ivity and quality for systems d1\lelopment
26
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
that is, e-mail capabilities are built right into the application software.There ls no need
to switch to a dedlcated e-mail program such as Outlook. The application merely
invokes the user's or organfz.atlon's default e-mail program to enable reJe"'ant messages
to be sent or received.
Related to e-maU technology ls lnstant messaging (e .g., AOL's /11.stant ,llesse1iger
and Microsoft's MSN Messe11ger Servf.ce). Instant messaging was popularized in public and pri'\o-ate "chat rooms" on the Internet. Bur itutant messaging ls slowly being Incorporated into ent erprise information ~·stems applications as weU . For example,
it1Stant messaging can implement Immediate response capabilities Into a help ~"'Stem
for a business appUcatio11. lm.agl..ne beh1g able to h1Stantly send and recei,-e messages
with the corporate help desk when using a business application.The productlvi~· and
sen-ice-level Implications are sJgnlficant.
Flnally, groupware technolcgy allows teams of indtviduals to collaborate on pro~
ects and tasks regardless of their physical location. Examples of groupware tecbnolo.
gies lndude Lotus's Sa111eTl1ne and ,_Ucrosoft•s Net,lleeff.11g. Using sud1 groupware
allows multip le it1dJvJduals to partldpate in meetings and share software tools across
a network. As with e.mall an d Instant messaging, groupware capabilities can be built
into appropriate busine55 applications.
aearty, ..ystems analysts and system designers mu.st buUd these innovnclve col
L,borative technologies lnto their applications.
>
systems iotegtatioo the
process of buiding a unified
information sy31em out of diverse compon~nts of purchased softwa'e, custom-built
software, hal'CWare, and
networking.
eoter·prise resource
planning (ERP) a software
application tha fuUy integates
information sy31ems that span
most or all of t'le basic, core
business func1ons (including
transaciion processing and
management ilformation for
those business funciions).
Enterprise Applications
Virtually all organlzations, large tnd smal~ require a core set of etllerprlse applications
to conduct: bush1ess. As shown In Agure 1-9, for most busines.,es the core appliettlons
it1dude tlnancL1l management, human resource management, marketing and sales,
and operations management (in,-entory an cVor manufacturh1g control). At one time,
most organizations custom-bulll most or all of these core enterprise applications. But
today, these etllerprlse applications are frequet1tly purchased, Installed, and contlgured for the business and it1tegrated lnto the orgartization's business processes. Why?
Because these core enterprise applications ln different organizations or industries
tend to be more alike than they are different
Today, ti1ese "Internal' core applications are beh1g supplemented wltb oti,er eo.
terprlse applications that integnte an organization's business processes with those of
its suppliers and ctlstoruers. 111ese applications, called a,stonier relatto·n ship nui,iage,nent and supply cba.t11 nuinagetnent, are also illustrated In FJgure 1-9.
The tret1d toward the use of purchased enterprise applications slgnlflcantlj• Jm.
paccs syscem.s ai1..1tySls and desJgn. Ptll'Cbased and iJ.1ScaJJed encerprtse appUcatlous are
ne,--er sufficient to meet all of the needs for Information systems ln any organizatlo11..
111us, systems analysts and other developers are asked to develop value-.'ldded applications to meet addJtional needs of the busines.,. But the purchased and installed e11ter·
prise applications become a tedmology constraint. Any custom application must
properly hllegrate with and intaface to ti,e purchased entetprise applications. This is
often called S)'Stems integration, and this is the business and systems environment
into which most of you wUJgraduate . Let's brlefly explore some of the more common
enterprise applications an d describe their implications for systems analysis and design.
As previously noted, the core business infonnation system applications in most businesses were developed In-house incremet1tally over many years. Ead1 system had Its own Bies and databases with loose and
awkward Integration of a ll appUcations. During the 1990s, businesses tried very llard
to integrate these leg,1cy lnform1tion systems, usually with poor rest~ts. Organlzatlons
would have probably preferred to redevelop these core bush,ess applications (see
Figure 1-9 ag,1ln) from scratd1 asa single lntegmtedinfonnation system. Unfortumtel)',
few if any businesses had enough resources to attempt this. RecognJzlng that the
basic applications needed by most businesses were more similar than different, the
software industry developed a solution - ente rprise resource planning (ERP)
Enterprise Resource Planning (£RP)
REPRESEMATIVI:
ERP VENDORS
SSA
Oracle/PeopleSoft
SAPPG (the Market Leader)
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
CLSTOMEAS
CORE BUSINESS
FUNCTIONS
Choptor Ono
27
SUPPLIERS
HUMAN
FINANCIAL
RESOURCE
MANAGEMENT
MANAGEMENT
(an enterpri&e
application)
(an enterprise
application)
CUSTOMER
RELATIONSHIP
.SUFPLY CHAIN
MAHAGEMENT
MANAGEMENT i.---1---1-l
( SC M )
(CR M)
OPERATIONS
MARKETING
& SALES
(1:111 ,,11h:11 ... ,1~...
application)
MANAGEMENT
(eoi' ,,....... "'' h:i,:,
application)
ENTERPRISE ·=ieso uACE PLANNING
( E R P)
DIS1A18UTOAS
~G U R E
l •9
Enterprise Applications
_ _ _ _ _)
appUcatlons. An ERP solutio11 is built arotmd a common database shared by common
business functions. Examples of ERP software vendors are listed in the margin.
REPRESENTATIVE
Alt F.RP solution pro\oides the core lnformation system functions for tl1e entire
SCM VENDORS
business. But usually an organJzatlon must redestgn its busine.s., processes to fully exp loit and use a n ERP solution. !\ilost ocgai1lzatlons must still supp lement the F.RP soJu.
i2 Technologiis
tlon with cuscom software appucauons to fulfill bustn ess requtrements chac are
Manug istics
wlique to the industry or b usiness. For most organlzatlons, an ERP implementation
SAP
and integration represenrs dle single largest information system p roject ever underSGT
ta ken by dle organization. It can cost tens of mJllions of dollars an d require a small
army of managers, users, ait.1lysts, technlcal speclallsts, programmers, ai1d consultanrs.
ERP appUcations are signlflcant to systems analysts for several reasons. First, systems analysts may be lnvol,--ed In the dedsJon to seJect a nd purchase an ERP solution.
Second, and more common, systems aii.1Jysts are frequently lnvol,--ed ln tile custom.J.zatlon of t11e ERP solution, as well as the redesign of business processes to use
t11e mP soJutio11.Tiilid, if custom-built applications are to be developed within an organilation that uses an ERP core solution, d1e ERP system's archJtecnire slgnJflcantly
Impacts the analysis and design of the custom application that must coexist and InsupJ>ly chain manageteroperate wjth the ERP system.
meot (SC~l) a software
Supply Chain Management Today,many orpnlzations are expending effort on et~
terpdse appllcatlons that extet1d support beyond their core business ftu1ctlons. Comp anies are extend.Jog their core business appUcatlons to interoperate with their
suppliers ai1d dlstrlblnors to more efficiently manage t11e flow of raw materials ai1d
p roducts between their respective orgart.izatlons. These Sl1pply c liaio m..1.nagemeut
(SCM) appUcations utUize the Internet as a means for Integration and communications.
applica1ion that :,ptimizes
business processes for raw
material procurement through
finished product distribution b'f
directly integrathg the logist~
cal information systems of organizations with those of their
suppliers and distributors.
Part ono
28
1ho Contoxt of Systoms l>ovolopmont ProjOffl
The Farms
i
---·---... __
__ _
_
·---..... ·----
"
:............
Food Processing Plants
Distribution Centers
i
•
The Restauiants
U RE 1 · 1 0 Supply
CF I G---------Chain
)
.____.
REPRESEMATtVI:
CRM VENDORS
BroadVision
E.piphany
Kana
Amdocs
Oracle/PeopleSoft
Siebel (the M.rket Leader)
SAP
customer relatioosbip
managemeot (CRM) a
software application that pro.
vides customers with access
to a business's processes
from initial inquiry through
postsale service and support
For example, Figure 1-10 demonstrates a logical supp~· chain eodlng at rest:urants
belonging to a franchlse (e.g., o utback, Red LObster, Weod)'<J. Notlae that this supply
chain lndudes many businesses and carriers to adlleve Its final result-ensuring tlut the
restaurants have adequate food mpplies to do business. Any deL1ys or problems in any
single link of this supply chain will adverse~· affect one and all. For dut reason, several of
these businesses wlll implemern supply duln managemetll using SCM sofrware tech.
nology to plan, implemen~ and manage the chain. Examples of supply chaln manage.
meet vendors are listed In the margin. (It should be noted that several ERP application
vendors are extending ERP software applications to indude SO.I capabilities. Toe SCM
market ls due for a slukeour because there are too many ,--endors for all to succeed.)
sat applications are significant to systems analysts for the same reasons as stated
for ERP applications. As an analy,t, you may be Involved In the evaluation and selection
of an SCM package. Or you may be expected to implement and perl1aps custonllzesuch
pack.ages to meet the organization's needs. And agaln, you may expect to partldptte ln
redesigning exlstlng business processes to work appropriately with the SOI solution.
Customer Relationship Management t.tany companies have discovered that
highly focused customer relatlonsh.ip management can create loyalty tl1at resu1ts in
increased sales. Thus, many businesses are lmplementlng C\1stomer relatio11Sltlp
ma.oagemeut (CRM) soJutions tl1..1t enabJe customer self-sen-ice '\oia the Internet.
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
The theme of all cro.t s0Jutlo11s is a focus on the •customer." <:mt is concerned
wlth not only provJdfng effective nistomer lnqulr,' re.spo11ses and assistance but
also helping the business better profile its customer base for the purpose of improving customer relations and marketing. Examples of cro.1 vendors are listed In
the margin. As was the case with SC,_I technoJogles, many ERP vendors are developing or acquiring CR.l\t capabilities to compleme11t and extend their ERP solutions. And as with SCM, tl1e larger number of players will likely be reduced through
acqti.sltlon and attrition.
CRM technology Impacts systems :uulysts In predsely tl1e same ways as tl1ose we
descrlbed for ERP and scr.t technology. In many businesses, new applications must interface with a core, <:mt enterprise application.
Choptor Ono
29
REPRESENTATIVI:
EAi VENDORS
BEASyslems
IBM (MQSeries)
Mercalor SoftNare
TIBCO Softwae
Enterprise Application Integration ,_lany companies face the slgnlflcant challenge
of ln1egratlng tl1elr exlstlng legacy systems wltl1 new applications such as ERP, SOI, :u1d
CR.lit solutions. Any company tl1..1t wants to do busi..nes., across the lnten1et will also
l1..1ve to meet the challenge of integrating its systems with those of other organizations
and their dlfferent systems :u1d technologies.To meet tills challenge, many organizations
are looking at enterprise application Integration software. Enterprise appllcatlou
lntegratlon (RAJ) involves litlklng appUc:itlons, whether pu.rcb:ise-d
Ot'
de.,--eloped ht
house, so tl1..1t they can transparently Interoperate wJd1 one another. This Is illustrated
conceptually ln Figure 1-11. Some vendors offering E~ tools are listed In the margin.
C USTOMERS
enterprise applicatioo
mtegratioo (EAi) the
process and technobgies
used to link app'ications to
support the flow of data and
information between those
app11cat1ons. EAi so1ut1ons
are usually based on
mkkleware.
SUPPLIERS
CO RE BU S INE SS
FUN C TI O N S
ENTERPRISE RESOURC E PLANNING
APPLICATIONS
( ERP:
See Figure 1.9)
CJ STOMER
AE_ATIONSHIP
ENTERPRISE A PPLICATIO N
M AN Nl EMENT
(C R M )
r
,...
INTEGRATION
( E AI )
~
Other
Purchaaed
Application
Other
Purchaaed
Application
Other
C ueto~
Built
Application
Other
C ustomBuilt
Application
F I G U R E 1 • 1 1 Enterprise Application Inregration
SUFPLY CH AIN
MANAGEM ENT
(SC M )
30
Part ono
micldleware software
(usually purchi.Sed) used to
translate and route data
between ditfe~nt applications.
1ho Contoxt of Systoms l>ovolopmont ProjOffl
Again, this market Is rapidly expanding and contracting. The tools are used to deJloe and
construct communication plpeUnes between dilferlng applications and technologies.
Today, as any new information system ls developed, it must be Integrated with
all the Information systems that preceded lt.11,ese •legacy• tnfonnation systems may
have been purchased or built ln·house. Regardless, systems analysts and other developers must consider appllettlon Integration for any new information system to
be developed. And l!AI technologies are at the core of the Integration requirements.
~~~A
~ S_i_
m_p_l_
e _S_y_s_te_m
~_
D_e_v_e_lo_p_m
~e_n_t_P_ro
~ ce_s_s~~~~~~~~~~~)
system devtlop-meot
process a set of activities,
methods, best practices,
deliverables, a-id automated
tools that stakeholders use to
develop and rraintain
information sy31ems and
software.
111us far you have learned about different types of Information systems, the pL1yers
involved lo de,--eJoplng tl1ose S,'stems, and severaJ business and technology drivers
that Influence the deveJopment of infonnatlon systems. In this section you will learn
about another Information system perspective, the "process" for developing an information system.
,_lost organ.izatlons h.a,--e a formal S)'Stem de"-elopmeut process conslstlng of a
r.r:1nrl.arrl r-Pt nf prnrP."-'-"'~"' or stP.pr- thpy PT(lPrt will hP. fnllnwM n n :iny r.yr-tP.m MvP.l-
opmet1t project. Wlille these proces.,es may '\o-:try greatly for dJfferent organizations, a
common characteristic can be found: ,_lost organJz.atlons' system development
process follows a prohlem-sol,ing approach. Th.at approach typically Incorporates the
following gei1eral problem-solving steps:
I. Identify the problem.
2.
3.
4.
5.
6.
7.
Analyze and w1derstand the problem.
Identify solution requlremetlls and expectations.
Identify altematlve solutions and choose the best course of action.
Design the chosen solution.
Implement the chosett solutio11.
£\.-aluate the results. (If the problem is not solved, return to step l or 2 as
appropriate.)
Figure 1-12 adds a system deveJopment process perspective that we wtD use
(with appropriate refinements) throughout tills book as we study the development
process, tools, and tedmlques. For the sake of simplicity our lnltlal problem-solving
approach establishes four stages or phases tl1.1t must be completed for any system
development project- system Initiation, system analysis, system design, and system
Our Sintpli6ed System
General Problem-Solving Steps
Development Process
System iiitiation
,. Identify the problem, (Also plan for lhe solutbn
ol lhe problem,)
System analysis
2. Analyze and understand the problem.
3. Identify solution reqUrernents and expectab,ns,
System design
System i'nplementation
•.
Identify alternative soiu,oos and choose lhe
beS1 oourse of action,
••
Oesig, the chosen solution,
••
Implement the cha.sen soiu,oo•
7. Evaluate the result& ( If the problem is not
solwid, return n Slep 1 or 2 es appropriate.)
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
•
OU
IE
-
-
TME "PROOu c r· -
L
•
"
2
w
u
z
•
u
u
0
a
•
•
••
•
•
•>
'
z
•
u
>
•
A N I.NFORM ATION SYSTEM
~
SYSlEM INITl#JIO N DELIVERA BLES
A
Syetem initiation produces a busne.98 problem 8t8tement project
p lan that eWlblishes scope,, gclf..le, echedule, end budget br solving
the problem with a technical eol.rtion,
=>
(
.
•
'
'
-
'
•w
!
SYSTEM ANALYSIS DELIVERABLES
Syetem a naty,i• plOducee a "8lement of the system users'
for a solution
=>
-
buelneu requirements, expec:talions, and prioritiM
to
(
the buslneee problem.
•
"
z
•
•w
A
Syetem d esign prodU08.$8 technical blueprint end epecfficatione br
a solution 1h8I fu lfille the buelne$$ requirem ents,
2
-
'
.
I
(
•
'
'
'
SYSTEM IMPLEMENTATION DELIVERABLES
0
..'
'
'
SYSTEM DESIGN DELIVERABLES
=>
'
'
w
2
I
A
w
0
'
.
~
•
-
••
'
w
•
OR
31
Choptor Ono
Sy.t em i.m.plementation proc'u cM the technical hardware and
=>
software solution for the buelneu problem accon::tl"IQ to the technical
an::hitecture and epecfficatlons.
A
'
•
.
(
"
'
TE C
N
OH
E
-
S
F I GU R E 1 • 1 2 Systems Development and Problem Solving
implemenratlon. TI1e table on the pre"iotis page shows the correlation between the
abo,-e general problem-60l"ing steps and our process.
It is important to 11ote that any system development process must: be managed
on a project-by-project basis. You learned earUer that at Jeast one stakeholder accepts responslblUty as the project manager for ettsu.rlng that the system is developed on cime, within budget, and with acceptable quality, The actlvlty of managing
a project is referred to as project management. Accordingly, in Figure 1-12 we
l1ave added a process for project management. Also, to ensure that all projects are
project managemeot the
ac.ti\'ity of defining, planning,
di reciing. monitoring. and
oontrolling a project to develop
an acceptable S'/stem 'Mthin
the allotted time and budget
32
Part ono
process man.agemeot
the ongoing ac.tivity that
defines, imprcues, and
coordinates th; use of an
organization's chosen
methodology ~he "process")
and standards for al I system
development projects.
1ho Contoxt of Systoms l>ovolopmont ProjOffl
managed according ro the same development process, we have included process
man..1.geruent as an ongoing actl'\oity. Notice that project and process management
overlap all of the process pl1ases.
Let's briefly examine our system development process In Figure 1-12 to expand
your understanding of ead1 phase and actMty In the process. Given a problem to be
solved or a need to be fulfllled, what will we do during system lnltlation, analysis, design, and Implementation? Also, who will be lnvoh-.d In each phase?
>
System Initiation
Information system projects are usually complicated. They require a slgnlllcant time,
effort, and economic investment The problems to be soJ,-ed are frequently stated
vaguely, which means that the Initial envisioned solution may be premature. For these
reasons, system projects shotdd be carefully pfanned. System lnltlation establishes pro~
system iftitiatioo the initial
planning for a project to define
initial business scope, goals,
schedule, and budget.
ect scope and the proble=hing plan. Thus, as shown In Figure 1-12, we see that
system Initiation establishes the project scope, goals, sd1edtde, and budget requlred
to solve the problem or opporttlnlty represented by the project. Project scope defines
the area of the business to be addre55ed by the project and the goals to be achle>-.d.
Scope and gonls uhJm.'ltely Impact the resource commirruenu, n:unely, sdledule :md
budget, tl1at must be made to successftdly complete the project. By establishing a pro~
ect schedtde and budget agalns1 the t11ittal scope and goals, you also establish a base11,w ag.,inst whid1 all stakeholders can accept the reality that any futtu-. changes In
scope or goals wiU impact the schedtde and budget.
Ffgure 1-12 also shows thal project managers, ~·stem analysts, and system owners are ti1e primary stakeholders In a system analysis. This book will teach you
many tools and techniques for Initiating a system project and establishing a suitable
project pL1n.
>
system analysis the study
of a business problem domain
to recommenc improvements
and specify the business
requirements and priorities
for the solution.
System Analysis
The next step In our system development process ls system ao...1.lysJs. System
analysis ls Intended to provide the project team with a more ti1orough understanding of the problems and needs that triggered ti1e project. As sud,, the business area (scope of the project- as defined during system lnitlatlon) may be
studied and analyzed to gain a more detailed w1derstanding of wl1at works, what
doesn't, and wl,at's needed. As depicted In Figure 1-12, the system analysis requires
working wlth system users to clearly define business requirements and expectations for any new ~·seem thac IS co be purchased or developed. Also, business prJorJtles may need to be established In the event tl1at schedule and budget are
insufficient to accomplish all that ls desired.
Recall the business drh-.rs discussed earlier In the chapter. These (and future)
business drivers most closely affect system analysis, which often defines business requirements it1 response to the busit1ess drlvers. For ex.ample, we discussed a c\.l'rent
tret1d toward e-busi.ness and e-commerce. Th.ls busit1ess driver may lnfluence the business reqttlrement for any lnformatlon system, leading us to establish project go1ls to
conduct all business tr.tosactlous on the \X'eb.
The completion of a system analysis often results In the need to update many of
the deliverables produced earlier, during system initiation. Toe analysis may reveal the
need to re,ise the business scope or project goals- perhaps we now feel the scope
of ti1e project Is too large or too small. Accordingly, ti1e scbedtde and budget for ti1e
project may need to be revised. Finally, the feasiblllty of the project itself becomes
questionable .111e project coldd be canceled or coldd proceed to the next phase.
As shown In Ffgure 1- 12, project managers, ~·stem analysts, and system users
are the primary stakeholders In a system analysis. Typically, results must be swnmarlzed and defended to the system owners, who will pay to desJgn and Implement an
information system to fulflll the business requirements. Tilis book will teach you
Tho Contoxt of Systoms Anolysls and l>osg, Mothods
Chapter Ono
33
man~· rools and redullques for performing a system analysis and documenting user
requirements.
>
System Design
Given an understanding of the business reqttlrements for an infonnatlon system, we
can oow proceed ro system design. During system desJgn we wUJ itlitlally need to system design the
explore altemati,-e technical solutions. Rarely is there only one solution ro any prob. specification or oonstruciion of
lem. for example, today most compan.ies need to choose between purd1..1slng a solu- a technical, oorrputer-Oased
solution for the business
tion that is good enough and building a custom solu tion in-house. (We'll explore requirements identified in a
options such as this tlvoughout this book.)
system analysis. (Note: InOnce a technical altesnative is choset1 and appro"ed, the system design phase de- creasingly, the c'esign takes
velops the tedmical blueprints and spedJkations requlred to Implement the final solu- the form of a wcrl<ing
tion. These blueprints and speclflcations wlll be used IO Implement required databases, prototype.)
programs, user interfaces, and networks for the information system. In the case where
we choose to purduse software instead of build I~ the blueprints specify how the purchased software wlll be Integrated Into the business and with othes information systems.
Recall the tedmology drivers discussed 111 the l,.st section of the diapter. These
(and future) technology drfvers most closely Impact the system design prooess and
dedslons. ,_tany organfz.ations define a common lnformatlon technology architecture
based on these technology drh,--ers. Accordingly, all eystem designs for new lnfonnation ")'Stem.s must conform to the standard IT archlt:ecture.
As depicted 111 Figure 1-12, project managers, system analysts, and system deslgners are the primary stakel1olders 111 a system deslgn.1bls book will tead1 you many
tools and teclmlques for performing a system deslgn.
>
System Implementation
The Onal step ln ottr simple ~·st:em deveJopment process is system lmplement..1- system impl001eotatioo
tioo. .As shown lo Figure 1-12, system impJementatlon constructs the new lnfonna- the construction, installation,
tion system and puts It into operation. It is during ,ystem Implementation that any testing, and deti119ry of a
system into production
new hardware and system software are installed and tested. Any purchased applica- (meaning day-tc-day
tion software and databases are Installed and configured. And any custom software operation).
and databases are constructed using the technical blueprints and spedflcatloos
developed during system deslgn.
As system components are constructed or inst:1Ued, they must be indhidually
tested. And d1e complete ~·stem must also be tested to etlSure that It works properly
and meets user requJ..remet1ts and expecratlons. once me system h.as been fully tested,
it must: be placed into operatio11. Data from the previous ~tern may ha,-e to be converh:d or entered into start-up databases, and system users must: be trained to properly nse the system. Fitllllly, some sort of transition plan from older business processes
and Information systems may have to be implemented.
And once again, as depicted in Figure 1-12, project managers, system analysts, and
systesn builders are the primary stakeholders in a sy,tem lmplemetllation. While this
book will teach you some of the tools and tedmlques for perfonnlng a system Implementation, most of these methods are taught in programming, database, and netwoddng courses. 111.ls book emphasizes system lnitittion, analysis, and design skills,
but It will also tead1 you the wlique system Implementation tools and techniques tl1.1t
are most commonly perfonned by systems analysts and, therefore, are not typically
covered In tl1ese other information technology courses.
>
System Support and Continuous Improvement
We would be remiss not to briefly acknowledge that Implemented infonnation sys,
temsface a lifetime of support and conth1uot1S impro,-ement. But where is tlut shown
in Figure 1-12? It is there! But It is subtle.
34
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
Implemented lnformarJon systems are rarely perfect. Your users will find errors
(bugs) and you wUJ discover, on occasion, design and Implementation flaws thar
require attention and fixes. Also, business and user reqttfrements constantly change.
111us, there will be a need to continuously improve any lnformatlon system until the
time ft becomes obsolete. So where does system support and change flt into our
development process?
A change made for system support or Improvement ls merely another project,
sometimes called a 1nal11te11a11ce or e1Wa11ce,ne1J.t project. Such a project should fol-
low the exact same prohle=lvlng approach defined for any other project.The only
difference Is the effort and budget required to complete the project. Many of the
phases wUJ be completed much more quickly, especially If the original stakeholders
properly documented the system as Initially developed. Of course, If they dld not, a
system improvement project an quickly consume much greater time, effort, and
money. Much of what we will teach you In this book Is lnte11ded to help you approprL1tely document lnformatlou systems to slgnlflcantly reduce lifetime co.ts of
supporting and lmpro"iog your Information systems.
Q_
0
E
v
0
0
0:::::
0)
c
c
I....
0
(])
.-l
Each chapter will pro>ide g,udance for self-paced i11struction under the hetdi11g
.. Learnh1g Roadmap." Recogilizlng that different students and readers have different
backgrounds and interests, we will propose appropriate teaming paths- most wlthln
this book, but some beyond the scope of dlls book.
Most readers should proceed dlrectl)• to Chapter 2 because the first four chapters
provide mud1 of the context fot the remah1der of the book. Several recurring themes,
frameworks, and terms are lntroduced in those chapters to allow you to define your
own learning patl1 from tl1at pdnt forward.1ltls d1apter focused on Information systems from four different perspectives:
•
•
•
•
The pklyers--both developers ard users of information symems.
The busiless ctive,s that currenly influence infOITilation ~ terns.
The tecmology d'we,s that currently influence inf01TI1ation ~ s .
The process of deVeloping infonmtion symems.
a,apter 2 wUJ take a doSE-r look at tl,e product ltself- lnfonnatlon systemsfrom :m :udlltectural perspective :1.pproprbte for systems development. We will de
floe how different players and deve.lopment stages view an lnformation system.
Looking further ahead, Chapter 3 more dose!)• examines the process of si,tems
development. a,apter 4 completes the Introduction to systems analj•sls and design
methods by ex.amlnlng the nuiriage111e11.t of systems deve.lopment.
Summary @
l. Informztlon systems in organizations capture and
manage data to produce useful lnformation that
supports an organization and lts employees, customers, suppliers, and partners.
2. Informztlon systems can be dassllled accordh1g
to the functions tl,ey serve, lndudlng:
a. Transaction processing systems tl1..1t process
busine.s., transactions such as orders, time
cards, payments, and reservations.
b. ~tanagement lnformation ~·stems that use
transaction data to produce infonnation
needed by managers to run tl1e busines.,.
Tho Contoxt of Systoms Anolysls and Dosg, Mothods
c. Decision support systems that help various dedsJ011 makers ldentlfy and choose between
options or decisions.
d. Executive information systems tl1at are
systems taUored to the unlque lnformatlon
needs of executives who plan for the business and assess performance against the
plans.
e. Expert systems that are ~·stem.s that
capture and reproduce the knowledge of
an expert problem solver or dedsJon maker
and then simulate the "thlnklng• of that
expert.
f. CommunJcatlon and collaboration systems
that enhance communJcatlon and collaboration between people, both internal and external to the organlzation.
g. Office automation systems that help employees cre:ite :ind d1..'lre documents th.at SUpp<>t't
day-to-day office actlvtties.
3, hlformation systems can be viewed from vari-
ous perspectlves, lndudlng from the perspec11ve of the "players," the .. business drfvers"
Jnfluenc-lng the information system, the .. ted1n0Jogy drfvers" used by the information system,
and the ..process" used to develop the lnformaHon system.
4. h1fonnatlon workers are the stakel10Jders ht lnformatlon systems. Information workers lnclude
1l1ose people whose jobs involve the creation,
collection, processit1g, dlstrlbution, and use of
Information. They h1dude:
1.
b.
c.
d.
e.
System owners, the sponsors and chlef advocates of lnformation systems.
System users, the people who use or are lmpacted by ti,e Information system on a regular
basis. Geographically, system users may be
internal or external.
System designers, technology specialists
who translate system users• business
reqttlrements and co11straints into techn.ical
soJutions.
System bttllders, technology specialists who
construct the it1fonnatlon system based on the
design speclftcations.
Systems analysts, who facilitate the development of information $)'stems and computer
applications. They coordinate the efforts of
the owners, users, designers, and builders.
Frequently, they rnay play one of those roles
as well. systems analysts perform systems
analysis and design.
5. h1 addition to having formal systems analysis and
design skills, a systems analyst must develop or
Choptor Ono
35
possess the following skills, knowledl!f', and
traits:
a. Working knowledge of it1fonnation
technologies.
b. Computer programrolng experience and
expertise.
c . General knowledge of busines., processes and
terminology.
d. General problem-solvtng skills.
e. Good interpersonal communication skills.
f. Good interpersonal relations skills.
g. Flexlblllry and adaptahlllry.
11. Character and eth.ics.
6. Any stakeholder role rnay be tllied by an hllernal
or external worker referred to as an external service provider (ESP). Most ESPs are systems analysts, designers, or builders who are contracted to
brlng specl:U expertise or experience to a spe
clfic project.
7. Most h1fonnation systems projects lnvoh.. workit1g as a team. Usually one or more of the stakeholders (team members) takes on the role of
project manager to ensure that the system ls developed on tlme, wlthh1 budget, and with acceptable quality. Most project managers are
experienced systems analysts.
8. Busit1ess delvers it1fluence information $)'5tem.s.
Current busit1ess delvers that wlll continue to it1fluence the development of it1fonnation systems
h1dude:
a.
b.
c.
d.
Globalization of the economy.
FJectron.ic commerce and busit1es.,.
Security and privacr
Collaboration and partnership.
e. KnowJedge asset management.
f. Continuous improvement and total ([ltal.icy•
management.
g. Business process redesJgn.
9. Information t echnoJogy can be a delrer of lnformatlon $)'stems. Outdated technologies can present p roblems that drlve the need to develop
new systems. Newer tec hnologies Slr.h as the
folJowlng are influenclng today's information
systems:
a. Networks and the lnten1et:
I) :<flTML and XML are the fundamental langltages of Web page authoring and Internet appllcation development. Extensible
Hypertext Marl<up Language (xHTML) Is
the emerging second-generaticn versJon
of HTltfL, the langttage used to construct
Web pages. Extei,slble Marl-up Language
(XML) Is ti,e language used to effective~·
36
Part ono
Tho Contoxt of Systems l>ovolopmont ProjOffl
transport data content along wfth its
proper interpretatio11 over the lnten1et.
II) Scripting languages are simple program-
ming langual!l's designed specUlcally for
lnten1et applications.
ill) Web-speclflc programming languages
such as Java and Cold Fusio1i have
emerged to speclflcally address construction of complex, Web-based applications
that involve multiple servers and Web
browsers.
fv) !11tranets are essentially prfvate lnternets
designed for use by employees of an org,1lllzation. They offer the look and feel of
the Internet~ however, security and firewalls restrict thelr use to employees.
v) E..'!(tranets, like intranets, are private lnternets. But extranets are for use between
speclftc org:m.l7!itlons. Only the employ
ees of those ldentlfled buslnesses can
access and use the extranet.
vi) Portals (in corporations) are "home
pages" that can be customized to the
specific needs of dlfferetll individuals
who use them. For example, portal technology can define Web pages that provide appropriate Information and
applications for different roles in the
same company. Each indtvldual's roJe determines which information and applications that person can use from her or hls
Web page.
vii) Web services are reusable, Web-based programs that can be called from any other
lnten1et program.
b. ltfoblle and wireless technologies-lncreaslnW.y. wireless access must be assumed. And
the ll.mltations of mobile devices and screet1
slze.s must be accommodated in an lnformation system's design. All of the following rechnlcal trends will significantly Impact the
ai1..1lysls and design of new h1fonnatlon
systems:
i) Handheld computers, or personal data
assistants (sud, as ti,e HP IPaq, Palm, and
RIM BlackBerry)
become common
in the rar1ks of lnformation workers.111ese
devices are increasingly including wireless
capablUties that provide \X'eb access and
e-mail
II) Cell phones are also Increasing))• featuring
lnten1et and e-mail capablUtles.
Ui) Integrated devices such as s,nart phones
are einerging dur integrate the capabilities
ha,.,
of POAs and cell phones Into a single
device.
Iv) Technologies like Bluetootb are etnerglng
to allow separate devices to h1teropemte
as one logical device while preserving
each one's form factors and advantagts.
c. Object technologies-Most contemporary information systems are built using object technologies. Object technologies allow programmers to
build software from software parts called objects. Object-oriented software offers tl,e ad,'311tal!I' of reusablltty and extetlSlblltty.
d. Collaborative rechnologles- Collaborati\"e
technoJogles are those that enl1..1nce interperso11..1l commwlicatlons and teamwork. Four important classes of collaborative technologies
are e-mail, lnscant messaging, groupware, tnd
work flow.
e. Enterprise applications-Vlrtually all organizations, large and small, require a core set of enterprise applications to conduct business. For
most businesses the core applications indude
B.nandaJ m:u1..1gemet1t, human resource mtnagement, marketh1g ai1d sales, and operations
management (h1vet1tory and/or m:u1ufacturlng
control). At one time, most organl1.ations
Cl1stom-bu.Ut most or all of these core enterprise applications. Blll today, ti,ese enterprise
applications are frequei1tiy putchased, Installed, and configured for ti,e business and
lntegrated into the organlzatio11's business
processes.111ese ..h1ternal .. core applications
are being supplemented with other enterprise
applications that lntegrate an org.ulization•s
busine.s., processes with those of lts suppliers
and customers. These applications are caUed
Cl1stomer relationshlp mana.e:ement (QU\i() and
supply chain management (SC~O. Enterprise
application integration (EAi) lnvo(,-es linking
applications, vvi,etl,er purchased or developed
In-house, so that they can transparently interoperate with one another.
10. Many organizations have a formal systems de,..topment process conslstlng of a standard set of
processes or steps they expect will be follow,d on
any systems developmet1t project. S)'S!ems deveJ.
opment proce.s.,es tend to mirror genera) problemsolving approad,es. This chapter presei1ted a
simpllfted system development process that Is
composed of the following phases:
a. Sysrein lnltlation-d,e lnltlal planning fora
project to define inltlal business scope, grols,
schedule, and budget.
Tho Contoxt of Systoms Anolysls and Dosg, Mothods
b. System analysis-the study of a business
process domaht to recommend improvements
and specify the bush,ess requirements and priorities for the solution.
c. System design-the speciflcatlon or construc-
tion of a technical, computer-based solutio11
for the business reqttlrements ldentlfled in ~·stem analysis.
d. System implementation-the construction, lnstallatlon, testh1g, and delivery of a system lnro
operation.
11. h1fonnation systems face a llfethne of support
and continuous improvement. A change made for
system support or impro,--ement ls merely another project, sometimes called a mah1tei1..1nce
or enhancement project. These projects follow
1he exact same proble=lvlng approach defined
Choptor Ono
37
for any other project, but they req,tlre less effort
and budget.
12. Sequentlal developmetll req,tlres that each development process (phase) be completed- one after
the other. This approad1 Is referred to as the
waterfall approach. An alternative de,-etopment
approach Is lterath.. ( or Incremental) d?velopment.
This approach reqttlres completing enough anal)•-
sis, design, and implementation as is necessary to
f,tlly develop a part of the new S)'Stern. Once that
version of the system ls implemented, the strategy ls to then perform some addJtlonal analysis,
deslgi1, and lmplementatio11 ln order to release
the next version of the system. These Iterations
continue until all parts of the entire infonnation
system have beet1 developed.
\;~::S Review Questions
I. Why are Information si-stems (IS) essential In
org;ulizatlons?
2 . Why do S)'sterus analysts need to know who the
stakel10Jders are ln the organJzation?
3. Who are the typical stakel10Jders h1 an lnforrua-
tJon system? What are their roles?
4. Please expL1in wt1at the consequences are lf an
jnformatio11 ~'Stem lacks a system owner.
5, What are the differences between internal users
and extenul users? Give examples.
6. What are the differences between the role of
,ystem anal)•sts and the role of the rest of the
,takel10Jders?
7. What klnd of knowledge and skills shot~d a
,ystem anal)•st possess?
8. ht addition to the business and computing knowledge that S)'Stem analysts should possess, what
are the other essential skills that they need to
effectively complete their Jobs?
9. Why are good Interpersonal communlcation skills
essentL1l for ~'Stem ai1atysts?
10. What are some of the business delvers for today's
infonnatlo11 S)'Stems?
11. What are the dlfferei1ces between electronic
commerce (e-commerce) and electronic business
( e-bush,ess)?
12. What are the differences between Information
and knowledge?
13. What are the most important tedutology drivers
for today's infonnatlon systems?
14. What are the four steps ln a system development
process? What happens ln ead1 step?
15. Why Is system Initiation essential ln the system
de1i--elopment proces.,?
@:
l. .\ssume you are a systems analyst wt10 will be
conducting a reqttlremenrs analysis for an lndtvld-
ually owned brick-and-mortar retaU store with a
point-of-sale S)'Stem. Jdet1tlfy who the typical
intental and exten1..1l users mlght indude.
2 . .\ssume you are a systems analyst for a consultl11g
company and have been asked to assist the chlel
executive officer (CEO) of a regional bank. Toe
bank recently lruplemented a plan to reduce tl,e
Problems and Exercises
number of staff, including loan officers, as a strategy to maintain profitability. Suhsequtntly, the
bank has experienced chronlc problems with
backlogged Joan requests because of the limited
number of loai1 officers who are able to review
and approve or disapprove Joans. The CEO of the
bank is lnterested ln solutions that would allow
the appro'\o-al process to move faster '\\·lthout lncreaslng the munber of loan officers, and has
38
Part Ono
Tho Contoxt of Sy,toms Dovolopmont ProjOffl
engaged yolU' company to come up with suggestions. What is one type of system tllat you mlght
recommend to the bank?
3. How do communication and collaboration sys-
tems lmpro,-e efficiettcy and effectlvet1ess? What
are some of the communication and collaboratio11
system! tl1at are being used by an increasing
number of organizations?
4. Identify tile type of Information system ti1at derical workers ln an organization would typically
use and why.
5. As Information systems increase h1 complexity
and comprehensiveness, ethical issues regarding
accessing and using data from these systems are
also lnaeasing. W11at are some of these ethical
issues?
6. What are business to consumer (B2C) and business to business (B28) Web appllcations, and
wh:it are some ex:unples of each type?
7. Wh.lle ~'Stem developmet1t processes and
meti1odologles can vary greatly, Identify and
briefly explain the •generic" phases of the system
de1i--elopment process tl1at are de.scribed ln the
textbook and whlch must be completed for any
project. You are a contractor with a systems lntegration company.
8. Your company h.as a contract wJth a local firm
to link all of their ~·stems so they can transparet1tly work together.Their applications lndude
a number of existing legacy systems, whlch
were b ,tllt at dlfferent times by dlfferent developers using a variety of languages and pfatforms, as well as several newer contemporary
appllcations. What is ti1e term for thls type of
linking! What type of t ool would you most
likely use, and what are some examples of these
tools?
Projects and Research
9. YOlU' company ltas asked you to develop a new
Web-based system to replace lts existing legacy
system. There will be very little change in
business requirements and functJonaUty from
the existing legacy system. Suggest whlch
system development process you ruJght use
and why.
IO. You recet1tly Joined a retail sales company whld1
has recently bought out and a~imlL1ted a commercial h1dustrlal supply house. You have bem
asked to lead a project to develop a consolidited
Inventory-tracking ~'Stem. Suggest wllidt ~·stem
development process you ruJght use and why.
II. Your company president sits down beside you
Just before a meeting ls to begin and tells you that
people keep sayh1g the customer needs to hl5tali
a QU\il, but doesn't reaUy know what ft is. Th.e
company president tllen asks you to explain it in
nontech.nlcal terms ht the next 30 seconds.
IZ. Industry studies indicate tllat mobile and wireless
technology h.as become one of the major tedu10Jogy drivers for designing new information systems. Why ls tills tile case and what is the hnpact?
13. Briefly explaln the hnpact of Web services on 'X'eb
development. GJ,--e some examples of\X'eb services.
14. Identify h1 whlch phase of the development
process tile following activities belong:
a. Development of the technlcal blueprint or desJgn dOCltment.
h. Project schedttlh1g.
c. Integration testing.
d. Interviewing ~'Stem users to define business
requirements.
15. What are the two most important advantages of
obJect-orJented software tedu10Jogies over structured software technologies?
11§
1. Re.seard1 the average and/or ruedt.ut saL1rles for 11'
professionals. You can use a '\o-atJety of methods to
find this information, such as searching tile Web
for onlh,e sites that publish tile resttlts of salary
surveys for rr professionals. You can also look at
classlfled ads In newspapers, trade rnag.11lnes,
and/or 0tillne.
a. Is there a slgnf.flcant difference between
typlc,I salaries for system analysts, designers
and developers?
b. Roughly, what is tile diffete11ce In the typlcll
saL1rles for tl1ese different groups?
c. What do you thitlk are the reasons for the
difference?
d. Is there a gender g.1p In the salaries of rr professJonals? Discuss any trends that you found,
and the Implications.
2 Contact d1e cWef information officers (OOs) or
top rr managers of several local or regional
organizations. Ask them aboltt the process or
Tho Contoxt of Systoms Anolysls and Dosg, Mothods
methodology they use for system deveJopment
in their organizations, and why they utUize tl1..1t
partlct~ar approach.
a. Describe and compare the different approaches
that you have fow1d.
h. Which approach do you believe to be the most
effectlve approach?
c. Why?
3. Cueer choices and personal skills:
a. At this point In your education, if you had to
choose between becoming a $)'Stem.s analyst,
systems designer, or systems builder, which one
would you choose?
h. Why?
c. Now dtvlde a piece of paper into two columns.
On one side,llst the personal skills and tralts
you th.ink are most Important for each of these
three groups of systems analysts, designers, and
builders. ln the second column, list at )east flve
skills and traits that you feel to be your
strongest ones, then map them to the skills and
traits you listed for each of ti,e three groups.
With wh.lch group do you have the most skills
and traits In commo11?
d. ls this group the same one as the one you
would d1oose in Question 3a? Why do you
think this is (or Is not) the case?
4. Your school library should have journals and peri·
odlcals dating back at least several decades, or lll.1)'
subscribe to onUne research services which do.
Look at severaJ recent artldes In information tech·
nology joumals regarding systems analysis, as wen
as several articles from at least 25 years ago.
a. Compare d1e recent artides to the older ones.
Do there appear to be slaniJkant differences in
the typical knowledge, skills, ab!Utles, and/or
experience tl1..1t systems analysts needed
25 years ago compared to now?
b. If you found some differences, what are the
ones that you consJder most important?
c. Wh.at do you think are some of the reasons for
these changes?
Choptor Ono
d. Now get out your crystal baU and look into ti,e
future 25 years from 11ow. W11..1t dJfferences do
you predict betweei, the systems analysts of
today and tl1ose in 25 years?
5. Search the Web for se,-.ral articles and Information
on ethical Issues reL1ted to h1fonnatlon tedu1ology
professionals.
a. What articles did you find?
b. Based on your research, which etll.ical Issues do
you tlllnk systems analysts might face during
their careers?
c . Pick a partlcufar ethical issue and explain the
steps you would take If you were confronted
with tllis Issue.
d. What would you do if you fow1d your best
friend and co-worker had committed a serious
ethical vJolatio11? Facts to consider:The violation m.-1y never be discovered, but ft will cost
your company many thousands of dolbrs In
higher costs over the next several years. Your
company has a strlng,,nt policy of firing employees who comm.it serious ethical violations.
~take sure to explain your reasons for the
actlon(s) you would take, if any.
6. Search the Web or business periodicals In your
library such as Fotbes ~tagazlne for information
on three or four dlief Information officers of large
companies or organizations.
a. Whlch Industry sector, comp~es, and aOs did
you find?
b. For each CIO that you researched, what was
their predominant experJet1ce prior to becoming a CIO; tl1at Is, did they have an infonnation
technology background, a business backgrow1d,
or both?
c. f<>r each CJO, what ts their Je,-et of educatlon?
d. How many years h.as each been a CID, and for
approxlm.1tely how many differe11t companles
has each one worked?
e. Based upon your research, what knowledge and
skills does a CIO need in order to be successful?
Why?
O
I. What do you think will be possible technologlcallj•
l Oyears from now? How abottt 20 or 30 years
from now? Re.seard1 a new and interesting technology tl1at is lo the research and development
stage. Prepare a presentation using a movie clip
aad PowerPoint on this tedu1ology and pre.sent Jt
39
Minicases
to the class. Submit a short paper on the Impacts
this new technology mJght have 011 sodety and/or
businesses.
2. Consider outsou.rch1g: It ls many times the case
that at least part of tl1e development ptocess ls
outsourced. In fact, project leaders tod,y must be
40
Part ono
Tho Contoxt of Systoms l>ovolopmont ProjOffl
capable of handlh1g geographically diverse teams
as well as tlmeUne and resource constraints. Outsourcing brings 10 the table h1creased efficietlC)'
and economic galns to the societies tl1..1t are interacting. However, these gains are not quickly realized, and the neg,1t!ve Impacts on a society that is
outsourcing can be sign!fkant from a jobs perspective. Dr. btanklw, as an economic advisor to
President Bush, publiciy touted the benefits of outsourcing and was deeply criticized for his stance.
Do you think that ll is good or bad for a business
to outsource work? Do you tllin.k there are ethlcal
dilemmas for comp:ulies who outsotirce? Find at
least two artides on the impacts of outsou.rch1g,
and brin.g them to share with the class.
3, You are a network administrator, and as part of
your job, you monJtor employee e-mails. You discover thlt your boss is cutting comers on a $)'stem
Team and Individual Exercises
l. Get toged1er Into small groups of two.The first perso11 will decide on a task tl1at he/she wishes to be
completed-for itmance, sharpen a pencil or write
down the name of the professor. It st1oti.ld be simple and stralghtforward. That person is to comm,,
nlcate 011 paper using only diagrams and no words
(vernal or writtet1) what he/she wishes 10 be done,
and gi,-e ft to person number two. Person number
two sl1ould then complete the requested task.
2 . W11at dJd you discover from this exercise? How
long dld it take untll the second person tmderstood what the first person was askh,g for? Was
Suggested Readings
Amblea; Scott.
Agtle Alodeltng: B/fecttve.
that your company is developh1g In order to finish
the project more q<tlcldy and to stay w1der budget.
There is a flaw in the system as a result, and this
flaw wlll cause a nerwotk crash if more than
20 people are on the network at a time. The client
expects approximately 12 people on the networt
at any given time. You are sure, as apparently your
boss is, tl1at the customer will not find ottt tmtll
well after the project is accepted (lf ever). What
do you do?
4. A S)'stems analyst must be both tecimlcally proft.
dent and capable of successful customer communlcatlon. Developing a good S)'stem requhes a
complete understanding of user requirements
r.tany times, users don't know wh.at is avalL1ble
(technologically) or even what they wo,tld llke
from a system. What are characteristics of good
comruunlcatlon?
~
there mlscommunicatlon? Write down your
thoughts and observations, and share them with
the class.
3. lndlvtdual exercise: Imagine a really cool technology. The sl1· is the limit, and anything is possible.
How does tills technology Impact your life? Does
It impact business?
4. lndlvtdual exercise:11llnlc back on tl,e last time
someone told you sometlling cou.ld1i 't be done.
W11at was ft? Did you listen to them? Why or
why not?
~
Practfc.es
Jor ex-
trenie Progm1n111fng and the Un{fted Pt'Ocess, New Yolk:
John Wik)• & Sons, 2002. This book has signifteantly
shaped our thinking about the solt\\,are ck,-clopmcnt
procc55. Those of you v1tho arc critical of the •extremeprog:r.unmi.ng" mo,tmcnt nc:,c,d not fear that our c:nthusi·
asm fur this suggested reading indicates an endorsement
of extreme programming. We simply like the sanity that
Scott brings to the process of systems and software ck\-cl·
oprnc:nt through the use of flexible rnct.hods within the
context of an itentive process. We will reference this
book in sn•eral chapters.
Emest, Kalltran;John Grillo; and James Linderman. Btbfcal
Dectston .Waktng and Itifonnatton Technotog:t: An It~
troductto:1. UJab cases, 2nd ed. Burr Ridge,
ll.: 1\otcGnv.•Hi.U/ltwin, 1995. This is an excellent textbook for teaching
ethics in an 1\otts curriculum. It is a collection of case studies that can comple.ment a syste.ms analysis and design
course.
Gartner Group IT Syrnposiurn and Expo (annual). Our tUliversity's manage.rncnt infonnation tUlit has Ion@ sut>scribcd to the Gartner Gtoup•s sendce that reports on
industry trc:nds, the proOObilitics for success of trends
and technologies, and suggested strategics for inhrma·
tion technolog}' transfe.r. Garme.r rescaN:h has pla,-cd a
significant, ongoing role in helping us to chart business
and technology drivers as described in this chapter. We
ha,-c also bcdl fortunate to be able to attend Gartncr•s
annual IT S)'ttlposium. Garme.r Group rc:port! and
symposiums ha,-c influc.nced each edition of the book.
Fo r rnore information about the Gartnc.r Group, scc
www.gartncr.com.
Tho Contoxt of Systoms Anolysls and Dosg, Mothods
Gause, Donald and Gerald Weinberg. Aro Jtiur Ugbts Ou?
HOUJ to Ftgure Out
Wbat tbe Proble111 REALLY JS, New
Ycrk: OorSC't House Publishjng, 1990. Yes, this is not a rt'·
cent book, but neithe r arc the fundamentals of problC!U
solving. He rc's a short and casy-t~rcad book abo ut gen·
chi prob k .rn sol·l'i.ng. You can p robably read the e ntire
bcok i.n one night, and it could p rofoundly i.blpro,t your
proble m-solving potential as a systc.ms analyst (ot; fo r that
nu.ttct; any othe r profession) .
Levine, Martin. Bffectfve Proble111 sotvtng, 2nd ed. Engle·
'\\'OOd Cliffs, NJ: Prc ntkc Hall, 1994. This is ano the r o lder
book, but as we stated before, p roble m-solving blC'thods
arc time less. At only t 46 pages. this title can scr,t as m
excelle nt p rofessional rc fclt'J\Cc.
Choptor Ono
41
Weinberg, Gerald. Ret!Jtnt!tng S)1ste11JS AnatySf; and Destgn.
Ne\\• York: Dorsct Hou se Publishing, 1988. Don 't let the
date fool you. This is o ne o f the best and rn:,st important
books on this subject c,.•er written. This book may not
teach any of the popular systems analysis and design lllC'th·
ods o f our day, but it chalkn.gcs the lt'adc.r to leap beyond
t.hose methods to consider soructh.ing fu.r mote importantthc people side o f systems work. Dr. Weinbc-rg's theories
and concepts arc presente d i.n the co ntext o f do:zcns of
de lightful mblcs a nd sho rt expe riential st·:>rics. We arc
grateful to him fo r our Jitl'o rite syste.ms analJsis h blc of all
time, "TheThttc Ostriches.•
Business
cr1vers
Goel,
G 081;
IMPROVE
B USINESS
PROCESS&:$
IMPROVE
BUSINESS
COMMUNICATIO NS
~
;t\j-
"<
~
'
,
,
j\...
"""
j\...
"<
·~
j\...
~
'
,,
";;!
">z
"
>
;;I
"""
•,
....
<
;;I
"""
"
~
SOl'TWAAE
le:CHNOLOG E:$
NETWORK TECHNCLOGIES
Tecrino1ogy
Drivers
Information System
Bui Id i ng Blocks
Chapter Preview and Objectives
Syste-ms analysis and design methods are used to develop information systems for organization.s. Before learning the process of building systems. you need a clear understanding
of the product you are trying to build. This chapter takes an architectural look at information systen1s and applications. We will build a framework for information systems architecture that will subsequently be used to organize and relate all of the chapters in this
book The chapter will address the following areas:
I atferentiate between.front- and back-office information systems.
I De.scribe the different classes of information system applications (tmnsaction
p1ocessin.g, n1a.11Dgen1ent information., decision support, expert, co,nnumication and
ccl/aboration, and office automation systems) and ha.v they interoperate to supplement
one another.
I De.scribe the role of information systems architecture in systems development.
I Identify three high-level goals thac provide syscem owners and syscem users wJcb a
perspective of an information system.
I Na.me three goal-oriented perspectives for any information systems.
I ld!ntify three technologies that provide system designers and builders with a
perspective of an information system.
I Describe four building blocks of the KNOWLEDGE goal for an information system.
I Describe four building blocks of the PROCESS goal fo, an information system.
I Describe four building blocks of the COMMUNICATION, goal for an information system.
I De.scribe the role of network technologies as it relates to KNOWLEDGE, PROCESSES, and
COMMUNJCfflONS building blocks.
44
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
111e SoundStage member services system project is getting underway. Bob Martinez
has been assigned the task of conducting lnltial meetings wld1 groups of system users
to g.1lt1 their perspective on the system and what It must accomplish. He quicldj• cllscovered that everyone had a cllJferent perspective and expressed that perspective in
a different language. ltt college, majoring in computer information ~terns technology, Bob tended ro think aboln information systems In rerms of programming languages, nerworldng tedUlologies, and databases. He found d1at the others didn't think
in tl1ose tenns. The system users talked about manual forms and how they were
routed.111ey talked about policies and procedures and reports they needed. As he
met with managers he heard them talk abour strategic plans and how the system
coldd gi,-e the org;ulizatlon a competltl,. e. edge.
It reminded Bob of the old story he h.ad heard abom three bllt1d men who came
upon an elephant. One felt the trunk and concluded that an elephant was like a snake.
Another fel t a leg and concluded tl1..1t an elephant was like a tree. The third felt aJl ear
and concluded that an elephant was like a fan. It didn't take Bob Jong to realize that
the owners· and users· perspect!Ves were Jusc as valid as h.Js. An infonnatlon syscem is
more than tedmology. It is mainly a tool that serves the goals of the organlzation.
~~~T_h_e~P_ro_d_u_c_t~ l_n_f_
o_rm
~ a_t_
io_n~S_y_ste
~m
~s ~~~~~~~~~~~~)
£root-office i.o..formatioo
system an inbrmation sys.
tern thatsupports business
functions that roend out to
the organization's customers.
In 01apter 1 you were lntroduced to lnfonnatlon systems from four dtfferen1 perspectives, including stakeholders, business drivers, tedUlology drivers, and ti1e
process of systems development . As suggested by the home page (see p. 42), tills
diapter wUI more dosely examine the information system "product.•
Organizations are served not by a single information system but, Instead, by a
federation of Information systems that support '\o":lrious business ftmct:ions. Th~ idea
is Illustrated in Figure 2·1. Notice that most businesses have both front-office
, FIGURE 2 - 1 '
A Federation
o f InforJriation
'-Systems
cusro.AI
....... ·-·~
I
t
·-
"'"'
......
En1ttpri• • R,,ourc• Pl,nnil'l9 (ERP)
Olli,o
11"3.cw.,lic..,
11"3.cw.,lic..,
~
11, n, 9,111,1.t lnforrn, tiol'I , .nd O,oi,iol'I lvppon ly,i.n1t
•i •
;
;
l
"""'
......
Olli,o
-.,_-
"*"'"•'°'•
Eni.rprit• R,,ovrc• Pl• l'll'ling (ERP)
.......
.........
.,_
~
........
.....
-
..........
SUPPL.IERI
....._
....
IIAwa...,.;..,,
~
•
Information Systom auildlng Blo,ks
4S
Chaptorlwo
informatl.011 systems tltat support business functions that reach out to back-Office ioformatio-o
customers (or constituents) and back-office btfonn..1tlon systems t11at support system an information
internal business operations as well as interact with suppliers. These front- and system that supe>orts internal
back-0ftlce information systen1s feed data to management information systems and business operations of an
organization, aswell as
decision support systems that support management needs of the business. Con- reaches
out to suppliers.
temporary information $)'stem.s are Interfacing with customers and suppliers using
electronic commerce technology, cttStomer relations management (CR}.I), and
supply chain management (SC~I) appllcatlons (see descriptions In Chapter I) over
the Internet. Finally, most companies have some sort of Intranet (Jnternal to the
business) to support commlmications betweett employees and the information
systems.
In Chapter l you learned that there are several dasses of information system ap.
pllcatlons (see opposite page). Each class serves the needs of different types of users.
In practice, these cbsses overlap such that it lsn 't always easy to dtffere11tiate. one
from another. The "-arlous applications should ideally interoperate to complement and
supplement one another. Take a few mome11ts to study Agure 2-2, which Illustrates
typical roles of lnformatio11 systems lo an organl.ation. The rounded rectangles
represent various informatio11 systems. Notice that aa org.'lnlzatlon can and will have
multiple t:ransaction-proccssing systems, office automation systems, and the like.
The "drum,. shapes represent stored data. Notice tl--gt an organlzatio11 has multiple
"""'g,;,rn• nt
"'"""'""
0
.,,_o:rllon
1nr«mellon
..
.,,_o:rllon
__sotiu.inou
modo..
~
0
_..
-- ---
.. .
•••
I ll
-
FHWod •
_... -- ..
.. -·
-
,.,rpralrodl
0
-
Tm
_..
--- - ---
... .
Int
0
,--1
I
,._ ..
-·
-
1nt.irm, 11on
••
II
...
"
I""' 0
AIWOCII•
0
1nl'clrmdGn
-- .. ....
o:
.....
-M
·--M..... t~J
I;::, ·"",::" ~= ~
-
I
I
1
,._9on1111d I
-
•••
I
G
-!!!!!
ond doi.
(•NI 9ff'IIP)
CD
e,_,.,
a... a 1nror111011on
( F IG U R E 2 • 2
:FIIIJlrOd .
1,.orgonll:OCII
~
---- -·-- --- - i
_Jo
.,._
I •••
T
0
a.n.o:rllOn
t.-~
_._.; - - •
, ~.? '
Information Systems Applications
-)
46
Part ono
CLASSES Of
INFORMATION
SYSTEM
AP PU CATIONS
Transaction Pr,icessing
System (TPS)
Management Information
System (MIS)
Decision Sup!X)rt System
(DSS)
Executive lnfo,mation
System (EIS)
Expert System
Communicationand
Collaboration System
Office Autoll\llion System
1ho Contoxt of Systoms l>ovolopmont ProjOffl
sets of stored data, and only some of them work together. We call your attet1tlon ro the
following number arutotatlons on the diagram:
O TI1e first transaction processing ~·stem responds to an input transaction's
data (e.g., an order). It prcduces tr.u1Sactlon lnformatlon to verJfy the correct
processing of the inpur transaction.
0 TI1e second transaction processing system merely produces an output trdnsactlon (e.g., an Invoice). Such a system may respond to something as simple
as the passage of time (e.@., Jr is the end of the month~ therefore, get1erate all
Invoices).
O TI1e first management lnformatlon system simply produces reports or
Information (e.g., sales analysis reports) using data stored In transactional
databases (maintained by the aforementioned transaction processing
systems).
O The second management information system uses business models (e.g., MRP)
ro produce operational management Information (e.g., a production sd1edu.le).
0 Notice that an ~fIS may use data from more than one transactional databise.
() Notice that snapshots of data from the transactional databases popufate a data
warehouse. 111e snapshors may be taken at various time intervals, and dtfferent
subsets of data may be Included ln various snapshots. 111e cbta In d1e watehouse wUI be organized to ensure e~· access and lnqulry by managers.
O Decision support and executive Information systems applications wlU typically provide read-only access to the data warel1ouses to produce decision
support and executive managemet1t Information.
O An expert system requlres a special database tl1at stores the expertise In the
form of rldes and heuristics.
(:) An expert system elther accepts problems as Inputs (e.g., Should we grant
credit to a spedflc ctlStomer?), or senses problems in the environment
(e.g., Is tl1e lathe producing parts wlthln acceptable specifications?), anrl
thetl responds to a problem with ai1 appropriate solution based on the
system's expertise.
~ Persona) office automation systems tend to revol,--e arow1d the data and busJness processing needs of an lndhidual. Such systems are typically developed
by the users themselves (ai1d run 011 personal computers) .
'1) Work group office automation systems are frequently message-based (e.g.,
e-mall-based) and are smal.Jer-scale solutions ro departmental needs. As sbow11
In tl1e figure, they can access or Import data from Lieger, transaction processing
systems.
In the average business, there will be many Instances of ead1 of these different
applications.
A Framework for Information Systems Architecture
iaformatioo systems
arcb.itectt1re a unifying
framework into which various
stakeholders with different
perspectives can organ iz:e
and view the fundamental
building blocks of information
systems.
It has become fashlonable to deal with the complexlty of modem Information systems
by using the term archltectu.re. Information technology professJonals speak of data
archltectures, application architectures, network architectures, software architectures,
and so forth. An iafonnatioo systems architecture serves as a h.lgher-level f.ramework for understanding different views of t11e fundamental b,uldlng blocks of an
information system. Es.,entially,fnfonnatlon systems architecture provides a foundation for organizing the "-arlous components of any lnformatio11 ~tern you care to
develop.
Different stakeholders have different perspectives on or views of an lnformatlon
system. System owners and sysrem users tet1d to focus on three common business
goals of any Information system. These goals are typlcaUy estahllsbed In response to
Information System aulldlng Blo,ks
one or more of the business drtvers you read about ln Chapter l .T hese goal-orlented
perspecth,--es of an Information system include:
The goal to improve b·ust1,ess k11owled!fJ, KJ.1owledge ls a product of information and data.
The goal to improve b·ust1,ess processes and senices.
The goal to improve b ·ust1,ess cott1:111.·u1J.f.catlons and peopJe collaboratlo11.
Toe role of the system designers and b,ulders Is more technical. As such, their
focus tet1ds to be pfaced more on the tedu,oiogles that may be used by the Infor-
mation system in order to achieve the business goal.The system desfgners•aod builders•
perspecth,--es of an Information system tend to foctis more 011:
The database teclniologf.es that support business accttmulatlon an d use of
business knowledge.
The softuVlre teclnJ.ologtes that automate and support business processes an d
senices.
The in.terface technologies thar support busine.g commun.lcatlons and
collaboratlo11.
.As
sho wn ht Figu re 2 3, the inten;e-Ctlo n of these perspectives (rows and
columns) defin es building blocks for an lnformation system. ln the next section, we
will describe all these information system building bbcks.
NOTE: Throughout tllis book, we use a consistent color sd1eme for both the
Cramework and the "-arJous tools thar relate to, or docttment, the bulldfng blocks.
Toe color scheme Is based on d,e building blocks as follows:
•
•
•
represetlls something to do with
represetlls something to do with
represetlls something to do with
!ll~iiii:iil
PROCESSES
iiiill•••
Toe information system b,uldlng blocks do not exist In Isolation. T hey must be
carefully synchronlzed to avoid Inconsistencies and Incompatibilities within the
system. For example, a database designer (a system designer) and a program.mer
(a systetn bu.rider) have tl1eir own architectural views of tl1e system; however, these
views m ust be compatible an d conslst:ent lf tl1e system Is golog ro work properly.
Synchronization occurs both horizontally (across anygivet1 row) and vertlcally (down
any givei1 column) .
h1 the remainder of this dupter, we'll briefly examine each focus and perspect!vethe bulldlne blocks of information systems.
> KNoWlEDGE
Building Blocks
lmpro,ing business knowledge ls a funda metllal goal of an Information system. As you
learned lo 01apter 1, business knowledge Is deriwd from data and information.
Through processh1g, data Is rellned to produce information that res,tlts In knowledge.
Knowledge is wt1at ei1..1bles a company ro adlieve Its mission an d vision.
The KNOWLEDGE column of your fra mework Is Illustrated lo Figure 2-4. Notice ar
t11e bottom of the KNOWLIDGE column that our goal is to capture and store busloess
dara using DATABASE TOCHNOLOGCES. Database tedinology (such as Access, SQL Server,
DB2, or Oracle) will be used ro organize and store dara for all lnfonnation systems.
Also.as you look down the KNOWLEDGE column, each of our different stakeholders h.as
different perspectives of the Information system. Let's ex.amJne those '\oiews and
discuss tl1eir relevance to tl1e KNOWLEDGE column.
System Owners' View of KNOWLIOCI T he average system own er Is nor interested In raw data . The system owner is Interested In information tl1..1t adds new
buslness kt1owledge. Business knowledge and information help mat1..1gers make
Chaptwlwo
47
48
Part Ono
Tho contoxt of Systoms Dovolopmont ProJo<ts
Business
Drivers
Goel:
IMPROVE
BUSINESS
PROCESSES
R M AT
••wz
..
"..
.."
..
....
3
0
•w
<
BUILDING BLOCK
BUILDING BLOCK
BUILDING BLOCK
;;I
"
••
>
•
z
~
•<.>
..
0
"
••w
•••
w
BUILDING BLOCK
BUILDING BLOCK
BUILDING BLOCK
~
....
<
••
t
•
~
~
v
c
..•
..
>
..
..
..
..•
~
z
••wz
0
.... ..""
~
"
0
•w
BUILDING BLOCK
BUILDING BLOCK
<
BUILDING BLOCK
•>
•
..
~
..
..
>
••~
•"
••~
~
BUILDING BLOCK
BUILDING BLOCK
BUILDING BLOCK
<
•>
•
NETWORK TECHNOLOGIES
Tecnno1ogy
Drivers
( F I GU R E 2 • 3 Infom,ation System Perspectives and Focuses
)
Information System aulldlng Blo,ks
8
-
.....
-..
..
..•
-
~
z
~
0
•
••
•<
z
<
•
•
•
•
0
0
••
•
•'
••
•>
<"
z
<
•
••
•
•>
•
..
t;;
•
v
Driver,
Goel,
IMPROVE
BUSINESS
COMMUNICATIONS
1NFORMATION
7
F'.lNCTIONAL
SCOPe
&
SOOPE
VISION
VISION
SYST EM
0
~
rot.MUNICATIONS
SOOPE
•
-
•
\r
VISION
~
~
>
--
....
..•
~
~
t;;
'
~
•
J,.
0
EUSINESS
BUUE88
°"'A
FEiJil ll=IB ElfTS
v
PROCESS
BUSINESS
INTEAi;t.CE
REQJIAEMENTS
RECUIAEMENTS
-
'
1;1~
i:i
•
~
~
~
'
0
....
.."
ill
..
....
.."'
..•
..
'
~
z
;;
EUSINESS
•
1;1-
PROCESS
v
INTEAi;t.CE
DESIGN
DESIGN
DAlM\SE
llEmN
Q
"z•
~
~
SOl=TWARE
t;;
•
DESIGN
>
i
i'"
COM,ilERC IAL
SOl=TWARE
~
Q
~
t;;
....,,.,
DAlM\SE
SOI.UllON
v
INTEA~CE
SOLLITION
~
CUSTOM-BUILT
APPLICATION
PROGRAMS
,
DAlM\SE
TEa1NOl.OOIEII
I
~
~
-
.....
~
F IG U R E 2 • 4
;1- '
A\CKAGES
•
>
-
•••
Goel,
BUUE88
......
n
MPROVE
EUSINESS
PROCESSES
IN>MSlQE
-
U 8 I
49
Chaptwlwo
~
SOl=TWARE
TECHNOLOGIES
INTEAi;t.CE
TECHNOLOGIES
NETWORK. TEC HNOLOGIES
Tecnno1ogy
O
r I V
..
'
A BUSINESS l<NOWLEOGE Perspective of Information Systems
I
so
Part One
1ho Context of Systems l>owlopmont ProjOffl
intelligent decisions that support the organ.izatlon•s miss.ion, goals, obJectlve.s, and
competitive edge.
Bush,ess knowledge may Initially take tl,e fonn of a simple list of business entitles
and business rules. Examples of business entitles might indude cusroMERS,PRooocrs,
J3;2UIPMENT, BUDDINGS, ORDflt5, and PAYME'tf'S. Wh.at do business entitles have to do wJth
knowledge? Information ls produced from raw data tl1at describe these business
entitles. Therefore, lt makes sense that we should quickly Identify relevant business
entitles about wbid1 we need to capture and store data.
It ls also useful to understand simple business associations or rules that de.scribe
how the business entitles Interact. Examples of useful business rules for a sales system
mlght h1dude tl,e followh1g:
• A CUSTOMER can place oaoms- an oRDm must be placed by a cusro~.
• An ORDEll sells PRODUCTS-a ?Ro oucr mav be sold on an oRDm.
lntulttvely, a system's database needs to track these business entities and rules in order
to produce useful h1fom1atlon (for example, "Has cusroMEt 2846 placed any unfilled
ORO~S?").
System owners are concerned with the bJg picture. 111ey are generally not Interested ln details (such as what fields describe a
CUS'l'OMm or
an on.om),The prim:l.ry role
of system owners h1 a systems development project should be to deJlne the scope and
vision for the project. For KNO"KLEDGE, scope can be defined In simple terms sud1 as
the aforementioned business entitles and rules. System owners define project ,islon
and expectations In terms of 1helr Insight Into problems, opportunities, and constraints as they relate to the business entitles and rules.
data requiremeot a
representation of users' data
in terms of en1ties, attributes,
relationships, and rules.
System Users' View of KNOWl.!OCI! Information system users are knowledgeable
about the data tl1at describe the business. As Information workers, tl1ey capture,
store, process, edJt, and use that data every day. They frequently see the data only
in terms of how data are currently stored or how tl1ey tll.iok data should be stored.
To them, the data are recorded on forms, stored in file cabinets, recorded h1 books
and binders, organized Into spreadsheets, or stored in computer fl ies and databases. The challenge In systems development ls to correctly Identify and ,·erJfy
users• business data requJrements. Data requ1remeuts are an extension of the
business entitles and rules that were inltially Jdentlfled by the ~·stem owners. System users may ldetlllfy additional entitles and ntles because of thelr greater lamiliarJty wlth the data. t.tore importantly, system users must specify the exact data
attributes to be stored and the precise business rules for maJntaJoing t11at data.
consJder d1e followtng example:
A system owner may Jdentlly the need to store data about a business entity called
cusTO~. System users might tell us tl1.1t we need to differentiate between
PROSPEC'llVE CUSTOMERS, ...cnvt CUSTOMEt5, and INACl1VE CUSTOMERS becatlse they lmow
tl1at slightly different types of data describe each type of customer. system users
can also tell us precisely what data must be stored about ead1 type of ctlstomer.
For example, an AC'nVE cusroMER mJght require such data attributes as CUSTOMER
NUMBER, NA..\ffi, BIUJNG ADDRE!S, CREDIT R.ATCNG, and CURRENT BALANCE. Finally, system
users are also knowledgeable about the precise rules that go,-en1 entitles and relationsh.ips. For example, they might tell us that the credJt rating for an ACTIVE
cusro.\.UR must be PREff.RR.fD,NOR..\tAL, or PROBAnONARY and that the default for a new
custom er is NOR.-\tAL. TI1ey mfght also specify tl1.1t only an ACTIVE cusroMEJ. can
place an ORDEJt., but an ACliVE CUSTOMER m.Jght not necessarily l1.1ve any current
ORDERS at any gj,-en time.
Notice from the abo,,..e example that the system user's data reqttlrements can be
identified Independently oft11e DATABASET&:HNOLOGY that can or will be used to store
the data. System users tend to focus on tl1e .. business• i~ues as they pertain to
Information System aulldlng Blo,ks
d,optorlwo
SI
the data. It ls Important that the system users pron.de data requirements tl1at are
consistent with and complementary to the lnformatlon scope and vision provided by
the ~·stem owners.
System Designers' View of KNoWllDC! The system designer's KNOWLEDGE perspective differs significantly from the perspectives of ~·stem owners and system
users. TI1e system de.signer is more concerned with the DATABASE TECHNOLOGY that
wlU be used by the Information system to support business knowledge. System designers translate the system users' business data requirements into database designs
that wUl subsequently be used by system bullders 10 develop compu1er databases
that will be made available via the information ~·stem. TI1e system designers• view
of data ls constrained by the limltatlons of whatever database management system
(DBMS) ls cbosen. Often, the d1olce has already been made and the developers
mltSl use tl1at technology. For example, many businesses have standardJzed on an
enterprise DBMS (such as Orade, DB2, or SQL Se•ver) and a work group DBMS
(such as Access).
In any case, the system designer's '\oiew of KNOWIEDGE consists of data structures,
database scbemas,flelds, indexes, and other technology-dependent components. ,_lost
of these tecboicnl speclflcatlons are too complex: to be reasonably understood by &)'S
tem users. The systems analyst and/or database specialists design and document these
tedmlcal views of the data. Thls book will teacb tools and techniques for transforming business data requirements into database schemas.
System Builders' View of KNOWU!OCI The final ,·Jew of KNOWLEDGE is releYant to
the ~·stem builders. lo the KNOWLEDGE column of Figure 2-4, system builders are dos.
est to the actual database management system technology. They must: represent data
in ,-.ry precise and unforgiving languages. The most commonly encountered database
language ls SQL (Strr,aured Qr,ery Language). Altematlvely, many database management ~tems, such as Access and Visual fu"<.Pro include proprietary languages or
facUIUes for constructing a new database.
Not all information systems use database technology to store their business
data.Many older legacy systems were built withflatfile tecbnologles sud1 asVSAM.
These flat-file data structures were constructed directly wlthJn the programming
language used to wrJte the programs that use those files. For ex.ample, In a COBOL
program the flat.file data structures are expressed as PICTURE clauses in a DATA orvistoN.
It is not the latent of this book to teach either database or flat-file construction
languages, but only to place them In the context of tl,e KNOWLEDGE bldldlng block of
infonnatlon syscems.
>
PRocess Building Blocks
Improvlng business and services processes Is another fundamental goal of an lnformatlo11 system. Processes deliYer the desired functionality of an lnformation system.
Proc.es.,es represent the tiork In a ~tern.. People may perform some processes, wltlle
computers and machines perform others.
Toe PROCESS building blocks of information systems are illustr.tted In Figure 2-5.
Notice at the bonom of the PROCESS colwrut tl1..1t soPTWAR.ETECHNOLOGCEs will be used to
automate seJected processes. As you look down the PROCESS column, each of our dJf.
ferent stakeholders has different perspectives of the information system. Let's
examine tltose views and discuss their relevance to the PROCESS column.
System Owners' View of PROCESSES As usual, system owners are generally interested In the big picture.They tend to foalS not so mud1 on work flow and procech.tres
as 011 hlgh~evel business functions, sucb as those listed In the margin of page 53.
Organlzacions are often org.ut.ized arottnd these business fuctions wtth a "ice presJdent
business functioo a group
of related processes that support the business. Funciions
can be decomposed into other
subfunctions and eventually
into processes t'lat do specific
1aSks.
52
1ho Context of Systems l>owlopmont ProjOffl
Part One
Bue1ne
- -
••
Drivers
Goel:
Goel:
Goel:
IMP ROVE
IMP ROVE
IMP ROVE
BUSINESS
KNOWLEDGE
BUSINESS
PROCESSES
BUSINESS
OOMMUNICATIONS
INF OR MATI ON SYSTE M"',~,,.
•z
u
RJNCTIONAL
~
..•
..
•
~
•<.>
..
~
0
•
~
a
c
••
>
•
•
•
••
/"
u
••
>
•
z
..
..
>
P ROCESS
REQUIREMENTS
BUSINESS
"
,/
~
.. ••
.. •
..
..• - •
~
"<
"
BUSINESS
•
-
~
z
J.
u
u
~
•
VISION
~
..•• - •
.. •
>
SCOPE
/
u
.."
.. z
"
0
~
P ROCESS
DESIGN
"<
"
..
SOnwAAE
DESIGN
>
-
"f i"
COMMERCIAL
SOnwAAE
u
0
~KAGES
"5
''\
0
a
•
/
ana/ or
CUSTOM-BUI.T
APPLICATION
PROGRAMS
•>
•
- -
,''
~
I
F I GU R E 2 • S
~
DATABASE
SOn'WAAi
TECHNOLOGI ES
TECHNOLOGIES
INTERl;\CE
TECHNOLOGI ES
NETWORK TECHNOLOGIES
Te c nno1ogy
D r I v e
'
.
A BUSINESS PROCESS Perspective of Information Systems
I
..
>
z
>
Information System Building Blo,ks
d,cptor lwo
overseeing each fw1ctlon. Unlike business e,-ents (rud1 as CUSTOMER sua,urs ORDER)
tl1at have a defl.nlte beghuling and end, a business function has no starting time or
stopping time.
Hlstorlcally, most informatio11 systems were (or are) fi,11ctto11.<entered. Thar
meaa.s the ~·stem supported one business function. An ex.ampJe would be a SALES
Sales
JNFOF.MATION SYSTEM that supports only the ln.itlal processing of customer orders.
Service
53
TYPICAL BUSINESS
FUNCTIONS
Today, many of these single-function Information systems are being redesigned as
Manufacturing
cross-functio1uJ information systems that support several business functions.
Shipping
As a contemporary altematfve to the tradJtlonal SALES tNPOR.-\IIATION SYSTEM, a crossR
ecei~ng
functional ORDER fUlFCLI.MENT INFOR."1ATION SYSTE.\t would also support all relevant
Accounting
processes subsequetll to the processing of the customer order.1bls would lndude Ill~
Ing the order In the warehouse, shipping the produm to the customer, billing the cus.
tomer, and pro'\oidfng any necessary follow-up ser,ice to the customer- lo other
words, all business processes required to ensure a complete and satisfactory response cross-functional
to tlie nistomer order, regardless of wll.ich departments are it1vol,--ed.
i.o.formatioo system a
As sl1own In Figure 2-5, the system owners view a $)'stem's business PROCESSES system that supe>orts relevant
with respect to the functional scope being supported by the systems and to a vi- business processes from
sion or expect.a tlon for improvements. The system's business functions are fre- several business funciions
without regard to traditional
quently documented by ..ysrems analysts in terms o f simple lists of business events
and responses ro tltose events. Some examples of business events and responses
are as follows:
orgamzauonai counaanes
such as divisions, depart·
ments, centers, and offices.
Event: CUSTOMER SUBMJTS O RDER
Response: CUSTOMER RECEJVES ORDER.ED PRO DUC'fS
Event E.\.U'L.OYEE Slm.\U'fS PURCHASE R.EQUISITION fOR SUPPUES
Response: E.\IIPLOYEE R.OCflVES REQUES'fED SUPPUES
Event END Of MONTH
Response: CN\OICE CUSTOMm'> AGAINST ACCOUNTS
With respect ro each evenr and response identified, system owners would identify perceived probletns, oppormnlties, goals, objectives, and constraints. The costs
and benefits of developing infonnatlon systems ro support business fw1ctlo11s would
also be cllsc1.issed. As wa.s the case with KNOWLEDGE, system owners are not concerned
with PROCESS details. That level of detail ls ldet1tlfled and documet1ted as part of the
system users' view of processes.
System owners also frequently ldet1tlfy senice.s and levels of service that they
seek to pro"ide to customers, suppliers, and employees. A popuL1r example is customer, supplier, or employee self-service. Human re.source syscems, for example,
incrtaslngly provide employees with tlte ability ro enrer their own transactions such
as d,ange of address, medical dalms, and training requests. S)'stetn owners also Identify
needs for lnformation systems ro impro,--e sen-ice by reducing errors and lmpro"ing
service.
This book will teach you how to ldet1tlfy and document project scope In terms of
rele"'aflr blislness functions, business events, and responses.
System Users' View of PROCISSIS Retunling again to Figure 2-5, we are ready to
examine the system users' view of processes. Users are concerned with the business
processes, or-Work;' tl1..1r must be perfonned In orckr ro pro"ide tlte appropriate respo11Ses to business evet1ts. System users specify the business process In rerms of
proceM req,1lremei1ts for a new system. Process requirements are oftett documented In terms of actfvitles, dara flows, or work flow.
These process requirements must be precisely specified, especially If they are to
be auromared or supported by software rechnology. Business process requirements
are frequently defined In terms of policies and procedures. Policies are explicit
r ules t11..1r must be adhered ro whett completing a business process. Procedures are
tl1e precise steps to be followed In completing tl1e business process. Consider the
following example:
process requ.iremeots a
user's expectation of the
processing reqlirements for
a b.Jsiness proc.iss and its
information sy"S'ems.
policy asetolrules that
govern a b.JsinEllSs process.
procedure SWp.by-step set
of instructions and logic for
accomplishing a business
process.
54
Part One
1ho Context of Systems l>owlopmont ProjOffl
CllEO JT APPROVAL is a policy. It establishes a set of rules for detennlnfng whether or
11ot to extend credJt to a customer. That credJt appro'\<-:tl policy ls usually applied
within the context of a speclflc CR.fDJT CHB:K procedure that established the cor.
rect steps for checklng credlt agalnst the credlt policy.
work Oow tie flow of trans.
aciions th rough business
processes to ensure approprj.
ate checks and approvals are
implemented.
Process requirements are also frequently specified In tenns of work flow. ~tost
businesses are very dependent on checks and balances to irupJement work flow. For
example, a purd1ase requisition may be lnlthlted by any employee. But tlut requisition
follows a speciJlc work flow of approvals and checks before It becomes a purchase
order transaction that ls entered lnto an information processing system. Of crurse,
these checks and balances can become cumbersome and bureaucratic. Systems analysts and users seek an approprorlate balance between checks and balances and
sen-ice and performance.
Once again, the challenge in systems de,-elopment is to identify, express, and analyze business process requirements exdusJvely In business terms that can be understood by system users. Tools and techniques for process modeling and documet1t1tlon
of policies and procedures are taught extetlSlvely In this book.
PRocesses As was the case with the KNOWt.EDGE building block, the system designer's view of business processes is co11Stralned bj' t11e
llmltatlons of speciflc application development technologjes such as Java, Vls1-tal
Baste.Nm; C+ +, and C#. Sometimes the analyst Is able to choose the software technology~ l1owever, often the chokes are limited by software ardlitecture standards that
specify wbid1 software and hardware tedu10Jogies must be used. In either case, the
designer's ,iew of processes Is 1edulical.
GJvet1 the busines., processes from the ~tern users' view, the designer must first
determine which processes to automate and how to best automate those pro«s.,es.
,_lodels are d.raw11 to document and communicate how selected business processes
are, or will be, implemet1ted using the software and hardware.
Today, many businesses purchase commercL1I off-the.shelf (COTS) software to.
stead of b,uldlng that software in-house. In fact, many businesses prescribe t11.11 software that can be purd1ased sl1ouJd never be built-or that only software that
pro,ides true competitive ach:antage should be built. In the case of purd1ash1g software, business processes must usually be changed or adapted to work with the software. Hence, in this scei1..1rlo the business process desJgn specifications must
document how the sofrware package will be Integrated into the enterprise.
Alternatively, in the case of building software In-house, business processes are
System Designers' View of
usually designed first. And the business process spe.clflcatlons must then be sup
softl\'3.te specifications
the technical c'esign of
business processes to be
automated or supported by
computer pnJGrams to be
¥Kitten by system builders.
plemented with software spedficatio11S tl1at document the tecbn.ical design of
computer programs to be written. You may have encountered some of these software specifications In a programmJng course. As was the case wJth KNOWLEDGE,
some of tl1ese tedmlcal views of PROCES.5ES can be understood by users but most
caonot.1l1e designers· intent is to prepare software speciJlcatlons that (I) fu!Jlll tl1e
bush1ess process requirements of system users and (2) pro,ide sufficient detail and
co11slstency for commwllcatJng tl1e software design to system builders. TI1e systems design chapters In thls book teach tools and techniques for transformlng business process requirements Into both business process design and software design
specifications.
System Builders' View of PROCESSES System builders represent PROCESSES ush1gprecise compu ter programming languages or application development et1vlronments
(ADEs) that describe inputs, outputs, logic, and control. Examples lnclude C++,
Visual Basic .NE'J', C# (part of the Mlcrosoft Vfsr,a/ Stu.tfto .NET ADE), and Java
(avalL1ble In ADEs such as IBM WebSpbere and BEA WebLogfc). Addltlonally, some
applications and database management systems provide their own inten.1..1[ L1nguages
for programming. Examples Include Vfsr,a/ Basic for Applications (in Access) and
Information System Building Blo,ks
PLSQL (in Orade). All these languages are used to write custom.bullt appllcatlou
progra.1llS that automate business processes.
This book does not teach application programmlng. \X'e will, however, demon-
d,cptor lwo
SS
application program a
language-basec, machine.
readable repres;ntation of
strate how some of these languages pro'\oide an excellent en'\oironment for rapJdly de- what a software process is
veloping a system using prototyping software. Prototyping has become the design
technique of d1olce for many system designers and builders. Prototypes typically
e,-oh·e lnro the fh1..1l version of the ~tern or application.
As mentioned earlier, sometimes decisions may ln\--olve purchasing a commercial
software package as a system solution. In this sceiurio, the system builder may need to
focus on customization that must be done to the software package. 111e system builder
may also be expected to develop application programs that must be Integrated with
tite commercial package to extend the package's functional capabllltles. Finally, the sys,
tern builder must also focus on program u tilities that must be written to h elp with the
con,-ersion and lnregratlon of the commercial program and existh1g ~terns.
> COMMUNICATIONS
Building Blocks
Let's examine our final building block- COMMUNICAJ'IONS. A common goal of most
organlzatl0tlS ls to improve business commttnlcntlons and collaboration between
employees and other constituents. Communlcatlon improvements In information
systems are typically directed toward two critical interface goals for an lnformation
system:
lnformatio11 ~tem.s must: provide effective and efficient communlcatlon lnterbces to the ~tern's users.These lntetfaces should promote teamwork and
coordtnation of activities.
Information systems must Interface effectively aod efficiently with other Information ~·stems- both wlth those within the budness and increasingly wlth
other businesses' infonnation systems.
The OO><l\llJNICATJONs building blocks of lnfonnatlon systems are Illustrated 111 our
framework in Figure 2-6. Notice at the bottom of the COM."1\INICATION column that it utilizes INTf.RW..CE r&:HNOLOGI ES to Implement the communication lnterfaces. And once
agalo, as you look down the COM.\.1.UNICATION coh1nu1, each of our different stakeholders has different views of the system. Let's ex.amJne those views and discuss their
rele\'aflCe to systems development.
System Owners' View of COIM\l.lNCATION The system owners• view of COM.\.1.UNIIS relartvety simple . Barty in a syscems developmenc project, syscem owners
need to specify:
CATJCN
With wtlich business units, employees, customers, and external busin~es must:
the new system lntetface?
Where are these business units, employees, customers, and external businesses
bcated?
WIUthe system h.ave to interface wlth any other lnformatlon, computer, or
au tomated ~·stems?
Answers to these questions help to define the communlcatlons scope of an information systems development project. ,_Unlmally, a sultable system owners• '\iew of
infonnatlon ~·stem communication scope and "ision m.Jght be expressed as a simple list of bush1ess locations or systems with whld1 the htformation system m ust Int erface. Again, relevant problems, opportunities, or constraints may be Identified
and analyzed.
System u,e,,' View of Co#M&JNCATION ~·st:em users' view of COMMUNICAn oN ls
more in terms of the lnfonnation system's inputs an d outputs. Those Inputs and
outputs can take many forms~ however, the busines., interface requirements are more
supposed to door how a
software process is supposed
to accomplish its task.
prot0typing a technique
for quickty building a funciioning but incomplEte model of
the information system using
rapid application development
tools.
56
Part One
1ho Context of Systems l>owlopmont ProjOffl
Business
Goal:
IMPROVE
BUSINESS
l<NOWLEOGE
talr.et'IOIJHI
Drivers
Goel:
IMPROVE
BUSINESS
PROCESSES
o,
I N FORMATION
~
•u
z
..•
..
.."
..
••
;t-
0
~
\r-
u
••>
•
~
'
z
0
,
~
•<.>
..
0
•
~
•
~
;L
•
••>
•
u
\f"
<
0
'
,
0
a
c
..••
..
>
..
....
..•
~
z
•
•
<
..
•u
z
~
u
;L
u
\f"
•
•
••>
•
<
0
£
>
z
>
~
..
..
>
•u
;L '
0
"•,
a
•
<
\[""
•>
•
"
~
DATABASE
TECHNOLOGIES
SOn'WARi
TECHNOLOOE S
N£TWORK TECtfllOLOGI ES
Tecrino1ogy
F I GU R E 2 - 6
Drivers
A BUSINESS COMMUN1CA110NS Perapective of Information Systems
Information System aulldlng Blo,ks
d,cptorlwo
57
Important than the technlcal fonnat. The Inputs and outputs represent how the pro,
posed system wouJd interact with users, employees, business wlits, customers, and
other businesses.
The details of tl1ose Inputs and outputs are important System users might specify the details In the form of a list of fields (and their values) that make up the Inputs
or outputs. Alten1atlvely, and because system users have become comfort.abJe with
the graphical user Interface (e.g., Wt11.do1vs or Web browsers) for the system, the
details might be specified in the form of prototypes. System users are increash1gly
demtnding that their custom-built Information system applications have the same
.. look: and feel,. as their fa\--orfte PC tools such as word processors and spreadsheets.
This common graphical user Interface makes each new application easier to learn
and use.
Both list and prototype approaches to documenting the ~·stem users' "iew of
00M.0UN1CA110N wlU be addressed In various dtapters of this book.
System Designers' View of COMMUNtcAJIION ~tttn designers must be concen1ed
with the technlcal design of both the user and the system4o..ystem commwllcat!on h,
terfaces. We caU these Interface speclflcatlons. Let's begin with the user Interface.
Users nod designers can be ln,--olvcd Ut Uttcdncc de.sign. Bur whcrcas system users
are lnterested in requirements and format, system designers have other interests such
as consistency, compatibUity, completeness, and user dialogues. The user d.L.'l.logue
(sometimes called l11terface 11avtgat1011) specifies how t!,e user wlU na>ig,11e through
an application to perform useful work.
The trend towatd graphical user interfaces (GUls) such as Wl11do1vs and \X'eb
bro"U•sers has slmputled life for system users but compUcated the design process for
system designers. In a typical Windows application, there are many different things
users can do at any gtven time- type something, cllc:k the left mouse button on a menu
item or toolbar icon, press the Fl key for help, maximize the atrrent window, mlnlmlze the current window, swltd1 to a different program, and many others. Accordingly,
the system designer '\oiews the lntetface in terms of \'arlous system states, events tl1..1t
d1..1nge the system from one state to another, and responses to tl1ose events. Today,
tl1ere are many more design decisions and considerations tl1e system designer mltSt address to docttment the dialogue of a graph.ical user interface solu tion. Tools used to
document user dialogues wlU be discussed h1 tl,e design wllt of tills book.
Web lnterfaces 11..1\-e further complicated the designer's activities. Society has come
to expect more gUtz ln Web Interfaces. For that reason, it is not at all uncommon for the
desf1!n team to lndude graplllcal design spedallsts and human-computer Interface spe,
ctalt5t5 to ensure that the mterface for a \\'eb server ts both compelling and easy to use.
Althougb not depicted In Figure 2-0, modern system designers may also design
keykss in.terfaces such as bar cod.fog, optical character recognition, pen, and voice or
l1..1ndwrlting recognltion. These alten1..1tlves reduce errors by eUmloating the keyboard as a source of hum..10 error. However, these interfaces, like graphical user interface,, must be carefldly designed to bot!1 exploit the under~·log technology and
maxinlze the return on wl1..1t can be a sizable lnvestment.
Flnally, and as suggested earUer, system designers are also concerned with systemto-system lnterfaces. Increasingly, ~·stem interfaces are the most diffintlt to design
and fmplement. For lnstance, consider a proairement Information ~·stem that is used
to initiate and purchase everything from supplies to equlpment . A procurement system must interface with other information systems such as human resources (to
detetmlne authority to purchase and approve ordets), accounting (to determine ff
funds are avallable against an accowll), receMng (to determine If ordered goods were
received, and accounts payable (to initiate payment). These hllerfacing systems may
use "'ry dlffere11t software and datahases. Tilis can greatly complicate system hllerfuce
design. System interfaces become e\-en more complex: wt1en t11e lntetface Is between
information systems ln dJfferent businesses. For example, In the aforementioned system, we might want to enable our procttrement system to directly interface wlth a
suppler•s order fulfillment system.
interface SJ>eci.6catioos
tochnical dosigns that docu.
ment how syste11 users are to
interact 'Mth a sjStem and
how a syS1em interacts 'Mth
other systems.
user dialogue a specification of how the user moves
from window to Mndow or
page to page, interacting with
the application programs to
perform useful work.
58
Part One
1ho Context of Systems l>owlopmont ProjOffl
Legacy information systems In most businesses were each built with the rech-
nologies and teduliques that represented the best practices at the time when they
were developed. Some systems were built lo-house. Others were purchased from
software ,--endors or de,-eloped witl1 consultants. As a result, the integration of d1e.se
heterogeneous systems can be difBntlr. Consequently, the need for dtfferet1t ~·51:ems
to Interoperate is pervasive. Accordlngly, the time system designers spend on ~·stemt~·stem Integration is frequently as much as or more than the time they spend on
system development The system designer's mission ls to find or build Interfaces
between these systems that (I) do 11ot create maintenance projects for the JegaC)'
systems, (2) do not compromise the superior tedinoJogles and design of the new
systems, and (3) are ideally transpare11t to the system users.
System Builders' View of COMMUNICATION System builders construct, install test,
and implement both user and system-to-system interface solutions uslng tNTEII.W..CE
TECHNOLOGY (see Figure 2.6). For user Interfaces, the Interface technology Is frequently
embedded into the appllcntr.0·11 developnie11t e1J.vtro·111nent (ADE) used to conru-uct
software for the system. For ex.ample, ADEs such as those for Vfsual sn,dio .,Vl!f, and
Pou:erb·u tlder indude all the lnterface technology required to construct a Wt11,iot1Js
graph.ic:il user lnrer&oe (GUI). AD& ruch as t11ose fOt' Java and Cold Fusion provide
middleware utility software
that allows application soft.
ware and systems software
that utilize differing technolo-
gies to interop;rate.
similar funcrlonallty for \X'eb interfaces. Alternatively, the user interface could be
constructed with a stand-alone interface technology tl1at supports :d1TJlfL (e.g.,
,_lacromed.L1's Dreat1'U)Qaver).
System-t~·stem interfaces are consJderably more complex than user interfaces
to construct or Implement One ~·stem-to-system interfacing technology that is currently popular ls mlddleware. Mlddleware is a layer of utility software that sits In between application software and systems software to transparently lntegrate differing
technologies so t11at they can lnteroperate.
One common example of mlddleware is the open database connectMty (ODBC)
tools that a llow application programs to work with d.Jfferent database management
systems wJd1out having to be rewritten to take Into consJderatlon the nuances and dlf.
ferences of those database management systems. Programs written with OOBC commands can, for tl,e most part work with any ODBC<ompllant database (which
indudes dozens of dilferetll database management systems). Slmllar mlddleware products ex.1st for each of the columns In our lnfonnatlon ~·stem framework. System
designers help to select and apply these products to integrate systems.
At tl,e time of this writlng,X,l!L (eXtenslble Markup Language) bas eme,w,d as
an evolving standard for system~o-system commwllcatlon.Xil!L ls wllque in its :blUty
to st1are daca between ~cems tlu'Ougb. data screams d1..1c not only lndude d1e daa buc
also lnclude the meaning and structural detlnltions for t11..1t data. JGlfL capabilltles are
the new frontier for software tlut implements electronic data exd1..1nge over the Web.
Once again, tills book ls not abottt system construction; howe,-er, we present tl1e
system builder's ,iew because the other COMMUNICATION views lead to the construction of the actual communication interfaces.
Network Technologies and the IS Building Blocks
In this chapter, we unveiled a framework for lnformatJon systems archltecture that
was initially Inspired by the work ofJohn Zadunan. 1 The Zachman "Framework for
lnformatJon Systems Arch.ltectnre,. achieved h1tematio11..1I recogn.irion and use. TI1e
Z.,cbman framework ls a matrix (similar to the chapter map at tl1e beginning ci this
chapter). The rows correspond to what Zachman calls perspectives of dlffere111
1loht1 A. behtnul. "A Fh:tnewotk for ln.fottnaliob S ~ Arc:biteetu~· /&.\! Svs1P:nu./ot1n,1tl26, tio. 3 (1987).
pp. 276-m.
Information System Building Blo,k s
59
d,optor lwo
, FIGURE 2 - 7 '
PROCESS
Buik:ting
Blocks
The Role of the
Ne h vorkin
Informatic-n
, Systems
NETWORK TECHNOLOGIES
people ln\--olved in systems development and use. TI1e columns correspond ro
foc-1,;es on different aspects of the informarJon 5'/Stem. Zac hman's architecture
includes a separate c oh1nu1 thar dosely equates to whar our framework recognJzes
as NITWOR..K TECHNOLOGI ES. (We have c hosen to omlt thar column because network
frameworks are more typically covered in dara communlcatlons and networking
textbooks- and those textbooks tend to focus on the Open Systems lnrerconnect
(OSf) framework as opposed to Zachman's.)
Btn unquestionably, roday's infonnatlon systems tre builr on networks. Figure 2-7
shows a modern high-level information systems framework thar demonstrates the
contemporary layering of an Information system's KN:>WLEDGE, PROCESSES, and COM."1\INICATICNS bttlldlng blocks 011 NlrrWORK TOCKNO I.DGCES. Today's best-designed lnformatlon
systems tend to separate these layers and force them to communicate across the networt. This c/ea1~/ayerl11g approach allows any one bulldlng block to be replaced with
another while ha>ing little or no lmpact 0 11 the other bttlldlng blocks. For example,
the DATABASE T&:HNO LOGY, SOFTWARE TECHNO LOGY, or INTERFACE TECHNOLOGY could be
dia~ed without lmpactlng the other bttlldlng blocks.
It ls not the latent of this book to tead1 network tecbnolog)'. ~fost information
systems and tedu1olog)' programs offer courses that can expand )'OUr understanding
of n<twort technology.
,
So where are we 11ow? If you have already read Chapter 1, you learned about lnformatlo11 systems deve.lopment projects with a focus on the stakeholders, the process,
and the bush1ess and technical drivers that lnfluet1ce the need for new $)'Siems. If you
ha,--en't already done so, you should at least skim Chapter 1 to learn about the co1,te:~t
ofsyrtems analysts a11d design methods.
In Chapter 2, you learned about the product itself- h1formatlon systems- In
tentlS of baslc bulldlng blocks.This architectural perspective focused on the different
lnfotn1ation system views of the various stakeholders. )'ou learned that $)'stem owners and users view lnformatlon systems from the standpoint of achleving goalslmpro"ing business knowledge, processes, and communications- whereas $)'stem
designers and bttllders view Information systems In terms of teclmology that supports
the achlevement of goals.
Most readers should proceed dlrectly to Chapter 3, wblch h1troduces you to the
process of lnformation system development. You'll learn about information systems
problem solvh1g, methodologies, and development technology as you expand your
educitlon h1 the fundamentals for systems analysis and design methods.
:::::0
0
0
Q_
3
0
-0
60
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
Summary @
I. Organlzatloos are served by a feder.ltlon of Infor-
mation systems that support "-arJous business functions. Busine.s.,es h.ave front-office information
systems that support business functions tl1..1t extend out to their customers and back-0ffice information systems that support Internal business
operations and lnteract wJd1 suppUers.
2. The many classes of Information system applications overlap and interoperate to complement and
supplement one another.
3. lnformadon systems archltecture provides a wllfylng framework into whlch various stakeholders
wlth dJfferent perspectl\o-es can organlze and view
the fttndimental building blocks of information
systems:
a. System owners and $)'Stem users tend to focus
on three common business goals of any information system- lmpro,-ements ln business
kno'\\iedge, business processes, and busine.s.,
commwlications.
b. System designers and bttllders tend to focus
on technologies used by the infonnation system
in order to achieve the business goals. They
focus on the database technologies that
support business kt1owledge, software technologies that support buslness processes, and
internee technologies that support business
commwlicatlons.
4. The three views represented in the model are:
a. KNOWLEDGE- the business knowledge d1at helps
managers make intelligent decisions.
b. PRcx:i:ssES- the actlvJtles (indudlng manageui~••t) lh.tl c..~.u·1·y uul tlut tui:,sio u of lit~
business.
c. CoM.\.llNICATIONS- how the system lnterfaces
witl1 Its users and other infonnatlon systems.
5. Improving business knowledge Is a fundamental
goal of an information system:
a. The S'/stem owner ls interested in lnformatlon
that adds new business knowledge.
b. lnfonnatlon system users are knowledgeable
about the data that describes the business. This
data is used to create fr1fonnatlon and subsequent business kt1owledge.
c. System designers are concerned wltl1 the
database technology that will be used by the
information system to support business
knowledge.
d. System bttllders focus on the actual database
management system tedu10Jogy used to store
the business data tl1at will support business
knowledge.
6. lmprovlng buslness processes ls a fundamental
goal of an information system:
a. System owners are interested h1 the business
functions the groups of reL1ted processes, that
support a business.
b. System users specify the business process in
tenns of process reqttlrements for a new system. Business process requJrements are frequently defined In terms of policies and
procedures. Policies are explicit rules that
must be adhered to when completing business processes. Procedures are the
precise steps to be followed ln completing
business processes.
c . System designers vtew business processes
in terms of the application development environment and the software technology used
to develop the S)'stern. Many businesses purchase com.merclaJ off-the-shelf software solutions instead of buildlng tl1e software
in-house.
d. System bttllders focus on custom-0,tllt applications programs that automate business
processes.
7. A common goal of most organizations is to fm.
prove bush1ess commwlications:
a. System owners define the communJcations
scope of an h1fonnatlon system development
project.
b. System users view communications in terms of
the information $)'stem's inputs and outputs.
c.. System designers are concerned wlth the technical design of botl1 user and S)'stem-to..ysiem
communication interfaces.
d. System builders are concerned with the lnterface tedinology tl1ey use to implement
user and system-t<>.system communlcatlon
interfaces.
8. Today's informatlo11 systems are built on networks. Network technology allows properly de-
signed lnformation systems to separate the
KNOWLEDGE, PROCESS, and COMMUNICATIO N building
blocks and force them to communicate across
the network.
Information System Building Blo,ks
Chaptw lwo
61
\';::::;s Review Questions
l.>
l. What is the difference between front-office
jnformatlon systems and back-0fflce lnfonnatlon
systems?
2. How do trnnsactlon processh,g systems (TPSs),
management information $)'Stem.s Q.fISs), and
decision support systems (DSSs) hlleract with
each other?
3. Why do we need to idet1tify tl,e Information
system archltecrure?
4. What are the three busfr1ess goal-oriented perspectives or views of an informatlo11 system
1hat systems owners and system users tend to
locus on? What are the three tedinologlcal
perspectives that system desJgners and builders
1end t o focus on?
5, How are the business perspectives and the ted1nology perspectives of an infonnation system
related?
6. h1 any gh.. n building blocks of an information
,ystem, the views of four groups of stakeholders
need to be taken into aCCOl lllt du.ring the deveJopment of the system. What are these four stakeholder groups?
7. Briefly describe how system designers and
S)'Stem builders t end t o view KNOWLEDGE In a
S)'Stem.
8. Understanding business functions ls essentL1l in
the process building block of an h1formation system. What are six hlgh-leveJ business functions
typical of many companles?
9. lfyou were the ~·stem owner of an onllne CO
store, list two bush1ess functions of your online
store ln terms of business events and responses
to those events.
10. Give an example of a policy and ti,e procedures
needed to !mpletnent the policy.
11. What ls prototyping? Why do we need sud1 a
technique?
12. What are the two most critical goals ln the communication building blocks?
13. What ls user dialogue?
14. Why has the lncreash1g use of graph ical user h1terfuces (GUI) complicated the design process for
system designers?
15. What role does network technology pay in deve~
oph1g an lnformatlon system?
(f!;/;
l . Companies generally need rouse more tl1an one
informatlo11 system t o support all their different
business flutctlons.These functions are fre.quently referred to as either front-office lnformarJon ~·seems or back-office ~·seems. Define
ead1 of these two types of systems and identify
some of the typlcal business functions supported by ti,em.
2 . As a systems analyst, designer, or builder, you wil
lrequet1tiy be Involved with your organization's
Jnformatio11 ~'Stem.s archltectu.re. What ls an h11onnation S)'Stems ardlitecture, and wltat is Its
purpose?
3, ,\.lthougt1 system owners and system users generally have differet1t perspectives of thelr organization's information system, both groups tend
10 focus on three business goats that are common to any information ~·stem . What are these
goal-oriented perspectives, and wltat is their
importance?
4. h1 a n lnformatio11 ~'Stem, the process building
blocks represent the work that occtU'S ln a sys-
Problems and Exercises
tetn, whid1 may be performed by people or by
computers and machinery. Stakeholders tend to
have different vJews or perspectt,--es of these
bttlldh1g blocks. What are these different stakeholder perspeal,¥!s regard.Ing processes, and
how they differ from ead1 oti,er?
5. Assume you are a systems designer and your organization ls bulJding a new h1ventory manage.ment ~·stem . In reviewing the requlremet1ts
documentation, ft appears that an error was
made and some addJtlonal data elements were
left out tl1at are needed to meet the business or
technJcal objectives of tl1e lnvet1tory management ~·stem. What should you 11o t do at this
point.?
6. Assume you are desJgnJng a retaU point-of-sale
(POS) system for your company. What are the
typical system hllerfaces of a poh11-0f~ale system
that need to be taken lnto accow1t ln desJgiling
the POS S)'Stetn?
7. As business technology becomes more powerful
and sophlstlcated, many bush,esses are redeslgnlng
1
62
Part Ono
Tho Contoxt of Sy,toms Dovolopmont ProjOffl
thelr slngle-functlon Information systems,
such as sales, into cross-flUlCtlonaJ lnformatlon
system! tl1at provide h1tegrated support for
separate, but reL1ted, business ftmctlons. Assume
that you are deslgnh1g an order managemet1t system that will lntegrate all busfr1ess functions triggered by the submission of a sales order. What
typical business functions wo,tld be induded in a
cros.,-functlonal lnformatlon system?
8. ~Uddleware is frequently used In systems Integration projects when different infonnation systems
are tied together to exchange data via system-tosystem lntetfaces. Briefly define mlddleware, explain Its benefits, and provide an example.
9. In idei1tifying and documei1tlng business requlrements, systems analysts need to be able to distlogulsh between Jaws, policies, and procedures.
Why Is this Important.?
10. It ls common for system owners :ind system
users to l1ave very different vJews of the same
business processes used in an information $)'Stein. Why do you think this Is? Consider an airline tl1at is de,-etoping a customer self.check-in
systein at altports. What do you think the perspectfve of the system owners is? What about the
system users? Give examples of how the business
proces!es for an alrllne check·ht system will be
vJewed by the system owners and ~'Stem users.
Projects and Research
11. System designers and system builders also
tend to have very different views of ~·stem
building blocks. Explain the different ways
that designers and builders might view the
communication bulldlng bloc.ks using the Cl.tstomer self dtecl:·in ~·stem scenario de.scribed
ln the last quest.loo.
IZ. System designers frequei1tly hm, a number of
technlcal design options to choose from what
designing lnt..C.ces between different systems
and applications. What should designers alw,ys
keep h1 mlnd when designing tl,ese Interfaces?
13. 11te framework for lnformation S)'Stems ardutecture used ht this textbook ls derived from
the pioneering framework developed by John
Zachman. What ls one of the advantages of de.
signing ~·stems based upon this or similar
frameworks?
l .f. At times, :ltl org.'lfUZ3.tion may dtoose to purchu:e :t
commercial ofl:the-•helf (COTS) software package.
What do you thlnk are the pros and cons of using
off-the-shelf applications compared to custombullt appllcatlons?
15. If an org.,nization d1ose a COTS package as their
solution, wo,tld the view of the system builder he
the same as for a custom-built application? If not,
how would It be different?
1?
l. Select a medJum to large organlzatlo11.The organJ..
i.atlon can be in the public or prtvate sector. and it
can be one wltl1 whJch you are personally fantltlar
or one for wlllch information is readily available.
a. Desctlbe the org..'lnlzatlon you ha,-e selected
(type of organization, mission, products or services.size, aiutual sales or revenues, etc.).
b. Select one of the major lnformation ~·stems the
organization uses aitd/or is developing, and
describe it.
c. In the organization you selected, wlto would
typically be the owner of this system?
d. Desctlbe, from the viewpoint of the owner, the
information produced by this systein.
e. If the organization Initiated a project to replace
or mocllfy this system, how might the systein
owner define tl,e scope and vision of d,e project
wlthln dte context of the organization you
se!ecn,d
f. Who are the typical users of tills system?
g. Describe, from tJ,e perspective of tl,e ,rser,, the
h1formation produced by this system.
11. What ls an essential differettce In l1ow system
owners and users view the Information produced by the systein?
2 Contact and Interview two or three systems aa.a.
lysts, h1 different organizations If possible, regarding th.ls chapter's subtoplc on commwlicatlon
building blocks.
a. Describe tl,e nature of each analyst's company
or org.'lnlzatlon, lts mission, and cutTent blliiness issues or needs.
b. How Important does each of the ~'Stem ai1,1.
lysts consider communications wlth system
users versus S)'Stem builders; that ls, which is
more Important aitd wlty?
c. Do they find it more cllfllCltlt to commwllcite
with the system users or wfth the S)'Stem
b,dlders? Why?
Information System aulldlng Blo,ks
d. If they were CIOs for a day, what wo,tld
each of them d1ange about the way their de.sJgners commwllcate with system users and
builders?
e. Whlch viewpoints do you agree with, or do you
have a totally different one tl1..1n the people you
interviewed? Justify your answer.
3, Se.led an informatio11 system used by a medium to
L'rge organlzatio11. It can be one with whid1 you
Chaptwlwo
63
goods or services from one than the other(s),
solely because of differences in thelr Web sites?
Why or why not?
d. From the viewpoint of a business customer, do
you think design or usability is more important
for a Web site? Explain your answer.
e. From the viewpoint of a consumer, would
yolU' answer be the same as ln the precedfrlg
question? ExpL11n.
are person.ally famUL1r or one wl1ose organli.atlom.l
structure and Information system you ha,-e
researched.
5. Researd1 several articles published in the last few
years in your library and/or on the Web that discuss ethical issues reL1ted to systems dtslgJ.1.
a. W11at is the nature of the org;ulizatlon you h.ave
a. W11at articles were you able to find?
b. Describe some of the situations and ethicaJ
issues tl1.1t mlght arise from tlrue to time in
systems design.
c. Pick one of the siruations described In (b) and
selected, its mission, and tl,e hlgl>-level purpose
of tl1elr information system?
b, W110 is the owner of the system?
c. If you were the owner of the system, descrlbe
l1ow you would see the system processes from
d.
e.
f.
g.
tl1.1t viewpoint.
W110 are the users of the system?
If you were one of the system users, de.scribe
l1ow you would see the system processes from
tl1.1t viewpoint.
If you were the system designer, describe tl,e
system processes from that viewpoint.
Wlut are the essential dUferences in viewpoints?
4. Imagine that you are the owner of a small business
aad are seateh.lng on the '\X'eb for a company that
can supply the products or services needed by
your business. Flnd several business-to-business
(B28) Web sites that offer the products or services
fer whid1 your business is looking. Famlllarize
yourself with thelr Web sites from tl,e viewpoint
of a typical business customer who is visiting the.se
sJtes for the first time.
a. Wh.ac is the narure of your organization, and
for wl1at type of goods or services are you
looklng?
b. Whlch 828 sites did you find on the Web?
c. Compare the different sites. If all other things
were equal (price, avallabillty, brands offered,
etc.), would you be more likely to purchase
descrlbe wfl..'lt you believe to be the system
designer's ethical obligation, if any.
d. (Extnt credit) Do you think tl1.1t requiring rr
professionals, that Is, S)'Sterns analysts, designers,
and builders, to be lict'llSed or cert!Jled wo,~d
increase professionalism and/or reduce unethical beJ1avior? Wllf or why not?
6. TI,e textbook uses a framework for describing information systems architecture that ls based upon
John Zad,man·s• ftaruework for Information S)'Stems Ardlltecture• model. Uslllg the Web or your
school library, research other fnruewotks for descrlblng IS archltectures, and select one, sud1 as
Open S)'Sterns Interconnect (OSI).
a. Wllld1 frameworks dld you find, and whlch did
you select?
b. Describe Its approach to comru,ullcating systems
archltecture. Include a diagram if appllcable.
c. WlL1c are tcs sJmilarJtles co the framewort.: used
in the textbook?
d. W11at are ics differences?
e. If you were a systems owner, which one wou.ld
you find easier to w1derstand?
f. If you were a $)'stems ai1..1lyst, wllich one would
you find easier to w1derstai1d?
{jJ Minicases
1. An rr manager requests ai1 amow1t of funds to
upgrade the e-mail server. Without the necessary
upgrade, the ser,--er will be burdened by the sheer
aoiollllt of e-mail and wUJ run the risk of crashing.
The business m:u1..1ger detlies the request, citing
the past rellablllty of the server, and expresses
concern at the recent large IT expenditures. The
business ma11..1ger )eaves the conversation wondering what rr h1vestruents are really necrssary, and
If the rr n>.1nager is Just creating "Job security.•
64
Part ono
Tho Contoxt of Systoms l>ovolopmont ProjOffl
TI1e IT manager, likewise, leaves the meeting frustrated at 11ot h.aving the tools he/she needs to do
the Job properly. The IT manager knows that
when the server crashes, it will be his/her re.sponslbillty to fix.
a. Do you thlnk th.ls happens often h1 bush1ess?
b. What perspectives do you think each are taklng
on the problem?
c. How could ead1 have communicated those perspectives and busfr1ess needs better?
2. Interview at least one person in marketing, customer service, and accotmtlng/payroll in the same
company. What types of h1fonnatlon do they handle? Do they share information aero:;,, departments? Do you notice overlap in lnformatlon or lo
data entry?
3, Government servJce departments are deeply bur-
crime. You should lnclude, but are not limJtOO to,
topics such as:
What Is the department's (or person's) Job?
What kh1d of data do they collect and analyze?
What kh1d of analyses do they do on tJ,e data?
How much fr1fonnatlon do they collect, from
whom, and wl1at programs do they use?
4. Your neighborhood grocery store, Wow Groctry,
always seems to be numfr1g out of your favorite lee
cream. In frustration, you ask the store manager
why they always seem to be out The store manager, Bob, tells you that d1e small store cuu1ot
afford an ln,--entory management system, so lnventory ls updated manually. 1bls means that oftentimes the store must either stock extra quantities
of well-liked ltems or rlsk running out.. Unfortunately, Wow Grocery does not have a large e1.1ough
dene-d by the amount of d:it:i th.at rhey hold and
freezer to store :iddJtion.'ll stocks of lee Cf'eam. As
process. IntervJew someone from a service department and draft a short essay. Service departments that must sift through '\o-ast amounts of
data are tl1ose tl1at deal wlth, for example, mlsslng persons, dllJd protective services, D,_(Y, and
tracking of persons on probation followlng a
a result, the store runs out of the ice cream quite
Team and Individual Exercises
I. How do you solve a seemlngly h,solvable problem?
As a ream, develop a methodology for solving t!,e
following question: How m..my homes are there in
the Unlred States that are palnred yellow?
2. Try somethlng you have nor done before (legal,
nor dangerous, and rated G). Share with the class
Suggested Readings
frequently.
5, W11at can \X'ow Grocery do to automate or m..nage
lts it1ventory system without spending much
money? Draft your solution lnto a short paper.
foj
what you did, and why you did It. Why Is It lmporrant to try and experlet1ce new thin~?
3. Share (with your ream) an unethical Incident that
you have observed. How did that Incident affect
you dhectly? What indirect Impact did It have on
others?
r]I
o. The Essenrfaf Gutde to user Interface
Destgn; An /ntroductfon to GUI Destgn Prtnctples
and nchntques, 2nd ed. New York: John Wilq· &
Galin, Wilbert
Sons, 200?.
Goldman, Jarncs E.; Phillip 'I'. Ra'\\'les; and Julie R. Marigt.
Cltent;.se,ver 111/onnatton S)1ste1ns: A Bustness-Orte11-te<1
New York: John Wiley & Sons, 1999. For
AJ)proacJJ.
studc,nts who att looking fo r a studcnt-oric,ntcd introduction to informatio n technology architecture and
data communications, '"'c rc-comme,nd our colleagues'
book because it was '"'rittdl for business and information systC!Us majors to provide a comprc-hensh'C' sun.•q•
of the technology that supports today's info rmat ion
systems.
Inmon, w. H. Butldtng tbe Data Wtlrebouse, 3rd ed. Ne\\•
Yotk:John Wiley & Sons, 2002.
Seth~ Vilo::rarn, and William R. King. orga11tzatto11al 1'm11Sfor111arfo11 tbrougb Busf1wss Process Reengtneertng. Upper
Saddle Rht,; NJ: Pttn.ticc Hall, 1998.
Taylor, 0.'l.vid, and Alyse 0. TerhtUlc'. Dotng E-Busfness: Strategtes for Tbrtvtng t11 an Ekctrontc ,Warlletplace. Ne\\•
Yotk: John Wiley & Sons, 2000.
bchtnan, John A •A Framework fur Information System
Architcctutt.• /BJW S)1ste1nsJ011r11al 26, no. 3 (1987). We
adapted the matrix model for infonnation system blilding
blocks from Mr. Zachman 's conceptual &.unC\\•otk. \le flt5t
encounte,rc-d John Zachman on the kcture circuit, ,vhctt
he dclh'C',rs a tt,rnarkably informati,t and C'Jltcrtaini.ng talk
Jnformatton System aulldlng Blo,ks
on the Sl.MC' subject as this artick-.1\otr. Zachman•s frame.
vi.t0tk has drawn professional acclaim and inspired at least
ot..c conference on his mock:I. His Et-.uncwork is based ct\
the concC'pt that architecture means dJffcrcnt things to
cUUC'.1t:nt people. His fr.uncwork s u.ggcsts that info rrnatktl
S)'stc.rns consist of thtcc distinct •product-oriented"
vi.rws-data, procc$SC'S, and technology (v1.rhich vi.•c rt'·
1Umed co1111111111-fcatto11S)- to whkh vi.•c added a fourlh
d,oporlwo
65
view,• intc.rfacc ." The Zachman ftame"'Ork offc,rs si.x dif·
fcrcnt a udiC':ncc'6peciftc ,tic\\,s- for each of thosc product
views-the ballpad,: and 0\\'1lcr•s vte\\,s (which vi.~ re·
nattlc'd as otvner~ and user's vfetvs, ttspcctivcl)•), the de·
signc.r•s and buildc.r•s views ("' hich we combined into our
deSfgner's vtetd), and an out-of-context ,'lcw (v.,hkh " 'c
called the butlder's vteuf).
Strategic 1nrormat1on Systems Plan
Sltateglc Enterprise Plan
Goll:
·~81..111nMt
l!NC'HLEOGE
~
~
!
-
S T A TEMENT OF W O A I(
PA 0 8LEM S TA TEMENT ( u • 1n9 tl'I O PIE C E S t r , m o worlt)
INFORMATION
FUNCTIOIIA.L
oco..
oco..
VISION
VISION
•
..
...,
•
CO-UNICATION8
•
V l 81)N
SYS TEM IMPRO V E•ENT 0 8JE C TI V E& ( u t lng tll o PIE C E& l r • m•w o rk )
OU O INC OO nc o u,nc11CNTO O TA TC•CNT
~
~
~
I•
r
•~
)
~
.
B
t
w
•,
•ffi
~
i
ij
.
11
8 U81Nl'.U
PSOCUO
,NTER,...
AEOUIAEMENT&
AECIJIA EM9fT8
LOOICAL
LOGICAi.
PSOCUO
,NLOGICAL
TER,...
DATA
DATA
........
M00EL8
;
[;
!
'~
•
SYS TEM PROP OSA L
•m
8 U91N£.8$ PFOCE88
0
~
.•
PHYSICAL
0 £.81011
8 PECIFICATION9
80F'T'llkAE OE81GN
8 PECIFICATON8
DAOe&IGN
......
•
'>
~
--
PHYSICAL
,NTER,...
TR A INING M A TERI A L S
-
r
COM• EACAL
••
0
,NTER,...
80F'T'llkRE
!•
,
DA80L""10N
......
0£.81GN
.9PECIFICATION8
........ !• ....
FUN C TION A L 8Y& TE•
~
•
.!....B
u&eR ,& 8Y8TEII
PHY&IQIIL
~
~
REQUE S T F O R &YS TEM PAOPO.SA L 8)
OE8 10 N PROTO TYPES
z
•
(or
•OOEL8
'-----------A
- '_'_'_'C
_A
_T_,.__•_A
_•_<_•_•_T_E_C
_T
_u_•_·----------'n
•ffi
'>
8U8 1N£.8$. &YST"EM
8u&IN E88
A EOUIAE• ENT&
.90LIJTION&
CUSTO~BUILT
A PPLICATI)N
OPEA A TI O N A L SYS TEM
80F't'Wa.RE
I
-
,N&YSTEM
TER,...
.SOLIJTION&
PO S T-A UDIT AE Y IEW
"""'""
,.,..,...
APPACWEO
TECHNOI..OOE8
Strategic Enterpr1ss 1ntormauon Tecnno1ogy Arcnnecture
H
H
Information Systems
Development
Chapter Preview and Objectives
This chapter more closely examines the systems development process that was first introduced in Chapter I. Successful systen1s development is governed by son1e fundamental,
underlying principles that we introduce in this chapter. \Ve also introduce a basic, representative systems de,-elopmeot methodology as a disciplined approach to de,-eloping informnion systems. Although such an approach will not guarantee success, it will greatly
impro,-e the chances of success. You will know that you understand information systems
de,-elopmeot when you can:
I De.scribe the motivation for a standard systems development process in terms of the
Capability Maturity Model (CMM) for quality management.
I Merentiate between the system life cycle and a sysrem development methodology.
I Describe IO basic principles of systems development.
I Define problen1s, opportunities, and directives-the triggers for systen1S development
projectS.
I Describe the PIECES framework for categorizing problems, opportunities, and
directives.
I Describe the essential pbases of systems development. For each phase, describe its
purpose, inputs, and outputs.
I Describe cross life.cycle activities that overlap multiple system development phases.
I De.scribe typical, alternative "routes.. through the essential phases of systems
development. Describe how routes may be combined or custonlized for different types
of projects.
I De.scribe various automated tools for systems development
68
Part ono
1ho Context of Systems l>owlopmont ProjOffl
Work ls getting tmderway at Sow1dStage Entertainment Oub for the systems anllysi.s
and design of their member services Information system. But the more Bob ,_lattloez
Jeams about the system, the more confused he gets. Bob can recall some of his programming assignments in college. ,_lost of them were Just a page or two of bulleted
points listing required features. It was pretty easy to get your head around thac But
the new SoundStage ~tern will lnvolve tracking member contacts and purchase requirements, p romotions, sales, shipments, invet1tory, multfpJe warehouses, \X'eb sJtes,
and more. Bob wonders how they will even list all the requirements, Jet alone keep
them strnlglit. How wUJ they know what data they need to track? How will they tnow
what every piece of programmlng needs to do? He mentioned that to his boss, Sandra.
She said It was all about following • the methodology: He remembered something
about methodology from a systems analysis class. At the time It seemed like a lot of
unnecessary work. But he is starth1g to see now tl1at on a large project, following an
established method may be the only path that is safe to travel.
~~~T_h_e~P_ro_c_e_s_s_o_f_S
_y~ste
~ m_s~ D_e_v_e_lo_p_m
~ e_n_t~~~~~~~~~~~)
systems del'<'k>pmeot
process a set of activities,
methods, best practices,
deliverables, a-id automated
tools that stakeholders (from
Chapter 1) use to develop and
continuously improve informa.
tion syS1ems and software
(from Chaptsrs 1 and 2).
11lis chapter lntroduces a focus 011 information $)'stems development. We will ex.amine
a systems development process. Notice we did nor say ..the" proce.s.,- there are as
many "-arlatlons 011 the process as there are experts and authors. We will pre.sent one
representative process and use ft consistently throughout this book. The ctuprer
home page shows an expanded number of phases compared to the home page of
Chapter I. This Is because we have factored the hlgh~evel phases sud, as system
analysis and system design from Chapter I into multiple phases and actl,itles. We
ba,-e also refined the size and place of the stakel10Jder roles to reflect "involvement"
as opposed to emphasis or priority. And we have edited and enhanced the buiding
blocks to indicate deUverables and artifacts of system development . All of d,ese
modlftcations will be explained lt1 due time.
Why do organ1zatlons emhnce standardJzed processes ro de,--elop lnfonnatlon ~
terns? Information systems are a complex product. Recall from Chapter 2 tl1at an Information system Includes data, process, and communlcatlons building blocks and
technologies that must sen.. the needs of a >'arlety of stakeholders. Perhaps this explains why as many as 70 percent or more of Information system development projects
ha,--e tailed to meet expectations, cost more than budgeted, and are delivered much tater
than promised. The Gartner Grcup suggests tlut .. conslstent adherence to moderately
rigorous methodology gttidellnes can pro,ide 70 percent of [systems de.-elopment J organJzations with a producti'\oit)' improvement of at least 30 percent wtt.hln two yeirs." 1
lncreaslngly, organizations have no d10Jce but to adopt and follow a standatdized
systems de,--elopment proces.,. First, using a consistent process for ~ems de,-etopmenr
creates effidet1des tl1..1t allow muugement to shift resources bet\\"'een projects. Second,
a consistent methodology prod.ices consistent documentation that reduces lifetime
costs to maintain the systems. Finally, the U.S. govemmet1t lllls mandated that any org.,.
nlzatlo11 seeking to de,--elop software for the government must adhere ro certaln quality
management requirements. A consistent process promotes quality. And many other organlzatlons have aggressi.-ely committed to total quality management goals In order to
Increase their competltlve advantage. In order to realize quality and productlvicy• Jm.
provemet1ts, many organizations have tltn1ed ro project and process management
frameworks sud, as the Capahlllty Maturity Model, discussed lt1 the next section.
1Riehurd Rubtd', "AD Project Potdolio M a ~ t ; · Pro«wtinp oftbc- GQN1'M't'Gro11p IT98 Syn1posi11,1'/'E:o:po
(CD.ROM). Tht Gutthet Group ~ 11b illdU!IIU'Y•·•llt'.hi:kls ILlld tc1'C'll..ldl pip tb11t web 11b:I projeeb ibdustl'y th'.bds bt
rr tnab11gdS,
Information Systoms Oovolopmont
Chapter
Tine
69
> The Capability Maturity Model
It h..,s been shown that as an orgailizatlon•s lnformatlon system de,--elopment process matures, project tiruellnes and cost decrease while productivity and quality increase. Toe
Software Engineering Institute at Carnegie Mellon University has oosen-.d and measured
this phenomenon and de,-.Joped the C1pablllty Maturity Model (C!IIM) to assist all
org.1n!zations to achieve d,ese benefits. Toe Cllt.M has developed a wide following, both
h1 h1dustry and go,-.mment. Software evaluation based on Cllll\l ls beh1g used to qualify
h1formatlon technology contractors for most U.S. federal government projects.
Toe Cllt.M framework for systems and software is hllended to help org,1n!zations
improve the maturity of their systems development l'fOCesses. The Cllt.M Is organized
into five maturity levels (see Figure 3-1):
Clpability ~t:tturity
Model ( OIIM) a standardized framework for assessing
the maturity lewl of an organi.
zation's informaion systems
development an:I management processesand products.
It consists of fiw levels of
maturity
Level 1- hif.tlak 1llis Is sometimes called anard1y or chaos. At this level, system development projects follow no consistent process. Each de,-elopment
team uses its own tools and methods. Success or failure ls usually a function
of the skill and experience of the team. Toe process Is w1predictable and not
repeatable. A project typlcally encounters many crises and ls frequendy over
budget and behind schedlde. Docltmentatlon ls sporadic or not co11sistet1t
Crom one project to the next, thus creating p roblems for those who must
maintain a system o,-er Its lifetime. Almost all organizations start at Level l.
Level 2 - Repeatable: Al this level, project management processes and practices
are established to track project costs, schedules, and functionality. 11,e focus
Is on project management A system development process ls always followed,
but It may vary from project to project. Success or failure is still a ftmctlon
of the sk.JU and experience of the project team: however, a concerted effort
Is made to repeat earlier project successes. Eff1:ctlve project m:u1..1gemet1t
practices Jay the fotmdatlon for standardized ptocesses in the next level.
/
RISK
FIGURE 3 - 1
The Capability
Maturity Model
" (CMM)
COMPETITIVENESS
,
70
,
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
'
TABLE 3 - 1 Impact of System Development uProcess" on Quality
CMM Proje ct Statistics for o Proje ct Resulting in 20 0,000 lines of Code
Organization'•
Lewi
Pro je ct
Duration
(mo nths)
Project
Person·
Months
Numbe r
of Defects
Shippe d
1
2
3
30
18.5
15
600
143
80
61
12
CMM
7
Medi on
Cost
($ millio ns)
5.5
1.3
.728
Lowest
Cost
($ millions)
1.8
.96
.518
Highest
Cost
($ millio ns)
100+
1.7
.933
.,
Sourt~ t.fukr S)•en:s. li:c.
Level 3 - Dejlned: In this level, a standard SJ,'Stem development process
(sometimes called a methodology) is purd1ased or developed. All projects
use a callored version of this process co de\o--elop and ma1.nca1t1 Information
systems and software. As a result of using the standardized process for all
projects, each project results In conslstetll and hlg!).quaUty documentation
and deliverables. The procrss Is stable, predlctable, and repeatable.
Level 4- Managed: In this level, measurable goals for quality and producthity
are established. Detailed measures of the standard ~em development process
and product quality are routinely collected and stored in a database. There ls
an eJJorr to Improve indJvidual project management based on this coUected
data. Thus, maiugement seeks to become more proactt,--e than reactive to ~
terns development problems (such as cosr overruns, scope creep, schedule
delays, etc.). E,--en when a project encotmters tmex:pected problems or Issues,
the process can be adJusted based on predictable and measurable Impacts.
Level S - Optlltttzl11g: In thJs level, the standardized system development
process is continuously monitored and lmpro,-ed based on measures and data
analysis established in Levd 4. Tols can indude changing tl1e technology and
best practices used to perlonn actlvlcies required In tl1e standard system
development process, as ,~:ell as adjusting the process Itself. Lessons learned
are shared across the organization, with a special emphasis on eUmlnatln.g
lneffidendes in the system development process wbUe sustaining quality. In
summary, the organJzatlon h ..,s institutionalized continuous systems development process improvement..
system devtlopmeot
methodology a formalized
c1pµ11Jtti;h lU U1:1 ~y~ta111::; U!:1·
velopment process; a stan.
dardized process that includes
the activities, methods, best
practices, deliverables, and
automated tools to be used
for information syS1ems
development.
system life cycle the factoring of the lifatime of an
information sy31em into two
stages, (1) systems dOll91opment and (2) eystems opera.
tion and maintenance-first
you build i~ then you use and
maintain it Ewntualty, you
cycle back to redevelopment
of a new systan.
It is very Important to recognlze that each level ls a prerequisite for the next le...,l.
Otrrently, many organJzations are work.log hatd to adlieve at least C,_0.1 Level 3
(sometimes drtven by a government or organizational mandate). A centraJ theme to
achle>ing Level 3 (Defined) Is the use of a standard process or metl1odology to build
or Integrate systems. As sl1own In Table 3-1, an org.uli zation can realize significant
Improvements In schedule and cost by hlStitutlonaUzlng CM.M Level 3 process
improvements. 2
>
Life Cycle versus Methodology
111e terms systetn life CJ,V:le and syste,n deve.lopnient tnetbodology are frequently and
incorrectly interchanged. ~tost eystem development processes are dertved from a natural system life cycle. The system life cyde Just happens. Figure 3-2 IUustrate, rwo
1Wbite P.ipd'. "Rapidly
llnpfOVi.ns Ptoce,s Ma:utity: Morins Up the Oip!!ba.ity Maturity Modd thtoulta Ou~ou.K'.ib;"
O)OlltOh: ltc'ld'.le, 1997.1998.~
.
Information Systoms Oovolopmont
Chapter Tine
71
, FIGURE 3 - 2 '
The System Life
"\c Cycle
,,..._...
....... ._.
Dwebprnent
-·
PIOcee&" ancl
Dwebprnent
A System
Development
Process
are hi roc:ue or
IN& cnap»r encl
""""""
,
LIS:E·CYC LE STAGE
LIS:E·C YC LE $TAG E
Lifetime
of a
System
System
Operation
and
Maintenan ce
ICleauy using a
sys1em oeveiopment
UMng tile &yatem·s
cho1;en 1nrormauo n
M&tll OCI OIOQ V
tecnno1ogy
Ufe-q•de stages. Notice d1at there are two key e,--ents tl1at ttigger a change from one
stage to the other:
When a system cycles from development to operation and maintenance, a
c.onversto·n must take pL1ce.
At some polnt in time, obsolescence occtus (or is Imminent) and a system
cycles from operation and maintenance to redevelopment.
Actually, a system may be ln more than one stage at the same time. For ex.ample, one ,--ersJon may be in operation and support whlle the next version is in develop,11e1it.
So how does this contrast with a $)'stems de,--eJopment metl1odology? A systems
development methodology "executes" the systems d!velopm ent stage of the system
life cycle. Eacl1 Individual information system has its own system life cycle. The
methodology Is the standard process to build and mtlntaln that system and all other
lnfonnation systems tlvough tltelr life cycles. Consistent with the goals of the CM.M,
methodologies ensure tl1at:
A consistent, reproducible approach Is applied to all projects.
There is reduced risk associated with shortcuts and mistakes.
Complete and consistent dOCltmentation ls produced from one project to tl1e
oext.
Systems analysts, designers, an d builders can be qulddy reassigned between
projects because all use the same process.
As development teams and staff constantly d1aoge, the results of prlor work
c:u1 be easily retrieved and understood by tl1ose who follow.
Methodologies can be purchased or homegrown. Why purchase a methodology?
,_lany information ~tem organJzatlons can't afford to dedicate staff to the development and continuous impro,--ement of a l1omegrown methodology. ~fethodology vendors have a vested lnterest in keeping their methodologies cttrrent wfth tl1e latest
business and technology trends. Homegrown methodologies are usually based on
generlc methodologies and techniques that are well documented in books and on FAST a hypothetical method\X'eb sltes. Examples of system development methodoJogles are listed In the margin ology used throughout this
on tbe following page. You sho,dd be able to research most of them on the Web. Many book to demonstrate a representative syS1ems developof thek w1derlylng methods will be taught in this textbook.
ment process. The acronym's
Throughout this book, we will use a methodobgy called FAST, which stands letters stand for Framework
for Framework for the Application of .S)'stems nllnklng. FAST ls not a rea~world com- for the Application of Systems
merclal methodology. We developed It as a composite of the best practices we've Thinking.
72
Part ono
REPRESEMATIVI:
SYSTEM
DMLOPMENT
METHODOLOGIES
Architected Rapid
Application OMlopment
{Arch~ected RAD)
Dynamic Systims
Development Methodology
(DSDM)
Joint Applicatbn
Development (JAD)
Information Er>gineering (IE)
Rapid Application
Development (RAD)
Rational Uniied Process
(RUP)
Structured Amlysis and
Design {old, but still
oocasionally encountered)
extreme Progrimming ()(P)
Note: There are many
commercial methodologies
and software tools
(sometimes c~led
methodware) tased on the
above general
methodologie!.
1ho Contoxt of Systoms l>ovolopmont ProjOffl
encountered In many commerd.al and reference methodologies. Unlike many commercial methodologies, FAST Is not prescriptive. TI1at is to say, FAST is an agile framework that is flexible enough to provide for different types of projects and Str.ltegies.
Most !mponant, FAST shares much in common with both the book-based and the
commercial methodologies that you will encotmter In practice.
>
Underiying Principles for Systems Development
Before we examine the FAST methodology, let's introduce some gei1eral principles
that should w1derlie all systems development methodologies.
Principle 11 Get the System Users Involved Analysts, prognmmers, and other information tedmology specialists frequently refer to •my system.· Tols attitude tns, in
part, created an "\is versus them• conllict between technical staff and their users and
managernei1t. Although analysts and programmers work bud to create technologtcally
impre~Jve solutions, those solutions oftett backfire because they don't address the
real organJz.atlon problems. Sometimes they even lntroduce new organization probJems. For this reason, system user in,-oJvement is an absolute necessJty for successful
systems de1,,--elopmenr. Th.Jok of ..ystems development as a p:utnershJp between sys
tern users, analysts, designers, and builders. Toe analysts, designers, and builders are
responsible for ~·stems development, but they must engage their owners and users,
itlSist on their participation, and seek agreement from all stakeholders concerning
decisions tl1at may affect tl1em.
,_Uscommunlcatlon and mlrunderstandings continue to be a sfgniflcant prd>lem
h1 many systems development projects. However, owner and user involvement and
education mJnimJze such problems and help to wh1 acceptance of new ideas and
technological change. Because people tet1d to resist change, Information tedu1ology
is often ,iewed as a threat. The best way to COlUlter that threat is tlvough constant
and thorough communication wJth owners and users.
Principle 21 Use a Problem-Solving Approach A system development methodology is, first and foremost, a problemsoMng approad1 to building systems. The term
problem is broadly used d,rougltout this book to indude (1) real problems,(2) oppor-
tunlcies for improvement, and (5) directives from management. Toe classical problemsohing approach is as follows:
I. Study and understand the problem, Its context, and Its impact.
2. Define tl1e requ.fremenrs that must be met by any solution.
3. Identify candldate solutions chat fulflll the requlremetlls, and select the best
solution.
4. Design ancVor implemet1t the chosen solution.
5, Obsen·e and e,':lluate the solution's impact, and refine the solution accordfngly.
Systems analysts should approach all projects using some variation of this problemsol,ing approad1.
Inexperienced or tr.nsuccessful problem sol,-ers tet1d to eUmhure or abbre,iate one
or more of the above steps. For example, tl1ey fall to completely w1derstand tl1e problem, or they premarurely commh to the first solution they think of. Toe result can range
from (I) sol"111g the wrong problem, to (2) incorrectly solving the problem, (3) piddng
the wrong solution, or (4) picking a less-than-optimal solution. A methodology's
problem-solving process, when correctly applied, can reduce or eliminate these risks.
Principle 31 Establish Phases and Activities All methodologies prescribe phases
and actl,itles.111e number and scope of phases and actfvJties vary from author 10 author, expert to expert, methodology to methodology, and business to business.111e
chapter home page at tl1e beginning of this dtapter illustrates the elght phases of our
FAST methodology in the context of your informacion systems framework. Toe phases
Information Systoms Oovolopmont
..
_
,qaei...,..,..--
• ........
•
•
llf'* °"'"
N'dJ!••
•'
'"'~Ollll,..
Jt
•
1
- -- -
0
..- ~- -- -- -I
- 1....-1- • '1 ""1''"1·1-1
-.--.-...
r,
o=
0
Rq.,Nmlnlto.Mltn
0
o=
Dlctllorl
1
0
0
Cinn\t:t:11 .. T...
0
""ld0nl04I"-)'
10 , - ~
I
- 1· 1- 1- 1- "'1""1- 1• • 1• 1-.-1- 1· 1- 1- 1-
·--
I
.,_
I
•
F IG U R E 3 • 3
73
Chapter Tiree
Overlap of System Developme nt Phases and Activities
are listed on the far right-hand side of the Illustration. In each phase, the focus ls on
those building blocks and on stakeholders that are aligned to the left of that phase.
Toe phases are: scope dellnltion, problem analysis, requlremet1ts analysis, logical
design, decision analysis, physical design an d Integration, construction and testh1g,
and Installation and delivery. Each of these p hases w UI be discussed Liter h1 this
d1..1JXer.T hese phases are nor absolutely seque ntial .TI1e phases rend to o,-erlap one
another, as illustrated In Figure 3-3. Also, ti,e phases may be customized to ti,e special
n eeds of a given project (e .g., deadlh>es, complexity, strategy, resources). 111 tills d 1apter, we wUJdescribe each custom1zatlon as alrernatl,·e routes through the methodology and p roble=Mng p rocess.
Prindple 41 Document throughout Development When do you document the
p rograms you wrlte? Be honest. We must confess tl1..1t, Uke most students, we dJd our
docume ntatio11 after we wrote the programs. \X'e tnew better, bur we postdocum ented a nyway.111..1t just does not work in the business world. ln m ed.tum to large organ.il:atlons, $)'stem owners, users, ai1..1lysts, designers, ai1d builders come and go.
Some wlUbe promoted; some wlUl1..1ve extended medical leaves; some wlUquit the
organization~and still others wlUbe reassigned.To promote good commwlicatlon between constantly changing stakeholders, documentation should be a working byp rod.ict of the entire systems developmen t eff<>t't..
Doctunentatlon etiliances communications and acceptance. Documenmtlon re,--eals
stret~ths and weaknesses of th e ~ tern ro multiple sla.keholders. It stimuL1tes user invo(-,.."ffllet1t and reassures management about progres.,.At d1e same tlme, some methodologies ha.-e been critldzed for expecting too much doctunetltation that adds little value
to the process or rest~tillg system. Our FAST methodology advocates a baance between
the -,..illue of doc1.unet1tatlo11 ai1d the effort: to produce It. Experts call this agile ,nodeltng.
Prin<iple 51 Establish Standards In a perfect world, all h1formatlon systems would
be Integrated such ti1at ti,ey behave as a single system. Unforttmately, this never happens because information $)'stems are developed and repL1ced over a very long period of time. Even orga1lizatlons that purchase ai1d lnslall an ettterprise resource
p la11oh1g (ERP) product usually discover that tl1ere are app lications and needs that fall
outskle the ERP system. Systems lotegration has becane critical to the success of any
organ.izatlon•s lnformatlon systems.
To achieve or Improve systems lotegratlon, organizations turn to sta ndards. In
many org.ulizations, these standards rake the form of enterprise Information tedu1ology trebitecture. An IT architecture sets standards that ser,--e to direct technology
solutions ai1d lnformatlon ~tem.s to a common technology -,..1s1on or conflgtuatlon.
• 1•
1.....
74
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
An Information tedmology architecture typically standardizes on the following (note:
lt Is not Important that you know what all these sample technologies are):
Database tecbnology- What database englne(s) wUI be used (e.g., Orad•,
IBM DB2, ~Ucrosoft SQL s,roer)? On what platforms will they be operated
(e.g., UNIX, U11ux, Windows XP, MVS)? What technologies wUI be used to
load data Into online transictlon processing (OL'fl>) databases, operational
data stores, and data warehouses (l.e., Extract Transform and Load [Im.1)1
Sofrtl)(lre tecb11.ology- Whar application developmet1r environment(s)/1tt1guage(s) wUI be used to write software (e.g., IBM's Webspbtre wlthjaw,
,_Ucrosoft's Vfsual Studio ..'VE!' wlth Vfsual Baste .,VE/', Visual C+ +, and/or
Visu.al C#; S)·ebase's Powerbuf.ltler, Oracle's Oracle limns)?
l11terface tech110/ogy- How will user interfaces be developed- with MS
Wl11do1vs components or "('eb languages and components (e.g., an xHnlJL
edJtor such as ~tacromedta's Dreat1'U)Qaver, a portal engine sud1 as 181\il's
Websphero)? How will data be exchanged betwee11 different Information sys.
terns (e.g., a data broker such as IBM's MQ Messaging, an XMLbased data
exchange, or a custom programmed interface)?
Notice how these :ircll.itectun.l questions closely correspond to the technology
drivers In yottr information system model.
ht the absence of an IT architecture, each information system and application
may be built using radically different technologies. Not only does this make it difficult
to Integrate applications, but it creates resource management problems- IT organJz.atloos cannot as easily move developers betweett projects as priorities change or emer.
geodes occur because different teams are staffed wlth technical competencies based
on the '\o-:trlous technologies used and belng used to develop lnformation systems. Cre.
atlng an eillerprlse rr ardlltecture and driving projects and teams to that architecture
make more seitse.
As new tedu1ologies emerge, an IT ardtltectttre must change. But that change
can be managed. The chief tedmology officer (CTO) In an organlzatlon Is frequently d1arged with technology exploration and IT architecture management.
Glven that architecture, all Information $)'stems projects are constrained to lmpJe.
ment new $)'stems that conform to the architecture (ttnless otherwise approved by
the CTO).
process man.agemeot an
ongoing activity that docu.
ments, teaches, oversees the
use of, and imoroves an orga.
nization's chosen methodol·
<¥JY ~he "process") for
systems devebpment.
Process management is con.
cemed with phases, activities,
deliverables, md quality stan.
dards that shoo Id be consistently applied ;o an projects.
project maaagemeot the
process of seeping, planning,
staffing, orgarizjng, directing,
and controlling a project to
develop an information system
at minimum c«st, within a
specified time frame, and with
aa:eptable qu~ity.
Principle 61 Manage the Process and Proiects J\ilost organizatio1ts have a $)"'Stem
development process or methodology, but they do 11ot always use it consistently on
proJect-s. Both the process and the projects that use It muse be managed. Process
m..1.11.agement ensures t11.1t an org;ulization•s chosei1 process or management is used
conslstet1tly on and across all projects. Process mai1.1gement also defines aitd improves the chosen process or methodology o,--er time. Project management ensures
that an information system is developed at minimum cost, within a spedfled time
frame, and with acceptable quallty (using the standard system developmetll process
or methodology). Effective project managemetll ls essential to achieving CM.M Level 2
success. Use of a repeatable process gets us to CJ\iO.I Level 3. C,_0.1 Levels 4 and 5 re.
quire effective process managemet1t.. Project management can occur wlthottt a standard process, but ht mature organizations all projects are based 011 a stanclatdJzed and
managed process.
Process management and project mai1.1gement are h1fluenced by tlte need for
quality management.. Quality standards are built Into a proces., to ettsure that the ac.
tivitles and deliverables of each phase will contribute to the development of a high.
quality Information system. They reduce the likelihood of missed problem, and
requlrements, as well as flawed designs and program errors (bugs). Standards also
make tlte IT organization more agile. As personnel changes occur, staff can be relocated betweet1 projects with tlte assurance tl1.1t every project ls following an under.
stood and accepted process.
Information Systoms Oovolopmont
Chapter Tine
7S
Prindple 71 Justify Information Systems as Capital Investments Information
systems are capital investments, just like a fleet of trucks or a new building . System
owners commit to this Investment. Notice that the itlitlaJ commitment occur s early In
a project, w hen system owners agree to sponsor and fund the project. Later (during
the phase called decisf.0·11 an.afysts), system owners recommit to the more costly ted1n.ical decisions. In considering a capital investme nt, two issues must be addressed:
I. For any problem, there are likely to be se,-.ral possible solutions. Toe si·sterns
analyst and other stakeholders should not blindly accept tl,e first solution suggested.111e analyst who falls to look at altemath-.s may be doing tl1e business a
disservice.
2. After identifying alternative solutions, the ~tems analyst sl1ould e\o-aluate each
possible solution for feasibility, especially for cmt-e ffectlven ess. Costeffectiveness ls measured using a technique called cost--be11.eftt analysts.
Llke project and proce.s., management, cost-benefit analysis ls performed throughout
the ~·stem development process.
A slgnUlcant advantage of tl,e phased approach to systems developme nt Is that It
provides several opportunities to reevaluate cost-effectiveness, risk, a nd feasibility.
There is often a temptation to continue w:idl a project 01'1.ly beciuse of the ln.,--estment
cost-effecti,•eoess the
result obtained f¥ striking a
balance be twee, the life time
costs of develoi::ing, main.
taining, and op«ating an
information sysem and the
benefits derived from that
system. Cost.ef'ectiveness is
1111:1WSUlt1cJ by I..U:ll·Wlle lil
already made. In the long run, canceled projects are usually much Jess costly than Im- analysis.
p lemented disasters.Th.is is extremely important for young analysts to remember.
btost ~tem owners want more from their systems than they can afford or are
willing to pay for. Furthermore, tl1e scope of most Information system p rojects lo. strategic infor-matioo
creases as the analyst leanu more about the business problems and requirements as systems plan a formal
strategic plan (3to 5 years) for
tl1e project progresses. Unfortw1ately, most analysts fall to adjust estimated costs and building and improving an
sd1edules as the scope Increases. As a resltlt, the analyst frequently and needlessly information tectnology infra.
accepts responslblUty for cost and schedule overruns.
strucil.l re and th~ information
Because information systems a re recognized as cap ital investments, $)'stem de- system applications that use
velopment projects are often drlvet1 by enterprise planning. Many contemporary lo. that infrastructufe.
forrmtlon technol<>g)' business unlts create and mah1taln a s trategic io.fo n.uatlo 11
S}''Steins pL"UL Such a plan identlfles and prioritizes lnformatio11 system development
eoterpt ise plan
p rojects. Ideally, a strategic Information systerus pfao Is driven by a s trategic enter- strategic
a formal strategc plan (3 to 5
p rise pL1J1 t11at charts a course for t11e entire business.
years) for an err.ire business
Prindple 81 Don't 8e Afraid to Cancel or Revise Scope There ls an old saying:
• oon't tlvow good money after bad." In other words, don't be afrald to cancel a project
or revise scope, regardless of how much money hts been spent so fur- cut your
losses. To this end, w c advocate n cr<.":cplng commltan.c o.t approach to systems
developmet1t .3 With the creeping comntitment ap proach, multiple feasiblllry d 1eckpoints are built into any systems developmetll methodology. At ead1 checkpoint feasibility is reassessed. All pre"iously expended costs are co1uJdered swlk (meaning 11ot
reco,;erable). They are, therefore, ltrelevant to the decision. 111us, the project should
be reevaluated at each d1eckpoint to determine lf It remains feasible to continue
in,-estlng time, effor t, and resources Into tl1e project.At ead1 checkpoint, the analyst
shotid consider the following options:
Cancel the project lf lt Is no longer feasible.
Reevaluate an d adjust tl1e c05IS and schedule lf project scope ls to be increased.
Reduce the scope if the p roject budget and schedule are frozei1 and not suffi.
dent to cover all project objectives.
T he concept of sunk costs is more or Jess familiar to most fina ncL1l analysts, but ft Is
frequently forgotten or not used by tl1e majority of systems a nalysts, most S)'stem
users, and even many system owners.
~ hotnu Gildebk~ ~ ~ f a l Dttta PIO("fu#lg ~sttnll AJ,<t~M, 2lld ,:d,(F.bgl«1'00d Cli.K, NJ: Pk.ntico: lhll,
198,>,ee:.g
that defines its mission,
vision, goals, S'ttategies,
benchmarks, an:t measures of
progress and achievement
Usually, the straleQic enterprise plan is complemented by
strategic businsss unit plans
that define how ;ac.h business
unit will contribute to the
enterprise plan.The informa.
tion systems plan (above) is
one of those unit.level plans.
creeping commiuneot a
strategy in 'Mlich feasibility
and risks are cootinuously
reevaluated throughout a
project. Project budgets and
deadlines are adjUS1ed
accordingly.
76
Part ono
risk maaagemeot the
process of ide1tifying, evaluat·
ing, and controlling 'M'lat
might go wrong in a project
before it becomes a threat to
the successful completion of
1ho Contoxt of Systoms Dovolopmont ProjOffl
In addltlon to managing feaslblUty throughout the project, we must manage risk.
Risk m.1..o.agemeot seeks to balance risk and reward. Dlfferent organJzatio11S are
more or less averse to risk, meaning that some are willing to take greater risks than
others In order to achieve greater rewards.
Get the System Users
Principle 91 Divide and Conquer Whether you realize it or not, you learnOO the
dtvJde-and-conquer approach throughout your education. Since h.igh school, you've
been taught ro outline a paper before you wrfte It. Ou tlining ls a dJ'\oide-.1n<ko11quer
approach to welting. A sim1L1r approach ls used in $)'stems development. \X'e dJ,·1de a
system Into subsystems and components in order to more easily conquer the prd>lem
and build the L,rger system. In ,ystems analysi.s, we often call tills factoring. By repeated!)• dlvldlng a L,rger problem (,ystem) Into more easily managed pieces (sub>)•stems),
the analyst can slmpllfy the problem.solving process. Thls dl>ide.and.conquer
approach also complements communication and project management by allowing dlf.
feret1t pieces of the system to !;:(! communicated to dtfferet1t and the most: appropriate stakeholders.
The building blocks of yow Information system framework provide one basis for
cfh.idfng and conquering an lnformatlon system's development. We will use this frame-
lnvolwd.
wod: throughout the book.
the project or i'nplementation
of the informa1ion system.
Risk management is driven b'f
risk analysis a assessment.
PRINCIPLES Of
SYSTEMS
DMLOPMENT
Usea ProblemsSo~ing
Approach.
Establish Phlses and
Activ~ies.
Doo.,ment thrcughout
Development.
Establish Standl.rds.
Manage the Processand
Projects.
Justify lnformaion Systems
as Capital 111'11lStments.
Don't Be A~aid to Cancel or
Revise Scope.
Divide and Conquer.
Design Systems for Growth
and Change.
Principle 101 Design Systems for Growth and Change Bush1esses d1..1oge over
time. Their needs change. Their priorities dtange. Accordingly, lnfonnatlon sy,tems
that support a bush1ess must: change over time. For this reason, good methodologies
sho,tld embrace the reality of change. Systems shottld be designed to accommodate
both growth and changing requirements. In other words, well-designed lnforimtlon
systems can both scale up and adapt to the business. But regardless of how well we
design systems for growth and change, there wUJ always come a time whett they
simply cannot support tl,e business.
System scientists describe the natural and inevitable decay of all systems over
time as e11..troP)i As described earlier ln this section, after a system ls Implemented
Jt enters the operatf.011s and 111atnte11a11ce stage of the life cyde. During tllls stage
the attalyst encow1t ers the need for changes that range from correcting simple mistakes, to redesigning the system to accommodate changing technology, to making
modlflcations to support changing user requJrements. Such d1anges dJrect the
analyst and programmers to rework formerly completed phases of the life cycle.
Eventually, the cost of maintaining tl1e current system exceeds the costs of developing a replacement system- tl1e current system has reached entropy and bec..vui ~ vl,:,ult::le,
But system entropy can be managed. Today's tools and tedmlques make It possible
to desJgn systems that can grow and change as requirements grow and change.111ls
book wlU teach you many of those tools and techniques. For now, It's more lmp«tant
to simply recognize that flexibility and adaptability do not happen by acddent- tl>ey
must: be built Into a system.
We have presented IO principles that sho,tld ,mderlle any metl1odotogy. TI,ese
prh1dples are summarJzed in the margin and can be used to evaluate any methodology, Including our FAST metl1odology.
~~~A_S_y~st_e_in~s_D_e_v_e_l_o_p_in
~e_n_t_P_ro
~ ce
~ss~ ~~~~~~~~~~~~~)
In tllis sectJon we'll examine a logical process for systems development. (Remlnder: FAST ls a hypothetlcat metl1odology created for Jeamlng purposes.) We'll
begin by studying types of sy,tem projects and how tl1ey get started. Then we'll
Introduce the eight FAST pluses. Anally, we'll examine alternative variations,
or ..,outes• through the phases, for different types of projects and development
strategies.
Information Systoms Oovolopmont
>
Chapter Tine
77
Where Do Systems Development Projects Come From?
System owners and ~tern users Initiate most projects. 111e impetus for most projects
is some combination of problems, opportunities, and directives. To simplify this
discussion, we will frequently use the rerm probletti. to collectiveJy refer to problems,
opportunities, and directives. Accordingly, problem solvt11g refers to solving problems, exploiting opportunities, and fulfilling directivts.
There are far too many potential system problems to list them all In this book.
However,James Wetherbe developed a usef,d framework for classifying problems.• He
calls ir PIECF.S because the letters of ead1 of the six categories, when pur rogether,
spell the word ..pieces."The categories are:
P the need to correct or improve perfort11a11ce.
J the need to correct or improve infortnation (and data).
E the need to correct or improve eco11.01nics, control costs, or increase profits.
C the need to correct or improve co11trol or secttrity.
E the need to correct or improve efficiency of people and processes.
S the need to correct or improve service to customers, suppliers, partners,
employees, and so on.
problem an u,desirable
situation that prevents the
organization from fulty
achie,,ing its mission, vision,
goals, and/or otjec.tives.
oppo-rtunity a chance to
improve the organization even
in the absence of an identified
problem.
d.irecti,•e a new requirement
that's imposed b'f manage.
ment, gowrnm,nt, or some
external influence.
Flgme 34 expands on ead1 of the PIECES categories.
The categorJes of the PIECES framework are nefther exhaustive nor mu tually
exdusJve- they overL1p. Any given project ls usualtl d1aracterized by one or more
categories, and any given problem or opportunity mar have Implications with respect
to more ti1an one category. But PIECES is a practical framework (used In FAS1), not
just an academic exercise. We'll re>isit PIECF.S several times in this book.
Projects can be either planned or w1planned. Apla,med project Is the result of
one of the following:
t11/or-1natlo11 syste11JS strawgy plan h.as examined the business as a whole
10 identify those system development projects that will retum the greatest
sr.rateglc (long-term) value to the bush1ess.
A business process ff!desig11 has tl1orough.Jy amlyzed a series of business
processes to ellmfnate redw1dancy and bureaucracy and to lmpro,-e efficiency
and Yalue added. Now ft ls tlme to redesJgn the supporting information system for those redesigned bush1ess proces.,es.
All
Toe opposite of planned projects are u.11plamwi projects- ti1ose that are triggered by a spec!Jk problem, opportunity, or directive that occurs h1 the course of doing business. 1-fost Of'gan.lzntlons have tlO shortage of unplanned projects. Anyone enn
submit a proposed project based on something that Is happening h1 ti,e business. Toe
nUJtlOO of unpL1nnecl-project proposals can easily overwhelm the largest h1formation
systems org.,nlzatlon; therefore, ti,ey are frequently screened and prioritized by a
steerlo.g committee of system owners and IT managers to detenn.Jne which requests get approved. Those requests that are not approved are backlogged w1til
re.sources become available (which sometimes never h.appens).
Both planned and unpL1nned projects go through the same essential system development process. Let's now examine the project phases h1 somewhat greater detaU.
>
The FAST Phases
FAST. Uke most methodologies, consists of phases. Toe number of phases will vary
from one methodology to another. In Chapter J you were introduced to the four
classic phases of the system developmetll life cycle. Toe FAST meti1odology employs
•Jwe.c\'ll'ttbC'.tbe ILlld Nic:bol.- P.\litiL;,:ti.S)!tlmu A#4'~sis """ DeoJfi•: Trr¥iriol,al, &.st Pnw:t'it:ff., 4 th C"d. (St. P.niJ,
MN:Wbit PubJi$hills, 1994).ep. 196-199. Jatne.c \'ll'ctbctbe is 11. respC'.C'.ted ini,n:natiob sy,tC'.tnJ educa!Ot rescatc:bd',ILlld
OObJUl11bt.
steering committee an
administrative b)dy of system
O'M"lers and information
technology executives that
prioritizes and approves
candidate syste11 develop.
ment projects.
backlog a repository of
project proposals that cannot
be funded or sttfi:Jd because
they are a lower priority than
those that h@l9 been ap.
proved for systErn develop.
ment. Note that priorities
change over ti1Tl9; therefore, a
backlogged proj;ct might be
approved at some future date.
78
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
The PIECES Problem-Solving Framework and Checklist
The following checklist for problem, opportunity, and directive identification uses Wetherbe•s PIECES framework.
Note that the categories of PIECES are not mutually exclusive: some possible problems show up in multiple lists.
Also. the list of possible problems is not exhaustive. The PIECES framework i.s equally suited to analyzing both
manual and computerized systems and applications.
L
PERFORMANCE
2.
A.
Throughput - the amount of work perfonncd
B.
o.,u some period of time.
Response times - the average delay between
a bansaction or request, Md a response to that
trMsaction or request.
3.
CONTROL (and Stturity)
A.
INFORMATION (and Data)
A.
overload"
6.
7.
8.
B.
lnfonnation that i.s not in a useful famat
lnfonnation that i.s not accurate
lnfonnation that i.s difficult to produoc
lnfonnation i.s not timely to its subsequent use
lnpJtS
l. Data i.s not captured
2 . Data is not captured in time to be useful
3. Data i.s not ac:curately captun:cl - contains
4.
""""
Data is ctifficuh to capture
5.
C.
Data i.s captun:cl redundantly - same data
captured more than once
6. Too much data i.s captured
7. llleg.i,J data is captured
Sto:cd data
l. Data is stored redundantly in multiple files
and/or databases
2 . Same data items have different values in
different files (po« data integration)
3. Stored data is not accurate
4. Ditto. i, not i,eeurc to 11.c:eidc:nt or vo.ncki.fum
5. Data is not well c.ganiu:d
6. Data is not flexible - not easy to meet new
information needs from stored data
7. Data i.s not accessible
ECONOl\,OCS
A. Costs
l.
2.
3.
B.
Costs are unknown
Costs are untraceable to source
Costs are too h.igh
Too little security er control
L Input data i.s not adequately edilcd
2. Crimes (e.g., fraud, embezzlement) are (or
can be) canmittccl against data
Ethics are breached on data or information
- refcn to data or information getting to
unauthorized people
4. Redundantly stored data is iroonsislcnt in
different files or databases
5. Data privacy regulations or guidelines ue
being (or can be) violated
6. Processing errors are oc:curring (either by
people. machines, or software)
7. Occision-mak.ing errors are occurring
Too much control or security
L Burcaucratioc red tape slows the syslcm
2. Controls inconvcnien:e customers or
employees
3. Exoc.ssive controls cause prooc.ssing delays
3.
Ou4>uts
l. lack of any infonnation
2 . lack of necessary information
3. lack of relevMt infonnation
4. Too much infonnation - "information
5.
New markets can be Qplorcd
CWTCnt marketing can be improved
Orders can be increased
B.
EFFICIENCY
A.
B.
C.
D.
People. machines. or computers waste time
L Data is redundantly input er copied
2. Data is redWldantly processed
3. Information is redundantly gcncratccl
People. mach.ines. or computers waste matcnals
and supplies
Effort required fer tasks is excessive
Material required for tasks is exccssi•,c
SERVICE
A.
The system produces inaccurate results
The system produces inconsistent results
The syslcm produces unreliable re.suits
D. The system is not easy to learn
E. The system i.s not easy to use
F. The system is awkward to use
G. The system is inflexible to new or exceptional
situations
H. The system is inflexible to change
L The system i.s iroompatible with other systet1S
B.
C.
Profits
F I GU R E 3 • 4
The PIECES Framework for Problem Identification
Information Systoms Oovolopmont
elghl phases to better define periodic milestones and tl,e dellverables.11,e grid below
compares the FAST phases to the classJc phases. As ~·ou can see, both sets of phases
cover the same ground, bur FAST is more detailed.
Cbssu, Phases
Pl'Oject
System
Sy,1e1n
System
FAIT Phases
Initiation
Analysis
Design
Implementation
Soopedefirition
x
Pn:blem analyas
x
x
Rec,.,irements analysis
x
~ icel design
x
Oeeieion enalvais
(a svsum analysis t,anei, oo phase)
Ph)'Sical de.sign and integration
x
Coneituction and testing
x
lneiallalion end delivery
x
x
Figure 3-5 lllustrotes the phases of the FAST methodology. Each phase produces deliverables that are passed to the next ph..,se, And docttmentatlon accumulates as you
complete ead1 phase. Notice that we ha,--e included ait lconic representation of the
building blocks to symbollze this accumulation of knowledge and work-lo-process artlfacts duting system development. Notice also that a project starts with some combloa.
tlon of PROBLE.\SS, OPPOR11.INITtES, and DIRECTIVES from dte user community (d1e green
arrow) and Bnlshes with a WORJONG BUSINESS SOWTION (the red arrow) for the user
commuolty.
Figure 3-0 shows the FASTmethodology from the perspective of yottr lnfonnation
system building blocks that you learned in a,apters I and 2.The phases are on the
ril!.htt'1and side. The deliverables are built around the buildlna blocks for knowledae.
processes, and communicatlons.111e stakeholders are on the left-hand side. Notice
l1ow we h.ave expanded and duplicated some stakeholders to reflect their lnvolvemenl opposite the phases in whid1 they primarily participate.
NOTE: 11,e remainder of thls section briefly describes each of the eight basic
phases. Throughout this discussion, we will be referrlng ro the proces., flowchart
In Figttre 3-5, as well as the building blocks >iew of the process h1 Figure :\-0. Also
throughout the discussion, all terms prlnred lo S'll.AU CAPS refer ro phases, prerequlsltes (inputs), and deliverables (outputs) shown in Flgttres 3-5 and 3,6.
Scope DefiniNon The first phase of a typical project is SCOPE DEFINITION. The purpose of the scope dellnltlon phase is twofold. First, It answers the question, "ls this
problem worth looking at?" Second, and assuming d1e problem Is worth looking at, It
establishes the size and boundaries of the project, the project vision, any constraints
or limitations, the requlred project participants, and, finally, ti,e budget and schedule.
In Flgttre 3.6, we see ti1.1t the participants h1 the scope definltlon pJ1.,se primarily
include
~ OWNERS, PROJOCT M.ANA.GfltS,
and SYSTE.\.t ANA.1.¥STS. System users are gener-
ally excluded because it Is too early to get into the J.,..el of detail they wlll e>1'11tttally
brh1g to the project.
Chapter Tine
79
BUSINESSCOMMUIUTY
g
START:
Problem&, Opp:utun1aea.
D1rect1vee, 00 nstra1nte.
ANStt
Working
Queln-
11rld\11<$1(11'1
$Tlllf.llll 0WNt.te " NU lbll:Hll
SOIU11M
sy,1em
unp10wment
OtlJecilvea
ProDlem
Ststemefll
stiiemert
Llf• Cycl• St•g•
01Wo.·k
Scope &V181on
SYSTEM
OPERATION
r
REQUIREMENTS
ANALYSIS
OOCU'l'lentalCl'I
&
MAINTENANCE
From Fig.ire a.2
D:lcumemauon
Post·Aud.n
Reo1tew
1
~,
.
,~
~/
9U811'1888
Req.nremeribt
Statement
:ir'::ifll!lllm
4--- ~1n,u:int1111nn
! < ) - - - - D:1cumen1auon
Ooeratlmal
system
/1
n,1n1ng
Mater181$
F=u.nctlOrsl
System
cs
7
r
oocumercaooo
'
OOCllmenllllJcn
)l
Log1ca1
oee1gn
CONSTRUCTION
a
Recl881 IJ16 d
system
TESTING
9.l8ln!I$$
Proposal
Appllcstlon
oee1gn
PrototYs>M
I
Al1:11 tectu re
Pr,ve1ca1
n:i11:11on Slf'IM:111..,.lnri•
( FIGURE 3 • S
Process View of System Development
)
Strategic Enterprise Plan
81
Chapter Tiree
Information Systoms Oovolopmont
Sltateglc 1nrormaao n Systems Plan
Goll:
~&ullnMt
COMt.lJNICATIONS
-
@)
-
~
S T A TEMENT OF W O AI(
PA08LEM S T A TEMENT ( u , 1n9 111$ PIE C E S tr , m o wonl)
IN FORMATION
SCOPE
FUNCTIONAL
COM• UNICATION8
oco..
oco..
Vl910N
VISION
VISION
•
•
•
, 11
~-----• -•_•_'," e &e AE O U IA e111 ENT8 &TA T Er"- '_"_ ' - - - - - ~
8U81NE&8
8u&IN ese a 8'Y8TEII
8u&INE88
CATA
PFICleE88
INTEFIFACE
FIEOUIFIEMEHTS
IIEOUIAE• EHTS
AEOUIAE• ENT&
LOOICAL
LOOICAL
LOGICAL
I
"
IN~
.._•_,_._' _'_"_'•_•_•_o_,_'_"_'_"_'_o_•_,_•_•_'_'_'_'_•_<_•_•_"_•_'_"_'_' _"_•_•_•_"_•_•_••_•_••_>
_, ,
J.J....11
L...:::::::
. :'::'
:."'
:, ..
: ::::::'..._....'.:::::::
o:::::"
:.::::
::::::::._..:::::·:-;::;"
::.:~::::::::.JI~
t
~
I ''
•
[;
iiz
;
'
I
!.
0
'•
8Y8 TE• PR O P OSA L
(o r REQUE S T FOR SYS TEM PAOP0 8A L 8)
;
''
",
•
•
-
-
-
OE 8 1GN & PE C IFI CATI0'\1 8
.........
PHY81CAI.. 8u&INE8S
PIICleE88 0 £.81GN
PMY81CAI..
Oe81GN
PHYSICAL
u&eA 8 8 Y8TSil
INTERFACE
PHY81CAI..
80FTW1'.AE Oe81GN
$PECIFICATION8
8 PEQ ACATION&
..........
OE&ION PROTOTYPES
-
TR A INING • A TEFII A L 8
-
•
c o111• EACIAL
80F'TW!-.AE
Fll.CICAGIES
0
0
COSTOM~UII.T
w
~
•
0 £.81GN
SPECIFICATIONS
A PPUCATION
80~AE
I
I
USER
INTEFIFACE&
.......
H
H
INTEFIFACE&
~~~~~~~--_-_--=:_,~
~
O PEA A TI O N A L & Y 8 TElil
P 08 T- A UOIT AE V IEW
c-1111n1:
..........
......'°
TECl+IOLOOIES
. _.
c:ir.•,1111n1:
llffEAFACE
TECl4IOI..C>GES
Strategic Enterprise 1nrormauon Ti:lenno1ogy Arc111tscturs
F IG U R E 3 • 6
_,,rrw
'-----------'-'_'_'_'_•_•_'_'_o_•_•_•_•_•_"_'_•_'_'_"_'________
FUN C TION A L 8 Y& TEIII
:~
.!.L..11
BuJldtng Blocl<s View of Sy.tern Development
~
82
Part ono
problem statement a
statement and categorization
of problems, opportunities,
and directives; may also
include constraints and an
initial vision to· the solution.
Synonyms inC::ude pr9/imi.
nary Sllo/ and feasibility
8SS95SITl9nt.
coo.straiot t ny factor,
limitation, or restraint that may
limit a solution or the problem.
sotving process.
scope cttep a common
phenomenon wherein the
requirements and expecta·
tions of a project increase,
often 'Mthout regard to the
impact on bud~et and
schedule.
statemeot of work a
contract with management
and the user ~ mmu nity to
develop or entance an infor.
mation system; defines vision,
1ho Contoxt of Systoms l>ovolopmont ProjOffl
In Figure 3-5, we see that the scope dellnltion phase Is triggered by some comblwill add CONSTRAJ.N'J'S and
vtstON).There are several deliverables or outcomes of a scope defhlitlon. One Important outcome Is a PROBLfl\l STATENfN'l;, a succinct overview of the problems, opportunities, and/or directives that trig-d the project.11,e PIECES frameworl< provides an
exceUent outline for a problem statement. The goal here ls 11ot to solve the problems, opportunltles, and dlrecthes but only to catalog and categorize them. We sho,dd
also identify any coostralnts tlm may impact the proposed project. Examples of coost.raints lndude budget Um.its, deadlines, human resources available or not avallable,
business poUdes or goven.went reguL1tlons, and technology standards. Flnally, the
system owners sl1ould be asked for at least: a h.Jgb.Jevel '\oislon for the system
impro,--emet1ts they are seeking.
Given a basic understanding of problems, opportwlitles, directives, constr.dnts,
and vision, '\\"'e need to establish initial scope. Thus, an hlitial SCOPE S'J'ATE.\.U.NT is aJ.1other
important outcome of this phase. Scope defines how big we think the project ls.Your
information system bldlding blocks pro,ide a useful framework for defining scope.
Agttre 3-6 IUustrates that scope and vision can be defined in terms of tNfORW.TION,
f!UNCJ'IONS, and CNTER&CES. Scope can, and frequently does, change during a project.. But
natio11 of PR061.J:MS, OPPORTUNl'JlES, and DIR.OCTJVES (to wll.idt we
by documenting lnlti.'1l scope, you establish a b:iseUoe for controUin.g scope cre.p on
both the budget and the schedule.
Given the Initial problem ,ud scope statements for the project, the analyst can
staff the project team, estimate the budget for system developmet1t, and prepare a
schedule for the remaining phases. Ultimately, this ph.ase condudes with a ..go or nogo" dedslon from system owners. Elther the system owners agree wJth the proposed scope, budget, and schedule for the project, or they must reduce scope (to
reduce costs and time) or cancel the project.This feaslblUty checkpoint is Ulustrated
lt1 Figure 3-5 as a diamond.
The final and most important deliverable is a STATEMENT Ofl WORK. A statement of
work ls a contract or agreement to develop the lnfonnation system. It consolklates
the problem statement, scope Slatement, and schedlde and budget for all parties who
wlU be involved in the project..
scope, constraints, high-level
user requirements, schedule,
and budget Synonyms include
ptq9C1 chBite,, ptq9C1plan,
and S9MC9./9191 ag9f:'1Tl9nt.
Problem Analysis There Is always an existing system, regardless of whether it curret1tty uses Information technology. The PROBLE."1 ANAIYSts phase stud.Jes the existing ~
tern and analyzes the findings to pro,ide the project team with a more thorough
understanding of d,e problems that triggered the project.11,e analyst frequently uncovers new problems and atlSWers the most Important question. .. Will the benefits of solving these problems exceed the costs of building the system to solve these problems?'
Once again, Figure 3-0 provides a graphlcal overview of the problem analysis
phase in terms of your lt1formation system building blocks. Notice that the participants still Include the SYSTEN O'ON"'5 bttt that this phase begins to acth'ely ltwolw tl,e
5YS11:M USERS as well. 111e system users are the business subject matter experts in any
project. (Notice the h1tentlo11al expansio11 of the system users• perspective to o,--erlap
many phases- remember prh1c-lple l: ..Get the system users Involved.") Of crurse,
PROJECI' MANAGERS and SYSTf?.I ANA£YSTS are always h1volved in all phases of a project..
As shown In Figure 3-5, tl,e prerequisites for the problem analysis phase are tl1e
SOOPE and PROBLEM STATEMENTS as defined and approved In tl,e scope deflnltlon phase.
111e deliverable of the problem malysis ph.ase is a set of 5YS11:M L\IIPROVEMfNT osJocnVES
derived from a thorough w1derstandlng of tl,e business problems. These objectives do
not define lnputs, outputs, or processes. Instead, they defh1e the business criteria on
wbid1 any new system wUJ be evaluated. For lnstance, we might define a system
improvemetll objective as any of the following:
Reduce the time between order processing and shipping by three days.
Reduce bad credit losses by 45 percent.
Comp~· with new financL1I aid federal quallflcatlon requirements by January l.
Information Systoms Oovolopmont
Think of system Improvement objectives as the gradt11g criteria for evaluath1g any
new system that you might eventually desJgn and Implement System improvement
objecth,--es may be presented to ~·stem owners and nsers as a written recommenda-
tion or an oral pre.sentatlo11.
Depending on the complexlty of the problem ao:l the project sd,eduJe, the team
may or may nor choose to formally document the existing system. Such documentation frequently ocntrs when the business processes are consJdered dated or overly
bureiucratlc. Documentation of the exlstfng system ls sometimes called an ..AS 15•
BUSINESS Mooa.The as-is model may be accompanled by analysis demonstrath1g lneftl.clencles, bottlenecks, or other problems related ro the business proces.,es.
Every existlng system has Its own terminology, history, culture, and nuances.
Learning those aspects of the system ls an Important by-product of this phase. From
all of the lnfonnation gathered, the project team gains a better understanding of the
exlsting system's problems and opportunltles. Aftet reviewing tl,e fhl<llngs, ti,e system
owners wUJeither agree or disagree with the recommended ~tern improvement ob.
jecmes. And consistent with the creeping commitment principle, we indude anotl1et
go or no-go feasibili ty checkpoint (ti,e red diamond) at the end of tl1e phase. The
project can be eithet:
Canceled if the problems are deemed no longer worth solving.
Approved to continue to the next ph..,se,
Reduced or expanded lo scope (with budget and sd1edt~e modifications) and
then appro,-ed ro continue to the next phase.
Requirements Anatysis Given system owner appto'\o-al to continue from the problem analysis phase,11ow you can design a new system, right? No, not yet! What capabillties should the new system pro"ide for its users? Wbar data must be captured and
stored? What performance JeveJ ls expected? Careft.il This requires decisions about
what the system must do, 1101 how it shot~d do those things. The RJeQUIRmENTS ANALVSJS
phase defines and prioritlzes the bust11ess requirements. Simply stated, the analyst
approaches the users to find our what they need or '\\'ant out of the new system, carefully avoidh1g any discussion of technology or tedmical Implementation. This ls per-
haps the most lmportanr phase of systems development Errors and omissions In
requirements analysis result in user dissatisfaction with the fina l ~·stem and costly
modifications.
Retumlog agah1 to Figute :\-0, notice that the participants primarily lodude both
svs-nru us"'5 (which may indude owners who will actually use the system) and SYSTENS
are also Involved. SYSTE."1 DESIGNERS are omJcced from c.hJs
ph.ase In order to pre,--ent premature attention to technology solutions. The building
bJocts can themselves pro'\oide the framework for defining many business requirements, indudh1g BUSINESS DATA R.EQUUlJ:ME'l(J'S, BUSINESS PlOCESS R.EQU IRE.\.f.DltJ"S, and BUSINESS
AND svsTE."1 INTEllfY..CE REQUIRE.\.U.NTS. Because the business requirements are intended to
solve problems, the PIECES f.ramework can also provide a useful outline, this time for
a requirements statement.
In Figure 3-5, we see that the ~ IMPROV'EME'IT O BJECTMS from the problem
analysis phase are the prerequisite to the requirements analysis phase. The deUvernble
is a WSINESS R.EQUIRE.\.f.DltJ"S STATEMENT. Again, tllis requirements statement does not specify any tedmlcal possibUlties or solutions. The requlrements statement may be a document as small as a few pages, or it may be extt11SJve with a page or more of
documentation per requirement.
To produce a business requJrements stat ement, the systems analyst works
closely wlth ~·stem users to Identify needs and priorltles. Tilis Information is collected by way of Int erviews, questionnaires, and facilitated meetings. The challenge
to tl..e team ls to YaUdate those requirements. TI1e ey•stem improvement objectives
pro,ide the ..grading key" for business requirements: Does each requ.tre111e1,1
co11trtb·ute to 1n.eett11g 011.e or 111ore systettJ. t111prove1ne1,1 objectives? Cl1apters 6
ANALTSTS. P'ROJ£cr MANAGERS
Chapter Tine
83
84
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
and 7 will Introduce systems analysis tools and tedmlques for ldet1tlfylng and documenting user reqttlrements.
Typically, requirements must also be prioritized. Priorities serve two pwposes.
First, If project tlmellnes become stressed, requirements priorities can be used to
rescope the project. Second, priorities can frequet1tly be used to define Iterations of
de.sign and constructio11 to create staged releases or versions of the final product.
The requirements analysis phase should never be skipped or shortchanged One
of the most common complaints about new ~·stems and applications ls that they
don't really satisfy the users' needs. This usually happens whet> system designers and
builders become preoccupied with a tedmlcal solution before fully understanding
the business needs. System ~sJgners and builders are dependent on competent
systems analysts to work with users to define and document complete and accurate
business requlrements before applying any technology.
system model a picture of
a system thatrepresents
reality or a desired reality.
System models facilitate
improved comnunication
between system users,
system analysts, system
designers, and syS1em
builders.
logica.J design the transla·
tion of busines.s user
requirements ilto a system
model that depicts only the
business requrements and
not arrt possit le tec.hn ical
design or impl~mentation of
those requirements. Common
synonyms include conceplhtl
design and essential d'1$g1,
the latter of which refers to
modeling the "essence" of a
system, or the "essential
requirements• independent of
any technologJ. The antonym
01 1og1ca1 aes1gn 1s pflYStC8/
design (define:t later in this
chapte~.
aaal}'Sis paralysis a
satirical term coined to
describe a corn mon project
condition in 'Mlich excessive
system modeling dramatically
slows progress toward implementation of the intended
system solutioo.
Logical Design Business requirements (above) are usually expressed In words. Sys.
terns ai1..1lysts have fow1d ft useful to translate those words lnto pictures called S)'Stem
models to "-alidate the requirements for compJeteness and consistency. {FJgttre 3-5 is
an example of a common system model called a data flow dlagrani) System mode~
in.g Implements :i timeless concapt: ..A plctlU'e ls WOt'th a thous:ind words."
The LOGICAL DESIGN PHASE trao.sL1tes bush1ess requirements lnto system models.111e
term logical design should be Interpreted as"technology lndependet1t; meanlt11 tl,e
pictures Illustrate tJ,e system Independent of any possible technical solution- hence,
they model buslne55 requirements that must be fulfilled by any technlcaJ solution we
mlght want to consider.
DJfferet1t methodologies require or recommend different amotmts and degrees of
system modeling or logical design. Prescriptive methodologies like stru.ctu.red a11al}'
sf.s a11d design, t11/ornU1tlon engineering, and the Ration.al Untft.ed Process (R.UP)
usually requlre that many types and/or Instances of system models be drawn In var!Ol lS Jevels of detail. ForrunateJy, computer-automated tools are a'\o-ailable to a~ist the
systems analyst In these drawl,11 tasks. Alternatively, agUe methodologies like arch/,
teaed raptd applicatlo1i deve.lcp»ient and e.Ytrenie progran1.ntt11g recommend "Just
enough modellng.• Tbis =Ued agile modeling seeks to prevent the project from
degenerating Into a condition cilled aualysls paralysls. This textbook Jeans toward
agUe methods but recognJzes that complex problems m.1)' besr be solved ush1g more
prescriptive approaches.
In Figure 3-0, we see that the participants lndude SYSTEM ANALYSTS (wl10 draw the
models) and SYST6\l USERS (who vaUdate the models). l'RoJECT MANAGERS are always lo.
d uded co et1Sure chat modellng meets scandards and does not decer overau ptoJect
progress. We can draw (1) LOG CAL DATA MODELS that depJct data and information requlrements, (2) J.OGlCAL PROCESS NOoas that depict business processes requirements, and
(3) J.OGlCAL tNTERIIICE Mooru that depict business and system Interface requirements.'
In Figure 3-5, we see that the prerequlslte to logical design Is the BUSINESS REqUlllE·
MENTS STATE.\.W'ln' from the previous phase. In practice, the requ.lremei1ts analysis and
logical design phases almost always have considerable overlap. In other words, as
business requlremet1ts are ldentlfled and documented, tJ,ey can be modeled. The deU,-erables of logical design are the LOGJCALSYSTE.\t MOD fl.SAND SPOCCflJCATIONs tbemseJves.
Depending on the methodology used, the level of detail ln the speciJlcatlons wUJ vary.
For example, we may define a business rule that speclfles the legitimate values for a
data attribute such as Credit Rr.ttng or a rule that specl.tles the business policy for a
Credit Check.
'lhOIIIC' ofyou 111teidy &tniliat with ol:j«t<Ol'm"IIM tnodd..ihgm:ll.lld note- that objtct IDOdch tctld to blur- the boulld.u'iCII
ofour fhitnewott ,ornewhat, but the' ftu..lnt'fl'Ol'k ai..n. llliU bt applied ldtat:e the probJttn to be ,olved iJ,tiUd.tn'u by tht
thh'e futii:laniehtll.l busibc,sp:xd, i.UuJltllttd i.t our fhitnewotk. Thi, • ·a.I be ~ l e d in the- objeetotkbled II..ID1y,i,
lllld ~ c:b11pttt'J of thiJ book.
Information Systoms Oovolopmont
Before we move on to the next phase, we should nore tl1at the SCOPE DEflNlTION,
and LOGICAL OESGN Pli,\SES are collectively recog11.ized by most experts as systetn analysts. Some ex.J)(rtS woldd also lnclude ottr next
ph.ase, DECISION ANALYSIS. Bur we cons.ider ft to be a system analysis ro system design
transition phase because ft makes the traosltlon from the busines., concerns of system
owners and users to the technology concerns of system designers and builders. And
of course, systems analysts are the common th.r ead tl1at ensures continulty as we
make this trai1SJtlo11. Let's ex.amine the trans.itlon .
PR.081£.\.1 ANA.LYSIS, R.EQUUlE.\.W'ltl"SANALYSIS,
Decision Analysis Given business reqttfrements tnd the logical system models,
there are usually numerous alrematlve ways to design a new information system to
fulfill those requlremet1ts. Some of the pe,tltm1t questions lndude the following:
How much of d1e system should be automated wfth information technology?
Sho,dd we putchase software or build it ourseh-.s (called the make-versushuy
tfecls/011)?
Should we design the ~tern for an lnternal network, or shottld we design a
Web.based solutlo11?
Wh.'lt inforcn:ition technologies (p-<>6sibly emeqjog) m.Jght be usefld for this
application?
These questions are ai1SWered ln the DECISION ANALYSIS phase of the methodology. The
purpose of this phase is to (I) Identify candidate technical solutions, (2) analyze ti1ose
candidate solutions for feasibility, an d (3) recommend a candidate system as the target
solution to be designed.
In Figure 3-0, we see that the decision analy,is phase is positioned halfway
tivough the de>-.lopment process. Half the building blocks are positioned higher, and
half are positioned lower.This ls consistent with the decision analysis phase's role as
a transJtlon from analysis to design- and from business concerns of SYSTnt us~ s to
ti1ose of SYSTEM oisJGNERS (and, tdtlmately, system bullders). Designers (ti1e technical
expfflS In specific technologies) begin to play a role here along with system users and
svsTe.t ANALYSTS. Analysts h elp ro define and analyze the alten1atlves. Decisions are
made reg,irding the technologies to be used as part of the application's archltectute.
Ultimately, SYSTE.\.t OWNERS will have to approve or dis1pprove the approved decisions
since they are paying for the project.
Figure 3-5 shows that a dedsion analysis is triggered by validated business
requirements plus any logical system models an d speclflcations that expand on those
requirements. The project team solicits Ideas and opinions for technical desian and
implementation from a dJverse audience, possibly Including rr software ,-endors. CandJdale solutions are identltled and characterized occording ro varlous crirerla. Ir
shotdd be nored that many modern org;ulizations have information rechnology and ardlltecture standards that constrain the number of candidate solutions that might be
considered and ai1..1lyzed. (01e existence of such standards is illustrared at the bonom
of your information system bldlding blocks model In Figure 3-0.) After the candidate
solutions have been Jdet1tlfied, each one is eYaluared by the followb1g crfterla:
Teclmtcal feaslbi/r.ty- ls the solution technlcaltJ' practical? Does our staff
~ave the technlcal expertise to design and build this solution?
Operational feasibility- Will ti,e solution fuUlli the user's reqtdrements? To
wh.at degree? How will the solution d1ange the user's work en,ironmenr?
How do users feel abottt such a solution?
Economic feasibility- ls the solution cost-effective (as defined earller in the
chapter)?
Scbetfule feasibility- Can the solution be designed and Implemented within
an acceptable time period?
Risk feasibility- What's the probability of a successful implementation using
the tedu,ology and approach?
Chapter Tine
as
86
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
111e project team is usually lootlng for the ,no.st feasible solution- the solution that
offers the best combination of tedmlcal, operational, economlc, schedule, and risk
feaslbUlty. Different candidate solutions may be most feasible on a single crlttrlon;
however, one solution will usually prove ,no.st feasible based on all of the criteria.
The key deliverable of tile decision analysis phase is a SYSTEM PROPOSAL. 11lls proposal may be wrlttett and/or presented verbally. Several outcomes are posslble.111e
creeping commitment feaslbUl ty dleckpolnt (again, the red diamond) may result in
any one of tile following options:
Approve and fund the system proposal for design and construction (pos,ibly
including an increased budget and timetable If scope has significantly
expanded).
Approve or fund one of die alternatl,-e candJdate solutions.
Reject all tile candldate solutions and either cancel the project or send it
back for new recommendations.
Appro,-e a reduced-scope TersJon of the proposed solution.
1
Optionally, the dedsJon analysis phase may also produce an APPLICATION ARCHJTB:TURE
for the approved solution. Such a model serves as a hlgJ>.level blueprint (like a sinple
bottse floor pL'ln) for the tt.comruended or approved propos:il,
Before we move on, you may tu,-e noticed in Rgure 3-6 a varlatlon on the 5YS'J'Eld PRO.
POSAL deliverable called a REQUEST fOR ~™ PROP06AI.S (or RFP). This '\o':lriation is for 1 rec-
ommendation to purdwe the hardware an<l/or software solution as opposed ro buildtng
ii in,house. We'll defer any further discussion of dlls option until later in the chapter
when '\\"'e discuss the commerdal pack.age Integration variation of our basic proce!s.
ph}'Sical design the
translation of business user
requirements ilto a system
model that depicts a technical
implementatio1 of the users'
business requ rements.
Common syncnyms include
t9Chrical design or, in
describing the output, impf9.
mentatioo rnod91. The
antonym of ptysical design is
loficaJ d9Sign(defined earlier
in this chapter).
Physical Design and Integration Given approval of the SYSTJ:M PROPOSAL from the
decision analysis phase, you can finally design the new system.11,e purpose cf tJ,e
PHYSICAL DESIGN AND 1NrEGRAnon ph.ase is to transfonn the business requirements
(represented In part by the LOGICAL SYSTEM MODELS) Into PHYSICAL DESIGN SPECCflJCAOONS
that will guide system construction. In other words, physJcal desJgn addresses greater
detail about bow technology will be used h1 the new system. The design wUI be coo.
strained by the approved ARCHJiECTURAL MODEL from the pre\oious ph.ase. Also, design
requires adherence ro any inten1al teclmlcal desJgn standards that en.sure completeness, usabUity, rellability, perfonnance, and quail!)'.
Ph}'slcal design is tJ,e opposite of logical design. Whereas logical design dealt exclusively with business requlremetlls independent of any technlcal solution, physical
design represetlls a speclflc technical solution. Figure 3,6 demonstrates the physical
destgn phase from d1e perspecrtve of your bulldlng blocks. Notice d1..1t d1e destgn
phase is concerned with technology-based >iews of the system: (I) PHYSICAL DA!ABASE
DESIGN SPECCfllCATIONS, (2) PHYSICAL BUSINESS PROCESS and SOP'rWAR.E DESIGN SPECIF1CATIONS,
and (3) PHYSICAL USER AND SYSJ'E.\.1 INTFJIBt..CE SPECIFlCATIONS. The 5YSTEM DESIGNER and Sc'S11:M
ANALYST (possibly overlapping roles for some of the same indi>iduals) are the key participants~ however, certain aspects of the desJgn usually have ro be shared with the
5YSTEM usms (e.g., screen desJgn.s and work flow). You may have already had some
exposure to physical design specifications h1 elther programmlng or database courses.
There are two extreme phllosophles of physical design.
Design by spedftcatton- Physical system models and detailed specifications
are produced as a series of written (or computer.generated) blueprints for
construction.
Design by prototypl11g- lncomplete but functioning applications or subs)'S.
terns (called prototypes) are constructed and refined based on feedback from
users and other desJgners.
In practice, some combination of these extremes ls usually performed.
No new lnformatlon ~tem ex.lsts in Jsolatlon from other ex.Isling lnforrmtion
systems in an organJz.atlon. Co1uequently, a design must also reflect system Integration
concerns.The new ~tern mlLq be integrated both wJth other Information s~tem.s
Information Systoms Oovolopmont
and with the business's processes themseJves. lntegratlon is usually reflected in physical ey•stem models and design speclflcations.
In summary, Agure 3-5 shows that the deU,-.rabres of the physical design and h1tegration phase lnclude some combination of PHYSIC.U DESIGN MODEJ.s AND SPOCCflJCA'J'IONS,
DESIGN PROTOTYPES, and REDESIGNED BUSINESS PROCESSES. Notice that we have included one
final go or no-go feasibility checkpohll for the project (d,e red dL,mond). A project Is
rare~! canceled after the design phase unless lt ls hopelessly over budget or behind
sd1edule. 011 the other hand, scope couJd be decreased to produce a minimum acceptible product h1 a specltled time frame. Or d1e sched,tle could be extended to
bulld a more complete solution In m,tltiple versions. The project plan (sched,tle and
bud~t) wottld need to be adjusted to reflect these decisions.
It sho,tld be noted that in modern methodologies, there ls a trend toward merging the desJgn phase witl1 our next phase, co11structio11. In other words, the design
and construction ph.ases usually overlap.
Construction and Testing
Given some level of Pffi'SJC..U DESIGN MODELS AND SPEOflJCAwe can begin to construct and test system components for that design. Figure 3-5 shows that the primary deliverable of the coNSTRUcnON
TIO* (and/or DESIGN PROTOTYPES),
AND 'mmNc ph.ase is a ruNCnoNA.L SYS"rE.\.1 th:ir ls ttady for lmplementatlon. The purpose
of the construction and testing phase is twofold: (I) to build and test a system that ful.
tlUs bush,ess requhements and physical design specltlcations, and (2) to lmplemetll the
interfaces between the new system and existing systems. Addltio1mly, flNAJ. oocuMENr.moo (e.g., help systems, tralnlng manuals, help desk support, production control h1structlons) will be developed In prepantion for tralnh1g and system oper.,tion. The
construction phase may also involve lnstalbtion of purd1ased software.
Your information system framework (Agure 3-0) Identifies the relevant building
blocl:s and activities for the construction phase. The foetts is on the List row of building blod::s.111e project team must construct or install:
DATABASES- Databases may indude 011111,e tra1JSaCtto·11 processt11g (OL1P)
databases to support day-to-day business transactions, operational data stores
(ODS) to support day~o-day reporting and queries, and data warehouses to
support data analysis and dedslon support needs.
CoMMERCtAL SOF'JWARE PACKAGES and/or CUSTOM-BUll.T SOf'l"WAR.E- Packages are
Installed and customized as necessary. Application programs are constructed
according to the physical design and/or prototypes from the previous phase.
Both packages and ettstom software must be thoroughly tested.
USER AND svsTfl\l JNTf.RFACEs- User lnterfaces (e.a.. Windows and Web lnterfaces)
must be constructed and tested for usablUty and stability. System-t0-6)'stem
fntetfaces must be eid1er constructed or implemented using application integr.,tion technologies. Notice that MlDDLEWARl! (a type of system software) is
often used to lntegrate disparate database, sofn\•are, and Interface technologies. We'll talk more about mlddleware h1 the design unit of this book.
Agure 3-0 also idet1tlfles the participants in this phase as SYSTE2\I BUUDERS, SYSTE2\I
ANAD'STS, SYSTEM USERS, and PROJEcr MANAGERS, SYSTEM D3SJG~S may also be ln\--o(ved to
clarify design specltlcations.
You probably already tu,-. some experiet1ce with part of thls actlvity- appUcation
programming. Programs can be wrlttetl In many dtfferet1t languages, but the cturent
trend Is toward the use of '\oisual and object-oriented programming languages sud1 as
Java: C+ +, or Visual Basic. As components are constructed, they are typically
demonstrated to users In order to solicit feecll>ack.
One of the most lmportant aspects of construction ls conducting tests of both indJvJWal system components and the overall ~tern. Once tested, a system ( or version
of a system) ls ready for JNSTAUAnoN AND oEUVERY.
Installation ancl Delivery What's left to do? New systems usually represet1t a departure from the way business ls current.I)' done~ therefore, the analyst must pro'\oide
Chapter Tine
87
88
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
for a smooth transltlon from the old system to the new system and help users cope
with normal start-up problems. Thus, the J:NSTAJJ..,\TJON AND DEUVERY phase ser,--es to
deliver the system Into operation (sometimes called productl.011).
ht Figure 3-5. the FUNCTIONAL SYSTEM from the construction and resting phase is the
key lnput to the JNSTA.1.LATJON
oEJJV~Y phase. The deliverable ls an OPf.RA'JlO NAL
~
. SYSTE.\t BUILDERS install the ~tern from its de,"(>(opment en"ironment Into the
production en"ironment. SYsrat: ANALYSTS must train~ USERS, write various user
and p roduction control manuals, convert ex.lstlng files and databases to the new databases, and perform final system testing. Any problems may Initiate rewod< In pre.ious
ph.ases thought to be complete. System users pro"ide continuous feedback as new
problems and issues arise. Essentially, the Installation and delivery phase considers the
same bulldh,g blocks as the construction phase.
To provide a smooth transJUon to the new system, a conversion plan should be
prepared. Tills plan may call for an abrupt cutover, where the old system ls terminated
and replaced by ti,e new system on a specific date. Alternath-ely, the plan may rlll ti,e
old and new ~tem.s ln parallel until the new ~tern has been deemed ac ceptable to
replace the old system.
The Installation and dellvery phase also Involves training Individuals who will use
"-"°
the fh1..'ll system and develo ping docu.ruent:itlo n ro aid the system users .11,e I.tuple
met1tation phase usually lndudfs some form of POST-AUDIT REVIEW to gauge the success
of the compJeted systems project.This acthity promotes continuous Improvement of
the process and future project management
system suppon the
ongoing technical support for
users of a sys:em, as well as
the maintenan::e required to
deal with any errors, omissions, or new requirements
that may arise
System Operation and Maintenance Once the ~tern ls plac ed inro operation, it
will requlre ongoing system support for the remainder of its usefu~ productive lifetime. System support consists of the following ongoing actMties:
Asslsttng ,,sen-- Regatd.Jess of how well the users h.a,--e been trained and
how thorough and dear the end-user documentation is, users will eventuaUy
require addition.al assistance as unantldpated p roblems arise, new users are
added, and so forth.
Fixing software defects (bugs) - Software defects are errors tl1at slipped
ti,rough ti,e testing of software. These are lne>itable, but they can usually be
resolved, In most cases, by knowledgeable support.
Recoverl11g the syste111- From tlme to time, a system failure may result in a
program ..crash" an<Vor Joss of data. Human error or a hardware or software
failure may cause this. The systems analyst or tedmlcal support speclallsts
cross life<)'Cle acti,•ity
nl.ay then be called o n ro rccovcc the ~:nem- rh..1.t b , ro re:noce a :sy$tca1'$
any activity that overlaps
multiple phasEs of the system
development process. Exam.
pies include fact.findng,
docvlrt9fltation, pr959ntation,
ssi mation, teesibiNly analysis,
projo(.1 andprocoss managoment, changsmanag91T19nt,
and qulJ/ity memgomort.
files and databases and to restart the system.
Adapttng the syste1,1 to 1wu1 requtre,ne11..ts- New requlremet1ts may lndude
new business problems, new business requlremenrs, new technical problems,
or new technology requlremenrs.
fact-flnd.it1g the formal
process of using research,
interviews, meetings, questionnaires, sampling, and
other techniques to collect
information about system
problems, requirements, and
preferences. It is also called
inbrmation gath9ring or data
coH9c1m.
Eventually, we expect that the user feedback and p roblems, or changing business
needs, will indicate that it is time to start over and relnvent the system. In other
words, the $)'stem has reached entropy, and a new project to create ait entirely new
system development process should be lnltiated.
> Cross Life-Cycle Activities
system development also involves a number of cross life-cycle actMties. These
activities, listed in the margin deflnltlon, are not explicltly depleted In Figure 3-5, but
they are vital to the success of anr project. Let's brief!)• examlne each of these actl'1ties.
Fact-Finding There are many occasions for fact-llndlng d uring a p roject. Factfindlng Is most crucL1l to the euty phases of a project. It Is d uring these phases that
Information Systoms Oovolopmont
the project ream learns abour a business's "-ocabuL1ry, problems, opportunltles, constraluts, requlreme11ts, and priorities. But fact.finding Is also used during the decision
analysis, physical design, construction and tescitlg, and Installation and dellvery
ph.ases- only to a lesser extent. It Is during these latter phases that the project team
re.searches technical alten.l..1t1:,--es and solid ts feedbad: on tedulical designs, standards,
and working components.
Communication skills are essential to the successM completion of any project. In fact, poor communication Is frequendy cited as
the cruse of project deL1ys and rework. Two forms of communlcatlon that are common ro systems development projects are documeotatio11 and preseo.t..1.tio11.
Clearly, documentation and preset1tatlon opportltnlties span all the phases. In
Figure 3-7. the black arrows represent varlous instances of documentation of a phase.
Documentation and Presentation
The red arrows represent Instances where presen1atlons are frequently required.
Finally, the green arrows represent the storage of documentation and other artifacts of
systems development in a repository. A reposJtory saves documentation for reuse
and rework as necessary.
feasibility Anatysis t:onststent with our creeping comrottment approach to systems development, feaslblllry analysis ls a cross life-cycle actMty. Different measures of feaslblllry are applicable In different phases of the methodology. These
meantres Include technlca~ operational, economic, sd1edt~e, and risk feasibility, as described when we Introduced the decision analysis phase. FeaslbUity analysis requires
good estimation techniques.
Recall that the C~lt\t considers ~·stems de,--elopment to be a process that must be managed on a project-by-project basis. For this
reason and others, proces., management and project management are ongoing, cross
Ufe-crde acti"itles. Both types of management were Introduced earller, but their deft.
n.itlons are repeated in the margin on page • • • for your convenJence. Process
ma.oagerueitt defines the methodology to be used on every project- think of It as
the tecipe for building a system. Project ma.oagemeitt is concerned wlth admlnlsterlng a single Instance of the process as applied to a single project.
Failures and limited successes of systems deveJopment projects often outnumber
successful projects. Why ls that.? One reason ls that many systems analysts are unfamiliar with, or undisciplined In how to properly apply, tools and techniques of systems deveJopment. But most failures are attributed to poor leadersh.ip and
management.Th.ls mismanagement results in w1fulfllled or unidentlfled requ.frements,
cost overrwu, and late delivery.
Chapter Tine
89
documeotatioo 1he ongoirg
activity of record ng facts and
specifications fo1a system for
current and future reference.
preseotation the ongoing
activity of comrrunicating findings, recommen:Sations, and
documentation br review
by interested users and
managers. Pres;ntations may
be either ¥Kitten or verbal.
repository a database
and/or file directory where S'iS·
tern developers stcre all dOCU·
mentation, knO'Medge, and
artifacts for one rx more infor.
mation svstems :,r oroiects. A
repository is USl.Blly autanated
for eBSf informalion storage,
retrieval. and sharing.
feasibility amlysis tile
activity by whic:t, feasibility is
measured and assessed.
Process and Proiect Management
>
Sequential versus Iterative Development
The above discussion of phases might lead you to assume that ~·stems development is a naturally sequential process, moving In a one-way direction from phase
to phase. Such sequential deveJopment ls, in fact, one alternative. This approach
ls depicted In part (a) of Figure 3-8. In the tlgttre we have used the four classic
ph.ases rather than the eiglll FAST phases h1 tl1e Interest of slmplidty. Th.ls strategy
requires that each phase be «completed" one after the other lllltil the information
systtm ls finished. In reality, the phases may somewhat overL1p one another in
ti me. For example, some system design can be started prior to the completion of
systtm analysJs. Given its waterfall-like '\oisual ap~arance, this approach ls often
called the waterfall development approacl1.
The waterfall approach l1as lost favor wJth most moden1 ~·stem deveJopers. A
more popular strategy, shown ln part (b) of Agure 3-8, is commonly referred to as
the iterath--e development approacl:a, or incremental development process. This
feasibility a measure of
how beneficial the development of an information system
would be to an organization.
estimatioo the calculated
predction of thecosts and effort required for system development. A some.what facetious
synonym is {IU9$S1mation,
usually meaning that the estimation is basedon experience
or empirical evic'ence bJt is
lacking in rigor-in other
words, a gusss.
process maoagemeot an
ongoing activity that docu.
ments, teaches, oversees the
use of, and implOV9s an orga.
nization's chosen methodol.
ow (the "process") for
systems development
Process man~ment is con.
cerned 'Mth phases, activities,
deliverables, and quality standards that shoukt be consistently applied to all projects.
BUSINESS COMMUNIT'(
8
START:
PIO ble ms. Op po rtu.n.ltlee,
Olrecuvea. core1n1nta,
FIN.ISH.:
Wo111:1ng
Yus1neee
ano v1eion
SVSTtM 0MIER8Al<I U&EFIS
System
1mprtwement
SolltlOn
oqecuve,
Pl'Oblem
Shtem«it
S181:emenl
otWo11C
Life Cycle Stage
SCq>e & Vision
SYSTEM
OPERATION
t
OOOJm&l'b.Oon
&
MAINTENANCE
~
+
,won
Statement
oowm_,.,
-----...,!
.....
Po81:-Audn
Opc,otlOnOI
....
Ooou mc>'*'1bn
system
•
I
Repository 1
~
00~ -...., . ,
-..L---.~. . .,
F1na1
Oocu.mentst1on
~
,I
Furcilon81
System
DocunenWIICl'I
CON STRUC TION
•
Reaee1gneo
TES TING
.........
Bu81neee
Oeelgn
i
Pl'Ol:ofVp•
Pnyaica1 oee1gn
Mu\11:111:1 6 $ l"l'(:lfUS Uunts
F IG U R E 3 • 7
BulllnM•
Requ.1rementll
System Development Documentation, Repository, and Presentation
...
I
LOGICAL
DES IGN
va11oa1:ea
EIIJlllOef:18
Ae(fllremente
LOgleal
Design
Models
ono
Sped11¢i!IIOM
System
Propoeal
AppHcaaon
A.rcn.ttectu.re
The entire
information
system
..
-.
"
(a) The Sequential or 'Watsrfall' Stratsgy
ITERATION
I
1
91
chaptorThree
Information Systoms Dovolopmont
. . . 00
'"
""'
""
•
ITERATION
I
2
•
ITERATION
t
3
AeslJts
In
•
Repeat until no 80Clltlonal
ltenrt1ons needed
(b) The Iterative or Incremental Strategy
F IG U RE 3 • 8
Sequential versus Iterative Systems Development Approach
92
Part ono
project maaagemeot the
process of seeping, planning,
staffing, orgarizjng, directing,
and controlling a project to
develop an information system
at minimum c«st, within a
specified time frame, and
wi1tl acceptab~ quality.
1ho Contoxt of Systoms l>ovolopmont ProjOffl
approach requires completing enough analysis, design, and Implementation to b< able
to fully develop a part of the new system and place It Into operation as qulddy as pos.
slble. Once t11..1r ,--erslon of the SJ'Stem ls lmplemet1ted, the strategy is to thet1 petfonn
some addJtlonal ai1..1lysis, de.slgu, and implementation to release the next version of
the ~·stem. These iterations continue tmtll all parts of the entire lnformatlon system
h»-. been lmplemetlted.11,e popularity of tills Iterative and incremetltal process can
be explained simply: System owners and users have long complained abo« tl,e
excessfve time required to de'.ielop and implement lnfonnatlon systems ushtg the
waterfall approad1. The Iterative approach allows ,-ersJons of useable infonnation to
be delivered in regttlar and shorter time frames. Th.ls results In improved ctlSt•) mer
(system owner and user) satisfaction.
~~~A_lt_e_r_n_a_ti_v_e~R_o_u_te_s~ a_n_d~ S-tr_a_t_e_g_ie
~s ~~~~~~~~~~~~~)
waterfall del,·etopmeot
Gfven any destination, there are many routes to that destination and many modes of
transport. You co,dd take tl,e superhighway, highways, or back roads, or you could fly.
Deciding which route ls best depends 011 your goals and priorities. Do you want 10 get
!ljl,(lf'n:lrh 81 8ppm8r:.h tn
there fast, Ot' do you want rose-• the sights? How much are you willing ro spend? Are
systems analysis and design
that completes each phase
one after another and onty
once.
iterative de,·elopmeot
approach ar, approach to
systems analysis and design
that completes that entire in.
formation syst~m in successive iterations. Each iteration
does some anilysis, some design, and some construction.
Synonyms incllde incremental
and spiral.
you comfortable wlth the mode of travel? Just as you would pJcl:: your route and
means to a tra,--el destination, you can and st1otLl.d pick a route and meaJ.15 for a systems
developmet1t destination.
So far, we've described a ba.slc set of phases tl1..1t comprise our PASTmetl1odology.
At one time, a «one size fits all" methodology was common for most projects~ however, today a >-arietj• of types of projects, tedmologles, and developmetlt strategies
exist- one size no longer fits all projects! Uke many contemporary methodologies,
PAST provides alternatfve routes and strategies to accommodate different types of
projects, tedmology goals, developer skills, and de>'elopment paradigms.
In this section, we will descrlbe several PAS'r routes and strategies. Before we do
so, examine FJgttre 3-9 on tl1e following page. TI1e figure illustrates a taxonomy or
cb.ss!llcatlon scheme for methodological strategies. Notice tl,e following:
Metl1odologies and rotttes can support the option of elther building software
solu.tlons in-house or buyfJ1g a co1n111erdal softtl)(lre solt,tto11 from a soft.
ware vendor. Generally, many of the same metl1ods and techniques are applicable to both options.
Metl1odologies may be either very prescriptive ("Touch all the bases; follow
all the rules") or reL,tl,-ely adaptive ("01aoae as needed within certain
guldeUnes").
Metl1odologies can also be characterized as model.tfrtven ("Draw pictures of
tl,e system") or product-driven ("13\dld the product and see how the users
react").
Modeklriven methodologies are rapidly moving to a focus on the objectorlented technologies being used to construct most of today's ~tems (more
about this later). Earller modeklth-.n approaches emphasized elther process
modellng or data modeling.
Finally, product.cJriven approaches tend to emphasize either rapid protot}pt11g
or wrltlng program code as soon as possible (perhaps you've hearo tl,e term
e.Ytrenie progran1.ntt11g).
So many strategies! Which !holdd you d1oose? A movement ls forming kt1own as
agile tnetbods. In a nutshell, advocates of agile metl1ods suggest tl1..1t system aiulysts
and programmers should l1ave a tool box of methods that include tools and techniques from all of the above methodologies. They should choose thelr tools and
technlques based on the problem and situation. FAST is an agile methodology. It
advocates the integrated use of tools and technlques from many methodologies,
applied In tl,e context of repeatable processes (as in CM.M Level 3). That said, let's
examine some of the route variations and strategies for the PAST process. As we
Information Systoms Dovolopmont
93
chaptor Three
TO lilt(
SO~TWAAE
SOLUTIONS
TOi.llJ.2
SOITWAAE
SOLUTION S
__
.......
.,.
Th;, 00:111011 IO 'bJ'(
~ln511>1dlll bJ~
........
...po,:.
_
U.(ffl)~IOuse
INIIIOdtWIOCMli:f.t•
1:11"
"""udlOn
eno mi,goton Intl) N
:::nJT::,a::.
w...,,
;1
~~
.......
.......
°""'"
continuum
--""""'
~
v1
94
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
na'\oigare through ead1 rottte, we wUJ use red typefaces and arrows to h.ighlighr those
aspects of the route that dlffer from the basic route you've already learned.
>
m odel-O.th•eo
developmeot a system
development rtrategy that
emphasizes ttie dra'Mng of
system models to help visual.
ize and analyze problems,
define busines.s requirements,
and design information
The Model-Driven Development Strategy
One of the oldest and most commonly used approad1es to analyzing and deslgolng Information systems is based on system modeling. As a reminder, a system m<><kl ls a
picture of a system that represents reality or a desired reality. System models facilitate
improved communication bet\\·eett system users, ~·stem analysts, system designers,
and system builders. 111 the FA.'lf methodology, system models are used to Ulustrate
and communicate the KNOWUDCE, PROCESS, or JNTER&CE building blocks of lnformatlon
systems. This approach Is called mod e l-driven develo pment.
The model-driven development route for FAST is illustrated h1 Figure 3-10.11,e
model-drl,-en approach does not: vary much from the basJc ph..,ses we de.scribed earlier. We call your attet1tlon to the following notes that correspond to the numbered
bullets:
1
O
0
O
0
0
l ogicaJ m O<let a p1ct0r1a1
representation that depicts
what a system is or does.
Synonyms indude essential
model, conceptual model,
and business model.
O
O
p h )'Sical m odel a technical
pictorial representation that
depicts what a system is or
does and OOwthe system is
implemented. 3ynonyms in.
elude implem,ntation model
and technical model.
System models may exist from the project that created the current system.
Be carefld! These m o dels
~yt.ltlfll:S.
O
:ire
1to to rlous fOt' being out of date . B-ut they can
stlU be useful as a pohll of departure.
Earlier you learned that lt Is important to define scope for a project. One of
the simplest ways to communicate scope is by drawb1g MODEJ.s THAT SHOW
SOOPE DEftNITION. Scope models show whlch aspects of a problem are wltbh1
scope and wltich aspects are otnsfde scope. 1b.Js ls sometimes called a
co11..text dtagra1n or conte:ct model.
Some system modeling tedlniques call for extet1SJve Mooas Of THE ma:STCNG
SYS"l'e< to identify problems and opportunities for system improvement. 11lls
Js sometimes called the as-ls systetn tnodel ,_lodellng of the current ~·stem
has waned In popularity today. Many project managers and analysts >iew It as
counterproductive or of Ihde '\o-:tlue added. 111e exception ls modeling of as-ls
business processes for the purpose of bush1ess proces., redesign .
111e requlremei1ts statement ls one of the most imponant deU,--erables of ~·stem developmet1t. It sometimes h1dudes MODELS THAT DEP1cr HIGH-LEVEL BUSINESS
REQUIJUMlNTS. One of the most popular modelh,g techniques today Is called
use case (introduced ln Chapter 7). Use cases identify requlreme11ts and track
their fulllllment through the life cyde.
Most model-driven tedmlques require that analysts docume11t business
reqUlrements wtth logical m od els (defined eartlel'J. Btistness requJ..remencs
are frequently expres.,ed ln LOGICAL MODELS THAT DEPlcr MO RE DE'l'AILfD USER
REQU1REMfN1'S. They show only what a system must be or must do. They are
lmplemetllatlon independent; that Is, they depict the system h1dependetll of
any possible tedmlcal implementation. Hence, they are useft~ for depleting
and valldath1g business requirements.
As a result of the decision analysls ph.ase, the analyst may produce system
MODfl.S THAT Of.PICT APPUCATlON ARCHJTOC'JtJR.E. Su ch models Illustrate the planned
technical lmplementatJon of a system.
Many modeklrlvet1 techniques require that analysts develop MODEJS THAT
DEPICT PHYSICAL DESIGN SPECD1CA'OONS (defin ed earlier In this chapter). RecaD
that physical m odels show not only what a system is or does but also
bow the system is implemented with technology. T hey are implementation
depe11dent because they reflect technology d1olces and d,e limltations of chose
technology choices. Examples h1dude database sd1emas, structure charts, and
flowcharts.111ey ser,--e as a blueprint for construction of the new ~em.
New information systems must be interwoven into the fabric of an organlz.atlon•s business processes. Accordingly, the analyst and users may develop
MODEJ.s Of R.EDESIGNID BUSINISS PROCESSES.
THE USER COMMJNTY
eTAnT:
l"'INlell:
W)rklng
C)
Problems,
MOGel8 or tr.
Opportll'.llUff,
Bu81re88
SdlJ:lon
ex~1ngs)'81:em
""
SV&lE• OWJEF&l.tO U&EFI&
•• prefleeto
DlrflCtlVM
syetem improvement
01:4ecuvee
P,olllem
staement
Llf• Cycl• Stag•
"Curr•nt•
0
SYSTEM
OPERATIO N
Model9tl'8t
,now scope
etstement
oe1111aon
(fW<)O(
e
&
MAINTENANCE
C)
REOJIREMENTS
ANALYSIS
Oocuncnldi)l"I
Requ.11'8ment,
s1,1eimrt
ma,1nr:1ue1e
Po81-.1Udll
/1
"
Revow
m0de1,1r1s1:
aeplct nign·
level OU91 nee•
Dxunom:Jlon
Dxunom:Jlon
requ1remenl!J
OptreUor111 3y.tem
~
rrey1nc:1ue1e models
'-<]
l'IISTA LLATION •
tl'e t aep let opera tlO na1
flow end procedure,
•
DELIV ERY
F"unctlo'18.I
syebm
bf
OoOJfflCll'tdion
l<J
OocUTIC!rtdion
t>
LOGICAL
DESIGN
na1n1ngMater1,1,
rrey 1nclu<1& rnoae•
IT'flf lndUJe
mode19Uat
aepicteorwn
a,conalnidMt
Ooeumcn1o1»n
Mocieu,or
0
Reoee1gned
t o~. . . 1
......
• ..
Specn'ICSUOM
tr,at aeoplet
0
MO<lel8 tr,at d@plet
Ap))llt8Uon
oe.1gn
e
MoGel9 that <lep let
P1Yf81C81 088 l{rl
spec:mceaoo,
:
~ GU RE
3 - 10
The Model-Driven System Development Strategy
1 System
Moaei, erti
Propo,e.l
eu,1ne••
Protitypee
f)
L,glcel
ArctllledU"e
dept ct
men
Ge1alleCI
reqiJremert,
""
96
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
0
Construction translates the physical system models lnto software. In some
Cl)
cases, automated tools ex.1st to automatically transL1re software lnto PHYSICAL
11lis is called reverse e1tgl11eertng.
Finally, the operational system may include Moons nv.T DEPICT fl.OW AND
MODfl.S THAT Of.PICT SOFTWARI! CONSTRUCTED.
PROCEDURE. For example, ~·stem models may document bad.-up and recovery
procedures.
In summary, system models can be produced as a portion of the deliverables for most
phases. Model-0riven approaches emphasize system modellng. Once implemented,
the system models sen·e as documentation for any changes that might be needed during the operation and support &age of the life cyde.
T he model-0rlven approach Is beUeved to offer several ad,-antages and dlsad"'10tages, as IJ&ed below:
Ad va11tages
Requirements specttlcatlon 1e nds to
be more thorough and better
documented.
Business reqttlrements and system
designs are easier to '\o-:tlidate with
pJcrures t11an words.
It ls easier to Identify, conceptualize,
and ai1..1lyze alternative technical
solutions.
Design specllkations tend to be
more sound, stable, adaptable, and
flexible because they are model
based and more thoroughly analyzed before they are bullt.
systems can be constructed more
correctly the first tlme when built
from thorough and clear model
based spedftcatlons. Some argue that
code-generating software can automatically generate skeleton or nearcomplete code from good sy,tem
models.
process modeling a
process-c:ente·ed technique
popularized U}I the sructur9d
analysis and ctssign me1hodolo:Jf that used models of b.Jsj.
ness process requirements to
derive effective softNare designs for a system. Structured
analysis introdJCEld a model.
ing tool called the dBi.a flcM
diagram to illustrate the flow of
data through a series of b.Jsj.
ness processes. Structured
design oonverr.ed data flow
diagrams into a process model
called !tructtKP d'larts to illus.
trate a top-dov.n software
structure that lllfills the busi·
ness requirem;nts.
Di.sa.dva.otage.s
It Is time-consuming. It takes tlme
to collect the facts, draw the models, and validate those models. Thls
is especially true if users are uncertain or lmpredse about t11elr system
requirements.
T he models can only be as good as
tl1e users• understanding of those
requirements.
Pictures are not software- some
argue that this redu ces the users'
role in a project to passive pattldpatlon. ,_lost users don't get
excited about pictures. Instead,
tl1ey want to see working software,
and they gauge project progress by
tl1e existence of software ( or Its
absence).
T he model-driven approach Is considered by some to be lnflexlbleusers must fully specify requirements before desJfl.O. desi.lln must
fttlly document technical specifications before construction, and !O
fortl1. Some ,iew sud, rlgldlty as
lmpractlcal.
,_lodeklrlven deveJopment ls most effective for systems for wll.ich requirements are
weU understood and wbid1 are so complex that they require large project teams to
complete. The approad1 also ,,,.orks well wl1en fulfillment of user expectations and
quality ls more important than cost ai1d schedule.
T here are several different model-0riven tedmlques. They differ prlmarily ln
terms of the types of models that they reqttlre the systems analyst to draw and valJ.
date . Let's briefly examine three of the most popufar model-driven de>-.lopment techniques that wlU be taught ln this book. Please note that we are introducing only the
techniques here, not the models. We'll teach the models themselves later, In the ..how
to• chap ters.
ProceH Modeling Process modeling was founded h1 the structured analysis and
design methodologies h1 1978. While structured analysis and design has lost frn,r as a
Information Systoms Oovolopmont
Chapter
Tine
97
methodology, process modeling remains a viable and Important technique. Recall that
your Information system bulldlng blocks Include se,-.ral possible focuses: KNOWLEDGE,
PROCESSES, and INTERFACES.
Process modeling focuses on the
PROCESS
column of building
blocts. Flowcharts are one type of proce55 model (used primarily by SYSrE." BUUDERS)
tl1..1t you may have encountered in a programmJng course. Process modeUng has etl·
joyed sometlllng of a retl..1lssance wlth the emergence of business process redesign
(Introduced !11 Chapter l).
Data flow dL1grams and structure charts have contributed slgnlllcantly to reducing the communkatlons gap thar often exists between nonrechnlcal ~tern owners
and users and technical system desJgners and buildets. Process modeling is taught lo
this book.
Data Modeling Recall that KNOWLEDGE improvement is a ftmdamental goal and set
of bulldlng blocks In yonr frunework. Knowledge Is the product of informat/011,
whlch In tnrn Is the product of data. Data m od elli)8 methods emphasize the know~
edge bulldlng blocks, especially data. In the data modeling approach, emphasis Is
placed on diagrams that capture busfr1ess data requirements and trai1SL1te them Into
database designs. Arguably, data modeling Is the most widely practiced system
modeling technique. Hence, It will be taught In this book.
Object Modeling Object modeling ls the rest~! of technical advancement.Today,
most programming languages and methods are based on the emergei1ce of object
t echnology. While the concepts of object technology are covered extensively
throughout this book, a brlefbut overslmpUJled Introduction Is appropriate here.
For the past 30 years, techniques like process and data modeling deliberately separated the concenu of PROCESSES from those of DATA. h1 other words, process and data
models were separate and distinct. Because virtually all systems lnduded processes
and data, the techniques were freque ntly used In parallel and the models had to be
carefully synchronized. Object techniques are an attempt to eliminate the separation
of concerns, and hence the need for syndvonizatlon of data and process concerns.
This has glvei1 rise to object m odelliig metl1ods.
Btislness objects correspond to real things of importance In the business sud1 as
custotners and the orders they place for products. Each object consists of both the
data that descrlbes the object and the processes th:lt can create. read, update, and
delete that object. With respect to your Information system building blocks, objectorlented analysis and design (OOAD) slgnlficantly changes tl1e paradigm. The DATA
and ?ROCESS columns (and, arguably, the INTERFACE coh1nu1 as well) are essentially
merged Into a single OBfECT column. The models then focus on Identifying objects,
bulldlng objects, and assembling appropriate objects, as with Legos, Into usef,d
infonnatlon systems.
11le cnrretll popularity of object technology Is driving tl1e Interest In object
models and OOAD. For example, most of t oday's popular operatlng systems like
Microsoft Wi11dows and Apple Mac/OS have object·>rletlled user Interfaces ("point
and click," using objects such as windows, frames, drop-down menus, radio buttons, check.boxes, scroll bars, and the Uke). Web user Interfaces Uke t.tJcrosoft
/11teniet E."<plorer and Netscape 1\ iavtgator are also based on object technology.
Object programming languages sucl1 as Java, C+ +, C#, Smalltalk, and Vtsr,a/
Basic .NEr are used to co11struct and assembJe such object-oriented operating systems and applications. And those same languages luve become the tools of choJce
for bulldlng next-generation Information system appUcations. Not surprisingly,
object modeling techniques have been created to express business and software
requlremet1ts and desJgns In terms of objects. This edJtJon of tllls book extensively
integrates tl1e most popular object modeling techniques to prepare you for systems
analysis and design that ultimate ly produces today's object-based Information
systems and applications.
data model.it1g a data.
centered technique used to
model businessdata requirements and design database
·~"ms:: thAt futill thMA
requirements. The most frequently encountered data
models are sn11Y f918Jonship
dag:arns.
object m odefulg a technique that atterrpts to merge
the data and process concerns into singular constructs
called objects. Object models
are diagrams that document a
system in terms of its objec.ts
and their internctiofl3. Objec.t
modeling is the oasis for
oojoct-orionted analysis and
dssign methoddogies.
98
Part ono
1ho Contoxt of Systoms l>ovolopmont ProjOffl
>
rapid apJ>li<atioo
development (RAD) a
system develooment strategy
that emphasizes speed of de.
velopment through extensive
user involvement in the rapid,
iterative, and incremental
construction of a series of
functioning pn,totypes of a
system that ewntualty evolves
into the final system (or a
version).
prototype a small-scale,
representative. or working
model of the users' require.
mi::1onh:: or A prr.fY'~Art dA.(;ion
for an informa1ion system. Arrf
given prototyp; may om it cer.
tain functions or features until
such time as the prototype
has sufficientlv 9/0lved into an
acceptable imi,lementation of
requirements.
The Rapid Application Development Strategy
In response to the faster pace of the economy h1 general, rapid application devel-
opment (RAD) has become a popular route for acceJeratlng systems de,-elopmet1t..
11,e basic Ideas of RAD are:
To more acth,--ely ln\--olve system users In the analysis, desJgn, and construction acthitles.
To organize ~tem.s development Into a series of focttsed, intense workshops
jointly involving ~ ~ s , usms, ANALYSTS, DESIGNERS, and BUW>ERS.
To accelerate the requirements analysis and design phases through an lterati,-e construction approach.
To reduce the amount of d.me that passes before the users begin to see a
working system.
11,e basic principle belllnd promtyplng Is that users know wbat tl1ey want when they
see it working. ht RAD, a prototype e,--entually evolves lnto the final infonnation system. The RAD route for FASTls illustrated In Figure HI. Again, the red text and flows
indicate the de"iatlons from the basic FAST process. We call your attention to the
followtng notes that correspond to the num.bered bullets:
0
11,e emphasis Is on redudog time h1 developh1g applications and systems;
therefore, tl1e hlltlal problem analysis, requirements analysis, and decision
analysis pbases are consolirlated and accelerated. The deliverables are tyi>
lcally abbreviated, again In the Interest of tlme.11,e deli,.. rab!es are said to
be tNrn.u, meaning •expected to change" as the project progresses.
After the above itlitlaJ analysis, the RAD uses an iterative approach, as dlscussed earller in the dtapter. Each Iteration emphasizes only enough ne"'
functionality to be accomplished wlthh1 a few weeks.
t) LOGICAL AND PHYSICAL DESIGN SPECIFlCATIONS are usually sJgnlficantly abbre\oiated
and accelerated. In each iteration of the cycle, only some design spedJlcations
will be considered. Whlle some system models lllllY be drawn, they are select1:,--ely chosen and the emphasis continues to be on rapid development 1be
assumption is that errors can be caught and fixed lo the next iteratlo11.
O In some, but rarely aU, iterations, some business proces.,es may need to be
redesigned to reflect the lll:e!)• Integration of the evol,ing software appllatlon.
O 1n each fteratlon of the cycle, SOME DESIGN PROTOTYPES or SOME PARnAL
FUNCOONAL SYST6\I element! are constructed and tested. Eventually, the
completed application wUI result from the final tteratlon througb the cyde.
9 After each prototype or putlal functional subsystem Is constructed and
tested, system users are gi,;en the opportwlity to experience working whh
that prototype. The expectation Is that users will clarify requlremetlls,
Identify new requirements, and provide BUSINESS FEEDBACK on design (e.g., ease
of learning, ease of use) for the next Iteration d,rough ti1e RAD cycle.
O After each prototype or functionlng subsystem Is constructed and tested,
system analysts and deslgiters wUI re\oiew the applicatio11 archltectu.re and
design to pro"ide TECHNICAL FEEDBACK and direction for the next lteratlon
through the RAD cycle.
O Based on tl1e feedback, sy,terns analysts will Identify REf1NED SVSTE2\I
LW'ROVEMENT OBJ-f.CTIVES and/or BUSCNESS llEQUlR.fl\lENTS. This analysis tends to
focus on re,ising or expanding objectives and requirements and Identifying
user concerns with the desJgn,
O Based on tl1e feedback, sy,terns analysts and system designers will Identify• a
R.EflNED APPLICATION ARCHJTf.Cl1JllE an<Vor DESIGN CHANGES,
(:) Eventually, the system (or a , .. rsion of the system) wUJ be deemed wortl1y of
Implementation. This CANDIDATE Rfl.f.ASE VERSION Ofl 'l'HE FUNCTIONAL ~ is system tested and placed lnto operatio11. The next ,-ersio11 of the ~tern may
continue iterating through the RAD cycle.
STA.RT:
Pl'Oan•.
~·
OA)Ortunltl88,
lHE USER COMMUMTY
ProDlem
,no
Slllement
1
Ol,ootpyc,o
(1ttm
~1011r"' ~-Fi)
2 1-3 -t-0
(l1u111Fl\f'I" 3·~
SC(fle &
V181on
Statement
S'1'81'EM0WMEl'l8NO U3Efl8
"'
W01<
Initial S)'Stem hlprovement Obiectivea
Initial SuainNS Requirements Statement
0
0
Initial System Propoea1
Initial Application Architecture
Refined Syatem Improvement
O bJ ectrv ee enGfor
4 + 6 (tom Rgure 3·51
Buelneee Requ1remente
some Aeo•1gneo
some
DESIGN
FINISH.:
eu,1ne,e
Al!flne<I
ApplcaUcn
&ulul1Qr1
Archttocb.i••
WOr11lng
eu, 1ne, e Proc e,e ee
0
(10,;jlCSI e.n<llor pfr/&ICel)
e
some
Logical al'dfor
8
ana.or
Pr,ye1ce1 O.lgn
D:I011n1nllll!cn
SpfClflC*:lon•
0•1gncnang•
3 + 4 + 5 (lrom ~19-ne 3-5)
...........
...........
~
•1-t"""';
:-~·;
7 (Iran Figure 9-5)
~
:·~
0
Life.Cycle Stage
l))Qlm>nllll!m
Bue1neee n
·current"
SYSTEM
FeedlllCk V
OPERATION
ttcrin1ea1reealllck
Po811'.uan Rev11w
FIGURE3 - 11
Oeelgn Protmvpee
0
, na.o,
Partl81
AJncuona1 system
&
MAINTENANCE
i
some
O
Operetlona.l Sy81:em Vere1on tA
The Rapid Application Development (RAD) Strategy
na1n1rg Mater1a1a
Cl!ln<Hdale
Releue
Ver81on
or the
Funr.t1ore1
syatern
100
Part One
tialeboxi.og the imposition
of a none)(!endable period of
time, usually ro to 90 days, by
'M'lich the first (or next) ver.
sion of a system must be de.
livered into operation.
1ho Context of Systems Dowlopmont Projom
Although not a rigid requirement for RAD, the duration of ti1e prototyping loop can
be limited using a technique caUed tlmeboxlug. Timeboxlng seeks to deUver an operational system to users and m.1nagemenr on a regular, recurring basis. Advocates of
tlmeboxlng argue tl1at management and user enthusiasm for a project can be enhanced and sustained because a working version of the system ls Implemented on a
regular basis.
The RAD approach offers several advantages and disad"-antages:
Ad va11tages
It is useful for projects h1 which
the user requirements are uncertain
or Imprecise.
Ir e ncourages active user aOO management participation (as opposed
to a passfve reaction to nonwoddng
system models). 11lls h1creases enduser enthusiasm for the project.
Projects have higl1er >islblllty and
support because of the extensive
user ln,"'Olvement throughout the
proces.,.
Users and management see working, software-based solutions more
rapidly than they do In mo<feJ.
driven development
Errors an d omissions tend to be
detected earlier ln prototypes than
In system models.
Testing and trahllng are natural
by-products of ti1e underlying prot<>typh1g approach.
TI1e lterarJve approach ls a more
natural process because change ls
an expected factor during
development.
Di.sa.dva.otage.s
Some argue that RAD encourages a
.. code, implement, and repair• met1tallty that h1creases lifetime co.is
required to operate, support, and
maintain the system.
RAD prototypes can easily solve the
wrong problems since problem
analysis ls abbreviated or Ignored.
A RADbased prototype may di~
courage ai1.alysts from conslderilg
other, more worthy rechnicaJ
alternatives.
Sometimes it ls best: to tlvow a
prototype away, but stakeholders
are often reluctant ro do so because
tl1ey see this as a loss of time and
effort in the current product.
The emphasis on speed can
adversely Impact quality because
of ill.advised shortcuts through the
methodology.
RAD is most popular for smaU- to medium-size projects. \X'e wlUdemonstrate prototyping and RAD tedmlques In appropriate dtapters of this book.
>
co-mmetci.al applicatioo
package a software apptica.
tion that can ba purchased
and customized (within limits)
to meet the business requirements of a large number of
organizations ,r a specific
industl')( A synonym is canmorcial o/1./h&-Sholl (COTS)
system.
The Commercial Application Package
Implementation Strategy
Sometimes ft makes more sense to buy an informatio11 system solution than to build
one lo-house. In fact, many organizations increasingly expect to build software lnhottse only when tl1ere is a competitive advantage to be gained. And for many core
applications sud1 as human re!ources, financials, procttremenr, manufacturing, and
distribution, there is little competitive value In building your own system-hence a
commercial appllcatlo n package is purchased. Accordlngly, our FAS1'med1odology
includes a commercL1l sofrware package route .
T he ultimate commercial solution Is enterprise resource planning, or ERP (defined
in Chapter l ). ERP solutions provide all of the core h1formatlon system applications for
an entire bush1ess. For most orginizatlons, an ERP iruplemet1tatlon represents the single largest h1fonnatlon system project ever undertaken b)• the organlzation. It can cost
tens or htmdreds of millions of dollars ai1d require a smaUarmy of managers, users,
analysts, rechnicaJ spedallsts, programmers, consultants, and contractors.
101
Information Systoms Oovolopmont
Toe FAST methodology's route for commercL1l application package Integration Is
not really Intended for ERP projects. Indeed, most ERP vendors provide their own
Implementation methodology (and consulting partners) to help their customers
implement such a massive software solutio11. lnstead,our PASTmetl1odology provides
a route for Implementing all other types of Information system solutions that may be
purchased by a business. For ex.ample, an organization mlght purchase a commercial
appUcarion package for a single business function sud1 as accow1ting, human
re.sources, or procurement TI1e package must be seJected, lnstaUed, customized, and
inregrared Into the business and lts other existing lnformatlon $)'stems.
Toe basic ideas behlnd our commercial application package Implementation
route are:
Packaged software solutions must be carefully selected ro fulflU business
needs-"You get what you ask and pay for.•
Packaged software solutions not only are costly ro purchase but can be costly
to implemet1t.. ln fact, the package roure can actually be more expenst,--e ro
bnplement than an lo-house development route.
Software packages must usually be customJzed for and integrated Into the
busines.,. Additionally, software packages usuallr require the redesJgn of ex.lstlng business processes to adapt to the software.
Software packages rareJy fulfill all bush1ess requirements to the users• complete satisfaction. Thus, some level of In-house systems development is necessary ln order to meet the unfulfilled requirements.
Toe commercial application package Implementation route ls Ulustrated h1 Figure 3-12. Once agait1, the red typeface and arrows Indicate differences from the basic
PAST process. We call your attention to the following notes that correspond to the
numbered bullets:
O
It should be noted that the decision to purchase a package ls determined In
the problem analysis ph..,se, TI1e red diamond represents the ..make versus
buy.. dedslon. The remainder of tllis discussion assumes that a dedslon to
buy has been approved.
0 Problem analysis usually Includes some Initial TECHNOLOGY MARKET RESEARCH ro
identify what package solutions exist, wl1at features are in the software, and
what criteria should be used to evaluate sud, application packages. This
research may in\--oJ,. e. software vendors, IT rese.uch services (sud1 as the
Gartner Group), or consultants.
O After defit1.1ng business requirements, the reqUlrements muse be commwllcated
10 the software vet1dors who offer vL1ble application solutions. TI1e business
(and technlcal) requirements are formatted and commwlicated ro candJdate
software vet1dors as either a REQUF.ST FOR PROPOSAL (RFP) or a REQtlf.ST FOR
QUOTATION (RFQ). 11,e double-ended arrow Implies that tl1ere may need to be
some clarification of requirements and criterla.
O Vet1dors submit PROPos..us or Q UOTATIONS for their application solutions. These
proposals are e"-aluated against t11e business and technical requirements specified h1 the RFP. The douhl"""11ded arrow lndlc,tes that claimed features and
capabUJties must be validated and In some Instances clarified. Thls occurs
during the decision analysis phase.
0 ..\ CON'J'RACT AND ORDER Is negotiated wfth tl1e wltuling vet1dor for tl1e software
and possibly for senices necessary to Install and maintain the software.
0 111e vendor pro"ides the BASWNE COMMERCIAL APPUCA'J'lON software and documeo1atlon. Services for installation and lmplemenmtlo11 of the software are fre.
quently provided by the vendor or its service pro,iders (certified co1mdtants) .
O Whe11 an application package ls purchased, the organization must nearly always
change Its business processes and practices to work efficient~· wld1 the package.
111e need for REDESIGNED Bl6INESS PROCESSES is rarely greeted with enthlL'Siasm,
request for proposal
( RFP) a formaldocument
that communicates business,
technical, and sipport re.
quirements for 611 application
software package to vendors
that may 'Msh tc compete for
the sale of that application
package and services.
request for qu0tatioo
( RFQ) a formal document
that communicates business,
technical, and sipport re.
quirements for 611 application
software package to a single
vendor that has been determined as being able to suppty
that application oackage and
services.
-s
TEClfiOLOGYINOUSTRY
THE USER COMMUNITY
Tee mo10gy Mar1(et lie ,,arch
FIN SM:
Working
~
START:
eu, 1neea
ProDiems,
Oppt>rtunffl Jlfl.
SOIUUon
e
r
S•LE& REPFE&ENl'.IJl'IE&ANO
ana
Olredlwe
TECtfrfOLOGY kTEGRATOAS
Syeten
2 (flom F,91110 3·5)
lrrpn:rtemert
...••
OOJeCl:t•
f)
lif•·Cyc l• Stag•
Q
"Curr•nt"
RFQ
SYSTEM
Statement
OPER ATION
&
MAINTENANCE
«WOl1(
Sc ope , Vie Ion
1
r
3 (Item Figuro 3-5)
op,.,110:• sy,tem
l_
Oocumcn1o!ion
Posi.Auc11tRevleW
0
REOUREMENTS
ANALYSIS
Ooc1,1mon1,1ion
Proposal
o,
Cllotatlon
/1
Dxumonlolion
t)
contract
8 (from FigU'o 3·5)
5 (hom F,9uro 3-6)
l<)- - - - - - - - -[))1Hl''IOl'tdion
11.e•ne•
Requreimrt,
DELIVERY
3:d:ement
.,.........
Ox1,1mon1,1ion
Oocunortdion
Oxunom:Jli:in
C8p8Dlllt188
6 (from F19U'o 3·5)
BUSINESS
PFDCESS
OESGN
{)
C)i stomll'ed
t.E W to lh II Routo
commercl81.\ pp11c 811 on
OJata:ilntl<n
Aequ1,a,mena
INSTAl.U.TION
•
CUST0.11ZATON
F I G UR E 3 • 1 2
The CommeJcial Application Package Implementation Strategy
Q
0
e.e11ne ccrnmet'd81 ApplettlCl'l
"''
o..,
Information Systoms Oovolopmont
103
bur they are usually necessary. In many cases, the necessary changes are not
O
wrong-they are Just dUierent and unfamillar. ~tern users tend to be uncomfortable with chaoglng the way ther ha.-e alway, don e somethlng.
An appUcatlon package rarely meets all buslne!s reqttlrements upon inslallaUon. Typically, a gap analysis must be performed to determine which business requirements are not ftt!Jllled by the package's capabilities and fearures.
For requlrements that will not be fulfi lled, the following options exist:
Request customlzatlons of the package wlthln allowahle limits as specified
by the software .-endor. Most commercial application packages allow the
purchaser to set spedflc options, preferences, and defined '\o-alues and
ranges for certain parameters. Within Um.its, these alStomfzatlons allow you
to «personalize" the package to the business accounting and business practices. Such necessary CUSTONJZATION R.EQUUllNlNTS need to be specified.
Define ADO-ON SOl'I"WARJ! Rf.QUIR6\IIM'S. Adel-On software requirements specify
programs that must be desfgned and constructed to augment the commercial
application package and deU.-er additional functionality. It should be noted
that add-On programs carry some risk that d1e;- may ha.-e to be modified In
the future when a new version of the software becomes a'\o-allable. But this
risk Is nomlna~ and most org.1nlzations take the risk In order to pro.-lde additional functionality.
Oetlne ADD-IN SOf'rWARE R.8;2tllE.\IIEN'J'S. Add-in software requlremet1ts are very
dangerous111,ey specify changes to the actual commercial application package to meet bltSlness requirements. In other '\\'otds, users are reque.sth1g tlut
dwiges be made to the p urchased software, Its database, or !ts user Interfaces. At best, such changes can make .-erslon upgrades extremely dlftlcttlt
and prohlhlti>"elj• expensi>"e. At worst, sud1 dunges can In-validate tedlnlcal
support from the .-endor. (And most ,-et1dors encourage keeping .-erslons
relat!.-el)• current b)• canceling technlcal support on older .-erslons.) Changing
program code and database structures should be discouraged. lnslstet1ce by
users ls often a symptom of unwllllngness to adapt business processes to
work with the application. Many organlzatlons prohibit changes to application
packages and force users to adapt In order to presen-e thelr upgrade patl1.
O
The BASEUNE COM.\IIEtctAL APPLICATION is Installed and tested. Allowable changes
based on options, preferences, and parameters are completed and tested.
Note: These customizations within the limits specified by the software
,·e11dor will typically carry forward to versJon upgrades. In most Instances the
,·e11dor has provided for c1Us level of CUSTOMIZE> COM.\IIEllctAL APPLICATION.
<!:) Any add-On (or adcl-ln) software changes are desgned and constructed to meet
additional business requlrements.11,e system is subsequently tested and placed
jnto operation using the same acthitles describEd in the basic PAST process.
The commerclal application package strategy offers Its own ach:antages and
dlsad.-antages:
Adv.lotages
New systems can usually be Implemented more qu.lckJy because extensJ,·e programming is not required.
Many businesses cannot afford the
sttfllng and expertise required to
develop lo-house solutions.
Application .-endors spread thelr
development costs across all customers that purchase thelr software.
T hus, they can invest In continuous
Dlsadvant.1 ges
A successful COTS Implementation Is
depet1dent on the lo11g-term success
and >"hbllity of the application
vendor- lf the , axlor goes out of
busloess, you can lose your technical
support and furure impro,--ements.
A purchased system rarely reflects
the ideal solution that the business
might adlieve wlth an in-housede.-elcped system that could be
1
gap analysis a oomparison
of business and technical re.
quirements for a commercial
application pac~age against
the capabilities and features
of a specific commercial
application pac~age for the
purpose of defiring the
requirements that cannot
be met
104
Part One
1ho Context of Systems Dowlopmont Projom
Improvements lo features, ctpabllltles, and usability tl1at lndl>idual
businesses cannot always afford.
The application vendor asslmes
responsil>lllty for slgnlficant system
lmprovements and error corrections.
~tany buslness fw1ctlo11s are more
slmllar than dlsslmlbr for all businesses In a given Industry. For exam-
ple, business functions across organizations In the health care Industry are
customized ro the precise expectations of m:uu.gemenr and the users.
There is almost always ar least
some resiSlance to changing busJness processes ro adapr ro the software. Some users will l1ave ro give
up or assume new responsibllltJes.
And some people may reset1r
changes they perceive to be t echnology-drtvet1 instead of busfnessdrtvet1.
more alike than dtfferent. Ir does not
make good business sense fer each
organiz.ation to ..reh1,--ent d1e wheel"
Regardless, the trend roward purchased commerdaJ appUcatlon packages cannot
be Ignored. Today, many businesses require that a package alternative be considered
prior to engaging In any type of In-house developmetll project. Some experts estimate
that by d,e year 2005 businesses will purd1ase 75 percent of thelr new Information system applications. For this reasoo, we wlll reach ~terns analysis roots and techniques
needed by system analysts ro function ln this e nvlronment.
>
Hybrid Strategies
111e PAST routes are not m utually exdusJve. Any gtven project may elect to or be required ro use a combination of, or "-arlatlon of, more than one route. The route to be
used Is always selected during the scope deft111tto11 phase and Is negotiated as p1rt of
the stateme11t of work. One strJtegy that Is commonly applied to both modeklriven
and rnpld application development routes Is an Incremental strategy. Figure 3-13
illustrates one possible implementation of an Incremental strategy in combim.tlon
with rapid application development.T he project delivers the Information system Into
operation In four stages. Each stage lmplements a version of the final system using a
RAD route . Other varlations on routes are possible.
>
System Maintenance
All rotttes ultimately result in placing a new system into operatlo11. System m t intenance is lntended ro aulde projects throuah the operation and support staae ofthefr
life cyde- whlch could last decades! Figure 3-14 places system maintenance Into
perspective. System maintenance In PAST is 11ot really a unique route. As illttstrated in
the figure, Jt is merely a smaller-scale version of the same PAST process ( or route) that
was used to originally develop the system. T he figure demonstrates that the starting
point for system maint enance depends on the problem to be solved. We call your
attention to the following numbered bullets In the figure:
O
Maintenance and reenglneerlng projects are triggered by some comblnatlon
of user and teclmlcal feedback. Sud , feedback may Identify new problems,
opportwlitles, or direcdve.s.
€J TI1e maintenance project Is inltlated by a SYS'J'E."1 CHANGE REQlfEST that in dicates
the problems, oppor tunltits, or directives.
O Tbe slmplest fixes are sorrwARE BUGS ( errors). Such a project typically Jumps
right Into a rec0!'811lucnoN AND rensTING phase and Is solved relatively quickly.
O Sometimes a DESIGN FLAW In the system becomes apparent after
lmplemet1tatlon. For example, users may frequently make the same mistake
due to a confusing screen deslgi1. For tills type of maintenance project, the
PHYSICAL DESIGN AND tNTF.GRATION ph ..,se would need ro be revisited, followed of
course by the construction and delivery phases.
-
ITERATION #1
-E
ITERATION #2
•I
VERSk>N 1
OF SYSTEM
VERSllN 2
orGYGTCM
ITERATION #4
--
ITERATION #3
YEASKlN 4
OF SYSTEM
·VEA3'0N3
OFSYSTE.M
-
0
'"
1
FIGURE 3 • 1 3
An Incremental Implementation Strategy
,--..
-8
0
START:
Feedback
I
I
I
I
I
I
\.,_
BUSINESS COMMUNrTY
I .---J I
ft ~
::.tyetem
Staterrent
0
1mpiovement
o q ec1:1ve,
OfWOt k
FINISH:
Updateo or
1mproW<1
Operational
syetem
f)
New
eua1ne•
Prolllem,
-·
Openiba1111
System
I
...
Lif•·Cycl• S1*g•
SYSTEM
OPERATION
&
MAINTENA NC E
0
Busin•s
Post·Al.ldlt
NewTecnn1ca1 Requ1remerta
0
oee19n
Fl8W
~ug"
C)
••Bushee•
E)
Prooe••
n a1n.1ng
..._
Statement
NewE1ue1nee,Aequ1rernerts
........
......
Aequ1rernerts
0
System
cnange
Requeat
Metet1a1s
198U8
Logical
oee1gn
Reoes1gnea
Bu81neaa
P IOC88888
oeergn
Pn:itotypea
Ph)'61C81
Oe811J1 SpeCll'IC8bona
E RE
3 - 14
ASystemMaimenancePerspective
A.p pl lea 110 n
Arcnltecture
Information Systoms Oovolopmont
In some cases a BUSCNESS PROCESS ISStrE m.1)' become apparent In this case,
only the business process needs ro be redesigned.
0
O
On occasJon,
NEW TECHNICAL REQUUlE.-..m'ltrS might dlccate a change. For example,
an organization may standatdJze on the newest ,--erslon of a particuL1r
database management system such as SQJ. Serwr or Orade. For this type of
project, the Df.CJSION AN.UYSJS phase may need to be revisited to first determine
tl,e risk and feasibility of converting the existing, operational database to the
new ,-erslon. As appropriate, sud1 a project would subsequently proceed to
tl,e physical deslgn, construction, and deU,.. ri· phases as nece55'f)'.
Busfr1es.,es constantly d1ange; therefore, bush1ess requirements for a system
also d1ange. One of the most common triggers for a reenglneerlng project is
a NEW (or revised) BUSCNESS 11.EQutR.EMENT. Gtven lhe requlremet1t, the
lEQUlRfl\lENTS ANALYSIS phase must be revisited wlth a focus on the lmpact of
the new reqttlremenr on the ex.lstfng system. 13.lsed on requirements analysis,
tl,e project wottld then proceed to the logical design, dedslon analysis, phys!·
cal design, construction, and deUveri· phases.
Time out! By now, you've noticed that maintet1..1nce and reengineerlng
projects lnltlate In dlffere11t phases of the baslc methodology. You might be
concerne-d that repeating these phases w o tdd req u ire excessive time :md
effort. Keep in mind, however, that the scope of maintenance and
reenglneerlng projects ls much, mud, smaller than the orlglnal project that
created the oper.ttlonal system. Thus, the work requlred In ead1 phase Is
mud1 Jess than you might ha,--e guessed.
f) ..\gain, as businesses d1ange, significant NEW BUSINESS PROBLENS, opporrunltles, and
constraints can be encountered. In this type of project, wod< begins with the
PR.OBl.l:M ANALYSIS phase and proceeds as necessary to the subsequent phases.
O h1 all cases, the final result of any type of maintenance or reenglneerh1g pro~
ect is ai1 updated operational business system that deJivers lmproved value to
the system users and owners. Updates may lnclude re"ised programs,
databases, lntetfaces, or business proce~es.
As described earlier In the chapter, we expect all systems to eventually reach
e ntropy.The bush1e~ and/or technical problems ai1d requiremet1ts have become so
trouble.some as to warrant ..starting over."
That comp letes our lntroductlon to the systems development methodology and
routes. Before we end tills chapter, we should introduce tl1e role of automated tools
t11..1t support systems deveJopment
( Automated Tools and Technology
You may be famillar with the old fable of the cobbler (shoemaker) whose own children
l1..1d no shoes. That situation Is not unlike the one faced by some systems developers.
For years we've been applying informatio11 technology to solve our users' business
problems~however, we·,--e sometimes been slow to apply tl1..1t same tedu1ology to our
own problem- developh1g lnfonnatlon systems. In d,e not·tOO-Oistant past, the prlncl·
pal tools of the systems analyst were paper, pencil, and flowchart tempL11e.
Today, e ntire sultes of automated t ools 11..1,--e bee11 deveJoped, marketed, and lostallt'd to assist systems deveJopers. Wh.lle system de,~Iopment methodologies do 11ot
a lwa'J'S require automated tools, most methodologies do bet1efit from such technology. Some of the most commonly dted benefits lndude:
Improved productfvJty- through automation of tasks.
Improved quality- because automated tools check for completet1ess, consistency, and contradictions.
Better and more consistent documet1tatlon - bocause the tools make it easier
to create and assemble consistent, high-quality documentation.
107
108
Part One
1ho Context of Systems Dow lopmont Projom
Redu ced lifetime maintei.1.ance- because of the aforementioned system quality
improvements combined with better documentation.
Methodologies tlu t really work- throug)l n~e enforcement and bullt<n exp<rtlse.
a1ances are that your future employer is using or wUJbe using this technology ro
develop systems. We will demoo.strate the use of '\o-:trlous automated roots throughout
this textbook. There are tlvee d asses of automated tools for developers:
REPRESENlATIVI:
CASETOOlS
ComputEI' Associales' &win
Oracle's f»sig;,er 20W
Popkin's SystimArchiect
Ratiooal ROSE
VisibleSysterrs' Visible
Anarst
computer-a!Sisted
software eogloe<'riftg
(CASE) the use of auto.-d
software tools hat support the
drawing and analysis of system
models a.rd associated specifi.
cations. Some CASE tools also
provide protot)Ping and oode
generation ca:J:,B.bilities.
CASE
repository a sys.
tern developers' database
where developers can store
system models, detailed de·
scriptions and specifications,
and other products of SfS ·
terns development. Syn.
onyms data irelude data
dictionary and encyclop9dia.
Computer-aided systems modeling.
• Application developmet1t en'\oironments.
• Project and process managers.
Let's briefly examine ead1 of these classes of automated roots.
>
Computer-Assisted Systems Engineering
Systems developers have long asplred to trai1Sform lnformation systems an d software
development into engineering-like disciplines. The terms syste,ns engi11eertng and
softtl)(lre e11gineerl11g are based on a vision that ~·stems and software developme nt
can and should be perfonned with engloeerlng.Jlke precision and rigor. Sud 1 precision
and rigor are consistent wtth tl1e modekirh,--en approach to systems development To
help systems analysts better perform system modeling, the Industry developed automated tools called computer-assisted software e nglneerlog (CASE) tools. Think
of CASE technology as software that Is used to design and lmplemet1t other software.
11lls Is very slmllar to the computer.aided design (CAD) technology used by most coo.
temporary engineers ro design products such as vehlcles, structures, machines, and so
forth. Representative modeling products are listed In the margin. Most modeling products rw1 on personal computers, as depleted in Figure 3-15.
At the ctnt er of any true CASE tool's architecture ls a developer's database called a CASE repository. The repository concept was Introduced
earlier (see Figure 3-7).
Around th e CASE reposJtorr ls a collection of tools, or fadlltles, for creating system models and documentation.
CASE Repositories
CASE Facilities To use the repository, the CASE tools provide some combltutlon of
the following fad Utles, illustrated lt1 Figure 3-16:
Diagra1n1nl11g tools are used to draw the system models required or recommended lo most system dtvelopment methodologies. Usually, tl1e shapes on
one system model can be llt>ked to otl1er system models and to detailed
desalptloiu (see next i tem belo w).
Dlctf-011.a ry tools are used ro record, delete, edit, and output ddalled documen-
for ward eogiileeriog a
CASE tool capability that can
generate initial software or
database oode directly from
system models.
r everse eogitleerlog a
CASE tool capability that can
automatically generate initial
system models from software
or database code.
tation and specifications. The descriptions can be associated wltl1 shapes
appearing on system models that were drawn with the diagramming tools.
Design tools can be used 10 develop mock-ups of system components str:.h
as inputs and outputs. These inputs and outputs can be assoc.L1ted with both
tl,e aforementioned system models and the descriptions.
Quaflty nm11agement tools analyze system models, descriptions and spec1Jkatio11S, and desJgi15 for completeness, consist:enC)', and conformance ro
accepted rules of tl,e methodologies.
Doc1,1ne11tatton tools are used to assemble, orgartize, and report on system
models, descriptions and speclflcatlons, and prototypes that can be reviewed
by system owners, users, desJgners, and builders.
Design and code generator tools automatically generate database desJgill and
application programs or significant portions of t11ose programs.
'Jesting tools sfmuL1te traiuactlons and data traffic, measure perfonnance, and
pro"ide configuration m.1rugemenr of test plans a nd test scripts.
As previous st:ated, CASE tedu1ology automates system modeling.Today's CASE tools provide two distinct ways to develop system models-forward engineering and reverse engineering. Thlt>k of re,-.rse
forward ancl Reverse Engineering
Information Systoms Dovolopmont
() 6t Edt
r...
t11"'1'
109
o,.., !«* Oi:t~ ~ s ~... tt!b
~"'ll;f [ij ll) fl ~.. ffi· l,ii:.l
~
Chaptorlh,...
!;i l!I M .l;l;II ~ €1€1
.,.. ....., :.., ! O A ooliJ
!I
·-
0-···l!·····-t
.
,,,
.
'
r
"n
....,.,.,.,...
c
Om'II\O'l'tet
om-n D<M
~
n.
"[l
nn
SlcoretM:I• ll Ci
'I
.:.J =1 ~
r,
,..f7
....
-·
..
"
n
a
n
IJ
p-
··········-t
~
.....!ft·
dl...icttt 110)
."'"'.. .." .." .,.~
.l'I
···-- .•.,fl
Slqf'G-SI•.. Cl Q
$1, U ~
$ tc,)'9"'$·~
~
" ' - 140.\
d!..,.;t:, t1J)
rn
~
n
,.. , ,- 1--1
J;IJ
---+----,
i
I
i
I
i
I
'
I
I
I
I
I
Ho«:11 (ll'(Vt
F I GU R E 3 • 1 S
Screen Capture o f Sy.stem An:hite<t CASE Tool
engineering as allowing you to generate a flowchart irom an ex.Isling progran1 and of
forwlt'd engineering as allowing you to get1erate a program directly from a flowchart.
CASE tools that allow for bldlrectlooal, forward, and reverse engineerlng are said to
J'lmvic1P (or .. m11nd.t1'i(l PnglnPP-f'ing." For PX!l m (llf', you rt>VPr'!l.P Png:inP.Pr a fM'\01'1y
designed system Into a system model, edlt and Improve that model, and theo forward
engl.neer the new model lnto an lmproved ~stem.
>
Application Development Environments
The emphasis 011 speed and quallty lo software development has resulted In RAD approaches. The potential for RAD has been amplllled by the transformation of programn~ language compilers into complete applicatio11 developme11t euvirorunettts
(ADEs). ADEs make programmlng simpler and more efficient. Indeed, most programmlnfl language compUers are now Integrated loto an ADE. Examples of ADEs (and the
programmlng languages tl,ey s upport, where appllcable) are llsted In tl,e margin.
AppUcatlon deve.lopment environments pro\oide a number of productl\oity and
quallty management fadlltles. The ADE vendor provides some of tl,ese facilities.Thirdparty vendors provjde many other fadlltles that can integrate Into the ADE.
Progm-111.·111:tng languages or Interpreters are tl1e heart of an ADE. Powerful
debugging features and assistance are us ually provided to heJp programmers
qulcldy Identify and solve p rogramming problems.
interface construction tools help programmers qulcldy build the user lnter-
hces using a component library.
REPRESENTATIVE
ADEs
IBM's Webspiem (Java)
Borland's JB!lilder {.bva)
Macromedia'i Cold Fusioo
Microsoft's V6ual
Studio.NET(VB .NET, Cl,
C++.1-ET)
Oracle's Owei(f)er
Sybase's Po•~tbuilder
applicatio-o development
eoviroomeot (ADE) an
integrated software develop.
ment tool that provides al I the
facilities necessiry to develop
new application software with
maximum speed and quality
A common syncnym is
intsarated dwolopmont
emlironmont QC£).
110
1ho Context of Systems Dowlopmont Projom
Part One
CASE
Workstation
snd
Softwara,
Sy•tel'lle Analyets
""~ ---
Printer
............__
0'8grammla,g
Dictionary
Tool•
Tool•
ayatein
models
ayatein
deecriptiona
O..lgn
Tool•
Oualhy
M•na,gem•nt
Tool•
eyatem
i
quality
prototyp,e.s
report a
and
epecificatione
O..lgn and
Documentation
Tool•
f
c-
Generetor
Tool•
i
project and
deeign models
ayatein
and
documentation program code
te.st rea,lta
and
te.st •cripte
CASI!
lt•po•ttorr
CASE repoaitoriea
are YIYIIIY atored
on aervera •o that
!hey may be aha red
( F I GU R E 3 - 1 6
CASE Tool Architecture
)
Information Systoms Oovolopmont
Mi.dtlleware is softwa re that h elps programmers Integrate the software belng
developed with various databases and computer networks.
Testl11g tools are used to build and execute test scripts t11at can consistently
and thoroughly test software.
Version co1itrol tools help multiple programmer teams manage multiple ,-erslons of a program, both d uring development ai1d after implementation.
Help a ·u thortng tools are used to write on Une help systems, user manuals,
and 01illne trainlng.
Repository ll11ks pennlt the ADE to Integrate with CASE tool products as
well as other ADEs and developm et1t tools.
>
Process and Project Managers
A tll.ird class of automated tools helps us manage the system de,-elopment methodoJ.
ogy and projects that use the methodology. WbUe CASE tools and ADEs are hllet1ded
to support ai1..1lysis, design, and construction of new information systems and software, p rocess manager appllcatio u and p roject m..'Uuger applicatio 11 tools are
intended to support cross llfo.cyde activities. ~Ucrosoft's Prq/ect and Nil-ti's Ope11
Worl:be1,ch and Project ,lla11ager are ex.ampJes of au tomated project management
tools. Because process and project management ls the subject: of the next chapter,
you•n: Jearn more about these automated roots lo thal chapter.
This chapter, along with the flrst two, completes the minimum context for studying
systems analysis and design . We have described that context in terms of the three
Ps- the partldpanis (the s takeholders; Chapter I), the product (the h1formatlon system;
Chapter 2), and the process (the system development; Chapter 3). Armed with this
w1<lerstandlng, you are now ready to study systems allllysis and/or design methods.
For many of you, Chapter 4, • Project Management; wlU provide a more complete
context for studying systems analysis and design. It builds on Chapter 3 hy emphasizlog a "-arJety of management issues related to rhe system deveJopment process.These
lnc.Jude methodology management, resource management, management of expectations, change management, and others.
For those of you who skip the project and process managemetll chap ter, your
next assignment w UI depend on whether your goal b :
• Acomprehensive survey c. systems deVelopment-We recomnend you continue )'OU' SEQuential
path to Chaixer 5, "Systems Analysis." In 1hat chapter you 'Nill study in greater del)1h the scope
definition, problem analysis, requirements analysis, and lo(ical design phases that were
introduced in Chapter 3.
• The study c. systems anal~is techniques-Again, we recommend you continue you- sequential
path to Chaixer 5, "Systems Analysis." Chapter 5 will provile a context for subseQuently studying
Ile tools and techniQues c. systems anal~is.
• Tl'e study c. systems design techniQue&-You might stil w.r,tto quickly skinl or re-.ew Chaixer5,
"Systems Analysis," for context. Then continue you-detail Ell study in Chapter 12, "System
Design." In that chaixer. you wil learn more about the l)(OO!SS and strategies for system design
and construction c. intoonation systems.
d,cptw n,,...
111
process manager
application a-i automated
tool that helps to document
and manage a methodology
and routes, its deliverables,
and quality management
S1B.Jldards. An e11erging
synonym is ITl9C'lodNa.f9.
project manager
application a-i automated
tool that helps to plan syS1em
development activities (pre inabty using the a;,proved
methodology), GStimate and
assign resources (including
people and costs), schedule
activities and resources, monilu1 µ1oy11:1:i1S 1;1.g<'.. imsl ~i.:hal.lul1:1
and b.Jdge t, oontrol and modify schedule ano resources,
and report project progess.
,-([)
0
~
::J
::J
co
:::::0
0
0
Q_
3
0
-u
112
Part One
1ho Context of Systems Dowlopmont Projom
Summary @
l. A systems de,--elopment proces., ls a set of actlvltles, mEthods, best practices, dellverables, and
automated tools that stakeholders use to develop
and continuously impro,--e informatlo11 systems
and software.
2. The capability Maturity Model (C~ll\l) ls a
frame\\'Ork for assessing the maturity level of
an orgailizatlon's lnformation systems deveJopment and management processes and products.
It defines the need for a system developmet1t
p rocess.
3. A system life cycle divides the life of an information S)'&em lnto two stages, systetns develop,nent
and sys:en1s operatto·n and niat11te11a11ce.
4. A systems development methodology is a
process for the system development stage. It defines a set of actlvttles, methods, best practices,
deliverables, and automated tools that systems
developers and project managers are to use to
develop and maintain information systems and
software.
5. 11,e following principles sho,~d underlie all systems development methodologies:
a. Get the system users in,-oJved.
b. Use a problem-solving approacl1.
c. Establish phases and activities.
d. Document througl1out development.
e. Establish standards.
f. Manage the proce55 and projects.
g. Justify Information systems as capital
ln,--erunents.
11. Don't be af.rald to cancel or revise scope.
i. Divide and conquer.
J. ues~n systems for growth and change.
6. System de,-elopment projects are triggered by
problems, opporttmltles, and directives:
a. Problems are undesirable situations d1at prevent the organlzation from full)• achlevtng its
purpose, goals, and/or objectl,-es.
b. Opportunlties are chances to lmprove the organlzation evet1 ln the absence of sped.fie
problems.
c . Dlrectlves are new reqttlrements that are lmposed by management, governmet1t, or some
exten1.1I influence.
7. Wetherhe"s PIECES frunework Is useful for categorizing problems, opportunities, and directives.
111e leuers of the PIECF.S acronym correspond to
Perfonnance, Information, Economics, Control,
Efficleocy, and Service.
8. Tradltiona~ basic systems de,-elopment phases
lndude:
a.
b.
c.
d.
e.
f.
g.
h.
Scope definition
Problem analysis
Requlrements analysis
Logical design
Decision analysis
Physical design and integration
Construction and testing
ltlstalL1tion and delivery
9. Cross llfe<yde actlvlties are actlvlties that o,--erlap many or all phases of the meti1odology. They
may lndude:
a. F:tct-tlndlng, the formal process of uslng re.
search, interviews, meetings, questio1u1.1lres,
sampling, and other technJques to collect information about systems, requlrements, and
preferences.
b. Documentation, the activity of recording facts
and spec-lflcations for a system for cti.rre.111 and
future reference. DoctL01et1tation is frequently
stored in a repository, a database where systems de,--eJopers store all documentation,
knowledge, and products for one or more
information systems or projects.
c . Presentation, the activity of communlcating
findings, recommet1dations, and documertation for review by lnterested users and managers. Presentations may be either wrltten or
verbal.
d. Feasibility analysis, ti1e activity by whlcl1
feasibility, a measure of how beneficial the
dtvdupuieul uf au i.t.tfuru1atiou :,y:,tetu
would be to an organJzation, is measured
and assessed.
e. Process management, the ongoing actlvJty that
documet1ts, manages the use of, and lmproves
a11 organlzatlon's choset1 methodology (the
"process") for systems development.
f. Project management, the activity of dellnlng,
planning, directing, monitoring, and controlling a project to develop an acceptable system
within ti,e allotted time and budget.
10. TI1ere are different routes through the baslc systems development phases. An appropriate route
ls selected during the scope deflnltlon phase
Typical routes Include:
a. Model-driven development strategies, which
emphasize the drawing of diagrams to help
visualize and analyze p roblems, define
lnfom,atfon Symms Oovolopmont
business requirements, and design information systems. Alternative model-driven
strategies lnclude:
I) Process modeling
II) Data modeling
UI) Object modeling
b. Rapid application developme11t (RAD) str.uegies, whlch emphasize extensive user ln\"'Olvement in the rapid and e,-oJution.ary
construction of working prototypes of a system to accelerate the ~'Stem development
process.
c. Commercial application package lmplementa,
tion strategies, wll.ich focus on the purchase
and lntegratlon of a software package or soJution to support one or more busine.s., fw1ctlons and lnformatlon systems.
d. System m.nlntetl.llflCC, wh.lc:h OCC\IJ"S after a system Is lmplema1ted and hlsts throughout the
system's lifetime. Essentlaliy,system maintenance executes a smaller-scale versJon of the
developma1t process with different starting
points depending on the type of problem to
be solved.
11. ,\Utomated tools support all systems developmeat
phases:
,. Computer,,lded systems a1gineerlng (CASE)
tools are software programs that automate or
support the drawing and analysis of system
models and provide for the translation of sys.
tern models Into application programs.
d,cptw Thrte
11 3
I) A CASE repository Is a system developers'
databose. It Is a phlce where deselopers can
store system models, demUed descriptions
and spedftcatlons, and od1er products of
~'stems development.
II) Forward engineering requlres that the sys.
terns analyst draw system models, either
from scratch or from tempL1tes. The resulting models are subsequa1tly transformed
Into program code.
UI) Reverse a1glneerlng allows a CASE tool to
read existing program code aod transform
that code into a representative ~·stem
model that can be edited and refined by
the systems anal)'St..
b. Application development environments
(ADEs) are integrated software de,'elopment
tools that provide all the fac-UJtles necessary to
develop new application software with maximum speed and quality.
c. Process management tools help us document
and manage a metl1odology and routes, Its deUverables, and qu.aUty m:uugemen1 standards.
d. Project managema1t tools help us plan system
developma1t activities (preferably using the
approved methodology), estimate md assign
resources (h1ciudh1g people and costs), schedule actlvitles and resources, monitor progress
against schedule and budget, control and modify sched,~e and resources, and report project
progress.
\';~:=S
Review Questions
C>
I. Explain why having a standardized system
2.
3.
4.
5,
6.
7.
8.
development process is important to an
organization.
How are system life cycie and system development methodology related?
What are the 1O underlyh1g principles for systems
development?
Why ls documentatlon Important throughout the
development process?
Why are process management and project management necessary?
What Is risk management? Why Is It necessary?
Which stakel1olders h'lltlate most projects? What
Is the Impetus for most projects?
Who are the main partlcJpants In the scope
definition? What are tl1elr goals in the scope
definition?
9. What are the tl,ree most important dE!Jverables In
scope dellnltlon?
10. Who are the main participants In tl,e requirements analysis phase? Why are they the main
participants?
11. What feaslblUty analyses are made in the decision
analysis?
12. What Is model-drh.. n development?
13. Why Is model.driven developma1t popular?
14. What Is rapid application developmffit (RAD)?
15. What benefits can RAD bring to tl,e system deve~
opment process?
16. What Is computer,'5slsted software engh,eering
(CASE)? List some examples of CASE.
114
Part One
1ho Context of Systems Dowlopmont Projom
Problems and Exercises
~
I. The Capablllty Maturity Model (C~ll\l) was developed b~· the Software Engineering ltlStitute at
Carnegie Mellon, and is widely used by both the
prJvate and public sectors. W11at ls the purpose
of the a~t framework and l1ow does ft achieve
this?
2. list the ftve maturity levels, and briefly describe
each of them.
3. Table 3-1 in the textbook Illustrates the difference lo a typical project's dwario11, personmonths, quaUry, and cost, depending upon
whethtr an organlzario11's system development
process is at Ot~l level 1, 2, or 3. Between
wh.ich two Ol!lt Jevels does an organ.izatlon
4.
5.
6.
7.
gain the greatest benefit in t erms of percentage
of lmprovemettt? What do you think is the
reason for th.ls?
Systetns ,leve.lop,11.e11t 111etbot10logy and systetn
Ilfe cycle are two terms that are frequei1tly used
and Just as freque ntly misused. What ls the dlfference between the two terms?
Describe how using a $)'stems development
methodology Is In line with C~ll\l goals and
can help an organization increase its maturity
level .
A number of underlying principles are common
to all systems de,-elopment methodologies. Identify tl,ese underlying principles and expfaln tl,em.
11,e PIECES framework was developed by James
Wetherbe as a means to classify problems. ldet1tify tl,e categories, then categorize the following
problems using d,e PIECES framework
a. Dupllcate data ls stored throughout the system.
b . These ls a need to port an existing application
to PDA devices.
c. Quarterly sales reports need to be generated
automatically.
d. Employees can gain access to confidential portions of the personnel system.
e. Uset h1terfaces for the lnventory system are
dtfficttlt and confusing, res,tltlng in a high frequeacy of lncorrect orders.
8. Each phase of a project includes spec!Jk deliverables that must be produced and delivered to the
next phase. Using tl,e textbook's hypothetical
FAST methodology, what are the dellverables for
the requirements analysis, logical design, and
physld design/integration phases?
9. Scope definition Is the first phase of the FAST
methodology, and it is either the first phase or
part of tl1e first phase of most methodologies.
10.
11 .
IZ.
13.
14.
15.
What triggers the scope phase, which stakeholders are involved in th.ls phase, wt1at two
essential questions need to be answered, and
what three lmportant deUverables come Oltt of
this phase?
TI1e requlrements analysts phase is an essential
pan of a system development methodology.
According to the FAST methodology, which &akeholders typically participate In this phase? What
Is tl,e primary focus of requirements analysis'
What is 1101 the focus? How should ead1 proposed requlremei1t be evaluated? What critic,J
error must be avolded?
In the FAST methodology, as well as most system
metl1odologles, system owners an d system de.signers do not participate in the requirements
analysis p hase. What do you think the reason is
for this?
What is t11e essential purpose of t11e logical design phase? How does it accomplish tltls? How
are technological solutions lncorporated ln this
pl1ase? What are some common synonyms
for this phase used by other methodologies?
Who are the typical participants in tltls phase?
What is agile modeling and what Is Its purpose?
What are the deUverables coming out of this
pl1ase? In terms of the development t eam, what
critical transition takes place by the end of this
pl1ase?
What is the essential p urpose of the physical desJg1.1 phase? Who must be invoJ,-ed ln this ph1se,
and wt10 may be lnvolved? What are the two
philosophies of physical design on the different
ends of the contlnlrum. and how are they different?
ls this a likely phase In whicl1 a project miglll be
canceled? Wltl1 what otl1e, phase is there llkefy
to be overlap, and what do you think Is tl,e
reason for this?
A customer has ei1gaged your software development company to de,--elop a new order-processlng
system. However, the time frames are very tight
and inflexible for delivery of at least the basic
part of tl1e new system. Further, user requirements are sketchy and unclear. W11at are two
system development strategies tl1at mJght be
adYantageous to use in tills e ngagement ?
What is the potential downside to using the
strategies described In the p receding question?
Information Systoms Oovolopmont
d,cptor Th,...
11 S
@ Projects and Research
I. Toe Software Engineering Institute (SFJ) at
c,megle Mellon Unlverslty has developed a series
of related CapabUity Maturity Models (CMMs). You
can read about these different C,_0.1 products at
SEl's Web site (http ://wWW.sel.cmu.edu).
a. Identify the current CM.M products helng mah>
rained or developed by SFJ.
b. Wh.at are their differences and similarities?
c. If you were to rate your org..'lnlzatlon, or an
organization with whid1 you are familiar, using
the CMM described in the textbook, at whlch
level would It be? Why?
d. Wh.at steps wouJd you recommend that your
organization take In order to ad·vance to the
a~t Jcvd?
e. Do you feeJ that d1e time, cost, and re.sources t ,)
advance to the next Jevel would be worth the
perceived benefits for your organization? Why
or why not?
ls Intended to be a framework for classifying problems, opportunities, and dhectlves.
Contact one of the ~·stems analysts for your
orgailization, your sd1ool, an<Vor another organizatio11. Ask them about tlte lnfonnation systems
used ht their organization aitd to describe what
the problems are In general terms. Sel«t three of
these ~·stems:
a. Describe the systems you selected, theh problems, and the organizations tl1at use them.
b. Use the PIECES framework in the tectbook to
categorize each system's problems.
c . Describe the PIECES category or categories you
found for each problem. Old each problem genernlly h .•'tve one or more c:a.tegorles assocbted
next
2. )'ou are a new project manager and have bee.n assigned responslblUty for an enterprise h1fonnation
systems project tl1at touches every dJvislon In your
organ.izatlon. The dllef executive officer stated at
project inltlatlon that succe55ft~ly implementing
this project was the number I priority of your organization .11,e project ls in midst of the requirements analysis phase. Wlille it ls on schedule, you
notice that attendance of the system users and
owners at meeting., 011 reqttlrements has been
dropping. A more experienced project manager
hts told you not to worry, that this is nonnal.
Should you be concen:led?
3, There are many different ..ystems development
methodologies ln use, each with lts own terminoJ.
ogy, and number and scope of phases. Search the
Web for frlfonnatlon on two or three of these
other ~·stems development methodologjes, then
do the following:
a. Note the systems development metltodologies
that you found. When, by whom, and why were
they developed?
b. What phases and terminology do they employ1
c. Draw a matrix comparing their phases to the
textbook's PAST methodology.
d. What slgnlfkant dlfferences dld you flnd?
e. Do you see any ad-v antages or disadvantages ht
any of the methodologies that you found con>
pared to the PAST methodology?
4. Toe PIECES framework, which was developed by
James Wethetbe and is described in the textbook,
with lt?
d. For the systems used by dlfferetll organizations,
what commonality dld you find in the categories
of problems? If you found a great deal of con>
monallty of categories, do you think this ls
slgnitlcant or just colnddetltal?
e. Where in the systems development llfe cycle do
you think the PIECES framework would be of
the greatest "-alue?
5. Computer-as.<;isted software et1glneering (CASE)
tools can slgnlficantly help developers Improve
productivity, quality, and documentaticu. Conduct
an Informal survey of about a dozen lnfonnation
technology departments reg,,rding whether they
use CASE tools, and lf so, what type. Also, find out
how long they ha,-. been using tJ,e CASE tools
and whether tJ,ey are used for all or Jmt some
projects. Add any other questions you may find
meaningful. Try to split yolU' survey between public and private sector agencies, and/or large and
small organizations.
What types of organizations dld you survey?
What dld you ask?
Wltat were the results?
Given the Umited and informal nature of tWs
survey, were you able to find any patterns or
trends?
e. Based upon your readings and your survey,
what are your feelings reg,1rdh1g the use of
CASE tools?
a.
b.
c.
d.
6. Projects at times are canceled or abancbned, sometime by choice, sometimes not. Re.search the Web
for articles on project abandonment sttategjes, and
select two of tltem.
116
Part one
Tho Context of Systems Dowlopmont Projom
a. W11at articles did you select?
b. W11at are thelr central themes, finding.,, and rec-
ommendations regard.Jog project abandonment?
c . Compare and contr.tst their findings and their
recommendations. Wllich strategy would you
choo,e, If any?
Minicases
d. Do you think tlut abandonh1g a project Is
always avoldable an<Vor always represents a
failure?
(]l
l. Interview at least two project managers. What are
their experiences with scope croep?
2. George Is the CEO of a major corporation that has
been trying to develop a program that captures the
keystrokes of employees on their computers. The
project Is current!)• $100,000 over budget and
behind schedule and wlll require at least another
Sile Is a • by the book• person who can always be
cow1ted on to do tllings ..rJght." Will Beatrice make
a good project manager?Why or why not?
4. A company is trying to decide between using an
off-the~helf program or developlng a cttStom
program for inventory management. The off-chesheH p roduct is Jess expensJve than tl1e custom
$50,000 and six months: to complete. The CEO
solution :ind still h,s: most of the needed func-
wants to continue the project because so much
has already beetl Invested In It. What Is your
recommendation? Why?
3, Beatrlce is an excellent manager-she ls very capable of nunaglng the bureaucratic process and
following the business rules in her corporatio11.
tlonallty. The CEO believes tl1at the missing capablllty can be addressed through tweaking tl1e
program once It Is purchased. As the CIO of tl1e
company, wh.at are your concerns and recommet1datlons to tl1e CEO?
Team and Individual Exercises
I. (feam) Hold team meetings ush,g different communications mediums. Examples: pl1one, e-mail,
virttta.l environment. Wll..1t dJd you notice about
the Impact of the technology on tile meeting? W..S
the prowctivtty of the meetings the same for each
medium} How did the team feel about the impact
creation of new Jobs when tills happens, but generally t11ere is a time lag between the strucrunl
loss of Jobs and the creation of new Jobs. How do
you feel about that?
3. (feam or Individual) Visit a neonatal hlletlSlve care
unlt at a h1gllly regarded medical center (such as
of the tcchnologlc.:, on the tc.un relatiomhl1>3?
UC 5;lfl fc.,nc.bco), Welte a ~hon papec on your
2. ()11dtvldual) The analysis and design of an Information system, done well, oftet1 eliminates jobs in a
company. Economlc theory strongly supports tile
thoughts of the Involved technology and the impact ft has on people's Uves. At the professor's
discretion, share wltl1 the class.
Suggested Readings
\!W
Amhl<'t; Scott. Agtle Alodeltng: B/fecttve. Practfc.es Jor extrenie Progm111111fng and the Un{fted Pt'Ocess, New Yo lk:
John Wiley & Sons, 2002. This is the ckfuiitht book on ag·
ile blC'thods and modeling.
Af)plfcatton Devetop11ie11t Trends ( ruonthl}' P<'riodical).
Framingh,rn, MA: Soft'\\<are Ptoducth•it)• Gtoup, Inc. This
is our &.vorite periodical for keeping up with the latest
tre,nds in nlC'thodology and autoblated tools. Each
month fC"aturcs se,-c,ral article's o n diffC",rent to pics and
products.
Dc:Marco, Tom. srructured Analysts a1J.d sysreni speaftc~
rton. En.gle\\'Ood aiffs,NJ: Ptt'tltice Hall, 1978. This is the
classic book on structutt-d systems anal-ysis, a proces,;.
ccnte~. modc l-drhtn blC'thodolog):
Gane, Chris. Rapfd systenJS Develop1ne11t. EnglC'Wood Cliffs,
NJ: Pltntkc Hal~ 1989. This book presents a nice ovd'\'le\\'
of RAD that combincs modcl-drh't'n dc-,.'C"Jopmc tt and
prototyping i.n the correct balance.
Gilck,rs!CC','<', ThoblaS. successful Data ProcesSfng S)1rte1ns
Anal)1sts, 2nd ed. EnglC'Wood Cliffs, NJ: Prcntke Hall,
lnfom,atfon Symms Oovolopmont
l S85. We arc indebted to GildcrsleC\'e for the creep·
ing committnc:nt approach. The classic:s ne,tr become ol>sokte.
Jacobson, J-,rar; Grady Booch; and James Rumbaugh. The
Untfted Softu,Ylre. D<!Velop1ne11t Process. Reading, l'i1A:
Addison.Wesley, 1999. The Rational Unified Process is a
currently popular example of a rnodcl.drh'C'Jl, object·
oriented lllC'thodology.
McCorutell, Ste,'t'. Rapta .oevetop1ne11t, Redmond, WA: Ml·
cr:,soft Press, 1996. Chapter 7 of this excellent refettncc
bcok provides "that may be the: dcfmith'C' summary of S)Stem dc,tloprncnt life cycle and methodology \'llriatioas
ttut " 'e call • routes• in o ur book.
Orr, Ken. 1be one Altnute. ,werbodolo~ NC'W Yotk: Dorsett
House, 1990. l'itust lt'ading for those interested in exploring
117
the: nttd for methodolog): This \'C'J')' short book can be read
in one sitting. It '31lov.,s the satirical story of an anal)'St's
quest for the ck,.'C'loprnent sil,tr bullet, • th:: one minute
methodology."
Paulk, l\otatk C.; Charles V. Webc.r; Bill Curtis; and l\otary 8C'th
O\rissis. 1be capabtltty Atarurtty Alodet: Gutdeltnes for
/111/)roVlng the Softu,Ylre. Pt'OC.ess. Reading. MA: Addison·
Wesley, 1995. This book fully describes ,'C'.rsion L 1 of the
Capability l'itaturity l'itodcl. Note that \'C'.r>ion 2.0 '\\':.U
under de\'t'lopment at the time " 'e " 'ere writing this
chapter.
Wetherbc, Jamcs. sysre111s A11af)1sts and Destr1i.· Best Pmcrtc.es, 4th ed. St. Paul, MN:Wcst, 1994. We ate indebted to
Wetherbc for the PIECES frarncv.•ork.
S1raleglc En1erprlse Plan
Strat.eglc 1ntormatbn Systems Plan
.,..
.............
"''"
rnpo,o a..i,_
"''"
lrrp:llf SuSNIU
PACC.....
IO«:M't.EOGE
COMWUNICATIONS
811.TEMEN'f OFWOFI(
11
PFI08LEM ST.ffl:WEHT ~~ N Pl:CES ...,._.,,,
~------,
e------~
INFCRMATION
•COP<
FUNCTION.t.L
&CO. .
OOWMJNICRIONS
SCO,E
VISION
'11610N
""°"
•
•
•
H ..a
II
~------~8USIIESS FIEOUREt.ENTS61ATE~N'f;--------,
....
....
SU51Na$ A SYSTEM
8USIIESS
8U61NESS
PAOOESS
REOUIFBIENTS
FIEOUIFIEWEHTS
HTEAFACE
AEOUAE~N'fS
LOOICM.
<.O<OCA<
HTEAFACE
.____ __,I
MOOEI.S
WOOELS
SY&TEM PAOPOSAL
(or REOUEST FOR SY&TEM PROPOSAL&)
AIJCHITECTURAL MOOEL
PHY61CAL
6U611ESSPAOWS
DESIGN
'""'"
~REDESIG~
SPECIFICATIONS
PHYSICM.
...
...........
USEAASY'STEW
HTEAFACE
"""'
SPECIACRIONS
FUNCTIONAL SY&TEM
OESGN
6PEOFIOOIONS
-
~
I
'
0
0
-·.. I
-·
'""""
CUS10W~ILT
APPI.ICIJION
OPERATIONAL &YSTE•
APPACWEO
TECHNOLOGIES
TECHNOI.OOIU
•!
I•
•
n i•
I
!I
f!
;
I
•
·!
INTE~ACE
SCLUTIONS
........
........
S1rat&gle En1erprlse 1ntormat1on ~enno1ogy Arcnltecture
I
I
•
I
•
I
I
J
r
r
'f
si i• Ir
i; l •
f
I
........
-
........
.........
a• •a
....
INTE~ACE
SCLUTIONS
POST.AUOIT IJEVIEW
APPACWEO
l
·1Ii I
•RAINING •ATERIALS
~Cl'ICIH.
se•
• !I
OE&IGN PROTOT\'PES
.........
......°"
I
!I
R
I
u
•
I
I
•
Project Management
Chapter Preview and Objectives
Project management skills are greatly in demand in the infonnation technology community. Project management is a natural extension of the previous chapter•s introduction to
system development. This chapter provides a process-centric sur,-ey of key project management tools and techniques as they apply to systems analysis and design. You will
knO\\' that you understand the basics of project management when you can:
I Define the terms project and project management and differentiate between project
and process management.
I Describe the cau.ses of failed information systems and technology p,tjects.
I De.scribe the basic competencies required of project managers.
I De.scribe the basic functions of project nunagement.
I Merentiate between PERT and Gantt charts as project management tools.
I De.scribe the role of project management software as it relates to project management
tolls.
I De.scribe eight activities in project management.
I Define joint project plannin.g and its role in project management
I Define scope, and write a statement ofwo1* to docun~nt scope.
I Use a work broakdown structum to decompose a project into tasks.
I Estimate tasks' durations and specify intertask dependencies on a PERT chart.
I Assign resources to a project and produce a project schedule with a Gantt chart.
I Assign people to tasks and direct the team effort.
I Use critical path analysis to adjust schedule and resource allocations in response to
schedule and budget deviations.
I Manage nser expectations of a project and adjust project scope.
120
Part One
1ho Context of Systems Dowlopmont Projom
Bob Martinez was in the office of his boss, Sandra Shepherd, discussing the SoundStage Member Senices system project.
•n,15 sure is a big project; Bob said, "bigger than anything I've ever worked on
before. How will you make sure ft stays on track?,.
.. '\X'ell, first we have to get consensus on the scope of the project and document assumptions and constraints," Sandra ai1SWered... '\X'e also have to negotL1re the ptoject
budget and sd>edule. Then we identify all the tasks that need to be performed.The FAST
methodology ls our template, but we always customize ft for each project. '\X'e have
to plan each task and analyze how its work and iis own schedttle tlt in with the overall
project.Then we assign people and other re.sources to each task. As d1e project goes on
we ha,--e to manage d1e proce.s., to make sure e,-erythfng scays 011 schedule:'
• wowl" Bob replied. •on some of the semester group projects I did lo collew,, we
Just kind of dived right in with the work. If we got behind we Just pttlled a couple of
all-nighters.·
.. Believe me," Sandra sald,"you don't want to be around when the finger pointing
scans on a real $)'Stems project tll..1C lS beh.J.ocl schedule or over budget.. Th.at's sometbit1g a coupJe of all-nlghters won't fix. We have a long road ahead of us, and we want
to plan tills as carefully as possible.•
~~~""
~ h_a_t_l_s_P_ro
~ je_c_t_M
~a_n_a_g_e_m_e_n_t_?~~~~~~~~~~~~~~)
project maaager the
person responsible for super.
vising a systems project from
initiation to conclusion. Sue.
cessful projeC1 managers
possess a wid; range of tech·
nical, manage11ent, leader.
ship, and communication
skills.
project a sequence of activities that mustOe completed
on time, 'Mthin budget, and
according to S,)ecification.
Most of you are familiar with Murphy's Law, which suggests, "If anything can go
wrong, It wlU." Murphy has motl>-ated numerous pearls of wisdom about projects, ma.
chines, people, and why things go wrong. This chapter wlU teach you strategies, tools,
and techniques for project management as applied to information systems proj,cts.
The demand for project man..'lgers ln the information systems commw1ity is
strong. Typically, IS project managers come from the ranks of experienced IS deve~
opers such as systems analysts. Whtie It Is wlllkely that your first Job responsibilities
will include project management, you sl1ould Immediately become aware of project
management proces.,es, tools, and teduliques. Eventually you will combine tlli.s
kt1owledge with development experience plus your own observation of project managers to form tl1e basis for your own career opporrwlitles in project mai1..1gement.
Before we can define projec.t nU11J.age,ne1l.f. we should first define project. There
are as many definitions as there are authors, but we Uke the definition put forth by
Wysocki, Beck, and Crane:
A project is a [temporary) sequence of unique comp!~ and connected activities tl1..1t have o ne goal or purpose and tl1..1t must be completed by a specific time,
within budget, and according to speclflcatlon. 1
111e keywords are underlined to draw yottr attention to some key aspects of the defi.
nltio11. As applied to information system development, we note the following:
A system de,--elopment process or metl1odology, sud1 as FAST, defines a
sequence of acrOiUes, mandatory and optional.
Every system development project is unlqtte· that ls, it ls different from every
other system developme11t project tl1at preceded It.
111e actMties that comp<ise system de>'elopment are relati>'ely complex. They
require the skills tbat you are leaming In d1is book, and they reqttlre tlut you be
able to adapt concepis and skills to changing conditions and unant!dpQ!ed eTI?nlS.
1Robtn K. Wysocki, Robtn lkc.k.,Jt., 11b:I Dav.cl 9. Ch:t1c.E.ftd1it't' Prq«f ,Wfl#lfltll1#:#I: Hatuto P1'1f, ,Wauaat, """
J:klii,,:r t+oj«tso,i n ·nw (1/#ditilbN, BNd&tl<NewYOl.'t:Jobll. Wtl,:y& Sor.. 199». p. -l8.
Projoct Managomont
chapter Four
121
By now, you·,--e already learned that the ph.ases and activities that make up a
system development methodology are generally sequential. WbUe some tasks
may overlap, many tasks are dependent on the completion of other tasks.
The de,-elopment of ait Information system represents a goal. Severa) objecttves may need to be met to achieve that goal.
Although many infonnatlon system development projects do not have
absolute deadlines or spec:lfied times (there are exceptions), they are notoriously completed later than originally projected. This is becoming Jess acceptable to upper management given the organlzationwide pressures to reduce
cycle times for products and bush1es., proces.,es.
Few informatio11 $)'stems are completed within budget. Agait1, upper management Is increasingly rejecting tllls tet1dency.
lnformatio11 systems must satisfy the business, user, and management expectations acr:on11ne ro specfOcarlons (wll.ich we call requirenie11ts tlvoughout
this book).
For any $)'stems development project, effectl,-e project m..1..o.agement is neces- project managemeot the
sary to etlSltre that the project meets the deadline, ls de,--eloped witllin an acceptable process of scop ng, planning,
organizing, directing,
budget, and fulfills customer expectations and specttlcatlo11S. You learned lo a1apter 3 S1affing,
and controlling 1ho dovolop
tl1at project management is a cross life-cyde activity because It overlaps all phases ment of an accxptable syS1em
of any systems developmetll methodology.
ata minimum cost within a
Corporate rigillslzing has changed the structure and culture of most orgmllzations specified ti me frame.
and, hence, project managemei1t. More flexible and temporary interdepartmental teams
tlut tre gtven greater responsibility and authorfty for the succe.s., of organizations have
replaced rigid hlerardllcal command structures and permanetll teams. Contemporary
system development methodologies depet1d on having teams that Include both tedullcal and 11onrecbnlcaJ users, managers, and information technologists all directed to the
project goal.11,ese dynamic teams require leadership and project managemei1t.
Orgail.izatio11S take different approad1es to project management. One approach ls
to appoint a project manager from the ranks of the team (once it has beet1 formed).
Alten1atlvely, many organizations beUeve that successful project managers apply a
unique body of knowledge and skills that must be learned.111ese org;ullzations tend
to hire an<Vor develop professional project managers who are thet1 a~Jgned to one or
more projects.
Toe prerequisite for good project management Is a welklefined system development process. In Chapter 3, we introduced d,e CapablUty Maturity Model (OU.I) as a
framework for quality managemei1t that ls based on a sow1d systems de,--eJopment
p rocess. In Chapter 3 we dlfferei1tiated betweei1 p roject and process manaaemenr.
Project management was defined above. Process m:a.o.agement is an ongoing actt,~- process mao.agemeot the
Jty that docttmet1ts, mai1..1ges the use of, and Improves an organlzatlon•s chosen activity of documenting,
methodology (the ..process") for systems development. Process management is con- managing. and contin ualty
improving the process of
cemed witl1 tl,e activities, deU,-.rab!es, and quaUty standards to be applied to all proj- systems development
ects. The scope of proces., management is all projects, whereas tl1e scope of project
management is a single project. This chapter wUI focus on project management.
1
>
The Causes of Failed Projects
What causes a project to succeed or fall? Chapter 3 Introduced 10 basic principles of
systems de,-etopmenr tl1..1r are critical success factors for all projects. See Chapter 3 for
a re,iew of those principles. From a project management perspective, a project Is
co11Sldered a success lf:
The resu.lting infonnatlon ~·stem is acceptable to the customer.
Toe system is delivered •on time."
Toe system is delivered "within budget.•
The ~·stem development process l1..1d a mlnhml lmpact on ongoing bush1ess
operations.
122
Part One
1ho Context of Systems Dowlopmont Projom
Not all projects meet these criteria, and as a result, not all projects are successful.
Failures and limlted successes far outnumber successful information systems. Project mismanagement can undermine the best appUcation of the systems analysis and
design methods taught In this book. We can develop an appreciation for the Importance of project management by studying the mistakes of some project managers.
Let's examine some project mismanagement problems and consequences:
Fa/Ju.re to establish upper.nw11age111e1U cotntnittnent to the project- Sometimes commltmet1t changes during a project.
Lack of orga11izarto11's cottnnir,nent to the S):Ste,n develop,1,e11t tnethodologyMany .-ystem development med1odologles do little more than collect dust.
Takl11g sborta,ts through or aro·u nd the S)Sfetn develop,11.e nt ,netbodologyProject teams often take shortcuts for one or more of the followlng reasons:
11,e project gets behind sd1edtde, and the team wants to catch up .
The project is over btdge~ and d1e team wants to make up costs by
skipping steps.
The team is not tralne:1 or skilled in some of the methodoJog)''S act:lrtties
and requirements, so It skips them.
Poor e.Ypectatto1,s ttJ.anagetnent- All users and managers ha,-e expectations
of the project. Over time, these expectations may change. 1bls can lead to
two w1deslrable situations:
scope creep the unex.
Scope creep Is d1e unexpected growth of user expectations and bu;!.
pected and g a.dual growth of
requirements during an infor.
mation systerrs project.
ness requirements for an information system as the project progresses.
The schedule and budget can be adversely affected by sud1 changes.
Feature creep is the w1controlled addJtlon of tedulical features to a
system under de,--etopme nt without regard to schedule or budget.
feature creep the uncon.
trolled additior,of technical
features to a sy"Stem.
Pre1nat1,re co,n·,nitnmJ.t to a fixed b ·u dget and schedule- )'ou can rarely
make accurate estimates of project costs and schedtde before completing •
detailed probletn a,mysls or requirements analysis. Prematttre estimates are
inconsistent with tl1e creeping commltment approach Introduced in a,aprer 3.
Poor estl1natl11g tecbnlqr-1es- ~tar1y systems analysts estimate by making 1
best-calctdated esthnate and then doubling t11..1t number.111.ls is not a sdentlJk approach.
OVeropllmtsm- Systems analysts and project managers tend to be optimists.
As project schedules slip, they respond, "No big deal. We can make It up
later;" They fail to recognize that certain tasks are dependent on other tasks.
Because of these dependencies, a schedule slip In one phase or activity wlU
cause corresponding slips ill man)' other pl1..,ses and activities, thus conUibuting to cost overruns.
The mytbl.cal mm•mo11tli'- As the project gets behind schedtde, project
leaders frequet1tly try to solve the problem by assigning more people to tl1e
team. It doesn't world 111ere ls 110 Unear relationship between time and oumber of perso1u1el . The addition of personne l usually creates more communication problems, causing the project to get evet1 further belllnd schedule.
/1,adequate people n1anage1nent skllls- 1"1anagers tend to be tlvust: into
management positions and are not prepared for management responsiblUties.
Thls problem Is easy to identify. No one seems to be ln charge; cusromets
don't know tl1e status of the project; teams don 't meet regtdarly to discuss
and mon itor progress; team members are11't commwlicating with one
another; the project is always said to be •95 percent complete."
Fal/u.re to adapt to bu.sl,~ss change- If t11e project's importance changes
d urlng the project, or if the mai1..1gement or the bush1ess reorg;ul.izes,
Projoct Managomont
chapter Four
123
projects should be reassessed for comp atibility with those changes and their
bnponance to the business.
Jnsufftcient n,sou.rces- Thls could be d ue to poor estimating or to other
priorities, or ft could be that the staff re.sources assigned to a project do not
posses, the necessary skills or experience.
Far.tu.re to '711.anage to the plan"- Vatious factors may cause the project manager to become sidetracked from the original project plan.
Ultimately, the major cause of project failure is that most project managers were
11ot educated or trained to be project managers. Jusl as good programmers do11't always go on to become good ~·stems analysts, good ~·stems analysts don't automatically perform well as project managers. To be a good project manager, you sho,dd be
educated and skilled In the •art of project management .•
>
The Project Management Body of Knowledge
T he Project Management Institute was created as a professional society to gulde the
development and certlflcatlon of professron.a l project managers.The Institute created
the Project Management Body of Knowledge (PMBOK) for the education and certifl.
cation of professional project managers.This diapter~ content was greatly Influenced
by the PMBOK.
Proie<t Manager Competencies Good project managers possess a core set of
competencies. Table 4-1 summarizes these competencies. Some of these competencies can be taught, In courses, books, and professiet.1..11 workshops; however, some
come only with professional experience in the tleld.There are two basic premises of
project management competencies: First, indJ'\oiduals cannot mat1..1ge a process they
'
r TA II LE 4 • 1 Project Manager Competencies
Competency
How to Obtain?
Explanation
Business Achievement Competencies
Bu$iness
m\'Ol'91'1QSS
Bu$iness partner
orientation
CanmitmMtto
qoolity
Ties every systems projed to the miss;on, vi$ion, and goal, of the
organization.
Keeps manogors and u,en in,olv,,d fi roughout a sy,19m, project.
Busines,$ experi"1Ce
Ensure, that r,,ery ,y,tem, project rontribut.. to fie qualily expectation
ol the organization a, a whole.
Busines,$ experi"1Ce
Busines,$ experi"1Ce
Problem·Sotving Competencies
lniiativ,i
lnfonnation
gcmering
Analytical
thinking
Caiceprual
thinking
Demonstrates creativity, calculated ri$k$, and per$i$lence nec»ssary to
get the job done.
Skillfully obtain, the fooual information neai..ary to anolyze, de,ign,
and implement Iha infonnation ,y,tern.
Cano...., ond ,elect appropriat<> systom dovelopmMt proc.. , .. ond
use project management tool, to pion, ,chedule, and budget for
,y,tem development.
Con solve problem, through Iha analflical approach of derompo,ing
,y,tem, into !heir part, ond ihen rea.,.mbling Iha part, into impro,,id
,y,tem,.
Undorstond, , y,tem, iheory and app!i"' it to sy,tom, analy,i, and
des.ign of information systems.
Busines,$ experi"1Ce
Cho pl<>r 6 in ihi, book
pl u$ busines,$ experien c»
Thi, chapler
Chopi<>n 8, 9, end 11 in
th i, book plu, bu ,i....
experien c»
Cho pl<>n 2 ond 5- 11 in
thi, book
continued
124
Part One
TA B L E 4 - l
Competency
1ho Context of Systems Dowlopmont Projom
(Continued)
Explanation
How to Obtain?
Influence Competencies
Interpersonal
awaren&$5
Unden.tonds, recognizes, and reads b interpersonal motivations and
behaviors.
Anticipaticn of
impact
Undorsrond, the politics of the orgonizalicn ond how lo use them in a
project.
Unden.tonds implications of project decisions and ma noges
axpodalicns and risk.
ResourcefJ use
of influence
Skilllully obloin, cooporaticn and (X)ll,en,u, of managers, users, and
technologists to solutions.
Organizational
awaren&$5
Can be learned in course$
but requires. bu$ine$S
Ql(perience
Bu $ine$S Ql(perience
Introduced in this chapter
but requires. bu$ine$S
Ql(perience
Bu $ine$S Ql(perience
People Management Competencies
MotiYOling
Coaches and dirQ individuals to overcome differences and achieve
othon
projod gooli os a toam.
Communicotion
,kill,
Communico19, olfoctiwly, both orally and in writing, in tho ccn!Qxt of
meetings, presentations, memos, and reports.
Monitoring and
ccntroling
Ensures that project team members receive sufficient training,
assignments, supervision, and performance faecbxk required to
ccmple19 project..
D"'9iop, the project plan, ,chedulo, and budget and (X)lllinuou,ly
monitors progress and makes adjushnenb when necessary.
Bu $ine$S Ql(perience
Can be learned in course$
but u,uaily roqu i '"'
bu$ines.$ experience
Bu $ine$S Ql(perience
Tool, and 19chniqu..
!ought in this chap19r, but
requires. project experienoa
Self·Monagement Competencies
S.11-confid•nai
Stress
Comis19ntly moko, and defond, doci,icns wi'h a strong personal
ccnfidenai in the proa,'5 and/or fact,.
Worb oll,ictiYOly under pro'5uro or adY<1nity.
Bu $ine$S Ql(perience
Con$i$1entfy and hones.~y deliver$ on promi$&$ and solution$, Maintains
technical or bu$ines.$ currency in lhe field 0$ appropriate.
Capable of adju$ting proC9$$1 management rtyle, or decision making
based on situoticn, and unan~cipa19d probl<rns.
Bu $ine$S Ql(perience
Bu $ine$S Ql(perience
management
Concern for
;~d,b,lity
\__axibility
I
Bu $ine$S Ql(perience
Soun:~ Ad1pted &om RobM K. ~ Robtrt Bedt. Ir~ 111d O.Vid B. Ci:rul&. Eff«tiT< P,oj«t J/Qtllgosnw: How to P/Ollf. '4411•, #14 Ddi,~ Projtttsott TtM tUld
witlliit lm4g<r (NtwYotkl Job11 V.'ilc,' & .son., 1995).
have never used. Second, mai1..1gers must ba,-e an understand.fog of the business and
ct~ture that provides a context for the project.
Proiect Management functions 111e txtsic functions of a project manager ha,--ebeen
studied and refined by management theorists for many )'ears. These flu1ctions include
scoping, plannlng, staffing, orpnlzlng, sd,edullng, directing, controlling, and doslt1g:
Scopt11g- Scope defines the botmdarles of the project. A project manager
must scope project expectations and constraints In order to plan acti,itlts,
estimate costs, and maiuge expectations.
Pla,111t11g- Plaonlng Identifies the tasks required to complete d,e project.
Thls is based on the manager's understanding of the project scope and the
methodology used to achieve the goal.
Estlmntt11g- Each task that ls required to complete the project must be estimated. How much tlme wJU be required? How many people wUJ be needed?
Projoct Managomont
chapter Four
12S
W11at skJUs wlU be needed? W11at tasks must b( completed before other tasks
are started? Can some of the tasks overlap? How mud1 will it cost? These are
aU estimating issues. Some of these issues can be resolved wJd1 the project
modeUog tools that will be discussed Liter in this chapter.
Scbedull11g- Glven the project plan, the project manager ls responsible for
scheduling all project actlvttles. Toe project sched,de should be developed wid1
an understanding of the required tasks, task duration, and task prerequisites.
Orga1J:f.zt11g- TI1e project manager should make sure that members of the
project team w1derstand their own indl\oidual roles and responslbilltles as
well as their reporting relatlonshlp to the proj,ct manager.
Dlrectt11g- Once tlte project has begw1, the project manager must direct the
team's actfvJties. Every project mai1..1ger must ck>monstrate people management
skills to coordinate, delegate, motl'\o-ate, ad"ise, appraise, and reward team
members.
Controllt11g- Ptthaps the manager's most dlffindt and important function Is
controlling tlte project. Few plans will be executed without problems and
delays. 11te project manager must monitor and report progress against goals,
schedule, and costs and make approprlate adjustments when necessary.
Clo&lng
Good proje.ct managers :ii-ways assess successes and f:illtr.res at the
conclusion of a project. They learn from their mistakes and plan for continuous Improvement of the systems development process.
All the above functions are dependent on ongoing Interpersonal co111.1n·u11:lcaff-011
among the project manager, the team, and other managers.
Proie<t Management Tools and Techniques-PERT ancl Gantt Charts The
PMBOK Includes tools and techniques that support p-oject managers. Two sucl1 tools
are PERT and Gantt charts.
PERT, which stands for Project Evalt,atlo·n a1ul Revle11J Tecb11:lque, was devel- PER'f cban a graphical net·
oped in the late 1950s to pL1n and control L,rge weapons developmetll projects for work model use:t to depict the
the U.S. Navy. A PERT chart is a graphlcal networt model that depicts a project's interdependencies between a
tasks and the relationsh..lps between those tasks. A sample PERT chart is illustrated project's tasks.
In Figure 4-1. PERT was de,'eloped to make clear the lnterdepe,ubmce betweet1 prot
ect n.sks before those tasks are scheduled. TI1e boxes represent project tasks (we
used phases from Chapter 3), (fhe content of the boxes can be adjusted to show Gaott c han a bar chart
to depict s:roject tasks
various project anrlbutes sud1 as schedule and actutl start and finish times.)The ar- used
against a calendar.
rows lnd..lcate that one task ls dependent on the st.arc or completion of another task.
The Gantt cb:ut, B..rst concei"-e-d by Henry L G:intt in t 917, is the m o st commo nly
used project scheduling and progress evaluation tool A Gantt cb...1.rt is a simple horizontal bar chart that deplcts project tasks against a calendar. Ead1 bar represents a
named project task. The tasks are listed vertically In the left-hand coluntn.11te horlzonttl ax.ls is a calendar tlme line. Figttre 4-2 illustrates a ph..,se..level Gantt d1.art, once
ag,110 based on Chapter 3. We used tlte same project tl1at was illustrated In Figure 4-1.
Gantt charts offer the ach--antage of clearly showing overlappt11g tasks, that is,
tasks that can be performed at tlte same time. Toe oors can be shaded to clear~· h1<licate percentage completion and project progress. The figure demonstrates which
phases are ahead of and behind scbedtde at a glance. Toe poptdarlty of Gantt charts
sterns from tl1elr simpliclty- tltey are easy to learn, read, prepare, and use.
Gann and PERT charts are not mutually exclusive. Gantt d1arts are more effective
when you are seeking to communicate schedule. PERT d1arts are more effective
when you want to study the relationships between tasks.
Proiect Management Software Project management software ls routinely used to
help project managers pL1n projects, develop schedtdes, develop budgets, monitor
progress and costs, get1erate reports, and effect change. Representatfve automated
project managemetll tools are listed In the margin.
PROJECT
MANAGEMENT
sonwARE
Niku's Projed Manag«
Artemis lrtemdiooal
ScltAions Capo,ation~
{KJ(!J
Computer Asiociates'
Al/Fusion Pr<eess
Manag11T1ent Suite
Microsoft's Project
Primawra's Project Planner
and Project Maiager
C/S Solulioni' Risk+.
126
Part One
1ho Context of Systems Dowlopmont Projom
Scope 0-ifiNtion
Legend
I
Task
I Scheduled
Start
Schedued
Rnish
Actual S1art
AC1U'1
Rnish
I
II
I
intertask
dependency
I
I Scheduled
S1art
Scheduleo
Finish
AciUal Start
Actual
Finish
I
I
I
Task
I
Oacision Anatysis
''
.
6-13-2001
''
7-30-2001
B!f!HfiiiifHfI Bii+HfEFiiHfI FiffHf-fFfHfI
i
Physical Oesign
( FIGURE 4 - 1 APERTChart
\X'e wUJtead1 you project modeling and mai1..1gement techniques ln the context
of project management software. We used ~ficrosoft Project because that tool is
frequet1tly avalL1ble to students and Institutions at special academic prices through
their college bookstore. ,_Ucro!oft Project, like most project management software
tools, supports both PERT and Gantt dtarts.
Figure 4-3(a) Ulustrates one possible ~Ucrosoft Project Gantt d,art for the Sow1dStage Member Services project.We call your attetlllon to the following numbered oollets:
O
0
TI1e black bars are sutntnary tasks that represent project phases that are fur.
ther broken down into other tasks.
Toe red bars indicate tasks that have been determined to be critical to d,e
sd,eduJe, meaning that any extension to tl,e d uration of d1ose tasks will delay
oth er tasks and the project as a whole. \X'e1J talk more about critical tasks later.
Projoct Managomont
ID
Chaptor Four
127
TaticName
1
Problem Analysis
2
Requirements Analysi.s
9
Logical Design
4
Decision Analysis
S
Ph)'Slcal Design
6
Co~truction & Teating
7
Implementation & Delivery
-
Today
Legend
-
Compa.1,•
U R E 4 - 2 A Gantt Chart
)
CF I G--------~
~·
O
O
0
The blue bars lndlcate tasks tllat are not critical to the sd1edule, meaning
they have some slack time during which delays will not affect other tasks
and the project as a whole.
The red arrows indicate prerequisites berween rwo critical tasks. (fhe blue
arrows indicate prerequlsltes between two noncrltlcal tasks.)
The teal diamonds l.ndlcate milestones--e,tenrs tl1..1t ha,--e no duration. They
,ignlfy the end of some signlflcant task or deli,erable.
Figure 4 -3(b) shows a Microsoft Project PERT chart based on the same project
plan that was illustrated ln the Gantt chart. The contents of each cell ln the task rectangles are able to be customized In ~Ucrosoft Project.
( The Project Management Life Cycle
Recall from a.apter 3 d,at d,e capablllty Maturity Model defines a fnmeworl< for assessing the qualtty of an organization's Information ")'Stems development acttv!tles. CMM
Level I ls defined as•initial' and Is characterized by the lack of any consistent project or
process management function. The first stage of maturity impro,--ement ls to Jmple.meut
a consistent project management function- called O~f Leve.I 2. In this section we
introduce a project management life cyde representative of Cl\lM Level 2 maturity.
Figure 4-4 lllustr2tes a project management process or life cyde. Recall that project
management ls a cross Ufe-cyde activity; that is, project management actlvltles overlap
all the system development phases that were Introduced In a,apter 3. The illustrated
project management actlvJties correspond to classic man..1gemet1t functions: scoping,
planning, estimating, scheduling, organizing, dlrectln@, controlling, and dosing.
The project management process shown in Figure 4-4 lncorpor2tes a Joint project
planning (IPP) technique. 3Joint project planning QPP) Is a strategy wherein all
~ k i . Beek. arid Cltitnc-. liffev:th~ P,vd«t ,Va11'«1!1:1Nfflt: llot11 to Pfa,i, ,lf'11'«1!1:, i1Nd Dclivtl Pn:j«ts ON Tinit mNI
tt'itbi,,Bud,t
J?al!!.
Joint project plarutiJlg
(JPP) a stratsg/ in v.nich all
S1akeholders atend an inten·
sive workshop aimed at
reaching consensus on
project decisions.
128
Tho contoxt of Systoms Dovolopmont Projocts
Part one
J.!)'."'
Ult-,
i'oo"' , _
£""'
~~ ~
--____
10 Ii \l 4i[)i :,. A flll ~ C "' 'fo - •-- at•. tJ
• ...... • II I 11. ;5 -tt ,s
.,.G_
. , ...
' ..
......
·--·
. 0
...'""'""'_,.
-....---__ '""i-0...c:-...'\.-_--,,··--}._.._....
~--,
··--·--·
___
_
~·---·
·
,
.
--l~
~
-·-·
)..----·
_..._..,
~ ..i..;..,----··----··.,_.-__
0
,,_...,
___
•l,.,.,...........
.i, ..._
_
--
~Je.o-.....- -
1,_ _ _ _
,...
•l _ __
...
,,~-··-·
_..__- _
_____
......._____,
1:1 ,_
... .. _
" °""'*" ___
0
.:J'.:.I
.;...
~ !!!!!!!!::irh
(a)
...
~€" i9 /JIM ! - ~ -
o~ g •t\.:J
- :,- ,
14,.
f!<tqo.: ~ :t'"
•
·-
-a
.' ,
.----,.
..
.-----,._
.___,.
·-·
I
·--
.'
c
(b)
F IG U R E 4 • 3
Microsoft Project Gantt and PERT Charts
)
Projoct Managomont
chapter Four
129
CENTERS oi: EXCELI.E.NCE
~
metnoao1ogyorproceeaetandilra,
_ _ .:. ~~J
~.,. .
. . . . .f
METHOOOU)CY .l!CI
o, .,.....
.:i:
Prooe• ana Pro1ect
Manl!lgement
----
1111111
.1. . .
, ..1
.-----· - ·,
I
comp1eteo
1
exper1enoee,
011servation,.
ana
Project
Experiences
~::-1
team
i,u11c11ng
e.uggestlon,
!
...+----- ....
TM·i PROJECT TEAM
.,.
Pf1:19te88
_
ana
Mtl.matee
ana1ye1s
oprn1one
S'1'8TEM OwNEA&, U9ER8, OUCNEA&,
9Ut.OEFl9, AHO AHALY81'8
Ml.lee.tone
i
comp1et1on
reaoutte
commitment,
(external )
Progree,
~r~
..
~ ,
..
AMlgnmentt
ana euaget
IIANAGEME.NT
J_
.• ·• . ..
.
M.lNACEFIS N)T ON THE
PROJECT TEAM
G
GU R E 4 • 4
A Project Management Life Cycle
•
,+--Scneau1ea
Taak8
'
____
stakeholders ln a project (me:uling system owners, users, analysts, designers, and
builders) partldpate In a one- to tbree-0ay project mmagernent workshop, the nmdt
of wlllch ls consetlS\lS on project scope, schedule, res)urces, and budget. (Subsequent
wod(shops or meetings may be required to adjust scope, budget, and sched,de.)
Notice that In JPP, d,e project team is actively lnvolwd In all inputs and deliverables
of all project mai1..1gement actl\oitles.
In the following subsections, we will review eadl of the illustrated project managemet1t activities and discuss how rouse appropriate p roject management tools and
tedmlques.
)
130
Part One
1ho Context of Systems Dowlopmont Projom
>
scope the boo ndaries of a
project-the areas of a
business that a project may
(or may not) address.
Activity I-Negotiate Scope
Perl1..1ps the most important prerequisJte to effective project management occllJ'S at
the beginning. All partles must agree to the project scope before any attempt Is made
to ldentlfy and schedt~e tasks ot to assign resources (people) to tbose tasks. Scope defines the expectations of a project, and expectatlons ultlmately detennlne satisfactlon
and degrees of success. Accordltigly, the negotL1tlon of project scope ls a necessary activity In the project management life cycle. What Is scope? Scope defines tl,e boundaries of a project- the parts of the business tbat are to be studied, analyzed, designed,
constructed, lmplemetlled, and ultimately improved. Scope also defines the aspects of
a system that are considered outsJde the project .The answers to five basJc questions
influence the negotiation of project scope:
Product- What do you want?
Quallty- How good do you want It to be?
Tt1ne- Whet1 do you want Jt.?
Cost- How much are you willing to pay for It?
Reso·urces- What re.sources are you willing or able to bring to the table?
Ncgo tL'ltio n o f the abo ve facto t3 l3 a give-and-take .1.ctJ:vJty that lncludc.:, ,nuch he,.1.-
statemeot or wor k a
narrative description of the
work to be performed as
part of a proje:t. Common
synonyms include scope
statomont, pro;.ct delinifon,
pmject ovQtlliew, and
docvmont ol <nderstandng
tlon .The deliverable ls an agreed-on s t..1.temei1t o f work tl1at describes the w«k to
be performed d uring the project. In consulting engagements, the statement of work
has become a commonly used contract: between tl1e consultant and client. Tilis
approach works equally well for internal system developm ent projects to establish a
contract between business management and the project: manager and ream. According ro Kean e, Inc . , a leading project management consulting firm,
The statement of work affirms that the project manager understands who Is really
in diarge of d,e effort, who Is controlling tl1e purse strings, what Is the formal and
informal organizatlon within which tl1e project w UJ be developed, who are tl1e
.. klng.1 and queeiu" t11at ha,-e lnrerest, and other similar bur maitlly nontedulical
issues. It establishes a firm business reL1tJonsbip between the project manager
and both the customer and tl1e extet1ded project team.'
An outline for a rypJcal statement-of-work document ls sl1own ln Figure 4-5. The
size of the documet1t wUJ "-ary fn dtfferei1t organJz.atlons. Ir may be as small as one ro
two pages, or it may rtm several pages.
>
wor k bteakdowo
structure (WBS) a
graphical tool •Jsed to depict
the hierarchic.al decomposition
of a project into phases,
aciivities, and tasks.
Activity 2-ldentify Tasks
Given the project scope, the next acmity Is to identlfy project tasks.Tasks identify the
work to be done.Typically, this wod< Is defined in a top-down, outline manner. In Chapter 3, )'OU learned about system developmetll routes and their phases. But phases a,e too
large and complex for pfaonlng and scheduling a project. We need to break them down
into actlvJtles and tasks w1til each task represet1ts a m:uu.geable amotmt of wort that
can be planned, schedtded, and assigned. Some experts advocate decomposing tasks until the tasks represent an amotmt of work that can be completed h1 two weeks or (es,.
Ultlmately, tl1e project maooger will detennlne the level of detail in the outline;
however, most system developmet1t methodologies decompose phases for you- lnro
suggested actfvitles and tasks. These actl'\oitles and msks are 11ot necessarily car,l!d in
stone~tl1..1r is, most methodologies aUow for some addition, deletion, and changing of
acmities and tasks based on tl1e unique nature of eacl1 project. One popufar tool used
to Jdet1tlfy an d doatn1et1t project acthitles an d tasks ls a work breakdown structure.
A work breakdown s tnictu re (WBS) is a hierarchical decomposition of the ptoject
h1to pl1..1ses, actl'\oitles, an d tasks.
•up,:bkd ILlld ltY~cd by Doriald H. Plutnbd; P,o,{Ndi(.ily ,llatM&f:l#fflt: KININtS Proj«t ,llRnafFl#ff# App,o,ubfo,
S)'lllWU lkt'l'kpNW#I 03otton: ~ Inc.,
1~9'). 22:,
Projoct Managomont
STATtMEHT Of WORK
I.
II.
Ill.
ll\Jrpose
Bacl(graund
A. Problem, opportunitY, or directive statement
8. History leading to pioj ect request
C. Prtject goal and obj ectives
0 . Product description
Scope
<rw:io« h ~ ol N: inJorm.,,;on ¥1Cm b.ildris bbcls)
A. Stakeholders
IV.
B. Knowledge
C. Processes
0. Communications
Project Approach
A. Route
8. Deliverables
V,
MancQerial Approach
A. Team-building considerations
8. Manager and experience
C. Training requirements
0. Meeting schedules
E. Repating me1hods and frequency
VI,
!=. Conflict management
G. Scope management
Cc:ns1raints
A. Start date
B. Deadlines
C. Budget
D. Technology
VII.
Ballpal( Estimates
A. Schedule
B. Budget
VIII,
Cc:nditions of Satisfaction
IX
A. Success criteria
8. Assumptions
C. Risks
Appendixes
Work breakdown structures can be drawn usfr1g rop-down h.ierarchy charts similar to organization charts (Figure 4-6). In ~Ucrosoft Project, a WBS Is depicted using a
simple outline style, Indentation of actl>itles and tasks on the Gantt d1art">iew" of the
project. ~Ucrosoft Project also offers a military numbering scheme to represent hlerarcblcal decomposition of a project as follows:
I. Phase I of the project
I.I Actlvlty I of Phase I
I. I.I Task I of Actlvity I h1 Phase I
I. I. 2 Task 2 of Actlvlty I h1 Phase I
12 Actlvity 2 of Phase I .. .
2. Phase 2 of the project . . .
If you reexamllle Figure 4-3(a), you will notice tlut ~Ucrosoft Project pro>ides a
column for the WBS in the Gantt chart. Also notice lts use of the Indentation and
numbering ro dtfferentlare between tasks and subtasks.
chapter Four
131
FI G URE 4 -S
An Outline for a
Statement of Work
132
Part One
FIGURE 4 - 6
A Graphical Work
Breakdown
Structure
1ho Context of Systems Dowlopmont Projom
-
•
•
•
•
•••
milesto-ne an event signify.
ing the completion of a major
project deliverable.
\X'e may want to lnclude In a WBS specL1l tasks called milesto nes. 111e.se are
events tl1..1t sJgnlfy the accompUsbment or completion of major deliverables dwing a
project. In lnforllllltlon systems projects, an example of a milestone might be the completion of all the tasks assodatoo with producing a major project deUverahle su:h as
a requirements statement (see Chapter 3). It might be usef,tl to dlstlngulsh milestones
from otl,er tasks In a WBS by \Lqng special formattlng, such as Italics.
> Activity 3-Estlmate Task Durations
Gh,--en a work breakdown structltte wJd1 a suitable level of detail, the project man.1ger
must estimate duration for each task. Duration of any task ls a random '\o'a1'L1ble subject
to factors such as the size of the team, number of users, avalL1bUity of users, aptitudes
of users, compJexJty of the business system, lnfonnatlon technology an:hitecrure,
experience of team personnel, time commltted to other projects, and experience
with other projects.
Most system development methodologies not only define tasks but also provide
baseline estimates for task duration.T he project manager must adjust these baselines
into reasonable estimates for eacti unique project.
In Mlcrosoft Projec~ all pltases, actlvltles, and tasks of a methodology are sinply
called tasks. The work breakcbwn structure thetl consists of both summary and
primitive tasks. A su.1n1nary task is one thar consists of other tasks (sud1 as pltases
and actJvltles). Aprltnltive task ls one that does not consist of any other tasks. Ir is
the prlntltlve tasks for whlch the project manager must estlmate duration. (Uke most
project management software, )ticrosoft Project will auromatlcally calntlate t11e duration of a U summary tasks based on t11e estimated durations of their component
prlntltlve tasks.)
Projoct Managomont
133
chapter Four
for those prlmitlve tasks tl1at are not milestones, we must estimate duration. In
e.stlmatlng task duration, ft ls lmportant to underSland the concept of elapsed titne.
Elapsed time takes into consideration two important factors with respect to people:
Effe.ctency- No worker perfonns at 100 percet>t efficiency. Most people take
coffee breaks, lw1cb breaks, restroom breaks, and time ro read their e-mail,
check their calemlars, participate In nonprojed work, and even engage In
k:Ue conversation. Experts differ on Just how productive the average w orker
Is, bm one commonly used figure Is 75 percent.
Jnterrupff-011s- People experience phone calls, visitors, and other unplanned
Interruptions that increase the time requlred for project work. Tills Is variable
for dtfferet1t workers. Interruptions can consume as little as 10 percent of a
worker's day or as mud1 as 50 percent
Why is tills important? Gh-etl a task that cotdd be completed In JO hours with 100 percent efficiency and no interruptions, and assuming a worker efficiency of 75 percent
and 15 percent Interruptions, the true estimate for tl>e msk wo,dd be
10 hours+ 0.75 efficiency = 13.3 hours+ (1.00 - 0.15 interruptions)
= 1S.7 hour..
There are many techniques for estimating task du.ration. For the sake of demonstration, we offer the following da~Jc technique:
1. &tlnUlW the nJl11:l1n·u111. m11.o·u nt of tlttie it tiould take to perfortn the task.
\Xe'II call this tl1e optimistic duration (OD). Toe optlnllstlc d uration assumes
that even the most llkeJy interruptions or deL1ys, such as occasJonal employee
Uk1esses, will
1J.ot
happen.
2 . &tlnUlW the nUlXf.n1.·u111 aniou.nt of tltne It 1io·11.ld take to perjbr,n the task.
\Xe'II call this tl1e pesslmlstlc duration (PD). 111e pesslmlstic duration
a!Sumes tl1ar nearly anytlling d1at can go wrong will go wrong. All possible
lnterruptlons or delays, such as L1bor strikes, illnesses, inaccurate spedfication
ol requirements, equJpmetll delivery delays, and underestimation of the system's complexlty, are assumed ro be lnevJtable.
3. l!sttmate the expected duration (ED) that will be needed to perform the
tr.sk. Don't Just take the median of tl1e optlnllstlc and pesslnllstic durations.
Attempt to Identify interruptions or delays tl1..1r are most Ukely to occur, sud1
a! occasional employee illnesses, Inexperienced perso1u1el, and occasJonal
tnlnlng.
optimistic duration (OD)
the estimated ninimum
amount of time needed to
complete a task.
pessimistic dur.uioo
(PD) the estim:tted maxi.
mum amount of time needed
to complete a task.
expected duration (ED)
the estimated amount of time
required to com 1,lete a task.
4. Calculate the in05t llkcJy d,1ro.tloJ.l. (Dh as foUo ws:
D = (I XOD) + (4XED) + !l XPD)
6
'\\i1ere 1, 4, and l are default weights used to calculate a weighted average of
the three estimates.
Developing OD, PD, and ED estimates can be tricl-y and require experlet1ce. Se,•.
eral techniques are used in estlmatlng.11vee of the most common techniques are:
Decomposition- a simple technique wherein a project Is decomposed into
small, manageable pieces that can be estimated based on lllstorlcal data of
past projects and slmllarly complex pieces.
COCOMO (pronow1ced like "Kokomo")-a mode~>ased tedmlque wherein
standard parameters based on prior projects are applied to the new project
to estimate duratio11 of a project and its tasks.
Fu.11ctlo11 pot11..ts- a model-based tedulique wherein the ..end product• of a
project Is measured based on munher and complexlty of Inputs, outputs,
files, and queries. The number of function pohlts Is then compared to pro~
ects t11ar had a sim1L1r number of ftmction polnts to estlmare duration.
most likely duration (D)
an estimated amount of time
required to com 1,lete a
task,
based on a weighted average
of optimistic, p9SSimistic, and
expected durations.
134
Tho contoxt of Systoms Dovolopmont Projocts
Part one
Some automated project management tools, such as CS/10000 and Cost•)fperr,
pro,ide expert system technology that =es these estimates for you based on your
answers to sped.fie questions.
Milestones (as defined in the pre,ious subsection) have no duration. They simply
happen. In Microsoft Projec~ milestones are designated by setting the duration to
zero. (In the Gantt chart, those zero-du.ratio11 tasks change from bars to diamonds.)
>
Activity 4-Specify Intertask Dependencies
Gfve11 the duration estimates for all tasks, we can now begin to develop a p roject
schedule. The project schedule depe11ds 11ot only on task durations but also on Inter.
task dependencies. In other words, the start or completion of lndlvldual tasks may de-
pend on the start or completion of other tasks. There are four types of intenask
dependencies:
Fl1Jlsb-to-start (FS) - The 6.n.i.sh of one task triggers the start of another n.sk.
Start-to-start (SS)- The start of one task trlggers the start of another task.
Fl11ts/J.to-ft11isb (FF) - Two tasks mnst flnlsh at the same time.
Start to ft,1:lch (SP) 11le start of one task slgnJt'ies the B.nlsh of another t:lsk.
Intertask dependencies can be established and depicted In both Gantt and PERT
charts. Figure 4-7 illustrates how to enter intertask dependencies in the Gantt chart
view ln 1'iUcrosoft Project We call your attention to the following annotated bullets:
O
Intertask dependencies ma)' be entered In tl,e Gantt chart >iew In tl,e Prede-
cessors column by enterlng the dependent tasks' row numbers. Note. that a
task can have zero, one, or many predecessors.
Intertask dependencies ma)' also be entered ( or modlfted) by opening the
Task I1ifor111atlo11 dialogue box for a gtveo task.
0
!.!11:1'" !.• ~ ....... ~ 1.., ~ ~ I:!>'>
l) ~ Q Q Q':t ) Qia ft <'
'6 ~••• e::iv G *"wi
+ + + - , -. ....l
• 11 • " I JJ S! 8 •
t.1 1.dl>
_
..................
""-~~~~~~~~-·~o-==
-I-~'cc:c..f.:...fi:t:ic.!::i:......55~:.:t\
°".,,_.....
f '·f~;~~"~LL~...£
',,l..l..,,.
t ...
l l - - ~·_.,.....ci•-·
+· ,~....
--.
l':>~<1 <'6•··-~""'
- 1 11o_. ......,...
_,
Jl-"'N<u,•~-
..
J;.,,..._.,
:,
........
1,_.. ,._,
:
1mnmzm
='~7:: &--s=•·~~-:=-c"~~~~~~~~~~~~~~~,
1.-19
,,,..._.... ~ =i::11(1
:::==::. .~ii=·:r,,
,,_
J~NIII·~
..
, . ._
1y.,,o
,..,.DK_•_
l.
.,r
F I G U RE 4 • 7
Entering Intertask Dependencies in Microsoft Project
Projoct Managomont
O
O
Chaptor Four
135
The type of dependency can be entered In the Task lnformatton dialogue
box for any given dependent task.
Intertask dependencies are graphlcally lllustrat<d In the Gann chart as arrows
betweet1 the bars that represent each task. Arrows may begin or terminate
on the left side (to lndlcate a • start• dependency) or right side (to lndlcate a
'finlsh" dependency).
Miiestones (as defined earller) almost always have several predecessors to signify
those tasks tli.1t must be completed before the mUeslone has been achJeved.
Given the start date for a p roject, the tasks to be completed, the task durations,
and the lntertask dependencies, the project can now be scheduled. There are two
app~,aches to schedt~lng:
Fonvard sched,1.Utig establishes a project start cbte and then sd1edules
btward from that date. Based on the plaimed duration of required tasks, their
Interdependencies, and the allocatlon of resources to compJete those tasks, a
projected project completion date Is calculated
Reverse scheduling establishes a project deadline and then schedules backward from tl1.1t date. 'Jasks, tl1elr duration, lnterdependendes, and resources must
be con.sldctcd to
that the project cun be completed by the deadline.
<'·t lStlt<'
Each task can be given its own start and finish dates. Uke most project nw1..1gement tools, Mlcrosoft Project actually builds the schedule for you as you enter the task
d urations and lntertask dependencies (predece~ors). On the Gantt chart, the task
bars are expanded to reflect duration and shifted left and right to reflect start and e11d
dates. ~ticrosoft Project can also produce a tr.tdltlonal calendar view of the final
schedtde, as shown In Figure 4-8.
}4i'.I C,. (Ill »..... II-' f'IJIW
I Dll r;i, ii <!I~~
..
_
~ e,q,t ~ " '
o.r.~
-\
.... J
'
N
tz
'
~4'
I"
-
_
..............
ii-,sdot
..
•
..
n
Ht,11•
---"'-"'-
j
·-..
·-••
"
F I GU R E 4 • 8 The Project Schedule in Calendar View
w
forward scheduling a
project schedul hg approach
that establishes a project start
date and then schedules
forward from thtt dale.
reverse s<'.lle<1Uli.Og a
project schedulhg strategy
that establishes a project
deadline and then schedules
backward from tlat date.
136
Part One
1ho Context of Systems Dowlopmont Projom
>
REPRESEMATIVI:
ROLES IN A
PROJECT
111e pre"ious steps resulted ln 'a" schedule, but not "the" schedule! \X'e have yet to
consider the allocation of re.sources to the project. Resources include the following
categories:
Aud~or
Business AruJ:,st
Business SubjlCI Matter
.People- includes all the system owners, users, ai1.alysts, desJgners, builders,
external agents, and clerlcal help that w ut be Involved In the p roject In
any way.
Servlces- lndudes servic es such as a quality revJew that may be charged on
a per-tlSe basis.
Facflltf.es and equ.q,ment- lndudes a ll rooms and technology that will be
needed to complete the project.
Supplies and materials- Includes everything from pencils, paper, and notebooks to toner cartrJdges, tnd so on.
,lfo,wy- indudes a translation of all of the above into budgeted dollars!
Expert
Database Admnistrator
Executive Sponsor
Information S)'Stems
Manager
JAD Facil~ator
JAD Scribe
Management Sponsor
Network Administrator
Programmer
Project Manag3r
System Modelir
Activity 5-Assign Resources
111e availability of resources, especially people an d faclll ties, can slgnlllcantly alter tJ,e
project sched,de.
Most system development methodologies Identify people resources requlttd for
each task in the form of roles. A role ls not the same as a job tltJe.Thlnk of a role as a
..hat" that someone wears because he or she possesses a certain sklll(s). Any given lndlvldual may be capable of wearing many hats (thus playing many roles) . Also, many
people may possess tJ,e skills re:iulred to play a given role.11,e project manager's task
is either to assign speclflc people to fl Uroles or to gain commitments from manageme11t to pro,ide people to fill roles. Representative roles from tJ,e FAST methodology
are listed In tJ,e margin .
In ,_Ucrosoft Project, roles and assignments are speclfled in the Resou.rce Sheet
view, as shown In Figure 4 .9(a). Predefined roles and resources may be avallahle in tJ,e
chosen methodology and rotne temp lates.
0
11,e project manager entets tJ,e names or tides of people (rotes) In the
Resou.rce Na-,ne column. Re.sources may also include specific services, facilities, eqtdpment, supplies, materials, and so for th.
€) Notice that the Resource S>eet pro,ides a column for establishing what
percentage of a resource wUJ be allocated to the project. For ex.ample, a
database admlnlstrator ndght be allocated one-quarter time (25 percetll) co
a project. Allocations greater tl1..1n JOO percent indJcate a need for more
than one person to fi ll a given role In tJ,e project. By serting Ma.-.. Units to
250 percent for that resource, there would be a need for the equlvaletll of
2)1 full-time programmers.
O Project also allows the project manager to estimate the cost of ead1 resource.
These costs can be estimated based on company h.Jstory, consulting contr.J.cts,
or lnten1al cost accounting stan dards. Notice d1at both standatd and overtime
costs can be estimated. T hese costs are usually based on stan dards to pro1ect
Information about anyone'! actual saL1ry.
O Each resource has a calendar that considers the standard worJ.."Week and
holidays, as well as indJvid.lal '\o-:tcatlons and other commltments.
Givet1 the resowces, they now can be specifically a~Jgned to tasks, as shown in
Figure 4.9(b). As resources are assigned to the tasks, the project manager wo,dd specify the units of that resource that will be reqttfred to complete each a~Jgned task.
(fhls may be a percentage of a person's time needed for that tasl<.)
As these resources are formally assigned, tJ,e sd1edule will be adjusted (which
happetu automatically in tools such as Project). If you enter the cost of re.sources,
tools sud, as ~Ucrosoft Projec1 will automatically calctdate and maintain a budget
based 011 the resources and schedlde.
Projoct Managomont
"' v.,.
•
41
"' ' l '!
CJ~ 13 Ill 111 «! 111
-~- ·-- --·~ ...... ... .......·-...-··~--.. -·-·-·-·~ ...... - -. . ..·---.......
....
-...
......
.....
---__
....
_
,
..
..
--- s.- - -··~~ II)~--~ s•••-
s......,;;,,,,-...
&
s,-°"""'
,,$,.... ~
E$.:>.1'411)(;',l(,o
~
,,
-...-;_..;.oii,,;..
,,_......
,,_,....,,
.......
e,-.u...
~
:,-
.............-.o(o)
""
'""
""
""
""
.......
.,,_,,...,.
'"'-"'",...
<.lt.,.Uu( •I
..,.
,....,.
,,s,nn_ld"'
~-,~
: 1- .NWAI
s,- -...
;,..,°""'.,.
""''''
"r..,..-1;1,1~
--·
-·o.-
,,...,llflV'O
s, ....e.._
-..chi.-
,,..,...ca,_
""'"'"°''fff.Nl4\M
,,
OAW<...0"1'1(9-•
$,_,..,..
.....,_,.,
"'
w
;,
·"""""'~
s,-o...,.
• 7•
C) "'""I
,)J,x:,,,
.,.
IIJ.((11•1- ......
C>
IOtOI • - -
.,.
....
ltll'J.1'1(11.
..,
""''
toCIQt• ·-•w
"'""
w-
..,
Jli.lQI•
ft WotM<i'! ~
l ·S• -
0
...
ll.o.l'Wotl-11"
,.,_..,
~
~
J"O
h .,
taioooi,
.,,
""'' """"
,,,_
"""'·I
t)(il)I , f'l\1,-
-""'"'·A,)'IN(I " '"
··-....
'"- ' ""''!""""
·_.....,...
,,,....
ll:lto1•1
"
""'°'
.,,....
''"'"
,NW•
l(lO!ll o flo'<)-
IIJaot, _ _
1'!,1)00,,1
,;,o:,,, llr(i,IIJOOI• ~
IO).o)l,1~-
..,
MOOO! o "'""-
ffltcl' • - -
tmrot• -·116
t).00, , llr(,-
..,
$,_..._.
s,_.._
C"or,o<tv ......,•
......-...
""''
..,,,,_
....
$!$,)(IOI,
-.:, ......
,,s,~e..-
_ .,.:fflil:...
,
l"fMo<o"'°'3'·-
i,a,,...
""
""
••
.,,.
St '*10ett,O
,._,.,,,,.._
~-••P
.....-.
t(I.O::,, , iw,....,
~~o:ti,
__
.....
....
..,....
""'·1-~·-·-__
.......
"
~f--....
....
-.. .....~-1
'"
s, .....r .."""'
137
Chaptor Four
IO.tOh -
11)(1)1•1~ ...,,.,
IOOOt• ....,._
'"'
~
A(o)ri(I'. . . .
....,
·.....
--·-. ...-........'°'*
j-~
-·
·-b.,.....,
A"""'Ct-•"""
/1'-!lq, °to
•I
,....
(a)
-
-....!.-__
·--
------
-
------=-- ----·-- ,;,;.____
IJll![.lEl
-
-
• • + -
~1...::.1
. 1•• • •. . . . . . . . . •.• •. . .• . .•. .';,.;;
• ..:1..
:.il i;;;.."..1'. .'•i•i........1.·.~••~ - -- - - - - - - - - - - - - - -
frilcr,o Oii y.... ~ t'IJnol i - e,.,.it ~ tM>
Oll ~ lii e~~ ).Ch.e-c1
-,...- - • ioe:iv e ~a~ · ~co
~.,._.rrqif.__.__
,,• ......_.
ll~N-'<l.v,cl~
11c.,i.tu•.........._...,__• f l ~
'9'$,C.,...,,
):)1.t, ... ,,__..,....,
j
1, _ _ _<olcoryomf
11)
II
H
~ -· ~
-
. .. .
tot
-·
,. ,_,...._ . .....__
,•tu..-,....,...-w,
S$~t•h,.......,
. .!l
( b)
( F I G U R E 4 • 9 !Jenning and Assigning Project Keso=es
·I
,....
_____
)
138
Part One
1ho Context of Systems Dowlopmont Projom
Assigning People to Tasks Recruiting the righr ream members can make or break
a project.Toe following are guidelines for selecting and recntlcing the team:
Recruit talented, highly motivated people. Hlghly skilled an d mowrated team
members are more likely ro overcome project obstades unaided and are
more likely to meet project deadlines and produce quality work.
Select the best task for each person All worl<ers h.a>'e strengths and weal:.
nesses. Fifectlve project nunagers learn to explofr the strengths of team members and avoid assigning rasks to ream members nor skilled ht those areas.
Project managers should select ream members who
will work well together.
Plan for the Ju.r,,re. Junior personnel with potential to be mentored by pro~
ect leaders must be considered. Although Junior perso,mel mlgh.t not be as
productive as the seasoned veterans, project managers wUJ need them and
ha>'e to rely on them on fu ture projects.
Keep the teatn size stna/1. By Um.iting the team sJze, communication overhead
and dltncttlcies will be reduced. A i.person team has only I communlcacion
path~a 4-person team has 6 communication paths~and a 50,person team ltas
at least 1,200 communication patl1S.111e more commwlication paths thett are,
the greater the probability d1at ti1ere will be Increased commwllcatlon prob.
Jems. By the same toket1 the teams should be L1rge enough to provJde adequate bacl.'Up and co>'eragi, In key skills If a team member ls lost.
Protnote tean1 bart1101i)i
So far, we have idet1tified tasks, task duratlo11S, and intertask depet1dendes and assigned resowces to each task to produce the project schedule. It ls
commo11 to overallocate resources whett assJgili..ng resources to tasks. Overailocate
refers to the act of assigning more resotirces t11.1n are available.
For example, d uring a speciflc period In ti1e project (day, week, etc.), a project
manager may have assigned a sped.fie person to work on multiple tasks that add up to
more ltours tl1.1n the person has available to work during that period.Th.is renders tl1e
overall schedule lnfeasible because tlte overallocated resotirce cannot reasonably
complete all assigned tasks according to sched,tle . To correct tills problem, project
managers must use a technique called resotirce leveling. Resource levellog ls a strategy used to correct resource overallocatlons by some combination of deL1ylng or
splltullg tasks. Let's briefly exphlt1 botl1 approad,es.
Delaying tasks Is based on the concepts of crlttca/ path and slack time. When It
comes to th e project schedule, some tasks are more SetlSJtive to schedule delays tlt.an
others. f<>r tlll.S reason, project managers muse become aware of tbe crJcJcal path for a
project.Toe critical path for a project ls the sequei,ce of dependent tasks that ha>..
the brgest sum of most likely tf•ratlo11s. T he crltlcal path determines the earliest pos.
slble complecion date of the project. (We pre>'lously described h.ow to estimate most
likely duration for a task.) Toe critical path tasks ha>.. no st.ck ume av.,Jlable- thus,
any delay In completion of any of tl1e tasks on the critical path wUI cause an o>'erall deby 1t1 the complecion of the entire project.111e opposite of a cricical task ls one that lllls
some slack time.The s l ack time a'\o-ailable for any noncritical task is tl1e amount of deby that can be tolerated between the starting tlme and the complecion cime of a task
wlthouc causing a delay ht the completio11 date of the entire project.Tasks that have
slack tlme can get behind sd1edt~e by an amount less than or equal to tJ,e slack tlme
without h.a>'ltlg any Impact on the project's flnaJ completion date.T he a...UabUity of
slack tlme In certain tasks pro,ides an oppor tunity to delay the start of the tasks to
level resotirces whlle not affecting tlte project completion date. Of course, It miy be
necessary to delay a crltlcal path cask ro level resources, unless you can split the task.
Splitting tasks ln>'ol>'es breaking a task Into mulciple tasks to assign alternate
resources co the casks. 111us, a slngle cask for wh.lch a resource was overallocated ls
now apportioned to two or more resources tl1.1t are (presumably) not o,-erallocated.
Splltcing tasks requires Identifying and assigning new resources such as analysts,
contractors, or consultants.
Resource Leveling
r esource 1e,·elitlg a strat·
f!!Jf for correc.1ng resource
overallocations.
critical patb the sequence
of dependent 1aSks that deter.
mines the earliest completion
date br a project.
slack time the amount of
delay that can be tolerated
between the s:arting time and
the completior,time of a task
'Mthout causirg a delay in the
completion da-.e of a project
Projoct Managomont
chapter Four
139
Resotirce JeveUng can be tedious to perform manually. For each resotirce, the
project m.uuger needs to know the total time a'\<-:tlL1ble ro the project for the resource,
all task assignments made to the resource, and the snm of all durations of those task
asslgnments o,--er various time periods. All project ma.n.1gement software roots, such as
~Ucrosoft Projec~ automatically detennlne critical paths and slack tlmes.11lls enables
tl1ose same software tools to track re.source allocations and automatically perform
resource leveling. It Is extraordlnarily rare for any modem project manager to manually
level resotuce assignments.
Resource le,--ellng will be an ongoing act:l\oity because the schedule and re.source
assfg11met1ts are likely to change over the course of a project.
Schedule and Budget Gtven a schedule based on leveled re.sources and givet1 the
cost of each re.source (e.g., cost per hour of a ~·stems analyst or database administrator) the project manager can produce a printed (or "X'eb-based) document that commwlicates the project plan to all concerned parties. Project management tools will
provide multiple '\oiews of a project: such as calendars, Gantt d1..1n:, PF.RT d1..1rt, resource and re.source leveling reports, and budget reports. All that remains ls to direct
re.sources to the completio11 of project tasks and deliverables.
Conwnunication The statement of work, timetable for major deliverables, and overall project schedule should be commtmlcated to all partles Involved ln tl1e project.
Thls communlcatlon must also lndude a pL1n for reporting progress, both orally and
in writing, the frequency of such commwlications, and a contact perso11 and metltod
for parties to submit feecll>ack and suggestions. A corporate Intranet can be an effective way to keep everyone lnformed of project progress and issues.
>
Activity 6-0ired the Team Effort
All the preceding project management activities Jed to a master plan for the project.
It's now time to execute that plait. TI1ere are several dlmettsJons to directing the
team effort. Tom Demarco states In his book The Deadll11e: A 1\fovel abo,,t Project
,lfanage1ne11t t11..1t the hardest job ln management is people.
Few new project managers are skilled at supervising people. ~tost: learn supenision tbrough thek own experiences as subordh1.11es- tlllogs they Uked and disliked
about those who supenised them. Thls topic could easily take up an entire chapter.
In the margin checklist, we provide a classic list of project supenislon recommendations from 1'be People Side of Systems, by Keith London.
AS 11oted by Graham !\tCLeod ai1d Derek sm1t11, Mh1dJvJduats brougJ.1t together itt a
systems development team do not form a dose-ktlit unlt immediately." ~tcleod
and Smltl1 explain that teams go tltrougb stages of team development, as shown In
Figure 4-10.
In The One ,lft1,uJe Afan.age,; by Ketu1eth Blanchard ai1d Spei1cer Johnson, a
classic and Indispensable ald to anyone managing people for the first time, the authors
sl1..1re the simple secrets of mai1..1glng people and adlieving success through the
actions of subordinates.
Most young, and many experienced, managers have dlftkulty with the subtle arts
of dtJegatlon and accolUltabiJity. '\X'orse still, they ltt subordinates reverse-delegate
tasks back to the mai1..1ger. This leads to poor tlme m:.u1..1gemei1t ai1d mai1..1ger frustratlo11. In The One All11u.te Alanager Aleets the ,lfo1ikey. Kenneth Blanchatd teams with
Willhm Oncken and Hal Bttrrows to help managers overcome this problem. The
solution is based on Oncl::ei1's dasslc prlncJple of"the care ai1d feed.Jog of monkeys."
,_lonkeys are "problems" that managers delegate to their subordinates, who In turn
attempt to reverse-delegate bad:: to t11e mat1..1ger. In this 125-page book the authors
teach mai1..1gers how to keep t11e monkeys on the subordlnates• backs. Doing so
increases t11e manager's aYailable work tlme, accelerates task accomplishment by
subocdlnates, and teaches subord.J.nates how ro take rtsponslblUty and solve their own
problems.
10 HINTS FOR
PROJECT
LEAOERSHIP
Be Consistent
Provide Sup!X)rt.
Donl Make Promises You
Can't Keep.
Praise in Pub1ic~ Criticize in
Private.
Be Aware ol Morale Danger
Points.
Set Realistic Deadlines.
Set Perceivatle Targets.
Eicplain and 91ow, Rather
Ttun Do.
DonlRely Just on Status
Re!X)rtS.
Encourage a Good Team
Spirit.
140
Part One
1ho Context of Systems Dowlopmont Projom
OAENTATION STAGE
FIGURE 4 - 1 0
EStaibltsh struch..n and rulQ.s
c11rny team memt>er relatlonshlps
Stages o f Team
Ma turity
FORMING
ICklntny resp.ons1:11a19s
oevel·OP a ptt1n toaCNeve goals
Sovre~: Ad.apt:4 fio111 Olllblon:I
McLeod Olld lntU Siaitb.
Jl,nr,1llllg l"fo,1111itirM Ttclisot.
oo Proj«ts l'('.-bd• MAt
Covne. T~ lulology. 1996).
INTERNAL PROBLEM-SOLVING STAGE
Re&Olve 1nterparsont11 conn1ct
Further clarffy Nits and goats
Oevel·OP a partk:fl:titrve cnmate
STORMING
GROWTH AND PROOUCTIVITY STAGE
Direct toam a,ctlvtly towaro goats
Provtde and oet reecJbe·Ck
NORMING
snare raeas--grONlng cOhQ.sron
lnelvtdu81s real
gc,.oa 81:>out ea·ch other
EVALUATK)N AND CONTROL STAGE
•
•
•
More ,aoClb8Ck and eva1uat:1on
Adherance to tQflfll norms
Roki-s ot team strEngthened
PERFORMING
• Strong team motrvauon to share g08's
>
Activity 7-Monitor and Control Progress
Whlle executlng the project, the project manager must control the project, that ls,
monitor its progress agaitlSt the scope, sd1edule, and budget. TI1e manager must
report progress and, when nectssary, adjust scope, schedlde, and re.sources.
Progress Reporting Proe:res! reportine: should be frequent enouel1 to establish accountability and control, but nor so frequent as to become a burden and lmpedJment
to real project progress. For example, Keane, Inc., a co11Stllting firm, recommends that
progress reports or meetings occttr e,-eC)' two weeks- consistent wlth the firm's
project-planning strategy that decomposes projects into tasks that produce deliverables that require no more than 80 work hours.
Project progress reports can be verbal or wrltte.11. Ffgure 4-11 Ulustrates a
template for a wrftten progress report.. Project progress reports ( or preset1tations)
should be l1onest and accurate, evet1 if the news ls Jess than good. Project progress reports sholdd report successes but sholdd dearly Identify problems and concen1S such
that they can be addressed befae they e.scaL1te unto major Issues or catastrophes.
As tasks are completed, f"Ogress can be recorded in Microsoft Project (see
Agure 4-12). We call your attention to the following Gantt progress Items:
O All the tasks in the preliminary lnvestlg,1tlon phase are complete as Indicated
0
by the yellow lines that run the full length of each task bar. Notice that
because all these tasks are complete, they are no longer critical- the bars
have changed from red to blue.
In ti,e problem analysis phase, only the first task, •Analyze the current
system," ls 100 percent complete.
Projoct Managomont
PROJECT PROGRESS REPORT
chapter Four
FIGURE 4 - 11
Outline for a
I.
Cover page
A Project name or identificatio n
B. Project manager
C. Date of report
II,
111.
Summaiy of piog-ess
A Sched..Jle analysis
B. Budget analysis
C. Scopeanalysis
(descnbemy~lhdtrNJYMie«1imp:r.tanluhrep-ogess)
D. Process analysis
(cies-<Y>')'pcbkmsencounttnxl..;tl,stnteyyamdl,odohsY)
E. Gantt progress chart(s)
l\ctWity analysis
A Tasks completed since last report
B. current tasks and deliverables
C. Short-term Mure tasks aid delt.'erables
IV,
V,
Prcviou~ µroule111~ di KJ i~~o
A Action item and status
B. New or revised action items
1, Rec:ommendaticn
2. Assignment of responsibility
3. Deadline
New problems and issues
A Problems
(O<t1/olor""6dpo/od)
B. Issues
(O<t1/olor""6dpo/od)
C. Possible solutions
VI.
1, Rec:ommendaticn
2. Assignment of responsibility
3. Deadline
Attachments
(induderdewmtpintoutslromproject~ntsdtwtn)
O Notice that the .. Eslabllst1 system lmprovement objectives" task bar has a par-
O
0
tial yellow Une running 60 percent of Its length. This Indicates the task Is
about 60 percent complete. 11,e task bar Is stlli red because any delay In
completing the task will tlveaten the project completion date.
All remaining tasks shown In the dlspfayed chart ha>.. not been started. Actual
progress will be recorded when the task ls staned, In process, or completed.
Progress for any given task is recorded h1 the ttsk Information dialogue box
for that task. In thls example, the project manager ls recording 10 percent
completion of the named task.
~Ucrosoft Project also provides a number of preconfigured and customizable reports
tl1..1t can pre.sent useful project status informatlo11.
Change Management It ls 11ot w1commo11 for scope to grow out of control e,--en
when a properly completed statement of work was agreed on early in the plaiuling
process. '\X'e refer to scope growth as ..cbange." As noted by Keane, lnc.,"Change is fre.
queotJy a point of contentlo11 between the customer and the lnformatlon systems organ.il:atlon, because they disagree on whether a particular ftmctlon is a d1ange or a
part of the Initial agreement."The inel-itablUty of scope d1..1nge necessitates that we
have a formal strategy and process to deal with change and its impact on schedule
141
Progress Report
142
Tho contoxt of Systoms Dovolopmont Projocts
Part one
,i,,.
ltl ~ ,_, "I,-
t,oll
e,.,.., ~ -
t,llt
o ~ g & Cl :f j Q:i ec • -. • <#-<• av tz
•o..-.o
ii
1,11oo1,
_ .....,...,,,,,,.,,. _
• $
-·
,1........,..-..
_
"
•
t
11
&. •
• -
4i,,.
l:! 1" " " ' -
,,_....
·~-,--
•• -
....... II<_ _ , . ,
})~·-·--""'-
;·,--.e................_
., • .ll.!!.-
......,"'__ -
.............
.,
,...,".
·:,,~-IO(W---·
~-·1..
.111_..
~
I "-'- I ~--- l
l••,e,~,ardre< ..,~
eµ-
r,,-~
..,
~
O
Ol,lu
~h , _
lfl<,'01
.•J
- . :,
- - - - - 1~
I
"'-'tMI
~~
r~
r;;;--..J
6',tl,c j Fol ~
I
.:I
••~. .~ - t l• ,)oo(l ..:,W(!I
--
~''-"'* ___ "'__
~C.,.,,.hoo....-.--..
....
...~
................................
~,-~-..._,;..-,
~,~
.L.~..._
.f'
C
- -- - - - - - - - - F I GU R E 4 • 1 2
cbaage maoagemeot a
formal strateQ!' wherein a
process is established to
facilitate changElS that occur
during a project.
Progress Reporting on a Gantt Otart
)
and budget. Cb.1.0.ge ma11ageme11t is intended to protect d1e project manager and
team from being heJd accow1table for schedule and budget overruns tl1at were driven
by changes In scope.
01aoges can be the result of various e,-ents and factors, lndudlng:
An omission In defining lnl!W scope (as documented In tl1e statement of work).
A mlsunderstandln1t of the Initial scope (the desired product Is more complicated than originally commwllcated or perceived).
An external event such as government regulations that create new
requlremenrs.
Organizational changes, such as mergers, acquisitions, and pannershJps, that
create new busine.s., problems and opporrw1Jtles (not to mention "players"),
Avalfablllty of better technology.
Shifts In planned technology that force unexpected and slgnlllcant chatll!l'S to
the business org;ulizatlon, cultttre, and/or proc~es.
1'ilaoagemenr's desire to ha\--e the system do n1ore than was orlginaUy
requested or agreed ro.
Reduced funding for the project or Imposition of an earlier deadline.
A change management system results in a collection of procedures for docume11tlng a change request and defines the steps necessary to consider the change
based on the expected lmpact of tl1e change. 1'ilost change management systems require rhar a change request fotm be lnitiated by one or more project stakeholders
(e.g., system owners, users, analysts, designers, or buliders). Ideally, cbange requests
are considered by a cba11ge co11tro/ board (CCB), which Is responsible for approving
or rejecting all change requests n,e CCB's composition typically Includes members
Projoct Managomont
chapter Four
143
of the project team as well as outsiders who may have an lnterest or stake In the
pro)ect. 11,e CCB's decision sho,dd be based on Impact analysis.
Feasibility Impact analysis shotdd assess the Importance of the change to the business, the Impact of the d1ange on the project schedule, and the Impact of the d1ange
on the project budget and long-term operating costs.
Ultimately, change management bolls down to managing the expectations of the
stakeholders. In the next section, we lntroduce a simple but conceptually sound framewort for managing expectations and d1elr impact on project schedule and budget.
Expectations Management Experienced projec1 m:u1..1gers often complain tl1..1t
matuging $)'stem owners' and users• expectations of a project ls more difficult tl1an
managing cost, schedtde, people, or quality. In this section we Introduce a simple tool
tl1..1t we11 caU an expectations 111a11.agenie11t niatrlx that can help project m:u1..1gers
deal with this problem. We first learned about this tool from Dr. Phil FrledL1nder,
a consultant and trainer then with ltfcDonnell Douglas. He attributes the matrtx to
• folklore• but also credits Jerry Gordon, of Majer, and Ron Leflour, a project management educator/trainer. Dr. Friedlander's paper (listed In the Suggested Readings for
this chapter) Is adapted In this text for this presentation.
F.,"'P.r)' p1'njP.rt h:as ef\!l ls a n<I ron.<ttr:t ints. whpn fr rnmps rn ro...r, ~P.<lulp, r-ropP., :1nrl
quality. In an Ideal world, ead1 of these parameters could be optimized. Managemetll o~
ten h.,s that expectation. Reality suggests, however, that you can't optlmJze them allyou must strlke a baLmce tlu.t is both feasll>le and acceptable to managemenr.1bat ls
tl1e pwpose of the expectations management matrix. An expectations m.a.n..'lgemeut
matrl., is a rlde-drh,--en tool for helping management understand the dynamics and
impact of d1anglng project parameters such as cost, schedt~e. scope, and quality.
The basic marrix, show11 in Figure 4-13, consists of dvee rows and tlvee columns
(plu! headings).The rows correspond to the measures of success in any project: cost,
sd1edule, and scope ancVor quality. The colunuu correspond to prlorltles: first, second,and third. To establish expectations, we assign names to tl1e priorities as follows:
expectations
maoagemeot matri..~ a
tool used to understand the
dynamics and impact of
changing the pa-ameters of
a project.
Jlfaxf1nize or 1ni,if.tttf.ze- the measure of success that ls determined to be
the most Important for a given project.
Constrat,i-the second most important of the dvee measures of success ln
, project.
Accept- the least important of the three measl.l'es in a project.
Most managers wotdd, Ideally, like to give equal priority to all three measures;
experience suggests d1.1t tl1e three measures tend to balance them.selves naturall); For
cxample, lf you increase scope or quality requirement$, the project will take more tlruc
and/or money. If )'OU try to l!l'I any Job done faster, you generally h.we to reduce scope or
PRIORITIES
'
i
MEASURES OF SUCCESS
Sdle<fule
Scope and/or Quality
-+
Constrain
Accept
FIGURE 4 - 13
A Management
Expectations Matrix
144
Part One
1ho Context of Systems Dowlopmont Projom
FIGURE 4 - 14
Management of
Expectations for
the Lunar Landing
Project
PRIORITIES ..
Max or Min
Constrain
Accept
,MEASURES OF SUCCESS
c~
•
x
$20 bllllon (estimated)
Schedule
•
Dec 31, 1969 (deadllnei
Scope ond/0< Quality
•
Land a mnn on the moon
•
Get him back ,..fely
x
quality reqttlremenrs or pay mott money to compensate. The management expecta.tlons
matrix helps (or forces) management to understand this through three simple rules:
I. For any project, you must record three Xs within the nine available cells.
2. No row may contain more than one X. In other words, a single measure cf
success must have one and only one priority.
3, No column 1lL1)' contain m«e tl1an one X. In other words, there must be a
first, second, and third priority.
Let's Ulustrate the tool using Dr. Ftledlander's own ex.ample. In 1961 President
John E Kennedy established a m,jor project- land a man on the moon and return him
safely before the end of the decade. Figure 4-14 shows the reallstlc expectations of the
project. Let's walk through the example:
I. The system owner (tl1e public) had botl1 scope and quality expectations. The
scope (or reqttlrement) was to successfully land a man 011 the moon. The
quality measure was to return the man (or men) safely. Because the public
would expect no less from the new space program, tills had to be made the
first prlorJry. ln other words, we l1ad to maximize safety and ruinJmJze dsk
as a first prJorJry. Hence. ,,,.e record the X in column l. row 3.
2. Ar t11e time of t11e project's inception, the So"iet Un.ion was ahead in the race
to space. 1bls was a matter of national pride~ therefore, the second priority
was to get the Job done by the end of the decade. We call this the project
constraJnr- tl1ere ls 110 need to rush t11e deadline, bur we don't want to miss
the deadline. Thus, we record tl1e second X In column 2, row 2.
3. By defu,dt, the third priority had to be cost (estimated at $20 bUllon In 1961).
By malting cost the third priority, we are not stating that cost will not be con,
trolled. We are merely stating that we may ha,--e ro accept cost overrtms to
achleve the scope and quallty requlremetll by the constrained deadline. \XI,
record tl1e third X lo column 3, row 1.
History records thar we acb.ieved the scope and quality requirement, and did so
h1 1969. The project actually co,r well In excess of $30 billlon,more than a 50 percent
cost overrun. DJd thar make the project a failure? On the contrary, most people
perceived the project as a grand success. The government managed the public's
expectations of the project In realizing that maximum safery and minimum risk, plus
meeting the deadline (beating the Soviets), was an acceptable trade.off for the cost
overrw1. The government brUlhnt.ly managed public opitlion . Systems development
project managers can learn a valuable lesso11 from tills baL'lOciog act.
Projoct Managomont
chapter Four
14S
At the beginning of any project, the project manager should consider lntroduclng
the SJ'Stem owner to the exp«tations matrix concept ind st1ould work with the ~em
own,r to complete the llllltrlx. For most projects, It wot~d be dlflkult to record all the
scope and quality requirements In the matrix. Instead, d,ey would be listed In the statemenl of worl<.The estimated costs and deadlines cot~d be recorded directly In the matrix.
The project manager doesn't e.stablist1 the priorities; he or she merely enforces
tl1e rules of tl1e matrix. This sotmds easy, but it rarely ls. Many managers are tmwlllillg
to b( pinned down on the prlorlties- ..Shou.ldn't we be able to maximize every-
tlllng?"These managers need to be educated about the reason for the priorities. They
need to understand the priorities lf they cannot ma.xlmize aU three measures. Th.ls
lead, to Intelligent compromises Instead of merely guesswork.
What lf a system owner reftlSeS to prJorftlze?111e tool becomes less usefltl, except
as a mechanism for docttmentlog concenu before they become disasters. A system
owner who refuses to set priorities may be setth1g the project manager up for a no-win
performance re"iew. And as Dr. FriedL1nder points oul,..Those who do not''believe'the
prindples (of the matrix] will ew,11tually 'know' the o-uth. You do not h.ave to believe
In gn>ity, but you w!U hit the ground Just as hard as the person who does~
let's a~ume the management expectations mattix that conforms to d1e aforementlonEd t'ldes, How does this heJp :t project nun.ager U1.'UUge expectations? During the
cotme of the average systems de,--elopment project, prlorJtles are not scable. Various factors such as the economy, government, and company politics cut change the priorities.
Bu~ts may become more or le.s., constralned. Deadlines may become more or Jes, Important. Quality may become more important. And, most frequently, requlrements it~
cre:L<e. As already noted, these changing factors affect all the measures In some way. The
trick ls to manage expectations despite the e>-.r<hanging project parameters.
The tedulique ls relatively stnJghtforward. Wheaever the ..max/mln measure" or
the ..constrain measure" begins to slip, ft can result In a potential management expectations problem. For example, consJder a project manager who ls faced with the
following priorities (see Figure 4-15):
I. Explicit reqttlrements and quality expectations were established at the start of
a project and gh1'1l the highest priority.
2. Ao absolute maximum budget was established for the project.
3. The project manager agreed to sboot for the desired deadline, but tl1e system
owner(s) accepted the reality that if something must slip, it should be schedt~e.
Now suppose tlut d uting systems analysis, slgnllkant and tmantidpated business problems are Identified. The analysis of these problems has placed the project behind schedule. Ftuthennore, sol"ing the new business problems substantially expands d1e user
Constrain
PRIORITIES -+
' FIGURE 4 - 1 s'
A Typical Initial
'MEASURES OF SUCCESS
" Expectations Matrix,
Schedule
Sccpe and/or Qunllty
x
146
Part One
FIGURE 4 - 16
Adjusting
Expectations
(a sample)
1ho Context of Systems Dowlopmont Projom
PRIORITIES -+
Max or Min
Constrain
Accept
iMEASURES OF SUCCESS
requirements for the new system. How does the project manager react?There should be
no overreaction to the schedule slippage- schedule slippage was the •accept" priority
in the matrix.The scope Increase (in the form of se,. eral
.
new requirements) is the more
sfgnlJlcant problem because the added requJremenis will increase the cost of tl1e pro~
ect. Cost ls the constralned measure of success. As Jt stands, an expectations prd>lem
exists. The project manager needs to review tl,e matrix with the system owner.
First, the system owner needs ro be made aware of which measure or measures
are In Jeopardy and why. Then together, the project mai1..1ger and ~·stem owner can
discuss courses of action. Se,-enl courses of action are possible:
1
T he resources (cost and/or schedule) can be reallocated. Perhaps the system
owner can find more money somewhere. All priorities would remain the
same (noting, of course, the revised deadline based on sched,tle slippages
already et1counrered du.rint. systems ai1..1lysls).
T he budget mlght be lncrtased, but ft would be offset by additional planned
sched,tle slippages. For instance, by extending the project Into a new tlscal
year, additional money might be allocated without taking any money from
ex.Isling projects or uses.1tlis solution is shown in Agure 4-16.
11,e user requJremenrs (or quality) mlght be reduced through prioritizing !hose
requlremenrs and deferrlng some of those requlremenrs until ,--ersJon 2 of the
system. 'Thls alternative would be appropriate if the budl!l't cannot be Increased.
Finally, measurement priorities can be changed.
Only tl,e system owner may inlliate priority d1anges. For example, the system
owner may agree thar the expanded requlremet1ts are '\\'Orth the ackUtlonal cost. He or
she may allocate sufficient hmds to cover the requirements but may migrate priorities
sud 1 that mlnlntlzing cost now becomes the highest priority (see Rgure 4-17, step I).
But now the matrix violates a rule- there are two Xs ln column l .To compensate, we
must migrate the scope ancVor quality criterion to ai1other column, lo tllis case, the constrain column (see Figure 4-17, ,tep 2). Expectations have been adJusted. In effect, the
system owner Is freezing growth of reqttlreme11ts and stlll accepting sched,tle slippage.
T here are three final comments about prlorfry changes. First, priorities may
change more tl1an once during a project. Expectations can be managed tlvough any
number of d1..1nges as long as the matrix is balanced (meartlng Jt confonns to our
Projoct Managomont
PRIORITIES ..
Max or Min
Constrain
Accept
chapter Four
147
FIGURE 4 - 17
Changing Priorities
~MEASURES Of' SUCCESS
Sccpe and/or Quollty
rules'). second, expectacto11 managemenc can be achieved through. any comb1nauon of
priodty changes and resource adjustments. Finally, system owners can Initiate priorlty
d1..1nges even if the project is on sdtedu.le. For example, govenwent regtdation mlght
fore, an uncompromising deadline on an existing project.Th.at would suddenly migrate our ..accept" schedule sl.Jppages to "max constrainr."The other Xs wotdd have to
be migrated to rebalance the matrix.
Willie the managemet1t expectations matrix ls a simple tool, It m.1)' be one of the
most effective.
Schedule Adjustments-Critical Path Analysis When It comes to the project
schedule, some tasks are more sensltlve co schedule cklays d1an others. For this reason,
project m.uugers must become aware of the critical path and slack times for a project.
Understanding ti,e critical path and slack time ln a project ls lndlspensable to the
project manager. Knowledge of such project factors lnfluences the people management declslons to be made by the project manager. Emphasis can and shot~d be
placed on the critical path tasks, and If necessary, resources might be temporarily
dJvetted from tasks with sL1ck time to help get critical tasks back on sd1edu.le.
Toe critical path and sL,ck time for a project can be depleted on both Gantt and
PERT charts; however, PERT charts are ge11erally prefured because they more dearly
depict Intertask dependencies that define the ctiUcaJ pat11. !\toSI project management
software, lndudlng Mlcrosoft Project, automatically calcttlates and hlghUghts the
critical path based on lntenask dependencies combined wlth durations. It is useful,
howe,--er, to understand how the critical path and slack times are calculated.
Consider the following hypothetical example. A project conslsts of the nlne prlmltlve tasks sl1own ln Flgure 4-18. The most likely d uration (ht days) for ead1 task is
recorded. There are four distinct sequet1ces of msks in a project. They are:
hth I:
hth2:
hth 3:
hth4:
A~B~C--+0--+l
A~B~C--+E~l
A~B~C--+F--+G--+l
A~B~C--+F--+H--+l
The cotal of most likely duration times for ead1 path is calct~ated as follows:
hth I:
hth2:
hth 3:
hth4:
3
3
3
3
+
+
+
+
2
2
2
2
+
+
+
+
2
2
2
2
+
+
+
+
7
6
3
3
+
+
+
+
5
5
2
I
=
=
+
+
19
18
5 = 17
5 = 16
In this example, path I Is the crttf.ca/ path at 19 days. (Note: You can have mltltlple
critical paths If they have the same total duration.)
-...
TASKD
I.IC 2120/01
·-·
I ue :V..!Wtll tl d W)'5
TASK.A
Mon 215J01
"'Kdays
Uon 2/5J01 ri"days
TASKS
TASKC
Wf!ld2fTI01 "dil""'Wed217/01 W\days
Fri Z/9J01
Fri 2191()1
Name
Eo11)' Fil\iSII
Oura1ion
Late Ftn1sn
Total s1ae1<
I
Crlic.31
I
Noncn,1ca1
( F I GU RE 4 • 1 8 Critical Path Analysis
·~
"d.in
~ ...
ASKE
TASK I
Mon 2/1!W0118da)'t
Tue :1127/01 l!>d.iys
ue 2120/01 11 day
Tue 2127/01 I0<13ys
TASt< F
TASKG
Wi!4 2/14I011J aays
fu 2116/01
Fri 2/16J01 "dav5
Tue 2/20rol 12 days
I I Critical Milestone I I CrOO'II Surrmary ~
I II Nonctitie::tJMi:e~one I INOl'l.<:liicolStrnffl.lry ~
I
t2 d111ys
Cr.1ical Subp(O)eci
I II
l wonc:nt~ISubi)ro,ectl
CrHlcal MarkM
I)
u::~~·l\oCl.nl~IM..u l~ed '.I
)
Projoct Managomont
chapter Four
149
In thJs example, tasks E, F, and G are not on the critical path; they each have some
slack time. For example, task E Is Included in a path tint has one day less duration than
tl1e critical path; therefore, task E can get belllnd by as much as one day without adversely affecting d1e project completion date. Similarly, tasks F and G can combine for
a maximum slack of two days wlthottt delaying the entire schedule.
In Figure 4-18, the critical path is shown in red. The tasks that have slack capacity
are shown in bL1ck. Sim.JL1rly, project management software also uses color to differentiate critical path tasks h1 a Gantt or PERT chart.
>
Activity 8-Assess Project Results and Experiences
Project managers must Jearn from their mistakes! They shottld embrace continuous
process lrupro,-.ment. This final activity Involves soliclth1g feedback from project
team members (lnduding ctistomers) concerning their project experlet1ces and
suggestions aimed at impro"ing the project and process m.u1..1gemenr of the organization. Project re,iew(s) should be conducted to answer the following fw1damental
questions:
Did the fl.naJ product meet or exceed user expectations?
Old the project come h1 on sched,de?
Old the project come h1 under budget?
The answers to these questions should be followed up wlth the basic question
.. Why or why not? .. Subsequently, and based on the rtsponses to the abo,--e questions,
d1..1oges should be made ro lmpro,--e the ~·stem development and project management methods tl1..1t wlUbe used on future projects. Suggestions for lmprovements are
commlullcated to .. Centers for Excellence," whkh can modify standards and
processes, as well as share useful ideas and experJet1ces with otl1er project teams tl1..1t
may solicit their help or expertise. Project assessments often contrlbute Improvements to specific project deliverables (milestones), pioce.s.,es or tasks that created the
deU,-erahles, and the overall management of the project.
/
Where you go from here depends on where you are coming from and where you
wan, to go. If you are readh1g through the chapters sequentially, you should probably
move on to Cl1..1pter 5, ...~·stems A11..1tysJs," to expand your understanding of ~·stems
analysis tasks, tools, and tectmlques. Alternatively, it you are enrolled ln a ~·stem
design-focused course, you mlght sklp ahead to either Chapter 11, • feasibUity Analysis and the system Proposal" (which marks the end of systems an~lysls), or Chapter 12,
·systems D<!slgn" (whid1 provides an h1-depth look at the actMties of system design,
protorypfng, and rapid application development).
Some Instructors l1..1ve deferred this project managemet1t d1..1pter to the end of
your course. If so, you may be Interested in expanding your knowJedge of project
n:wu gement tools, teduliques, and methods. Some schools offer a project n:w1..1gement course. If not, you may flnd that your systems analysis and de.sign instructor
might supervise you to complete an independet1t study course on tl1e subject. If so,
we direct you to two sped.fie references at the end of th.ls d1..1pter as possible texts:
(I) the Wysocki et al. hook Is well organlzed aromxl 1he Project Management Body of
Knowledge that we presetlled fn our chapter, and (2) the Mcleod and Smlth hook ts
e.spedally compre.henst,--e in lts coverage of project management d.JmetlSJons tl1..1t we
could not cover fully in our chapter.
,-CD
0
--..
::J
::J
CQ
:::::0
0
0
Q_
3
0
-0
I SO
1ho Context of Systems l>owlopmont ProjOffl
Part One
Summary @
I. A projed is a (temporary) seqt1e11ce of unique, complex, and connected actlvltles that have one goal or
putp0se md that must be completed by a speciJlc
time, within budget, and according to speciJlcatlon.
2. Project m:u1..1gement ls the process of scoplng,
planning, staffing, organlzing, directing, and controlllng the development of an acceptable system
at a mlnJmum cost wlthh1 a speclfled time frame.
3, Process management is an ongoing activity that
documeats, manages the use of, and lmproves an
organlzatio11's chosen metl1odology (the .. processj
for systems development.
c.. Estimate task durations. There are many techniques and tools for estimating task durations.
d. Specify Intertask dependencies. The start or
completion of Individual tasks may be depen-
dent on the start or completion of other t:uks.
11,ese dependencies impact the completion of
any projed.
e. Assign re.sources. The followlng re.sources may
impad a projed sd>edule: people, services, fa.
cilltles and eq,tlpment, supplies and materials,
and money.
4. From a projed management perspectlve, a project
ls considered a succe.s., lf the resulting lnformatlon
l) Such re.sources must be assigned to taslis to
system is acceptable to the customer, the system ls
il) Resource leveling ls a strategy used to cor-
dellvered •on time" and "wlthlt1 budget; and the
system development proce55 had a mltlltnal lmpad
rect resource overaJJocauons by some
on ongoing business operations.
5. The Project Management Institute has created the
Projed Management Body of Knowledge (PMBOK)
for the education and certification of professional
project managers. It addresses:
a. Project manager competencies.
b. Project management functions.
c. Tools and techniques such as:
I) PERT charts, graphical networl< models that
dq,ict a project's tasks, and the relationships
bdweett those tasks.
II) Gmtt diarts, simple horizontal bar charts
tlut depld project tasks ag.11nst a calet1dar.
d. Project management software.
6. Project man.11,ement is a cross Ufo-cyde activity: that
Is, project management tasks overlap all the system
development pluses. A project management process
Is e..enthl to achle,ing CMM Level 2 maturlt)'.
7. Joint prqect plannlng(JPP) Is a strategy wherein
all stakeholders In a projed participate in a one- to
three-<lay project management workshop, the result of which is consensus agreement on project
scope, schedule, re.sources, and budget.
8. The tasks of projed ma,1agemetll Include:
a. NegotL1te scope. Scope defines the boundaries
of a project and Is lt1duded lt1 the statement of
work, a narratl,t> description of the work to be
performed as part of a project.
b. ldenriy tasks. A worl< breakdown strudure
(WBS) is a hierarchical decomposition of tJ,e
1
develop a sd>edltle.
combination of delaying or splitting
tasks. Resource leveling requires know].
edge of:
(I) The critical path- that sequence of de-
pendent tasks that have the largest sum
of most illcely durations. The critical
path determlt,es the earllest possible
completion date of the project.
(2) Slack tlme- tl,e amount of delay that
can be tolerated between the starting
time and completion time of a task
without causing a deL1y ln the completion date of the et1tlre projed.
f. Dlrect the team effort. One of the most important dimensions of directing tl,e team effort is
the supervision of people.
g. 1.torutor and control progress. uurmg the project, the project manager must monitor project
progress against the scope, sched,tle, and bud-
get and, when necessary, make adjustments to
scope, schedule, and resources.
I) Progress reporting Is an essential contrcl
process that uses communication to keep a
projed within scope, on time, and within
budget.
ii) A complete project plan provides mecha-
nisms and a process to manage requests for
changes to scope. This Is called diange
management..
ill) Change management frequently requJre, that
project lnto lts tasks and subtasks. Some tasks
represent the completion of mile.stones or the
a project m:uuger manage the expectations
of management and users themselves. An
expectations management matrtx ls a rule.
completion of major dellverables during a
project.
driven tool for helping managemetll wulerstand the dynamlcs and Impact of changing
Projoct Managomont
project parameters such as cost, schedu.le,
scope, and quality.
iv) Sd>edt~e adJustments are required whetl a
project's scope changes or when other factors drfve schedule or budget out of the
projected range.
chaptw Four
151
h. Assess project results and experiences.This fi.
naJ activtty im-olves soJJdting feedlnck from
project team members (h1duding customers)
concerning ti1elr project experiences and suggestions aimed at Improving the project and
process m:u1..1gement of the organlzatio11.
\ ';:::S Review Questions
I. Whatls a project?
2. Of the many dlfferent reasons that projects fal~
what is the major cause of project failure?
3, What ls the difference betwee.n scope creep and
feature creep?
4. What are the five main categories of competencies that a project manager should have?
5, Why are business achle,--emet1t competencies
important?
6. What are the baslc project management hr.nctions?
7. What are PERT' and Gantt d1..1rts? How do we
decide wh.lch one to use?
8. What are the eight major actlvtties In the project
management life cycle?
Negotiate scope
Identify tasks
F.stimate task durations
Speclfy hllertask dependet1des
l. .\ssume you are a systems analyst and a proud
AssJgn resources
Direct the team effort
ltfon.itor and control progress
Assess project results and experJet1ces
9. Why is negotiating scope hnportant? What is the
deliverable In d,e process of negotiating the scope?
10. What is a pop,~ar tool used to identify tasks In
the project m:u1..1aenlet1t life cyde?
11. What are the factors to consJder in estimating
task d u.rations?
12. What are the differet1ces between forward sched-
uling and re,--erse scheduling?
13. What are the categories of resources ro be
allocated to the project?
14. What should project managers do to manage
changes that occur and/or are requested d u.r-lng a
project?
15. Why Is critical path analysis hnportant?
@:
Problems and Exercises
3. As a newly appointed project manager, you are
member of a project team that has Just comp leted
eager to get started on your first project. W11..1t
a major project that spanned several years and
t11..1c touched aJ.moSI every bustness l llllt in your
sho,tld your first activity be? How Important Is it?
organlzation. The project was completed ahead of
,chedt~e and well within b udget. Development
and lmplementatlon went very smoothly wJt11
,·1.rtually no disruption of business operations. A
postimplementation survey ind.Jcates tl1..1t system
users have bee.n able to use the systenl wlth mlnlmal tnlnlng, although there h.ave been some comments from the more vocal users that ft wasn't
qu.f.te what tl1ey expected and doesn't do some
of the things they thought II wo,tld. Sho,tld the
project be considered a success?
2. Executt,--e management is concerned that some
users are less th:u1 satisfied with the new systenl
described in the preceding question and have
assigned you to lead a postlmplementatlon work
group to determine the cause. Of ti,e dozen project mismanagement problems descrf.bed h1 the
1extbook, wllich ones do you tllink were most
Jlkely to h.ave contributed to user dissatisfaction!
Who Is typically Involved? W11..1t questtons do you
need to make sure are atlSWered? What's the ultimate outcome from this activity, and what is
h1duded in this deliverable?
4. You are the project manager of a medium-size
project ti1at is sd,eduled to take 10 months from
project initiation on September I st through deliv-
ery 011June 30th. It ls 11ow April 1st, seven
months sh1ce the project began, and the project
is slightly hellind schedule, hy perl1aps a week.
Draw a Gantt chart (you may use the style shown
h1 Figure 4.2 or anoti1er Gantt chart style If you
prefer). Assume you are usf.ng tl1e PAS( metl1odology, and ti1at project phases can ovedtp.
5. )'ou are the project manager for a company that ls
building a behavioral healtl1 system for some of d,e
counties h1 your state. The project is slightly ahead
of schedule and tl1ere haven't been any signllkant
problems to date. In reviewing some of the
screens under construction, you are surprised to
152
Part one
Tho Context of Systems Dowlopmont ProjOffl
find a number offeatures that were not part of the
design. TI1e system builder was one of your most
talented and creative programmers. When you ask
about these features, the builder proudly tells you
tbat they add to the functionality of the system
wlthoul taking any addltlonal programmlng time,
and that they '\\"ere intended to be a surprise. You
can see that d,e features definltely do add to the
f,u1ctlonallty of the system. The code has already
been written for them-should you allow them to
be included in the system, even though they were
not part of the apprc"-.d technlcal design?
6. 11,e methodology used In your organlzatlon calls
for change requests to be considered by a change
control board (CCB). After some reflection and a
discussion wlth the programmer, you have de.dded to submit a change request to the CCB to
schedule.1ltls presents an expectations conflict
since scope ls the constrained measure of
success. W11at should you do at this polnt?
9. suppose the CEO decides that no matter what,
the new features absoJuteJy must be added in order for the new system 10 be competitive. What
issues does this raise, and how would tills be
reflected ln the expectations matrix?
10. You are working on the sd1edu.le for the system
design phase and are trying to estimate ti,e dlration of a complex design task. From breaking tills
task down into smaller tasks shnilar to ones that
you've had experience with on other projects,
you estimate the task should normally take an expected duration (ED) of three workdays, given a
typical 75 percent worter eftlclency rate and
add the new features. ht your presentation to the
15 percet1t lnterruptlon factor. But you also know
of some it1Stances where absolutely 11othit1g went
CCB, wh:it reason might you give for the ch.aoge
right, and Jt took up to two full workweeks, or a
request and what thing., should you take into
consideration?
7. The COO of your organl22tion was so Impressed
with your List project that you have been given responsiblllty with a L,rger, even more Important pro~
ect.111e CEO calls you ln for a discusslon regarding
the Importance of the project, and tells you that the
very survival of the organl22tion may hinge upon
compleling this project and rolling out the new system to atStomers before a cermln date when a competitor ls expected to complete a similar project.
11,e company can affo«J 10 budget only up to a
certain maximum, althougt, if othe,; less crltlcal
projects-lo-progress are delayed, there may be some
addltiooal fundlng available If ati.olutely necessary.
Anally, ln order 10 be a competltive product in the
matket,the new ~·stem must conmln at least acertain mhtlmu.m fearure set, although more would be
destrabk!, and che quaUty must be of the hJghest
level. Al the conclusion of this discussion, the CEO
shakes your hand and wishes you good luck. Use
the priorities set by ti,e CEO to create an lnltlal
management expectations matrix.
8. Now suppose that during the course of this
project, ft becomes apparent that costs were
signlflantiy w1derestlmated and ti,e budget is
rapidly becoming depleted. In addition, d,e head
of marlretlng bas picked up a trade mag,1zine and
read that your organtzatlon•s main competitor is
addlng some really exciting features to d1elr product without changing their release date.11,e budl!l'I
overage is not the major problem; you know
addltiooal money can be allocated, althougt, it
may delay oti1er p rojects. But you also know that
your ourketing stakeholders will be demandlng
that simllar features be added to ti,e system you
are developing wiille keeping 10 the original
pesslmlstlc duration (PD) of 80 hours, 10 complete the design task. Using ti,e classic technique
described In ti,e textbook, calculate the mosl
likely duration of the task.
II. In the precedh1g question, what technique did
you use to estimate the expected duration of the
desJgn task.? Descrlbe some of the other ted1.
nlques you could use to estimate task du.ration.
IZ. During one phase of the p roject, you review the
project sched,~e and realize that a member of
your project team has been assigned multiple
tasks that add up to more hours than the person
bas ava!L1ble to wort during that period. What
technique could you use to resolve th.ls?
13. You have been asked 10 complete a project In
shortest time posslble. The project tasks, most
likely duration (in days), and predecessors are
shown below. What are the different paths
(sequence of taskS) and the number of days for
each? What ls ti,e critical path, that ls, the shortest time in which the p roject can be comple1ed1
ls ii actually Important h1 the business world for
project managers 10 w1derstand critical path
analysis, or is this Just theoretical knowledge!
Tasks
Duration
Pl'edecessors
A
2
None
8
2
,
None
c
0
4
A
E
F
5
G
H
I
,
•
None
8
c. 0
A, E
4
F
7
G,H
Projoct Managomont
14. ,\Sa new project manager In a rapidly growing
orgart.izatlon, you have been asked to lead a project team for an lmportant project. The scope of
tl1e project Is not too broad, project time frames
are somewhat on tl1e tlght side but definitely
doable.and the budget ls more than generous. In
fact, you have been given the authority to hlre a!
many people as you want for your project team.
153
You estlm.1te tl1..1t 5 people would be 1bout rlght
for tills type of project, 8 wottld provide a healthy
amount of bacl.-up, and IO cottld give i·ou the
re.sources to deUver an outstandlog system ln
record time. W11..1t is something you might want
to keep in mh1d before making your declsion on
how many people to hire?
12
I. Projects fall, sometimes spectacttlarl)'. Seard, tl1e
Chapter Four
Projects and Research
d. Professionals In many fields, such as medldlle,
Web for articles on major project failures; numerous
engineering, accow1tancy, and law, are required
artldes should be readily a>'1llable. Find and review
artldes on approxlmatelj• IO major project failures
during the past decade, dm1 do the following:
to be Ucetued or certlJled. Do you thhlk professional certllkatlon shottld be required before
a. List the p roject failures that you found, and
describe them.
b. What was the cost of each project failure?
c. W11at were the consequences of each project
failure?
d. Categorize the reason(s) for each project's failure based upon the causes listed In tllis chapter.
e. W11at were the most common causes for the
p roject hllures?
f. In Wndsight, how many of tl1e project failures
were a,-oJdable?
g. W11at is the most important lesson that new
systems analysts can learn from these project
failures?
someone can manage a large project?
3. You work in the infonnation tedu1ology dtvlslon
of a large law firm with offices througl»ttt the
state. One of the vice presidents of the company
has asked you to manage the deveJopment of an
automated case-tracking system for your company.
TI1e project, whid1 ls Just beglrullng, Is the first
large project you 11..1,--e beet1 asked to n:w.1..1ge.You
take your duties '\o"ef)' serlousJy and want to do an
exempL1ry Job on this project.
a. You are meeting with the vlce president of the
company to discuss the scope of the project. In
yoltr meeting, what questions need to be answered and negotiated ln order to be able to
determine the scope of tl1e project?
2. Toe Project Management Institute (P~U) ls one of
the leadh1g and perl1aps the Jeadlng project mana«ement oraanli.atlon h1 the world. Pt.fl created
acd malntahu the. Project Management Body of
Knowledge' (PMBOK), wlllch Is a de facto staod,rd for project managers. PM! also certlfles a
project manager who passes its knowledge and
b. Once you have flnlshed negotiatlllg 9.."0pe, the
vice presJdent lw asked you to wrfte a Statement
of Work. What does the Statement of Work represent In tills situation? How Jong should it be?
experience requirements as a ...Project lttanage-
(ald1ougl1 that will probably never happetl In
real life).
metll Professional' (PMP).
a. Go to the PMI Web site (w,uw.pml.org). What
are the requirements to become certl.tled as
aPMP?
b, Based upon your readings and experlence, how
important do you tlllnk the PMP certlJkatlon Is
for the project managerY Do you think lt ls
worth the in,-estment?
c. What about the organization that employs a
P,_IP? ls the certification an assurance tlut d1e
org.1nlzatlon's projects wlll be completed suc-
cessfully. How much more should an organtzatiao
pay a project manager with a PMP cert!fkatlon?
c. Write a Statement of \X'ork, uslog t11e outlloe
shown h1 Figure 4-5 as an example ..~ume that
tl1e vice president l1..1s given you catte bL10che
4. Project m.1nagemet1t software, sud1 as 1,Ucrosoft
Project, have become commonpL1ce. ~tmy of tl1em
Incorporate traditional tools, such as PIR1' and
Gantt charts, wllld1 were de,'doped decades ago.
a. Conduct an lnformal survey of about a dozen
project managers In industry. How many of
tl1em use project management software?
b. For those who do11't use project management
software, wl1..1t are their reasons for not using it?
c. For those who do use project management software, which ones do they use? What are tl1eir
opinions regarding the software they use?
154
Part one
Tho Context of Systems Dovelopmont ProjOffl
d. Search on the Web for dlfferent project management programs. Whid1 ones dJd you tlnd?
e. Review thelr features and specifications. Do any
of thttn appear to have unique features? Which
one do you thlnk Is the most popular, or at least
the one most widely used? Whlch one would
you pick if cost was not a consideration?
5, You are mai1..1ging the deveJopruent of a case.tracking system project for your L,rge law firm.
The requirements phase of the project is almost
complete,and preliminary design work has begun.
The project Is running several days behind schedule, whlch you don't consJder serious, and it ls
within budget, but barely. Quality, in terms of requirements analysis, has gei1erally been acceptable
so far In your opinion, but some of the project
team members have mentioned that they are not
sure if certain Issues have been fully re.soJved.
Based upo11 th.ls infonnation, write a Project
ProgressRepon, using the outline in Figure 4-11 as
Minicases
an example and following the gtddelines described
In Activity 7 In this chapter.
6. As part of continuous lmprovement, It is lmportant
for project managers and project teams to asses,
the results and their experiences once a project
has been compJeted.111ere are numerous methods
and teduliques for doing this. Search 011 the V:~b
for pertlnetll articles, using phrases such as project
assessment, project postlmplementatlon reports,
and the like.
a. What articles tUd you find?
b. Describe the methods and techniques ti,ey
suggest:.
c. Select the ones you feeJ are the most "-aJuable,
and explain why.
d. Do you thJnk that assessing project results can
make a significant difference In the quality of
future projects?
ti
l. You are on a team that ls de,--eloping a \X'eb site for
a local bnslness, Olstom Car Care. There ls a set
schedule of four months for requlremetlls analysis,
developmet1t, and successM deployment. The
team is en sdtedu.le, ln week 8, and has Just shown
Debbie, the CEO of Custom Car Care, the prototype. Debbie is very happy with your work so far,
but has some additional capablllties she would like
added to the site. Altl1ough the addltions are not lo
the previous time or cost estimate, she requlres
that you stay on schedule and wJthln current
budget. What do you do?
2. Alida and John are a team coding a dlftlcult and
sizable program In Java. They hm, some experience wJth the language, but wUJ h.a,--e to )earn a
significant amotlllt ..on the fly:'They h.a,--e estimated that the project will take two months as the
optimistic estimate, three months as the expected
estimate. and four months as the pessimistic estimate. You are their project manager and must
develop a contract for completion wJt11 the client
for the code deveJopment. How much time should
you allow in the contract for this dellverable?
3. Develop both a forward and bad-ward schedule of
tasks and tlmellnes for a major project you are
completlng for a class. If there Is discrepancy between the two schedules, err on the side of frontloadlng your tasks. Monitor your project tlmeline
and keep track of the milestones as you complete
the project. At the end of the project, submit your
tlmellne and project notes to your professor, along
with a copy of ti,e class project. Did ti,e sd,edule
development and management of the project help
you? S11are wlth your class yotU' experience.
4. In an Interview wlth a project manager, find out
how often perso1u1eJ issues affect the successful
(and on.tJme) completion of a project. How does
thls project manager deal with personal or family
problems that distract or remove key memben of
a team?
Team and Individual Exercises
l. For the p-of~or to dJrect: Create teams of four and
designate one as d,e project manager. Assign them a
chaliengklg task with a shon deadline. It shotdd be
doable for the class, but certainly not easy. ~Udway
through the project, exchange one member per
team so tlut ead1 team h.as lost: one member and
gah1ed one new member. Do not allow the team to
co11,--erse with the member that was ..hired away."
Have the project manager document how
they hantUed the situation, what p roblems
arose, and how they would handle a team differently in tl1e future (knowing that they could
Projoct Managomont
Jose a teammate at any time and without any
notice).
2 . (Team or lndlvldual) For each of the class projects,
develop a Rolling Wave tlmellne for completion.
Write down everything you can think of that could
go wrong and a contingency project pL1n. Advice:
Front~oad ead1 project.
chaptw Four
l SS
3, As a team, go out to lunch or dfnner. Share some
aspect of your life that your team may not know
about. Find Oltt something you didn't know about
each of your teammates.
e]]
Suggested Readings
Blanchard, Kcrutcth, and Spencer Johnson. The One iWltltlfe
At,1nager. New Yotk: Bcrldc>• Publishing Group, 1981,
1$82. Arguably, this is one of the best people llWl."tgctncnt
bcoks C'\'t'r written. A,'ailable in most bookstores, it can be
rc1d o,'t'might and used for discussion material for the
lighter side o f project blanagc-lllC'nt (or any kind of rnan·
anti Practtces 2, no. 6 (March/April 1992), pp. 26-29. We
adapted our expectations rnanage,mcnt bl."ltri.x from
Dr. Fricdlander's v.'Otk.
Kcnuci:, Harold. PrOject ,Wanage1nent: A S)istettlS Approach
to Pfa1111.t ng, SCJJed1dt11g, anti 0>11trollt11g, 4th ed. New
York: Van Nostl'.Uld Reinhold, 1989. Many cX-l)C'rts
a.s,:'blc!nt) . Thi,; i:1 bltir.:t t'C!lld:ins; f o r '1.U c ollege r.:tuddltl';
con:1ick.r thi,.; book to be, the, defui.iti";,;, 'WOtk in the, fi,dd of
v.'it.h managclllC'nt aspirations.
Blanchard, Kenneth; William Oncken, Jr.; and Hal Burrov.-s.
Tl.-e. one iWtnute ,wanager Afeets the ,wonke)t Nev.• Yori::
SiJOOn & Schuster, 1988. A sequel to Tbe One ,Wttltlfe
Af,111age,; this book effectively looks at the topic o f delc·
gar.ion and titllC' managclllC'nt. The monkey l'C'fers to
Oncken's classic article, •Managing ~tanagclllC'nt Time:
Who's Got the ~tonkcy?" as printed in the Har,,.ard Bu$11uss Revtetv in 1974. The book teaches managers hov.• to
achtc\'t' l'C'Sults by helping their staff ( their rnonkC')'i)
soh't' their o wn problems.
Brooks, Fred. 1be ,11J•thtcal Ata1i-..,.1011tb. Reading.MA.: Addison·
Wesley, 197S. This is a classic set o f essays on software
engineering (also kn,ov.,n as systcblS analysis, design, arid
implernc,ntation). Emphasis is on managing compla
projects.
Catapult, Inc. ,Wtcrosoft .Project 98: Step ~1 Step. Redmond,
W.\.: ~1krosoft Pl'C'SS, 1997. An update fo r Project 2000 is
cxpoctcd.
Ocrnarco, Tom. The DeadlttJe: A JVOtJ(!/ about Project ,WanaJseinent, Nev.• Yotk: Dol'SC't House Pu.blishjng, 1997. This
v.<ould be an excellent companion to a project manage-·
lllCnt text, cspcc-ially fur a graduatc-l<"\'C"l course. It demon·
stratcs the •good, bad, and ugly" of project managc-lllC'nt,
told as a stot):
DtUlc.m, William R., Dircctoi:, and Standards CommittC'C'. A
Gutde to the .Project Afanage1ne11t Bod)1 of Knou.'fedge.
Uppc,r Darby, PA: Project ManagelllC'nt Institute, 1995.
This is a concise overview of the gcncl'l.!ly accepted Proj·
cct Management Body o f Knowledge and pncticcs us<d
fo r ce,rtiftcation of project managers.
Frioclandet:, Phillip. • Ensuring Softvi.ral'C' Project Success wilh
Project Buyers," Softtvare. E11gt11-emng 1bols, Ted.J11tq1us,
project managclllC'nt. Dt. Kern2cr's seminar; and coul'SC's
on the subject arc l'C"flowncd.
London, Keith. 11.Je People. Side of S)istetnt, New Yotk:
~tcGraw·Hill, 1976. This is a timeless classic about ,'llrious
people aspects of systems wotk. Otapte,r 8, • Handling
a Project Team," docs an excellent job of teaching the
leadership aspects of project rnanagc-ment.
Mcleod Gl'.tham, and Ocl'C'.k Smith. Alanagtng Infonnatton
Technology Projects. Cambridge, MA: Course TC'Chnol·
ogy, 1996. If you al'C'. lo oking for a goo d academic boo k
for a co urse or independent study project to expand
your knov.,ledgc o f IT project and process managcrnc,nt,
this is it! The book pro,'ldes a compl'C'.hensive treat·
ment o f ,'lrtually all dimensions of rr project and process
managelllC'nt.
Roetxhcitn, Wi.lliarn H., and Reyna A. lkaslc): Sojtu,Ylre. ProjeCI
Cost anti scJJeaule Estunartng: Best Prar.rtces. Uppc,r
Saddle Ri,tt:, NJ: Prentice Hall, 1998. This is one of the
mol'C' complete boo ks on the subject of estimating tech·
nkfucs. lktter stil~ the book inc'ludcs C'\'llluation copies of
Cost•XJ)ert, Rtsk•XJ)ert, and Stmtegy•xpert ('-of~tarott,
Inc.), software tools fo r estimating.
Wysock~ Robert K; Robert Bock, Jr; and OJ.vid 8. Chne. Ef
fecttve. Project Afanage1ne1u: Hotv to Plan, !ltanage, and
De/ttJ(!r Projects on 11tne and lJJfthtn Budget, 2nd ed.
Nev.• Yo rk:}ohn Wiley & Sons, 2000. Buy thi! book! This is
our nevi.• benchmark for introducing project managctncnt.
It is easy to read and v.•orth its v.'Cight in @Old. We wcl'C'.
surprised hov.• compatible the book is with past editions
of o ur book, and our project management dittctions
continue to be influenced by this v.'Otk.
Part Two
Systems Analysis Methods
The five chapters in Part Two introduce you to systems analysis activities
and methods. Chapter 5, "Systems
Analysis," provides the context for all
the subsequent chapters by introducing the activities of systems analysis.
Systems analysis is the most critical
pbase of a project. During systems
analysis we learn about the existing
business system, come to understand
its problems, define objectives for improvement, and define the detailed
business requirements that must be
fulfi~ by any subsequent technical
solution, Clearly, any subsequent system resign and implen1entation of a
new ,ystem depends on the quality of
the ireceding systems analysis. Systems analysis is often shortchanged in
a project because (1) many analysts
are not skilled in the concepts and
Jogic,J modeling techniques to be
used, and (2) many analysts do not
understand the significant impact of
those shortcuts. Chapter 5 introduces
you D systems analysis and its overall
importance in a project. Subsequent
chapters teach you specific systems
analysis skills with an emphasis on
logical system modeling.
Chapter 6, "Fact-Finding Techniques for Requirements Discovery,..
teaches variow fact-finding techniques and stra!egies used to solicit
user requirements for a new system..
In Chapter 7, "Modeling System
Requirements with Use Cases," you
will learn abou! the tools and techniques necessary to perform use-case
mcxieling to docun1ent system
requirements.
In Chapter 8, "Data Modeling
and Analysis,"' we teach you data
modeling, a tedlnique for organizing
and documentiog the stored data
requirements for a systen1. You will
learn to draw entity relationship
diagrams as a tool for structuring
business data that will eventually be
designed as a database. These models
will capture the business associations
and rules that must govern the data.
Chapter 9, "Process :-.iodeling,"
intrcxluces process nuxfeJin.g. It explains how data flow diagrams can be
used to depict the essenti:1.1 business
processes in a system, the flow of
data through a system, and policies
and procedures to be implemented by
processes. If you've done any programming, you reoognii.e the importance of understanding the business
processes for which you :1re trying to
write the programs.
Chapter JO, "Object.Oriented
Analysis and Modeling 1>ith UML;'
teaches you about the object-oriented
approoch to performing systems
analysis using UML tools.
Chapter I I, "Feasibility Analysis and the System Proposal,"
teaches you how to brai r.storm
possible system solutions, analyre
those solutions for feasibility, select
the best O\o'etall solution, and then
present your recommendation in the
form of a written and oral proposal
to management.
--·
Gall:
ICNCJWUmQE
8TATEMENT (If
wo,i.c
l" ROBLEM &TATEM ENT ("llltl thl l" IECE8 lfl .. lWOfk)
INFORM*,l10N
OCOPE
•
.......
FUNCTIOML
COII.UNICAllON8
SCOPE
SCOPE
VISION
\118ION
•
•
8Y8TEM IM,IIOVEMENT 08JECTIVE8 (01U19 tlte PIECE8 f11•1w 1 1•)
eve Ole . . . . . e GUI ft EM CNTI eTAT eM eNT
~
;
:•
:
•
.•••
••
•••
..
M
0
9U81NU&
PAOCE83
AEOUIFIBl&fTS
LOGICAL
DATA
LOGICAL.
PAOCE83
MOOEL8
IIOCELI
DATA
i•
•i
9U81NE8$
AEOUIFISIENT&
•••
•,
I
9U91N El88. 8V8TUI
INTERFACE
FIEOUIJI EMEHTS
LOOICAL
INTERFACE
MOOEUI
'rT'W i
•
~~~~, ~~-·-·
~·-T_·_·~·~·-·-·-·~·-AA
_l"l"·~LICATION
-<-·-·~·~·-·-·-·ARCHITECTUftE
~·-·~·-·-·~·-·~·-T_·_·~·~·-·-·~·-·-A
~·-·-·~~~ ·
:_
,
~
~
•
OE&ION PROTOTYPES
9U8 1NE88 PJIOCEM
PHYSICAL.
PHYSICAL
OE.SIGN
OATMASE
OEl91GN
USER • 8 Y81lM
INTEFIFACE
OE81GN
PWY81CA.
8 0FTWAA E 0:.&IGN
8 PEO ACATION&
aPECI FICATION8
8 PEO ACATONS
- ......,...
5
FUN C TION A L 8Y& TE •
TR A ININ G MATERI A L&
-
COll•EAOAL
80~
11E
OAV.8A8E
80LUTION
.i
.
•
i
0
~
••
0
CUSTOM.SIIILT
~
OPEFI A TION A L 8V& TE N
A PPLICATON
8 0 FT'WM.11E
•
...
,
INTERFACE
8 0WTION8
........
INTEFIFACE
8 0WTION8
-
P 08 TA U OIT FIE V IEW
"""'""'
.....
.,.'°
...,.....
""'"""
APPFIOVEO
INTeFFACE
TECI-HOL.OOIES
"'°""'°"''"
Cor1'1!roN: APPFIOVEO NeTWOFll(TECI-HOL.OOIES
I
l
•
I
f
I
Systems Analysis
Chapter Preview and Objectives
In this chapter you will learn more alx>ut the systems an:l.lysis phases in a systems development project-namely, the scope definition, problem :malysis, requirements analysis,
and decision analysis phases. The first three phases are collectively referred to as syste,ns
a.11Dlysis. The latter phase provides transition between systems analysis and systems design. You will know that you understand the process of systems analysis when you can:
I Define systems analysis and relate the term to the scope definition, problem analysis,
re~uirements analysis, logical design, and decision analysis phases of this book•s
systems development methodology.
I De.scribe a number of systems analysis approaches fer solving business system
problems.
I De.scribe the scope definition, problem analysis, requirements analysis, logical design,
and decision analysis phases in terms of your information system building blocks.
I De.scribe the scope definition, problem analysis, requirements analysis, logical design,
and decision analysis phases in terms of purpose, par!icipants, inputs, outputs,
techniques, and steps.
I ld!ntify the chapters in this textbook that can belp you learn specific systems analysis
to,ls and techniques.
NOTE: Although some of the tools and techniques of systems analysis are previewed in
this chapter, it is not the intent of this chapter to teach tOOse tools and techniques. This
chapter teaches only the process of systems analysis. The tools and techniques will be
taught in the subsequent six chapters.
160
Part 1wo
Systoms Analysis Methods
Bob Martinez rememoos learning In college that systems analysis deJlnes what tn Information system needs ro do whlle system desJgn defines how ft needs ro do Jr. Ar
the time, lt sounded like a simple tw<>Step proce55. Now, as he begins wortlng oo tl1e
SoundStage t.tember Servlces ~·stem project, he sees that there are multiple pltases
and several steps within systems analysis and system design .
The SoundStage project Is at the begitmlng of systems analysis, In what Sandra, his
boss, calls the scope dellnltion phase. After that they'll do problem analysis, requirements analysis, and decisJon analysis. It sow1ds like a lot of work just to w1derstand
t1Jbat the system needs ro do. 81Jt tllis ls a complicated system . As Sandra says, woldd
you build a house without a good set of plans?
~~~""
~ h_a_t_l_s_S_y_s_te_m
~ s_A
~n_a_ly_s_i_
s ?~~~~~~~~~~~~~~~~)
In Chapter 3 you learned about the systems de,--eJopment process. In that d1..1pter we
systems aaal}'Sis a
problem.sotvirg technique
that decomposes a system
into its component pieces
for the purpose of studying
howwell those oomponent
parts work and interact to
accomplish thtir purpose.
systems design a complementary probltm.sotving tech·
nique (to systems analysis)
that reassemHes a system's
component pi9ces back into a
complete systtm-hopefully,
an improved S'/stem. This may
irrvotve adding deleting, and
changing pieces relative to the
original syS1em.
iaformatioo systems
aaal}'Sis those development
phases in an information SfStems development project that
primarily focu~ on the busi·
ness problem and require.
ments, independent of any
technology tht t can or will be
used to implement a solution
to that problem.
r eposito,y a. location (or set
of locations) v.here systems
analysts, stS1ems designers,
and system b1.1ilders keep all
of the documE11tation assoc.i.
ated 'Mth one ,r more SfStems or projects.
purposefully limited our dlscu;slon to only briefly examlnlog each ph.ase. lo this
chapter, we take a much closer bok at those ph..,ses that are collectively referred to as
systems aualysls. Formally de6ned In the margin, systems analysis ls the study of a
system and its components. It is a prerequisJte to S}'Stems d esign, the speclflcatlon
of a new and Improved system.Tols ch.apter will focus on systems analysis. Chapter 12
will do the same for systems design.
Moving from this classic definition of systems analysis to something a bit more
contemporary, we see tl1at systttJJS analysts is a term that collectively descrlbes tl1e
early phases of systems developmet1t. Agure 5-1 uses color to ldet1tlfy the sy,tems
analysis phases in the context of the full da55lc route for our FAST methodology (from
Chapter 3). There has never been a wllversally accepted definltion of systems malysls. ln fact, there l1as never been universal agreement on when information s~tem.s
analysis e nds and when infonnation systems design begins. For the purpose of tills
book, iafonnatio11 systems a1ulysis emphasizes business Issues, not tedulicaJ or
implemet1tatlon concerns.
Systems analysis ls drlven by the business concerns of SYSTEM OWNERS and s-c'STEM
USERS. Hence, it addresses the KJ,,OWLf.DGE, PROCESS, and COM."1UNJCATIONS building blocks
from SYSTE.\t ~ s' and 5YSTEM usERs' perspectl,-es.The SYS11:MS ANA1¥STS serve as facilitators of systems analysis. 111.ls context is illustrated In the chapter home page that
preceded the objectives for this chapter.
The documentation and del!verables produced by systems analysis tasks are typl·
cally stored In a repository. A repository may be created for a single project or shared
by all projects and systems. A repository is nonnally lmplemetlled as some combination of the following:
A network di.rectory of word processing, spreadsheet, and other computer.
get1erated flies that contain project correspondence, reports, and data.
One or more CASE tool dlctJonarJes or e ncydopedias (as discussed In
Chapter 3).
Printed documetllatlon (such as that stored In binders and system libraries).
An l11tmnet Web slte Interface to the above compone nts (useful for
commwlicatio11).
Hereafter, we will refer to these components collectl,-ely as the repository.
This dtapter examines each of our flve systems analysis phases In greater detail.
But first, let's examine some overall strategies for systems analysis.
Systems Analysts
Chapter Ftvo
161
BUSINESS.COMMUNITY
START:
Pn:iblllNI,, o,pol!UIIPllt.
Dirt.--, c:ii111,ni1n111,
..,~,
......
FHISH:
-
......
..............
0111..::ow,
• nd'll..on
........
...
~
SYSTEM
OPER4TION
&
MANTENANCE
"'''""
""'"
......
q,rd<nll
8
.
INSTA.U.ATION
OELNEAY
.. --M
·-M
..
.,.
........
...._
..,,
.....
.....
~-L..L..L-~
'-- -,.
:-_,
."'.-,---4~
..
6
,.,.
PH't'&IC.,.L
NTEG:AtlON
~SflCtle•~
( FIG U RE 5 • 1 The Context o f Systems Analysis
)
( Systems Analysis Approaches
Fw1damentally, systems analysis ls about prob(e111 solvi1ig. There.are many approaches
to problem solving; therefore, Jt shouldn't surprise you that there are many app roaches to systems analysis. These approaches are often viewed as co111petl1Jg alternath,--es. In reality, certain comblnatlons can and should actually complement one
another. This was d1aracterlzed in Chapter 3 as aglk methods. Let's briefly examine
the "-arJed approaches.
N011l:The intent here Is to develop a high-level understanding only. subsequent
d1apters ill th.ls tllllt will actually tead1 you the w1derlylng rechnJques.
>
Model-Driven Analysis Approaches
Structti.red anaJysi.s, lnformation engineering, and object.oriented anaJ.ysls are examples of model-dffl"ell analysis. ,.,lodeJ-drtven analysts uses pictures to communicate
model-driVeo aaal)'Sis a
pro~em...solvingapproach that
emphasizes the drawing of
pictorial system models to
document and \El.lidate existing and/or proposed systems.
Ultimately, the system model
becomes the blueprint for de·
signing and constructing an
improved system.
162
Part 1wo
Systoms Analysis Methods
model a representation of
either reality or vision. Since
''a picilJ re is 'M>rth a thousand
words: most models use pictures to repreEent the reality
or vision.
business problems, requlrements, and solutions. Examples of models with which you
may already be familiar Include flowdiarts, structure or hlerarchy charts, and organJ.
zatlon charts.
Today, model.driven approacl1es are almost always enhanced by tl1e use of autc,.
mated roots. Some analysts draw system models with general-purpose graphics software such as ,_Ucrosoft Vlsio. Other analysts and org;ul.izatlons require the use of
repository.1,ased CASE or modellng tools sucl1 as System Arch/tee~ Visible Anal}st, or
Rational ROSE. CASE tools offer the ad-vantage of consistency and completeness
analysis as well as rule-based enor d1ecklng.
Modeklriven analysis approaches are featured In the modekltiven methodologies
and routes that were introduced In Chapter 3. Let's briefly examine today's three most
popubr model.driven analysis approad>es.
Traditional Approaches VariottS tradltlonal approaches to system ai1..1lysls and design were developed beginning In the 1970s. One of the first formal approaches,
which Is stlU widely used today, Is structu.red analysts. Structured anal}'sls foctrses
on the flow of data through business and software processes. It is sald to be processce11..tered. By process-centered, we mean that the emphasis is on the PROCESS building
structured aoal}'Sis a
model-driven, PROCESS·
centered technique used to
1:1ith1:11 i:111Wy£1:1t111 YJ1.t:>011y
bocks in your lnf01'm.ntlon system framewo rk.
system or defile business
requirements lor a new SfStem, or both. lhe models are
pictures that illustrate the
system's component pieces:
One of the key tools used to model processes is tl1e data flow diagram (Figure S.2),
whlch depicts the existing and/or proposed processes In a system along with their lo.
puts, outputs, and data. The models show the flow of data between and through
processes and show the places where data is stored. Ultimately these process m:>dels
serve as blueprints for bush1e.s.s processes to be implemented and software to be
p urcl1..1Sed or constructed.
processes and their associ·
ated inputs, ovtputs, and files.
,
FIGURE S - 2
A Simple Process
Model (Also Called
a Data Flow
Diagram)
'
~
Accounts
c..c1t
,-= ...i.--.._
------,
L _ c.. c1t raUng and lint
'--'-~ - - ~ -
Mam* onlerrMponse
c.edttraUng
and lkntt -
n,tlog
and
llmlt
Bonus ~
o.der ~
Order
- to be
filled
o.der to be
flied
Existing order details
Order to be flled - - ~
~L-''-------~
Revised automatic order
Chapter Flvo
Systems Analysis
plated Dy·
p1aees
&EIIIS;
ISs<>Hon
.
.. ..
,
1, elYOled unoar;
appleS to
genElfflles;
estaDUShEIO by;
generated Dy
astaDI BnaS
18 INtureo in;
•
•
163
FIGURE S - 3 '
A Simple Data
Model (Also Called
an Entity
Relationship
'- Diagram)
• t •
19811.19S
The practice of structured analysis for software design has greatly diminished In
frn,r of object-oriented methods. However, process modeling Is enjoying something
of a re'\oival thanks to the renewed emphasis on bush1ess process redesign, wh.lch ls
discussed L'lter In this ch.apter.
Another traditional approad1, called lnfonnaHon engineering (IE), focuses
on the structure of stored data in a system rather tl1an on processes. Thus, ir was said
to be data-ce11..tered, emph..,slzlng the analysis of KNOWLEDGE (or data) requirements.
The tey tool to model data requirements Is the et1tity rebtlonshlp diagram (Hgure 5-3).
Entltr relationshlp diagrams are stlUwidely used h1 designing relational databases.
Orlglnally, lnformatlon engineering was seet1 as a competing approad1 to struc-
tured analysis. But over time many people made them as complementary: using data
flow dL1grams ro model a system's proces.,es and et1tlry relatlooshlp diagrams to
model a ~tern's data.
Obje<t·Oriented Approach Tr.iditional approaches deUber.itely separat ed the
concerns of KNOWLEDGE (data) from those of PROCES.515. Although mosr systems analysis methods attempted to ~·nchron.ize data and process models, the attempt did not
a lways work well lo practice. Object technologies have since emerged to elimloate
this artlfldal separation of data and processes. The object-oriented appro<1ch
vlews information systems not as data and processes but as a collection of objects
that encapsulate data and processes. Objects can contain data attributes. However,
the only way to create, read, update, or delete an object's data is through one of Its
embedded processes (called methods). ObJecr-orlenced programmJng languages,
sud, as Java, C+ + , and the .NET languages, are becomlng Increasingly pop,tlar.
The object-oriented approach h ..,s a complete sulte of modeling tools known as
the Unified Modeling L,nguage (UML). One of the UML diagrams, an object dass
diagr:am, is shown In Figure 5-4. Some of the Uf.fl tools have gained acceptance for
systems projects even when the lnfonnation system will not be Implemented with
object-oriented technologies.
>
Accelerated Systems Analysis Approaches
Disco,-.')' prototyping and rapid archltected developmetll are examples of accelerated systems analysis approaches that emphasize the construction of prototypes to
more rapJdly idet1tify business and user reqttlrementsfor a new ~·stem. ,_lost sud1 ap.
proaches deri,-e from some variation on the construction of prototypes, workh1g but
incomplete samples of a desired system. Prototypes cater to the .. 111 know wl1at I
want when I see tr• way of thinking that is characteri.51:ic of many users and mai1..1gers.
By ..incomplete; we mean that a prototype will not Include the error checklng, Input
data validation, security, and processing completeness of a finished application. Nor
will It be as polished or offer the user help as in a flnaJ system. But because it can be
i.aformatioo eogineetitlg
(IE) a model-diven and
DATA·e&ntered, bJt PROCESS-sensitive, techn(lue for planning, analyzing, and designing
information sy"S'ems. IE mod·
els are pictures that illustrate
and synchronize the system's
data and proces.ses.
object the encapsulation of
the da1a (calledpmpottiss)
that describes a discrete per.
son, object, place, eveni or
thing, with all of the processes
(called tn9t uxfSJ that are allowed to use or update the
data and proportioe. Tho only
WS!f to access er update the
object's data is 10 use the
object's predefired processes.
object-orieoted
approach a model-driven
technique that integrates data
and process concerns into
constructs called ctJjects.
Object models are pictures
that illustrate the system's
objects from various perspec.
tives, such as the strucil.lre,
behavior, and interactions of
the objects.
prot0type a small-scale, in.
complete, but W)rking sample
of a desired system.
164
Part 1wo
Systoms Analysis Method s
.
FIGURE S - 4
An Object Model
(Using the Unified
Modelins Language
Standa rd)
...
.
has record f or>
o.:
TRANSCRIPT COURSE
developed quicldy, it can qulckly identify the most crudal of business.level require.
ments. Sometimes, prototypes can e\--olve into the actual, completed inforrmtlon
systems and applications.
ht a sense, accelerated ai1.alysls approad1es place much emphasis on the COMMUNICATIONS bulldhtg blocks in your information system
framework by constructing sam-
ple fonns and reports. At tl1e same time, the software tools used to bulld prot<xypes
also address tl1e DATA and PROCES bulldlng blocks.
These accelerated approaches are common In the rapid application de,"'elopment (RAD) metl1odologles and routes that were introduced In Chapter 3. RAD
approaches require automated rools. Whlle some repository-based CASE tools lnclude
very simple RAD facilltles, most analysts use true RAD programming environments
such as Sybase Po·u;erbu.tttter, l\Ucrosoft Access, ~ucrosoft Yfsuat Baste .,ver; or IBI\t
Websphere Studio for ApplicaNo11 Development {lava.based).
Let's briefly examine two popt~ar accelet11ted analysis approaches.
disco,·ery prototyping a
technique use1 to identify the
users' business requirements
by having them react to a
quick-and-dirty implementa·
tion of those requirements.
Oi1<overy Prototyping Discovery prototyping uses rapid development tedmo~
ogy to help users discover thelr business requirements. For example, ft Js very common for ~·stems analysts to use a slmple development tool like t.Ucrosoft Access to
rapidly create a simple database, user Input forms, and sample reports to solicit user
responses as to whether the database, forms, and reports truly represent business requirements. The Intent Is usualtl to develop the final new ~·srem in a more sopllistlcated appUcatlon development tool and L1nguage, but the simpler tool allows the
analyst to more qulckJy prototype the user's requirements.
In dlscovery prototyping, we try to dlscourage users from becoming preoccopled
with the flnaJ "look and feeJ• of tl1e system prototypes- that can be changed during
system design! Therein lies tl1e primary crltldsm of prototyping- software tempL1tes
exlst ln prototyping tools to quickly generate some very eleg.,nt and ,isually appealing
prototypes. Unfortunately, this can encourage a premature foctis 011, and commitment
to,deslgn represented h1 the prctotype. Users can also be misled to believe(l) tlut the
completed system can be built just as rapidly or (2) tl1at tools like Access can be used
Systems Analysis
Chapter Flvo
16S
to build the final system. While tools like Access can indeed accelerate systems de,--eJ.
opmmt, their use In d!sco.-ery prototyping Is fast only because we omlt most of the detailed database and application programming required for a complete and secure
applJcatlon. Also, tools like Access typically cannot support the database sizes, number
of users, and network tra.fflc that are reqttlred of mosl enterprise applicatlons.
Regardless, discovery prototyping is a preferred and recommended approach.
Unfortunately, some systems analysts and de.-elopers are using dlsco.-ery prototyping
to completeJy replace modeJ-drJven desJgn, only to learn what true engineers
have known for years: you cannot prototype without some amount of more formal
design ... enter rapid archltected analysis.
Rapid Architected Analysis lfapld archltected analysis Is an accelerated analysis approach that also builds system models. Rapid a,chJtecture analysis Is made possible by reverse-engineering technology that Is Included In many automated tools
such as CASE and programmlng languages (as Introduced In Chapter 3). Re.-erseenglneerlng tools generate system models from existing software applications or
system prototypes.11,e rest~tlng system models can d,en be edited and lmpro.-ed by
systems analysts and users to pro'\oide a blueprint fot a new and lmpro,--ed system. It
~hot1ld be appaccot th.1.r capld .ucbitccted ana.ly:,l:, b a blendJng of n1odeJ-dctven and
accelerated analysis approaches.
There are two dlffere11t tedmlques for applying rapid archltected analysis:
btost systems have already been automated to some degree and ex.1st as
leg.,cy Information systems. Many CASE tools cm read the underlyh1g data-
base structures and/or application programs aild reverse engineer them into
Tarlous system models. 111ose models ser,--e as t point of departure for defining model-drJvet1 user requirements analysis.
If prototypes ha>.. been built Into tools Uke Microsoft Access or Visual Baste,
those prototypes can sometimes be reverse engineered into their equJvalent
system models. Toe system models usually better lend themsel.-es to analyzing
the users" requlremetlls for consistency, completeness, stahlllty, scalablllty, and
OexibiUty to future change. Also, the system models can frequently be forward
engineered by the same CASE tools and ADEs (appUcatlon de.-elopment
en'\oironruents) lnto databases aitd application templates or skeletons that will
use more robust enterprise-level database and p-ogramrolng tedu1ology.
rapid arcb.itected
analysis an approach that
attempts to deri'Je system
models (as described earlier
in this section) from existing
systems or discovery
prototypes.
re,·erse eogi.neeri..og the
use of technology that reads
the program code for an existing database, application pro.
gram, and/or us;r interface
and automaticaty generates
the equivalent S'/stem model.
Both techniques address the pre.-Jous Issue that engineers rarely prototype In the
total abset1ce of a more fonna l design, and, at the same time, they preserve the
ad-vantages of accelerating the systems analysis phasts.
>
Requirements Discovery Methods
Both model-drJven and accelerated systems analysis approad1es attempt to express
user reqttlrements for a new system, either as models or as prototypes. But both approaches are, In turn, depet1detll on the more subtle need to actually Identify and
matuge tl1ose reqttlrements. Fttrthermore, the requk'ements for systems are dependetll on tl1e analysts' abiUty to dlsco.-er the problems and opportunities that exist In
t11e current system- thus, analysts must become skilled In ldentlfyfng problems, opportunities, and reqltlrements! Consequently, a ll approaches to systems ai1..1Jysis require some form of req,1lremei1ts discovery. Let's briefly survey a couple of
commo11 requ.lrements discovery approaches.
FacHinding Techniques Fact-fhtdiug Is an essentlal skill for all systems analysts.
The fact-6ndh1g redmlques co.-ered In this book (In fie~ In the next chapter) Include:
Sampling of ex..lsting doctunet1tation, reports, fonns, files, datab.1Ses, and memos.
• Research of relevant Uteratu.re, benchmarking of others• solutions, and sJte visits.
requiremeot! discove,y
the process, used by systems
analysts, of ider1tifying orex.
trac.ting syS1em oroblems and
solution requirements from
the user community.
fact-fiodiog tile process of
collecting inforrration about
system problems, opportunj..
ties, solution requirements,
and priorities. Ato called
inbtmatioo gat"i9fing.
166
Part 1wo
Systoms Analysis Methods
Observation of the curret1t system lo action and the work environment
Que.stioru1..1lres and surveys of the management and user community.
Interviews of appropriate managers, users, and tedmlcal staff.
cation of the JRP techniques
Joint Requirements Planning TI1e fact-finding teduliques llsted above are invaluable~ however, they can be time-consuming In their dassJc forms. Alten1atlvely, requirements discovery and management can be signlftcantly accelerated using joint
requirements planning ()RP) techniques. A)RP-tr.llned or .cert!Jled analyst usually
plays the role of facilitator for a workshop that will typlcally run from three to five
full working days. Thls workshop can replace weeks or months of dasslc fact.fludlng
and follow-up meetings.
JRP provJdes a working en,·ironment In which to accelerate all systems arulysis
tasks and deUverables. It promotes ert11..mced SYSTEM OWNf.R and ~ USER participation in systems analysis. Bttt it also requires a fadlitator with superior mediation
and negotiatio11 skills to ensure that all parties receive appropriate opportwlitles to
contrlbute to the system's de,--etopment.
JRP is typically used In conjunction with the modeklriven analysis approad1es
we described earlier, and It ls typically Incorporated Into rapid application develop,
to thA AntirA ~r.:iri:im.<: c1AVAlnp.
ment (RAD) methodologies and routes (which were introduced in Chapter 3).
joi.ot requirements
planning O RP) the use of
facilitated workshops to bring
together all of the system
owners, users and analysts
and some sys:ems designers
and buik:ters to jointly perbrm
systems analysis. JRP is gen.
era! ty consktered a part of a
larger method called joint ap.
pNcalcn dwe/opfTl"'1t (JAD),
a more comprehensive appli.
ment process.
>
business process
r edesign (BPR) the
application of systems analy.
sis methods tc the goal of
dramatically changing and
improving the fundamental
business processes of an
organization, hdependent of
information technology.
Business Process Redesign Methods
One of the most Interesting contemporary applications of systems analysis methods ls
buslness process redesign (BPR). The Interest In BPR was driven by the dlscovery
that most cturent Information 5'/stems and applications h.ave merely automated existing and inefficient business processes. Au tomated bureaucracy ls still bureaucracy;
automation does not necessarllr contrlbute value to the business, and It may acnr.illy
subtract value from the business. Introduced !11 Chapter !, BPR ls one of many types
of projects triggered by the trends we call total quality numageme11t (!'QM) and
co11.tl11uous process i111prove1nent (CPI).
Some BPR projects focus on all business processes, regardless of their
automatlo11. Each business precess ls thoroughly studied and at1alyzed for l>,nJeneck.s, value returned, and opportunities for eliminatio11 or streamlining. Process
models, such as data flow diagrams (discussed earller),help organizations visualize
their processes. Once the busi.oess processes l1ave been redesigned, most BPR projects conclude by examlning how Information technology mlght best be applied to
the Improved business processes. This may create new Information system and
application development projects co implemenc or s upporc cbe new bustness
processes.
BPR ls also applied within d,e context of Information system development pro.
jeers. It ls not llllcommon for IS projects to indude a study of existing business
processes to ldet1tlfy problems, bureaucracy, and lneffidet1des that can be addressed in requirements for new and Improved information systems and computer
applications.
BPR has also become common In IS projects that will be based on the purchase
and h1tegration of commercial off-the-shelf (COTS) software. The purchase of COTS
software usually requires tl1..1t a business adapt its business processes to flt tl1e software. An analysis of exlstlng bush,ess processes during systems analysis Is usually a
part of such projects.
agile method the integra.
tion ofvariousapproaches of
systems analysis and design
for application as deemed ap.
propriate to the problem being
solved and th, system being
developed.
>
FAST Systems Analysis Strategies
Uke most commercial methodologies, our hypothetical FAST methodology does not
Impose a single approad1 on systems analysts. Instead, It Integrates all the pop,tbr ap,
proaches introduced In the preceding paragraphs Into a collection of agile methods.
11,e SoundStage case study will demonstrate these methods h1 the context of a typical
Systems Analysis
first tsslgnment for a systems analyst.The systems analysis teclmlques will be applied
within the framework of:
Your information system building blocks (from a,apter 2).
Toe FAST phases (from Chapter 3).
FAST tasks that Implement a phase (described In this chapter).
Given this context for studytng systems ai1..1lysls, we can 11ow explore the systems
analysis phases and tasks.
( The Scope Definition Phase
Recall from Chapter 3 that the scope tieflnition phase Is the first phase of the classic
systems development process. In other methodologies this might be called the prelt1nl-11ary tnvesffgatlo1i phase, Initial st1,dy phase, Sllrvey phase, or planning phase.
The scope dellnltion phase answers the question, •1, this project worth looking arr
To aa.swer tllis question, we must define the scope of the project and the percetYfd
p rul1h:-1u:s, opi,,ortuu.iliC":s, -.uu.l Jirec..11~.:, lh.tl u·fgge1:~ tlut ptvj~l. &:nuuiug llut pro-
ject Is deemed worth looking at, the scope definition phase must also establish the
project pLm ln terms of scaJe,development strategy,scheduJe, resource requ.lrements,
and budget. 1
Toe context for the scope dellnltion phase is shaded in Figure 5-5. Notice tl1at the
scope definition phase ls concerned primarily with the SYSTEM OWNERS' view of the
existing system and the problems or opportunities that triggered the Interest. System owners tend to be concerned wlth the big picture, not details. Furthermore, they
detetmlne whether resources can and will be committed ro the project.
Figure 5-0 is the first of five task diagrams we wUI h1troduce in this cllapter to take
a doser look at each systems analysis phase. A task dlagran1 shows the work
( = tasks) that sl10,tld be perfonned to complete a pba.<e. Our task diagrams do not mandate any speclflc methodology, but we wlUdescribe in the accompanying paragraphs
the approaches, rools, and reclmlques you mighr wanr ro consider for ead1 rask.
Figure 5-6 shows the tasks requlred for the scope deOnltion phase. It is Important to
remanber that these task diagrams are only templates. The project team and project
man1ger may expand on or alter these templates to reflect the unique needs of any
given project.
As shown in Figure 5-0, the final deUverable for the preliminary in,-.stlgation
ph.ase ls comp letio11 of a PROJOCT CHARTER. (Sud1 major delh,--erables are indicated In
each task diagram In au-capital letters.) A project clwter defines the project scope,
plan, methodology, standards, and so on. Completion of the project d1arter represents
the first milestone In a project.
Toe scope deflnltion ph.ase is intet1ded to be q<tlck. The entire phase shottld
not exceed two or three days for most projects. T he phase typlcaUy includes the
following tasks:
I. I
1.2
I. 3
I. 4
1.5
identify baseline problems and opportunlties.
Negotiate baseline scope.
Assess baseline project worthiness.
Develop baseline schedule and budget.
COrurnwllcate the project pL1n.
ter•s now examine each of these tasks in greater detail
IJf you: oourx or- N'lldi..ns ha• il..lte:ady illocluded Chaptl'.r 4. yo11 ,hould ~ t the.st pla.nbi..ns detnctits u p:,:rt d
prtj«• tnatiagdDeht, Chaptl'.r 4 s u ~ ILlld ~ k d the- ptocc,s u,fd by prtj«t tnatiagdll to dC"O'dop a
prtj«1pbt1,
Chapter Flvo
167
168
Part 1wo
Systoms Analysis Methods
S1tateg1C en1erpr1&e Plan
--"""'""""'
&TA TEIIENT OF
wo ,iec
l" RO BLEII S TATEMENT , • •• ,_, •• • PIECES
.....
IT]
,,,,.,wo,• )
COlll•UNICATlONS
SCOPE
OPE
•
OU $ 1NC6e l'ICOUll'ICMCNTe
•
lll810N
$ T A TCMCNT
~
•~
•••
8U91N£18
PAOCESJ
AEO UIASilENT&
8u&INEi88f; 8 Y8TEII
AEO UIAE• ENT&
•
LOGICAi..
D<TA
LOGICAL
PAOCE8i
•OOEL8
•OOEU
LOGICAL
..TEFIFACE
M00EL8
8U81N£.8$
•z
D<TA
•>
•>
.••
••
•
0
•z
••
~
•,
0
•
•••
•,
•~•
&Y8 TEM P AOPO &A L
(or
..TEFIFACE
JIEOUIAEMENT8
JIE O UE8 f FO A 8Y& TEM PFI OP08AL 8)
APP LI CA TION A R CHITEC T U RE
;
.........
OEalGN
INTERFACE
0£.SIOIN
.•
........ .i
!
COUMEFIOAL
80FTW.V.E
~
0
0
aPECIFICATION8
TR AININ G MATERI A L&
F U N C TION A L 8Y& TEM
OATA8A8E
8 0WTION
PHY81CAL
USER •s'»'8'n•
PHYSICAL
80FTWAl'IE DUlc:¥\1
8 PECIFICATON&
SPECIFICATION&
CU8'1CIM~ILT
i
OPER A TI O N A L SYS TEM
A PPLICATI )N
80FTW.V.E
d
'!
H
n
.
.••'
.
2
~
0
•;
••
~
g
'•
!i!
•~
•~
~
8U8 1NE8$ PJICCE88
tM.TABA8E
1a
,;
~
OE&ION PROTOTYPES
PWY81CAI..
H
USER
0
INTERFACE
80UJT10N8
••
INTERFACE
80UJT10N8
.,.....
PO & T· AUO IT RE VIEW
"""'""
APPA~ eo
INTEFIF..ce
TECHNOLOOIES
Sltateglc Enterpr199 1111:lrmauo-. T&cnnoiogy Ncnnecture
F I G U RE S • S The Context of the Scope Definition Phase of Systems Analysis
u•
u
§
I
•
••
I
•§
t
l
•
•I
~!
Ii
••
5
Systems Analysis
Chapter Flvo
169
' FIGURE S - 6 '
Tasks fo r the Scope
Definition Phase of
" Systems Analysis
PROJECT
CHARTER
!
--.
....
!
problem
.-.
(PIECES)
-- ....•
probh,m
..tementof-...:ri;
projeot ..:hedule
•nd re,ouroe
•••is...,..,ni.
I
Preliminety Pro blem
.,
end ,1,op,
•
.-.,..
.
problem
.tn,me,nl,
-.ith•ciop,
Si.tern, nt -.ith Soope
j
I
>
Task I . I -Identify Baseline Problems and
Opportunities
one of d1e mosc Important t.asks of the scope defln..tuon pt1ase ls escabllshLng an
lnltlu baseline of tl1e p roblems, opportunltles, andior directives that triggered the
project. Each p roblem, opportunity, and directive ls assessed with respect to urgenq•, vlslblllty, tangible benefits, and priority. Any addltlonal, detailed analysis is
not relevant at this stage of the project. It may, however, be useful to list any perc eived constraints (limits) on the project, suc h as deadlines, maximum budget, or
general t echnology.
A setllor systems analyst or project manager usually leads tills task. Most of the
other participants are broadly dasslfled as SYSTEM owr~ s. This includes the executive
sponsor(s), the hlghest~evel manager(s) who will pay for and support the project. It
also lndudes managers of all organlzatlonal unlts that may be impacted by the system
and possibly includes lnfonnatlon ~·stems managers. SVS're.t USERS, svsTE.\.t DESIGNERS,
and """"" BUIU>ERS are not typically involved In tills ttsk.
As shown in Ffgure 5-6, a PROJOCT REQUEST OR ASSIGNMJ.:NT triggers the task.Th.ls trfgger may take one of several altenutt,--e forms. It may be as simple as a memorandum
of authorJty from an Information systems steering body. Or ft may be a memorandum
from a business team or unit: requesting systems development . Some organJz.atlons require tl1..1t all p roject: requests be submltted on some standard request.for-service
fonn,sucb as Figure 5-7.
scope tne oounaaries 01 a
project-the areas of a busj.
ness that a project may (or
may not) address.
170
,
Part 1wo
FIGURE S - 7
Systoms Analysis Methods
'
SoorwlSta,ge Ent ertarlment Club
Rl!OIJES'f l•OR
INl'ORHA'flON
SYS'fllH SllllVICUS
ldormoti<:IJ Sy.tom $erviotw
Phone: '9....0EISI k x ,e,.0999
Internet: t!!!£!~
.• ound11t!9e.eom
Intn,net: t!!!£!~
.eound11t!9e.eom l!!:!;
A Request for
'-Systems Services
DATE.OJ:REOVEST
I
Jenuery 9, 2003
I
SERVla. REQUESTED FOR 0E'ARTM£Nl'{S)
Mem~r Sef'Vioee, Warehouee, Shipping
SUBMITTED BY Ikey u, et' c:ontee.t)
N•me
Title
Offce
,none
....
EJ<ECUTM S,ONSOR (fu:nding eutbority)
....
S•reh Mllrtmen
8ueinefe Ar,elpt, Member Setvioee
'9....0987
TYPE OJ: SERVlCE REOUIESTEO:
0 lnformwtion Stn,t,,gy Pl•nning
0
N•me
Title
Offce
Phone
Buein- Prooefe Atlely'l!i•end Red:l'lfign
New Applioetion Development
Other (pie- epeoify)
0
0
0
Gelen Kirkhoff
Vioe P,.eid~ Mem!Hr &,rvi~
G2A2
49,.12,2
E xitting Applioetion Enhenoemeint
E xitting Applioetion Mei ntenenoe (problem
NotS.u~
fuel
&RIEF STATEMENT 01:'. PAOSLE:M, OPPORTUNITY, OR DIRECTIVE £,erttaoh edditione.l dooum$nt.tion • • n.oMMryl
The informetion ttrd:t9Y pl,nning gro up h•• tor9eted mem.ber.ervffl, m..,ktting, ,nd or-dorfulfillment (inolwivo
of $hipping} for- b~ine., prooo• • rodooign N integr~d opplioetion dovebpm,ont. Currently • orviood by•opertte
informetion •v-tomt, thete oro•• ,ro not well int$9r•d to m~m.i:re e-ffioiont order • orvioo• to our m.ombort. The
~•·" -"' "'V.,.,.,....,.,.,""" .....,,......hi•'""'·"
"'l'idl,,nh"'"Oi"O (""'4•......, ""d _...,,..._ 1,. .,....,..,.. _
_p,,,_ .................
ox ~ for • imi ~r prod~ ond oorvioo• . Som, of thooo • ~m• were inherited through m.$r9e,- thc,t expended our
produc:it• ,nd • -ffl. Thero obo ex~ • ove·ol m,rutirig opportunitie.to inoro- our p , -noe IO our mem.bert.
Ono oxom,ple ird udo• Internet oommeroe •rvioo• . Fin,lly, tho automatio idontifioetion tyttem. being d eveloped fo,
the w ,rohouoo mutt fully int$ropor.co with nombor • orvioe..
&RIEF STATEMENT OF EXPECTEO SO LUTIQI.I
W o onvioion oompl~ly n- ond ttreom.lined bwin- prQOl!!Mtf that mi nimito the '"PonM time IO m.ombor
orde,- for pro d uou and oervioo• . An or<hr o'1oll not be OOl'$ider-ed fulfilled until it h•• been reoeived by the
member. Tho n- ..,.com • hould provide for- expended olu b and m.ombor flexibility aid tdeipttbility of b,oio
bueinoo• prod~ ond oorvioo• .
W e onvioion a¥tem thc,t exten~ to th, do•ktop oomputeu cl both omployoo• and m.ombort, w ith ,pproprft
• hor•doervioo• provided toroeo the networ•, oon•~ent with the ISS d~ibuted ,rohitecture. Thio it oon•~ent wit',
etr•gio pl,._ to rfbre th• AS/400 oent,.1 oom.p.ltl!lr •nd repla:ie it w ith • orveu .
ACTION tlSS Offiot UM Only}
0
k•fib ility , .._ m•nt opprcwfd
l!I kffib ility . .._ mfnt Wf.ivfd
AMig ntd t.o S•.ndr• Sh!f:h•fd
Approvfcl ludg,rt I
St.r10.t•
ASAP
0
RoquHt d•I•.,..
a .clcbg g.ci until d.t•:
0
RoquHt r•i-,ct•d
R-t1:
Authoriifd Signe'll.ltM:
I<e.lz~c,«; J
r.h.-i,. 1i::i::
--rr2.J)
c..,.,....;... i;:._..;.,o Cindy
.SO,QOO
O••dlin•
....
~1.r.aK~
~ - ·c-::"~.
l'ODI IJ5.l«MUS' <1--- - 0..00.,N, Im)
The key deliverable of this task, the PRELIMINARY PROBLE.\t STATEMENT. consists of the
problems, opportunlcies, and directlves ci1at were ldet1tlfled. T he PROBLEM STATE!dENrS
are stored In the repository for later use ln the project. Figure 5-8 Is a sample d0ct>
ment that summa rizes problems, opporrunltles, an d directives in terms of:
Urgency -In what time frame must/should the problem be soh,"f!d or the
opportunity or dlrectlve be realized? A r1ltlng scale cot~d be developed to
consistently ailSWer this question .
Vislbfllty- To what degree wot~d a solution or new system be visible to
customers an<Vor executive management? Again, a rating scale could be
developed for the answers.
Benefits-Approximately how much would a soJution or new system lncrease
annual re,-enues or reduce annual costs? This Is oftet1 a guess, bur if all participants are Involved in that guess, it should prove sufficiently conservaffi"e.
Systems Analysis
Chapter Flvo
171
Problem Statements
Pro.ecti
Member seivices information system
Prtject ma,ageri
SiJldra Shepherd
Created by,
SiJldra Shepherd
Last updated by,
Robert Matinez
Date last i.pdated1 Janua,y 15, 2003
Date created1 Janua,y 9, 2003
Brief Statements of Problem,
Opportunity, or Directive
1, Order response time as measured fiom
time o f order receipt to time o f custamer delwef'Y has increased to an
Annual
Urgency
Vlslblllty
Benefits
Priority
or Rank
Proposed
Solution
ASAP
High
$175,000
2
New da'elopment
2. The recent acquisitions o f Private
Screenings Video Club a,d GameScreen w ill further stress the througlp ut requirements for the a .11rent system.
6 months
Med
75,000
2
New da'elopment
3. CUrrently, three different order entry
systems setVice the a.Jdio, video, and
game dt.'isions, Each system is designed to interface with a different
warehousing system; therefore, the
intent to merge inventory into a single
warehouse has been delayed.
6 months
Med
515,000
2
New da'elopment
4, There is a general lack of access to
management and decision-making
information, This w ill become exasperated by the acquisition of two
additional order processing systems
( from ~ivate Screenings and Game-
12 months
Low
15,000
3
average of 15 dais.
After ne,.,, system is
developed, prc,.,ide
userswUh
easy-to-learn and
" se reporting tools.
Screen).
5. There currently exist data inconsistencies in the member a,d order
files.
3 months
High
35,000
1
Q.Jick fix. then reN
development
6. The Private Screenings aid
GameScreen file SJStems are
incorrpctib le \Mth the SoundStage
eq.Jivalents, Business data problems
include data inconsistencies and lack
o f input edit contiols.
6 months
Med
Unknown
2
New da'elopment.
A.dditioral auantification of benefit
mig,t increase
urgency.
7. There isan oppatunitytocpencrder
systems to the Internet, b ut security
and contiol are a, issue.
12 months
Low
Unknown
4
~uture wrsion of
newly
developed system
8. The a .11rent crder entry system is
incorrpctib le \Mth the fathcoming
automatic identification (bar<oding)
S)'Stern being developed for
the warehouse.
3 months
High
65,000
1
Q.Jick fix. then reN
development
( F I G U R E S • 8 Sample Problem Statements
)
172
Part 1wo
Systoms Analysis Method s
.Prf.orlry- Based on the above ai1SWers, what are the consensus prlorftles for
each problem, opportunity. or directive. If budget or sched,de becomes a
problem, these priorities will help to adJust project scope.
Possible solutr.ons (OP1)-At this early stage of the project, possible sole.
tlons are best expressed in simple terms such as (a) )eave well enough alone,
(b) use a qtdck ftx, (c) mal:e a simple to moderate enhancement of the existing system, (d) redesign the existing system, or (e) design a new system. Toe
participants listed for this task are well sulted to an appropriately high.level
discussion of these optlon.s.
111e PIECF.S framework that was Introduced In 01..1pter 3 can be used as a framework
for categorizing problems, opportunities, directives, and constraints. For example,
Problem I in Figure 5-8 could be dass!Jled according to PIECES as PB. - Perfonmnce,
Response TI mes. (See Figure 3-4 in Chapter 3). Problem 4 in Figure S-8 could be clas-
sUled as l.A..2- lnfonnation, Outputs, Lack of necessary lnformatlon .
The primary technlques used to complete this task Include fact.finding and meeting.1 with~ OWNERS. These 1ecboiques are taught ln Chapter 6 .
>
Task 1.2-Negotiate Baseline Scope
scope defines ti,e bo,u,dary of the project- d1ose aspects of the business tbat will and
will not be Included in the projEct. Scope can change during the project; however, the
initial project plan must establish the preliminary or baseline scope. Then If the scope
cbanges slgn!Jkantly, all parties in,-.,J,-ed will have a better appreciation for why tl,e budl!l't and schedtde bave also chang;,d.This task can occur in parallel with the prior ttsk.
Once again, a senior ~terns analyst or project manager usually leads this task.
Most of the oti1er participants ate broadly dassUled as SYSTEM OWNERS. This Includes the
executive sponsor, managers of all organizational units that may be Impacted by the
system, and possibly information ~·stems mai1..1gers. SYsTfl\l USERS, SYSTE.\t DESIGNflt\ and
SVSTEN BUIU>ERS are not typically 10,-olved lo tills task.
As shown In Agure 5-0, this task uses the PREUt.DNARY PRO BUl\l S'J'ATE.>,.{E'II( produced
by the pre>ious task. It sho,dd make sense that ti1ose problems, opportunities, and dlrectfves form the basis for defining scope. TI1e S'J'ATJ:ME'l(J'S OF PROJECT SCOPE are added
to the repository for larer use. These statements are also formally doa1mented as the
task deUverable, PR WMCNARY PROJ!,LJ:M STATfMENTWTTH SCOPE.
Scope can be defined easily w!dlin the context of your Information system building blocks. For example, a projoct's scope can be described lo terms of:
What types of DATA descrll:,, the system being studied? For example, a sales
information system may require data abour such tllings
PRODUC'J'S,
and SA.LES
What business
as CUSTOMERS, o ROms,
R.EPRES~trATIVES.
are included ht the ~tern being stud.Jed? For example, a sales information system may lnclude business processes for CATALOG
PROCESSES
M.ANA.G~ CUSTOMER M.ANA.G~ ORDER lllll'RY, O RDER FULftLLMENT, ORD f.R
and CUSTOMER lll.ATIONSHCP MANAGEMENT.
How must the ~tern tNTElfACE with users, locations, and other systems? For
example, pote11tlal Interfaces for a sales Information system ndght Include
M.ANAGe,.mr,n',
CUSTOMERS, SALES 11.EPR.ESENTATIVES, SA.LES Cl.f.RKS AND MANAGERS, REGIONAL SAJ..ES OFFICES,
and the
ACCOUNTS R.OCflVABLH
and
lN\'E'lll"ORY CONTROL lNFOR..\tATION ~ .
Notice that each statement of scope can be descrlbed as a simple list. We don't
necessarily .. define,. the Items lo the list. Nor are we very concerned wlth precise requirements ai1..1lysis. And we dtfinlt:ely are not concen1ed with any time-conslmlng
steps such as modeling or prototyping.
Once again, the primary technlques used to complete this task are fact-finding
and meetings. Many analysts prefer to combine this task with both the pre>iom and
the next tasks and accomplish them wltbin a single meeting.
Systems Analysis
>
Chapter Flvo
173
Task 1.3-Assess Baseline Project Worthiness
Thls is where we answer the question, "ls this projea worth looklng at?" At this early
stage of the project, the question may actually boil down to a • !,est guess· : WIU solving the problems, exploiting the opportunities, or fulfilling tbe directives return
enough '\o'alue to offset the costs that we will incur to develop this system? It ls
Impossible to do a thorough feasibiUty analysis based on the Umlted facts we"ve
collected to date,
Agait1, a senior ~·stems ai1.alyst or project manager usually leads this task. But the
SYSTE\I oWNERS,Jndusfve of the executi,. e
. sponsor, the busines., unit managers, and the
information $)'stem.s managers, should make the decision.
As shown In Figure 5-6, the completed PREU~ARY PRO BLE.\.1 STATEMENT WITH SCOPE
triggers the task.11lls pro>ides the level of information required for this preliminary
asse!sment of worth. There is 110 physJcal deliverable other than the GO OR NOGO
DECISION. There are actually several altematt,--e dedsloru.111e project can be appro,-ed or
canceled, and project scope can be renegotiated (Increased or decreased!). Obviously,
the remaltllng tasks In the prelimlnary lnvestlgatlon phase are necessary only If the
project has been deemed worthy and approved to continue.
>
Task 1.4-Develop Baseline Schedule and Budget
If the project has been deemed wortl1y to concinue, we can now plan the project in
depth. The ltlltlal project plan sho,dd consist of at least the following:
A preliminary master plan that indudes schedule and re.source assignments
lor the encire project. Thls plan wlU be updated at the e11d of ead1 phase of
the project. It is somecimes caUed a baseline plan.
A detailed plan and sd>edule for cornpletit1g tbe next phase of tl,e project
(the problem analysis phase).
The task is tl,e responslbiUty of tl,e project manager. Most project managers fit1d
it useful to lndude as much of the project team, lnduding
DESIGNERS, and BUUDERS,
SYSTE.\t OWNERS, usms,
as po~ible. a1apter 4 coined the term joint projeaplan-n ing
to dtscrlhe the team approach to bulldit1g a project plan.
As shown in Figure 5-0, tills task ls triggered by the GO OR NC>GO DECISION to continue the project. Th.ls dedslon represents a consensus agreement on the project's
scope, problems, opportunities, directives, and wortlllness. (lllis "wortlllness•
must still be presented and approved.) 111e PROBLEM s r ~ wrra SCOPE are the key
lnp<n (from the repository). The deliverable of this ta<k is the BASWNE PROJECT PLAN AND
SCHEDULE. TI1e STATE.~ Ofl WORK (see Chapter
ASSJG:-wENTS
4) and PROJ.f.CT SCHEDULE AND RESOURCE
are also added to the reposJtory for continuous monitoring and, as
approprL1te, updacing. The schedtde and resources are typically maintained in the
repository as a project mai1..1gement software file.
The techniques used to create a project plan were covered in depth in Chapter 4.
Today, these techniques are supported by project management software such as
~Ucrosoft Project Chapter 4 also discussed the detaUed steps for completing the plan.
>
Task 1.5-Communicate the Project Plan
In most org.ulii.atlons, there are more potential projects than resources to staff and
fond those projects. Unless our project has beet> predetermined to be of the hlghest
priotlty (by some sort of prior tactlcal or strategic pbrullng process), then lt must be
prese11ted and defended to a steerl.tig body for appro'\o-a.l. ,_lost organizations use a
steerlng body to approve and mo1lltor projects and progress. 11,e majorlty of any
steering body should consist of non-information systems prof~Jonals or managers.
,_lany organJzatlons desJgil..1te "ice presidents to serve on a steerlng body. Other
steering bod)' a committee
of executive business and
system managers that studies
and prioritizes ~ mpeting proj.
ect proposals to deterrn ine
which projects will return the
most value to tha organization
and thus should be approved
for continued systems devel.
opment. Also called a steering
ccmmittee.
174
Part 1wo
Systoms Analysis Methods
organlzatlons assign t11e dlrect reports of vice presidents to the steering body. And
some organJzatlons u tilize two steering bod.Jes, one for vlce presJdents and one for
their direct reports. lnfonnatlon systems managers serve on the steerlng body only to
answer questions and to communicate priorities back to developers and project
managers.
Regardless of whether or not a project requlres steering committee appro..t, It ls
equally Important to formally L,unch the project and commwllcate the project, goals,
and schedule to the entire business commwlity. Opening the lines of communication
is an important capstone to the preliminary investigation. For this reason, we advocate
the ...best practices" of conducting a project kickoff eve11t and creating an l11tra11et
project Web sue. 111e project kickoff meeting ls open to the entire business comnn•
nity, not Just the bush1ess wlits affected and the project team. TI1e lntranet project
Web site establishes a community portal to all nonsensitive news and documentation
concerning the project.
Ideally, the executive spo1uor should Jointly facilitate the task with the chosen
project manager.111e >islbillry of the executive spo1uor establishes Instant credbiUty
and priority to all who participate In the kickoff meeting. Other kickoff meeting participants sho,dd inciude the entire project team, including assigned SVSTEN o1'NE!s,
USEllS, ,\.NA.t¥£TS, omtcNms, :ind ButLOms. Ideally, the kicko ff meeting dlo ldd be open ro
any and all Interested staff from the bush1ess community. Tols bullds commwllty
awareness and consensus wh.lle reducing both the volume and the consequences of
rumor and misinformation. For the lntraoet component, a Webmaster or Web author
should be assigned to the project team.
As shown h1 Figure 5-6, this task ls triggered by the completion of the BASEUNE
PROJ.f.CT PLAN AND SCHIDUI.£, The PROBLEM STATfl\lml'S ANO SCOPE
are
avalL1bl e from
the
reposltory. The deUverable ls the PROJECT CHAJtTER. 111e project charter ls usmlly a
docttment. It lndudes "-arJous elemet1ts that define the project In terms of p articipants, problems, opportunitle.s, and directfves; scope~ methodology; statement of
work to be completed; deliverables; quality standards; sci1edule; and budget. 111e
project charter sho,dd be added to the project Web slte for all to see. Elements of the
project d1..1rter m.1)' also be refonnatted as slides and handouts (using software such
as ~ficrosoft Pou:erPo-1111) for Inclusion ht the project klckoff event
Effective Interpersonal and commwlicatlons skills are the keys to this task. These
include principles of persuasion, selling d,ange, business wrlth,g, and puhUc speaking.
This conciudes onr discussion of the scope definition phase. Toe participants In
the scope defulltlon phase ollght decide the project ls not wonh proposing. It is also
possible the steerh1g bod)• may decide that other projects are moro Important. Or ti1e
execurtve sponsor mlghc not ertdorse the project. ln each of these uucances, the protect ls tennlnated. Little time and effort have been expended. On the other hand, with
the blessing of all the ~tern owners and the steerlng committee, the project can now
proceed to the problem analysis phase.
~~~T_h_e_P_r_o_b_le_m
~A
_n_a_l_y_s_is_P
_h_a~se~ ~~~~~~~~~~~~~~)
111ere is an old saying, .. Don't try to fix ft unless you w1derstaod It." That statement
aptly describes the problem a,udysrs phase of systems analysis. There is always 2 cnrrent or ex..lstlng system, regardless of the degree to which ft ls automated wlth infor.
matlon tedu1ology. 111e problem ai1..1lysis ph.ase provides the analyst wlth a more
thorough w1derstandlng of the problems, oppomullties, and/or dlrectlves thal triggered the project. The problem analysis phase answers tl1e questions, •Are the prof>.
Jems really wortl1 solving?" and "ls a new system really worth building? .. In other
metl1odologles, the problem an.tlysls phase may be known as the stu.dy phase, #udy
of the current system, deta(.{ed tnvesttgat/011 phase, or feaslbillry analysts phase.
Can you ever skip the problem analysis phase? Rarely! You almost always need
some level of understandJng of the current system. But there may be reasons to
Systems Analysis
acceler.ite the problem analysis phase. First, If the project was triggered by a stnteglc or tactical plan, ti1e worthlness of the project Is probably not in doubt - the
problem analysis phase wouJd be reduced to w1derstanding the current system,
not analyzing It. Second, a project may be Initiated by a directive (such as comp!J.
ance wlth a governmental dfrectlve and deadline). Again, In this case project worthJness is not In doubt. Finally, some methodologies and organ.izations deliberately
consolidate the probJem at1alysls and requirements analysis phases to accelerate
systems analysis.
The goal of the problem analysis phase ls to study and w1derstand the problem
domain well enough to thoroughly analyze its problems, opportunities, and constraints. Some metl1odologies encourage a very detailed lUlderstanding of the curret1t system and document that system in painstaking detail using system models
such as data flow diagrams. Today, except when business processes must be redesigned, the effort required and the value added by such detailed modeling Is questioned and usually bypassed. TI1us, the current ve,slon of our hypothetical PAST
methodology encourages only ettough $)'stem modeling to refine our understan ding
of project scope and problem staremenr, and ro ckfine a common vocabulary for
the system.
The context for the problem :U.t..'llysis plt..'lse is sll:ided in Figure S 9. Notice tlt..'lt
the problem analysis ph.ase ls concerned primarily with both the SYSTE."1 OWNERS'
and the ~ usms• views of the existing system. J\'otlce that we build on the lists
created In the prelimloary ln,--estlgatlon p hase ro ai1.1lyze the KNOwt.EDGE, PROCESS, and
OOMNUNICATIONS bulldlng blocks of the existing syslem. Also notice ti1at we Imply
mJoim.al system modeling . We may still use the PIECF.S framework ro ai1..1lyze each
building block for problems, causes, and effects.
Figure 5-10 ls the task diagram for the problem attalysls phase. T he final phase deliverable a nd milestone is producing ~ IMPROVfMENT O BJOCTIVES that add.res., prob.
!ems. opportunities, and directives. Depe11dlng on ti1e size of the system, Its
complexity, and ti,e degree to whlch project worthiness Is already known, the IUustrated tasks may consume one to six weeks. ,_lost of these tasks can be accelerated by
JRP-like sesslons.11,e problem analysis phase typlcallj• lndudes the followi ng tasks:
2.1
2.2
2. 3
2.4
2.5
2.6
Understand the problem domain.
Analyze problems and opportwllties.
Analyze business processes.
Establish system lmproveme11t objectives.
Update or refine the project plan .
Commwlicate Bndin.e:s ai1d recommettdatlons.
Let's now examine each of these tasks in greater detail.
>
Task 2.1-Understand the Problem Domain
During ti,e problem analysis phase, the team ltlltially attempts to team about tl1e Cttr·
rent ~tem. Each svsTE."1 OWNER, usm, and ANA.CYST brings a dJfferenr level of understand.fog to the $)'stem- different detail, different vocabulary, different perceptions,
and dJfferenr opinions. A well-conduct:ed study can prove revealing ro all parties, lod udi.1g the system's own management and users. It fs important to study and u.11dersta1ul the problen1 donU1i11, tl1..1t domain in wbid 1 the business problems,
opporttmlties, directives, and constraints exist.
This task will be led by the project manager but facili tated by the lead systems
analyst. It is nor uncommon for one lndi"idual to phy both roles (as Sandra does lo
the SoundStage case). Other SYSTE.\SS ANALYSTS may also be involved since tl1ey conduct inter'\oiews, scribe for meeting.,, and docttmtnr findings. A comprehensive
stud~· should include representative SYSTEM OWNERS and USERS from all business wt.its
that will be supported or Impacted by ti1e system and project. It ls extraordinarily
important tl1at enough users be induded to e ncompass the full scope of the
Chcpter Flvo
17S
176
Part 1wo
Systoms Anclysls Methods
Stta'3gle Enlerprl&e Plan
---
00111:
1mp-8U1N•
PFIOCESSlS
ICNCJWLEDOE
~a
& TATEMENT OF WOIIIK
l"RO BLEM 8 TA TEMEIIT , ••• ._, t h, l"IECE8 ,,, .. ,wofk)
-·
.......
IT]
SCOPE
•
•
VISION
lre •ework)
8 Y8 TEM IMl" aOVE.ENT OBJECTIVE& (•1l1t9 t ltl l"IECE&
i"
9USIN£$
8U&INE88f; 8 YSTE1,1
PROCEilH
••••
OU81N£.8&
DUA
AEO UIAB,IEN'T&
AEOUIAQIIENT&
INTEFIFACE
AEOUIAEMENTS
LOGICAL
>
LOGICAL.
DUA
•oon.e
'
~
•
•
I
'
'
••
••
>
•••
•,
•oow
(or
H
LOGICAL
INTEFIFACE
IIOOEUI
PROCEilH
&Y8 TEM PAOPO &A L
1-
COlll•UNICATIONS
SCOPE
RE O UE8 f FO A 8Y& TEII PR O P 08AL 8)
m
~
t
~
.•
0
.........
8U8 1NE8$ PJICICE88
PHYSICAL
ueER • snn •
INTERFACE
PHY81CAt.
&OFTWAAE DE.&1(;114
OE81GN
af'ECIFICATION8
8 PECIFICAll)IC&
TA AIION O MATERI A L&
FUN C TION A L 8Y& TEM
.•
OAll.8.ASE
s ownoH
~
0
i
COM• EAOAL
8 0FTWAF.E
""""''"
CU810M.SUI LT
A PPLICATl)N
80FTWAF.E
O P ER A TI O N A L SYS TEM
USER
••
0
80WTIOH8
••
80WTIOH8
.:
INTERFACE
"'"""
INTERFACE
POST-A UOIT RE V IEW
°"""""
APPAOVEO
INTEFF.rce
TECHNOLOOIES
SIJateglC Enterprise lnt:irmauo, T&chnoiogy NcnheclUrs
F I GU RE S • 9
~
n
n
·i
p
.
i!.
8
;
••~
g
ii
;
•
••
t
••
!
u•
•
OE& I O N PR OTO T Y PE S
PHYSICAL
OATA&A8E
OEalGN
8 PECIACATION&
~
~s
.;
A PPLI CATION A A CHITEC TUJIE
u
.2
.•
The Context of the Problem Analy,is Phase of Systems An alysis
i
·I
n
I
I
••
!II
•5
Systems Analysis
Chapter Flvo
177
Tl,£ 8USINE8S C:0...UNITY
r FIGURE S - 10'
I to c,ontinue pr-o je<:tfr-om prelimi rwy ir-iiglltiori)
(• ppr-
Tasks for the
Problem Analysis
Phase o f S,stems
'- Analysis
J---------,
_ _ _..:,:. - - ·~;,«et....,
&'l's11:•0wtc.,._ u, c:,i,
l
.:I
(OfthCJINCI 00.11'1"1,(I
l
!
Problem Oen.in
•
.
SYSTEM
IMPRCNEMENT
f
OBJECTIVES
,.,...rent.y.te,m
do1;ument.tion,
qne>m model•
!
......,
..
probhm .tn,me,nt,,
•uMl,,,ffec,t
•nel,-,,
I
problem clorn,in,
prooe,,model,,
pr-oo,.. •nelpi,
prcjeot
,
•
.
.
probli,m ,n,1,,._,
..,.wtem irpr<Mlfflerrt objl>Cltive,,
end oonmi nt1'
M!l®M
II
Lasystttn being studied. In some organizations, one or more experienced users are
.. loaned,. to the project full-time as b·usltiess an.a lJ.sts; however, ft is rare that any
one user can fldly represent the interests of all users. Business at1alysts can, however,serve as fadUtacors to gee cbe rlghc people involved and sustain etfecttve communicatio n back to the business units and management.. SYSTEM DESIGNERS and
BUILOERS are rareJy Involved In this task wlless they are Interviewed to determine
any tecbn.lcal limitations of the current system.
In Figure 5-10, dlls task Is triggered by APPROVAL ro CON"JlN\ffi 11iE PROJlrt'-from the
scope definitio n phase. (11,e dashed Uoe Indicates this approval is an ew,111 or trigger,
not a data or infonnatlon flow.) The appro'\o-al comes from the SYSTEM OWNERS or steering commlttee.111e key infonnatlonal input is the FROJ-f.CT CH,\RTER and any CUR.RENT
svsnru OOCU"""'1'AllON that may exist In the repository and program libraries for the
curre11t system. Cturent system documentation doesn't always exist. And when It does
ex.1st, ft must be carefully checked for currency- most such docttruentatlon is notorJ.
ouslJ out of date because analysts and programme.ts are not always diligent about
updating that documentation as d1aoges occur throughout tl1e Ufetlme o f a system.
The deliverables of this task are an understanding of the PROBLEM oo MACN AND
BUSINESS \'OCABULARY. Your underst.andfng of the existing problem domain should be
documented so tl1at It can be verified tl1at you truly understand it.111ere are several
ways to document the problem domait1. Certainly, drawing SYSTE."1 MODEJ.s of the cttrrent system can help, bll! they can lead to a pheno mmo n called •analysis paralysis; In
wtlich the desire to prod uce perfect models becomes counterproductive to the
178
Part 1wo
Systoms Analysis Methods
schedule. Another approach mlght be to use your h1fonnation system bulldh1g blocks
as a framewod< for llstlng and dellnlng the system domain:
KNOWLEDGE-List all the ..things" about which the system ctttrently stores data
(Jn Bies, databases, forms, etc.). Define ead1 thing In business terms. For
ex.ample, "A1.1 ORDf.R is a business trai1Sactlon in wbid1 a customer requesls to
purchase products."
Additionally, we co,dd list all the reports produced by the curretll system
and descrlbe their purpose or use. For example, *The open orders report
descrlbes all orders that h..ive not been filled within one week of their
appro"-al to be fllled. The teport is used to inltlare customer relatlonshJp managemet1t through personal contact."
PROCESSES- Define each business event for which a business response
(proces.,) is currently Implemented. For example, ..A customer places a new
order," or ..A customer requests changes to a previously placed order," or "A
customer cancels an order."
CoM."1UNJCATIONS- Detlne all the locations that the current $)'stem serves and
all of the users at each of those locations. For ex.ample, ..The system is currently used at regional sales offices h1 S.m Diego, Dallas, St. Lolds, Indianapolis,
Atlanta, and ,_lanhattan. Each regional sales office h ..,s a sales mai1..1ger, as~Jstant sales mai1..1ger, administrative assistant, and 5 to 10 sales clerks, all of
whom use the current $)'S1em. Each region ls also home to 5 to 30 sales representatives who are on die road most days but wt10 upload orders and other
trai1Sactloos each e,-ening."
A11other facet of intethces is $)'stem interfaces- that is, interfaces that
ex.1st between the cttrrent lnformatlon system and otl1er lnformatlon systems
and computer applications These can be qulddy listed and described by the
information systems staff.
Ultimately, tl,e organlzation 's Sfstems development methodology and project plan
will determlne wl1at types and Ie,-.1 of documentation are expected.
The business vocabulary de!h-.rable Is all too often shortchanged. Understandh1g
the business vocabulary of the ~·stem ls an excellent way of understand.fog the system itself. It bridges tl1e commlm.lcatio11 gap tl1..1t often exists or develops between
business and tedmology experts.
If you elect to draw svsre.t MODELS d u.ring this task, '\\"'e suggest that "lf you want to
Jearo anythl11g, you must not uy to leam everytbl11g- at least not all ln dlis task." To
avoid analysis paralysis, we suggest that the following system models may be appropriate:
KNOWLEDGE- A one-page data model is ,--ery useful for establishing buslne;.s
vocabulary and rules. Data modeling Is taught In Chapter 8.
PROCESSES- Today, it is widely accepted tl1.1t a on e- or two-page functional
decomposJtio11 diagram st1ould pro,--e sufficient to get a feel for the curra1t
system processing. Decomposition modeling ls taught In a1.1pter 9.
CoM."1UNJCATIONS- A one-page context diagram or use-case dtagrams are very
useful for illustrating tl1e 5'/stem's inputs and outputs wlth other organizatio11S, business units, and systems. Context dtagrams are discussed below. Use
case diagrams are taught In O:tapter 7.
Several other techniques and skills are useful for developh,g an understanding of an
exlstlng system. Obviously, fuct-llndlng techniques (taught In the next chapter) are crltl,
cal to teaming about any existing system. Also, Joint requirements pL1nnh1g, or )RP, techniques (also taught In tl,e next dupter) can accderate this task. Finally, the abUity to
deady communicate back to users what you\'e leamed about a system Is equally crucial.
Context Diagram 111e purpose of a context diagram is to ai1..1lyze how the $)"'Stem
interacts with the world arow1d lt and to specify in general terms the system ioputs
and outputs. Context d11grams can be drawn in various ways. Chapter 9 prese111s tl1e
traditional format, wbid1 was done as the first step In drawlng data flow diagrams.
Systems Analysis
Chapter Flvo
179
I
PastMem
r
SUbscrlpUon
;:-·--·-.
Renewal
I
Resubscripdon
Offer
Mem
Ion
PotenUal Member
L
Accounts Rec<>lvable
-...
'
Suboeriptton O
ff••
Mombor
~ - - - - Promotion
NewP,ogram
Systom
•
Warehouse
--+--4>-- VMtous Inquiry ResponMS -
~ - - - - - - Mem
Cllb Member
ber
°"""
0
Member S ervices
A
Pad<l n g O - ~
_ SUbscrlpllon
Program
Member
Marl<eUng Department
____J
Reports
I
and Member Reports
(_F_I_G_U_R_E_S_-_1_1_ c_o_n_re_~_ Di_·a_g_ra_m
______________________)
01..1pter 7 shows a different fonnat for a context diagram.The context diagram shown
In Figure 5-11 employs a hybrid approach. It emp loys use case symbols as use cases
are becoming a generally accepted tool of the reqttlrements ai1..1lysls ph..,se,
Toe system itself is shown as a "black box'" In the mlddle of the diagram. We are
11ot yet ready to look inside the box. For 11ow we JuS1 want to see how everyone will
use the box.T he stick figures around the outsJde of the diagram are the persons, organ.il:atlons, and other Information ~·stems tl1..1t wUJ interact with the system. In use
cases, these are called actors, and we can call them that h ere. In tradJtlonal data flow
dL1giams, they are called exten1al agents. In Chapters 7 and 9 you will learn that once
you look lnsfde the ~tern box, other thing., such as time or de"ices like sensors can
also be actors or external agenrs. But for a context dhgram they are rarely show11.
Toe Unes Indicate the Inputs (arrows pointing to the system) provided by actors
to the system and the outputs (arrows pointing to the actors) created by the system.
Ead1 Input and output Is Identified with a now, phr.tse that describes It.
To build a context diagram ask the users what business transact:Jons the system
must respond to; these are the lnputs. Also ask the users wl1at reports, notlflcatlons,
and other outputs must be produced by the system. .\ system can ha,--e many reports
180
Part 1wo
Systoms Analysis Methods
that can quickly clutter d,e diagram; consolidate them as needed to keep the diagram
readable. During other phases In the process they will be analyzed separately.
\X'e certainly cotlldn't build an lnformatlon ~·stem from a context dL1gram. But Jr
is a solid first step. From tllis simple diagram we kt1ow wh.at lnputs the system must
respond to and what outputs Jt must produce. In other words, it helps us tmderstaod
the problem domait1. We will see ht a1apter 7 how ro detect use cases from a context
diagram. That wUI be the first step in cracklng open the• bL,ck box.· We are following
the principles for systems de-.elopment presented In Chapter 2: • use a problemsol"ing approad1" and«dJ"ide and conquer;"
>
Task 2.2-Analyze Problems and Opportunities
In addJtlon to learning about the current system, the project team must work wJth
system owners and system users ro a11alyze probletns a11d opport1,11lttes. You
mlght be asking, • werei1'1 p roblems and opportunities identllled earlier, In the prellmlnary investigation phase?' Yes, they were. But those lnltial problems may be only
symptoms of other problems, perh.aps problems not as well known or understood
by ti1e users. Besides, we h.aven't yet really analyzed any of ti1ose problems In ti1e
classJc set1Se.
cause-and-effect aaal}'Sis
a tec.hn ique in which problems
are studied to determine their
causes and efects.
True problem analysis ls a difficult skill to master, especially for inexperienced systems analysts. Experience suggtsts that most new systems analysts (and many system
owners and users) try to solve problems without trttly analyzing them. They mlght
state a problem like this: .. \X'e need to ...• or "We want to ...• 1n dolng so, they are stating the problem ln terms of a solution. ,_lore effective problem sol,--ers have leanled to
trttly analyze ti1e problem before stating any possible solution.11,ey analyze each. percelved problem for causes and effects. In practice, an effect may actually be a ,ymptom of a dlfferet1t, more deeply rooted or basic problem. That problem must abo be
analyzed for causes and effects, and so on until such a time as the causes and effects
do not yield symptoms of other problems. Cause-and-effect analysis leads to true
tmderstanding of problems and can lead to not-so-obvious but more creative and
valuable soJutions.
SYS11:NS ANALYSTS facilitate this task~ howe,--er, all SYSTENS OWNERS and us~s should
actively participate In tl,e process of cause-and-<,ffect analysis. They are the problem
domain experts. SYsTE."1 DESIGNERS and BUILDms are not usually involved in this process
unless they are called on to ai1..iyze teclmlcal problems that may exist in the ctl'rent
system.
As shown in FJf,l\ltt 5-10. the team's w1derstaodfna of t h e ~ DOMAIN AND
BUSINESS VOCABULARY triggers this task. 1b.ls w1derstandtng of the problem domtln is
crucL1l because the team members should not attempt to ai1..1lyze problems u.lless
they WlClerstand the domain lt1 which. those problems occur. Toe other Informational
lt1put to thls task ls the lnltial P>OBJ.£ -" s'J'ATE."1NTS (from the scope deflnltlon phase).
111e deliverables of this task are the updated PROBLEM STATEMENTS and the CAUSE-EFFOCT
ANAIYSIS for each problem and opportwllty. Figure 5-12 Illustrates one way to doct•
met1t a cause-and-effect analysis.
Once again, fact.finding and JRP techniques are crucial to tills task. These techniques, as well as cause-and-effect ai1..1lysls, are taught In the next d1..1pter.
>
Task 2.3-Analyze Business Processes
11lls task ls appropriate only to busl11ess process redesign (BPR) projects or system
development projects that build on or require sJgnl.flcant business process redeslgtl.
In sud1 a project, the team ls asked to examine its business processes In much
greater detail to measure the value added or subtracted by ead1 process as it relates
to the total orgaillzatlon. Business process analysis can be politically cliarged. System owners and users alike can become very defensive about their existing business
Systems Analysis
Chapter Flvo
181
PROBLEMS, OPPORTUNITIES, OBJECTIVES, AND CONSTRAINTS MATRIX
Prtjecti
Member Seivices Information System
Prtject Managen
Sandra Shepherd
Created by,
Robert Martinez
Last Updated by,
Robert Matinez
Date Last Updated1
Janua,y 31, 2003
Date Created1 Janua,y 21, 2003
CAUSE-AND-EFFECT AMAI.YSIS
SYSTEM IMPROVEMENT OBJECTIVES
Problem or
Opportunity
causes and Effects
1, Oder response time
1, Throughput has increased
6 uiacceptable.
while number o f o rder
required to process a
c lerks was cb.M1sized.
Time to process a single
order has remained
relatively constant.
single order by 30%.
~. system 1s too Keyt>Oa~
dependent. lMtf o f the
same values are ke-Jed for
most orders. Net result is
(with the current system)
each order takes lo nger to
piocess than is ideal,
3.
Data editing is performed
by the AS/400. As that
computer has approached
its c apac:ify, o rder edit
responses have slOW'ed.
Beca.Jseorder clerks « e
trying to work faster to
keep 1,.pw ith the volume,
the rumber o f errors has
increased.
System Objective
1, Decrease the time
2 . Eliminate keyboard data
entry for as much as 50%
System Corutralnt
1, There w ill be oo increase
in the order processing
workforce.
2. Aro/ system deteloped
must be compatib le w ith
the existing Wincb,,vs 95
o f all ordeis,
3. !=or remaining orders,
reduce as marry ke-Jstrokes as possible by
replacing keystrokes w ith
point-and-click objects
on the computer d isplay
oesktOP stand.,.d.
3. New system rrust be
compatible w i:h the
already appro,e:d
a.Jto matic idertific atio n
system (far bar codire)
screen.
4, Mole d ata editing fro m a
shared c omputer to the
desktop.
5. Replace existing p icking
tickets Wth a paperless
communication system
betwun member
services and the
w arehouse.
4, Warehouse picking tickets
for orders were never
~
ignP.ir't to m.:i)dmi7P. thP.
e fficiency o f o rder fillers.
As w arehouse operations
gre.v, o rder filling delays
were inevitab le.
~G U R E
S • 1 2 A Sample Cause-and-Effect Analysis
_ _ _ _)
processes. The analysts involved must keep the focus on the processes, not the
people who perform them, and constantly rem.Jud everyone that the goal is to
Identify opportunities for fundamental business chaJl!e that wUI benefit the business
and everyone ln the business.
One or more systems analysts or business analysts facili tate the task. Ideally, the
ANAD'STS should be expe,let1ced, trained, or certified in BPR methods.The o nly other
participants sholdd be approprL1te SYSTEM OWNERS and USERS, Bush1ess process ai1..1lysls
sl1otild a\--old any temptation ro focus on lnformatlon technology solutions untll well
182
Part 1wo
Systoms Analysis Methods
after the business processes hive been redesigned for m.1Xfmum efficiency. Some
analysts find it useful to assume the existence of• perfect people" and "perfect technology• tl1.1t can make anythlng"posslble~They ask, •If the world were perfect, wotdd
we need tills process?"
As depleted h1 Figure 5-10,, business process analysis task Is dependetll only on
some PROm..a< DOMAIN knowledge (from Tusk 2.1). The dellvenbles of this task are business "as is" PROCESS MODEJ.5 and PROCESS ANALYSES. The process models can look very
much Uke data flow diagrams (Figure 5-2) except they are slgnUlcantly annotated to
show ( l) the volume of data flowing through tJ,e processes, (2) tJ,e response times of
each process, and (3) any delays or bottlet>ecks that occur h1 d,e system. The process
analysis data provides addltiorul information such as (a) the cost of each p rocess,
(b) the value added by ead1 process, and (c) the consequences of eliminating or
stream.lining the process. Based on the as-is models and their analysis, the team
develops"to be" models that redesJgn the business processes ro ellmfnare redw1dancy
and bureaucracy and increase efficiency and service.
Several tedmlques are applicable to tills task. Once ag.110, fact-finding techniques
and facllltated team meetings (01.1 pter 6) are Invaluable. Also, process modeling techniques (Chapter 9) are critical to BPR success.
>
objective a measure of
success. It is ~omething that
you expect to achieve, if given
sufficient resources.
coo.straiot fomething that
'Mii limityour f exibility in
defining asolltion to your
objectives. Essentiall~ oon.
straints cann01 be changed.
Task 2.4-Establish System Improvement Objectives
Gh,--en o u r underSlandfng of the current system's scope, problems, and opportunities,
we can no w establish systen1 f.111prove111e1it objectives. TI1e p u rpose of this task is to
escabllsh d1e criteria against wh.ich any Improvements to the system will be measured
and to Identify any constraints that may limit flexlbUlty ln achlevlng those lmJYOVements. The criteria for succe.s., siloldd be measured ln terms of objecth--es. Objectives
represent the tlrSl an:empt to establish expectations for any new system. ln addJtlon
to identifying objectives, we must: also Identify any known constraints. Coost.rJ.lots
place limitations or dellmltatioos on achlevlng objectives. Deadlines, budgets, and
requited technologies are examples of constraints.
The SYST6\ISANA1¥STS faci litate this task. Other participants lndude the same sc'STEM
OWNERS an d USERS
who have participated h1 oti1er tasks lo this problem analysis phase.
Again, we are not yet concerned with technology~ therefore, svsTE.\.t DESIGNERS and
BUILD ms are no t in\--ol,-ed ln this task.
This task ls triggered by the PROBLEM ANALYSES completed lo Tasks 2.2 and 2J. For
each verlfted and slgoitlcant problem, the analysts and users shotdd define spedflc
5YSTEM IMPROVE.\.f.G'ltr OQJ.f.C'JlVES. Titey sholdd also idet1tify any CONSTRAINTS that m.1)' Um.it
or prevet1t them from acbie"in@ the ~·stem impro,--emet1t objectives.
SySlem Improvement objectives should be precise, measurable Slatemeuts of
business performance that define the expect.a tlo ns for the new system . Some
examples are:
Reduce the number of lUlCollectible CllSl:omer accotmts by 50 percent within
the next year.
Increase by 25 percent the n u mber of loan applications tl1..1t can be proces~
durh1g an eight-hour shift.
Decrease by 50 percent the time required to reschedlde a productio11 lot when
a wotkstatlon malfunctions.
11,e followh1g Is an example of, poor objective:
Create a delinquent accounts report.
111is Is a poor objective because it Slates o nly a requlremet1t, not an actual objective.
Now, Jet's reword that objective:
Reduce credit losses by 20 percent through earUer ldentlllcatlon of delinquent
accounts.
Systems Analysis
Th.ls gtves us more flexibility. Yes, the delinquent accow1ts report w ould w orlc Bur a
customer delinquency inquiry might pro'\oide an even better way to adlieve the same
objective.
System Improvement objectives may be tempered by identlJlable constraints.
Conrualnts fall into four categories, as Usted below (with examples):
Schedule: The new system must be operational by April 15.
Co.st: The new ~tern cannot cost more than $350,000.
Teclniology: 111e new system must be online, or all new systems must use the
082 database management system.
Polley: Tue new ")'Stem must use doubledecllnlng-balance hwentory tedmlques.
The List two columns of Agure 5-12 documet1t typical system Improvement objectives and constraints.
>
Task 2.5-Update or Refine the Project Plan
Recall tl1..1t project scope is a mo'\oing target. Based on our baseUoe schedlde and budget ftom the scope detlnltion ph.a se, scope may ha,-e grown or dimlnlshed In size and
complex.lty. (Growth Is much tnOt'e commo11f) Now th.•'lt we're approaching the com.
pletion of the problem analysis phase, we shot~d ree>'aluate project scope and update
or reft11e the projecrplan accordingly.
The project manager, in con/unction wltl1 SYSTa.t OWN~s and the entire project
team, facilitates this task. The SYSTE.\SSANALYSTS and SYSJ'E.\.t ~ s are the key indJvJduals lo this task. The analysts and owners should consider ti,e possibility tllat not all ob,
jectlves may be met by the new system. Why?11,e new system may be larger ti1an
expected, and they may h.a,--e to reduce the scope to meet a deadline. In tills case the
system owner will rank the objectives it1 order of importance. Then, if the scope must
be rEduced, ti1e higher-priority objectives will tell the analyst what's most Important.
As shown In Figure 5-10, this task Is triggered by completion of the SVSTEN
IMPROVEMENT OBJOC'OVES. The lnltial PROJECT PLAN is another key Input, and the UPDATED
PROJ£CT PLAN Is the key output.The updated plan should now mclude a detailed pL1n
for the reqtdrements analysis phase that should follow. The techniques and steps for
updating ti,e project pL1n were taught in Chapter 4, "Project Management."
>
Task 2.6-Communicate Findings
and Recommendations
AS wtc.h the scope defillltlon ph..,se, tbe problem anaJysiS pt1.,se condudes with a commwlicatlon task. We must co111»1.·u,it.caw fl11dt11gs a1ul reco·,n1ne11.daffo11s to the business community. The project manager and exectrtt,--e sponsor should jolntly facUitate
tills task. Other meeting participants should Include the entire project team, including
assigned SYSTEM OWNERS, USERS, ANA.LYSTS, DESIGNERS, and a UJJDERS. And, as usual, d1e meeting sho,dd be open to any and all mterested staff from the bush1ess communlty. Also,
if an Intranet \X'eb site was established for the project, Jt should have been maintained
tluougbout the problem analysis phase to ensure continuous commwlication of
project progress.
This task is trlggeied by the completion of the UPDATED PROJEC'J' PLAN. lnfonnational
inputs lndude d1e PROBLEM ANAIYSES, any ~6\1 MODEJS, the SYSTEM L\IIPROVfl\lfNT OBJOC'JlVES,
and any other documet1tation that was produced dwlng the problem analysis phase.
Apptoprlate elements are combined inro the SYSTJ.:M ™PRCWl:ME'ln' osJocnVES, tl1e major
dell,,erable of the problem analysis phase. 111e fom,at may be a report, a verbal
presentation, or an h,spectlon by an auditor or peer group (called a walktbrougb). An
outline for a written report ls shown In FJgttre 5-13.
Interpersonal and communications skills are essential to this task. Systems analysts should be able ro wrJte a fonnal business report and make a bush1ess presenratlon without getting lnto technical issues or alten1atl•1es.
Chcpter Flvo
183
184
Part 1wo
Systoms Analysis Methods
FIGURE S • 1 3
An O,tline for a System Improvement Objectives and
Recommendations Report
Analy,i, of lhe Currant
Sy,tem
I. ExecutiY<> summory (approximately 2 pag..)
A. Summary of rerommendotion
B. Summary of problems, oppar1unitie,, and directiv..
C. Brief ,la1"ment of ,y,tem impl'OY9IM!lt objecliY<>>
D. Brief explanation of report (X)l11,inl$
II. Background information (approximately 2 pag..)
A. Li,t of intervi""'' ond facililated group meeting, ronducted
B. Li,t of other ,ource, of information lhat W9re exploited
C. Deocriplion of ana~cal »chnique, u,ed
Ill. Overview of lhe current sy,i.m (approximately 5 page,)
A. Strategic impliootions (if he project is part of or impads an axis.ting information
sy, tern, ,trategic plan)
B. Model, of the current
1. Interface model (,ho,.ing project ,cx,pe)
2. Dol<J model (,howing projed ,rope)
3. Geographic model, (,howing projed ,rope)
4. Proce,s model (,howing functional deoompooition only)
IV. Analy,i, of lhe currant sy,ton (approximately 5-10 page,)
A. Performance problems, cpportonities, and cause-effed anatysis
B. Information problem,, oi:por1unitie,, ond oou,e-effect onaly,i,
C. Economic problems, oppor1unities, and cause-effect analy!is
D. Control problems, opportunities, and oouse-effed analysis
E. Efficiency problems, opportunities, and oouse-effed analysis
F. Service problems, opport..inities, and cause-effect analysis
V. Dekliled recommendation, (approximately 5-10 page,)
A. System improvement objectives and priorities
,ys...,
B,, Constraints
C. Projed plan
1. Scope reassess.ment Old refinement
2 . Rovisod mostor plan
3. Dekliled plan for the definition pha,e
VI. Appendix..
A. Any deloiled ,y,tem model,
B. Other document, as appropriate
Thls condudes the problem analysis phase. O ne of the following decisions must
be made after the conclusion of thJs phase:
AUtl1orlze the project ro continue, as ls, to the requirements analysis pl1ase.
AdJust the scope, cost, an<Vor schedule for the project and then continue to
the requirements analysis phase.
Cancel the project due to (I) Jack of resources to further develop the system,
(2) realization tl1at the problems and opportw1lties are slrup~· not as Important
as anticipated, or (3) reallntlon that the benefits of the new system are not
likely to exceed the costs.
With some level of approval fmn the SYSTEM OWN"'5, the project can now proceed to
the requirements arwysls phase.
Systems Analysis
Chapter Flvo
l8S
( The Requirements Analysis Phase
,_lany Inexperienced analysts make a critical mlscake after completing the problem
analysis phase. The temptation at that point Is to begin looking at altematlve solutions,
partlcufarly technical solutions. One of the most freq.iently cited errors In new lnformatlo11 systems ls illustrated lo the statement, ...Sure the system works, and Jr is tecbn.ically lmpresst,--e, bur ft just doesn't do what we needed ft to do ." The requ.lretnents
a1,alysis phase defines the busines., reqttlrements for a new system.
Did you catch the key w ord in the quoted sentence? Ir is "'What," nor ..how " ! Analysts are frequently so preoccupied with the tedmlc.al solution that they inadequately
define the business requirements for thar solutlo11. The requirements analysis ph..,se
aOS\'letS the question, "\Vhat do the users need and '\\·ant from a new system?"The requ.fremenrs aiulysi.s phase ls crJtlcal ro the success of any new lnfonnatlon system. In
dlffesent methodologies the requlrements analysis phase might be called the tlejlnitf.011
phase or logical design phase.
Can you e,--er skip the requlremet1ts analysis ptwe? AbsoJuteJy notl New systems
will always be e'\o-aluated, first and foremost, on whether or not they fulfill business ob.
Jecti'res and reqttlremet1ts, rega«Uess of how tmpr~Jve or complex che redutologtcal
solution might be!
ft should be acknowledged that some methodologies Integrate the problem analysis
and requlrements analysis phases Into a single ph.ase.
Once again, your Information systems building bbcks (Figure 5-14) can se,,-e as a
useful framework for documenting the infonnatlon systems reqttlrements. Notice tl1.1t
we are still concerned wfth the SYSTEM us~s· perspectl,--es. Reqttfrements can be defined In terms of the PIECES framework or In terms of the types of data, processes,
and Interfaces that must be lnduded In the system.
Figure 5-15 illustrates the typical tasks of the requlrements analysis phase. The
final phase deJl,-erable and milestone ls producing a BU\tNESS RfQUUlE.,m<rs '1"""""""1" that
will fulfill th.e system lmpro,-emet1t objectives Identified In the pre,-ious phase. One of
ti,e first things you may notice In this task diagram ls that most of the tasks are not as
sequentlaJ as those ln pre"ious msk diagrams. Instead, many of these tasks occur lo
parallel as the team '\\'Od::s toward the goal of completing the requirements statement
The requlrements analysis phase typically h1dudes the following tasks:
3. 1 Identify and express system requirements.
3.2 Prioritize system requlrements.
3, 3 Update
01'
refine the project plan.
3.4 Commwlicate the requirements statement.
Let's now examine each of these tasks in greater detail
>
Task 3.1-ldentify and Express System Requirements
The inltlal task of the requirements analysis phase ls to tde,itlfy and express requ./retnents. Whlle tllis may seem to be an e~· or trfvL1l task, ft ls often the source of many
errors, omissJons, and conflicts.111e foundatlo11 for this task was established in the
problem analysis ph.ase whetl we Identified system lmpro,-.met1t ob)ectl,-es. Mhilinally,
fu.octiooaJ requi.temeot
a description ofaciivities and
tlli.s task translates those object:Jves into an outline of flu1<1iou..1.l and 001UU1xtioo...1.l
requiremettts tl1.1t will be needed to meet the objectives. Ftmctlon.al requlremenrs are
frequet1tly Jdentlfled ln terms of lnputs, otnputs, precesses, and stored data tl1.1t are
services a system must
provide.
needed to satisfy the system lmpro,-ement ob)ecmes. Examples of nonfunctional
requirements lndude performance (throughput and response time); ease of learning
and use; budgets, costs, and cost saving.,; tlmetables and deadlines; docttmentatlon and
ooo.fuoctioo21
trab.ting needs; quality management; and seatrfty and internal auditing controls.
Rarely will tills definition task ldet1tlfy all ti,e functional or nonfunctional buslnes., requirements. But tlte outline will frame your th.Joking as you proceed ro later
of other features, characteristics, and constJc.ints that
define a satisfactory system.
requiremeot a description
186
Part 1wo
Systoms Anclysls Methods
SltateglC 1nrormauon Syslems Plan
S ltateg!C Enterpriee Plan
--·
00111:
lnpo,!t
""°"LEDGE
-
-
&TATEME r T ( F WORI(
;i
I•
:J
v
••
..,..
,.,!
~OH
....
I
-
PFIO V EMENT OBJE C
~
•••
9 ( u • •ng 1110 PIE C E S
-<::.... _7
•
I
v
I
•
r
I
I
•
~
•' t
!
tw
z
Iii
a
ffi
0
•
E
f
;
~
ii:
~
••
E
~
8USINES$ 8 8 Y8T'EIII
PFIOCE88
INTEFIFACE
JI EOUIFIEIIENTS
....
........
LOGICAi.
PFIOCE88
IIIOOEU
LOGICAL
'
<••
LOGICAL
INTERFACE
M00EL8
A
A
RE OU E 81 FOR SYSTEM PAO P O&A L S)
OE81GN PR OT.,TYPE&
'
A
80.,IN EN PFOCE88
PHYSICAL
USER A SYSTEM
0£.81011
PHYSICAi..
.......
Ol.TABASE
INTERFACE
OUIGN
PHYSlctL
SPECIFICATIONS
90F'T'Wll.FIE [ £.SIGN
SPECIFICATIONS
'
FUN C TION A L SYSTEM
~
w
-
•
tM.TABME
80UJTIOH
•
-
OPEJI A TION A L &Y8TEU
o:i,-ironi:
"""°"'°
OUJS48E
11::CHNOLOOIES
F I GU RE 5 • 1 4
~
0
0
TR A INING M A TEJII A. L 8
..,,.,.,...
-
COM•EAOJJ..
80~RE
8•
~
l
CUSTOU.S JILT
A.PPLICATl)N
80~RE
•
m
....
'
.,.,,..
A
INTEFIFACE
80UJTION8
INTEFIFACE
8 0UJTION8
-
PO &T. A. UOIT AE V IEW
a•
~
I•
.•.•
~
0
.
11 I o".
n
m
•i
J0
m
I
·~
I
>o
A PPLIC A TION A R C HITE CTU RE
'
r~!
m~
I
\
A
>
I
H
'
&Y8TEU PROPOSAL
em
.....,<'11
8USINES9
REOUIFIEMEHTS
h
I •
A
OTATCMCNT
8 PECIFICAllOH8
=
-
FIEOUIFI EMEHT8
!
•
~
....
8USINE88
..
YI
ouoo,coo nce u1"c•cttTo
!
tr• mow
co.uu
'? '"
-·
..
· ~
I
A
BO~ LEII STATEMENT ( u , 1119 t llo PIE C E S
&Y8T •
I
..
.. . .
a.•-
....acES<ES
~
•e
f~
~§
• :1
I
I •••
,~
.,
I
I
I
n
• !!
!~
z§
I ••z
I • ii
.
i
~
>
f
0
•••g
•••
.••
>
J
m
m
~
~~
·~
c"
<"
'
I
c,...,..
"""°"'°
INfEFIFN:E
TECHNOLOGIES
The Context o f the Requirements Analysts Phase of Systems Analysts
~ !!
~
Systems Analysts
Chapter Ftvo
187
THIE 81J8 1NIE&8 COMMUNITY
' FIGURE S-1
Tasks for the
Requ irem en ts
Ana lysis Phase of
~ Systems Analysis
l
BUSINESS
REQUIREMENTS
STATEMENT
Funcilona1
ana
Nonfuncuonal
eysteom Improvement oblee'I w,,
tunetlonal and nort1'unct1ona1
requirement•
l
rinal
req1.11remente
• na p11orrt1ee
I
I
I
L
-
valld8U'O
requirements
With p110tltlee
I
I
I
proJeet
comp1etea
~
v1,: :an ~1e~
Requirement,
ana Pr1orrt1e,
J
tasks that will add new requirements and details to the outline. Thus, neither completeness nor perfection is a goal of tills task.
SvsrEMs ANA.LYSiS fadUtate the task. They also document the results. Ob"iously,
SYSTIN USERS are tl1e primary source of business requ.fttments. Some SYSTE.\1 OWNERS may
elect to participate in this task since they played a role In framing the S)'stem Imp rovement objectl,-es that will gtdde the task. SYSTl::',t DESIGNERS and BUUDERS should not
be involved because they tend to prematurely redirect the focus to the technology
and technical solu tions.
As shown in Figure 5-15, this task (and phase) Is triggered by the APPRO\'AL TO
OONnNUE THE PROJECT FROM nm PROBLEM ANALYSIS PHASE. The key input ls the SYS'J'fl\l
WPRom.uNT OBJf.C'11V1'S from the problem analysis phas, (via the repository). Of course,
any and all relevant Wonnatlon from tl,e problem analysis phase Is a>'3llable from the
repository for reference as needed.
The only deUvernble of this task is the DRAPT flUNC'OO NAL AND NO NFUNCTIONAL
REQU!llE.\U~·l'fS. Various fonnats can work. In lts simplest format, the outline could be
divided into four logical sections: the original list of system improvement objectives
and, for each objective, a sublist of (a) inputs, (h) processes, (c) outputs, and (d) stored
data needed to fulfill the objective. Increasingly, however, system analysts are
s'
188
Part 1wo
use case a bJsiness see.
nario or event for 'M'lich the
system must ~rovide a
defined response. Use cases
evolved out of object-oriented
analysis; howwer, their use
has become c:immon in many
other methodclogies for
systems analysis and design.
Systoms Analysis Methods
expressing ftmctlonal requirements using a modeling rool called use cases. Use cases
model business scenarios and events that must be handled by a new system.They are
introduced in Chapter 7 and used throughout this book.
The PIECES framework thai was used earller to Identify problems, opportunities,
and constraints can also be used as a framework for defhling draft requirements.
Several techniques are appl cable to this task. Joint requlremet1ts pbnnlng iJRP)
is the preferred technique for rlpldly ou tlining business requirements. Alternatively,
the ai1..1lysts coldd use other fact.finding methods sud1 as surveys and lnreniews. Both
JRP and fact-llodlog are taught In ti,e next dtapter.
>
ttmeooxi.Og a tec.nn1que
that delivers information SfStems functiondity and require.
ments through versioning. The
development t~am selects the
smallest subset of the syS1em
that. if fully implemented, will
return immediate value to the
system owners and users.
That subset is developed,
ideally 'Mth a t me frame of six
to nine months or less. Subse·
quentty, value.added versions
of the system ue developed
in similar time frames.
Task 3.2-Prioritize System Requirements
We stated earller that the success of a ~ems de,--elopment project can be measured in
terms of t h e ~ to wtlid1 business requirements are met. But not all requirements
are created equal. If a project gl!IS behind schedule or over budget, it may be useful to
recogrtize which requirements are more important than others.111us, gtven the validated requirements, system owners and users should prioritize syste,n requiretntnts.
Prioritization of requirements can be facilitated using a popular tedmlque called
timeboXitig. nmeboxtng anempcs to dJvJde reqUltements tnco "d1unks"' that an be
implemented within a period of time that does not tax the patience of ti,e user and
management community.11mel:oxing forces priorities to be dearly defined.
SYSJ'E.\.GANALYSTS facilitate the prioritization task. SYS11:M OWNERS and usflt5 establish
the actual prloritles. SYs11:M DESIC-NfltS and BUUDERS are not invoh,--ed ln the task. The task
is triggered by the VAUOATED RJeQUlllE."""'5. It should be obvious that you cannot adequately prlorftlze an Incomplete set of requirements. 111e deU,-erable of this task is the
REQUIR.E.\.W'ltl"S WITH PRJORf'JlES. Prlorltles can be cla~i.fled according to their relative
importance:
A mandatory requ.lreme111 is one that must be fulfll led by ti,e minimal system, versJon 1.0. The ~tem is useless wJthout ft Careful! There ls a temptation to label too many requirements as mandatory. A man datory requirement
cannot be ranked because It ls essential to any solution . In fact, lf an alleged
mandatory requirement can be ranked, It is acruaUy a desirable requirement
A destmble requiretnerJ.t ls one that ls not absoJutely essentL1l to verslon 1.0.
It may still be essential to the vision of some future version. Desirable reqttirements can and should be ranked. Uslng ,--erslon numbers as the ranking sd1eme
is an effecth'e way to communicate and categorize desirable requ.iremet1ts.
>
Task 3.3-Update or Refine the Project Plan
Here again, recall tl1..1t project scope is a mo,ing target. Now that we've idet1tified the
business ~tern reqttlrements, we should step bad:: and redefine our understanding
of tl,e project scope and update our project pan accordingly.The team must consider
the possibility that ti,e new sy&em may be L,rger than originally expected. If so, ti,e
team must adjust the sd1edule, budget, or scope accordingly. We should also secure
approval to continue the project into the next phase. (Work may have already stirred
on the design phases; however, the decisions still reqttire review.)
The project manager, In ca.1jwictlon wJt11 SYSJ'E."1 OWNERS and the entire ptoject
team, facili tates this task. As usual, the project manager and SYSTE!\I OWNERS are ti,e key lodMduals in dlis task.11,ey shot~d consider the possibility that ti,e requirements now exceed the origlnal vision that was established for the project and new system.They may
have to reduce the scope to meet a deadline or lncrease the budget to get the job done.
As shown in Figure 5-15, this task Is triggered by completion of the coNPUrrED
REQUIR.E.\.W'ltl"S AND PRIORITIES. The up-to-date PROJOCT PLAN is the other key lnput, and
it Is updated lo the repository as appropriate . The tools, techniques, and steps for
maintenance of the project plan were covered in Chapter 4, • Project Management."
Systems Analysis
>
Task 3.4-Communicate the Requirements Statement
Commwlicatlon is an 011gofng task of th e requirements analysis ph..,se. We must commwlicare requirements and priorities to the buslntss communlty throughout the
ph.ase. Users and managers will frequently lobby for requirements and priority consJderatlo11. Communication ls the process tlvough wb.lch differences of opinion must
be mediated. The project manager and executive sponsor should Jointly facilitate
this task. Today, a project Intran et or portal Is freque ntly used to communicate
requirements. Some systems allow users and m:u1..1gtrs to subscribe to requirements
documents to ensure they are notified as changes occur. Interpersonal, commwlicatlon.s, and negotiation skills are essential to this task.
>
Ongoing Requirements Management
The requirements analysis phase ls now complete. Or ls Jt.? It was once popular to
freeze the busines., requirements before beginning the system design and construction phases. But today's economy has become lncreash1gly fast-paced. Businesses are
meamred on their ability to qulckly adapt to constantly changing requirements and
oppoctu.nltJc3. lnfocn1.1.tlon :,y:nenu c.n be n o Je:,.3 rc~pon:dve th.n the b luJ.ne:,.3 k$lf.
Thus, requirements analysis really never ends. WbUe we quietly transltlon to the remaining phases of our project, there remains an ongoing need to continuously manage requirements through the course of the project and the lifetime of the system.
Requirements managemet1t defines a process for system owners, users, ai1..1lysts,
designers, and bullders to suhmlt proposed d1anges m requirements for a system.The
process specllles how changes are to be requested aml documented, how they will be
Jogged and tracked, when and h ow they will be assessed for priority, an d how they
will evei1tually be satisfied (if they are ever satisfied).
( The Logical Design Phase
Not tU projects embrace modek:lriven developmet1t, bur most lnclude some amount
of system modeling. A logical design further documents business requirements uslllg
system models that Ulustrate data structures, business proces.,es, data flows, and user
Interfaces (Increasingly using object models, as Introduced earlier In ti1e chapter). In
a sense, they validate the requirements established In the previous phase.
Once again, your information systems building blocks (Figure 5-16) can serve as a
usefuJ f.ramewod: for documenung the lnformatlon syscem.s reqtt1remet1ts. Notice chac
we are still concerned wJd1 the ~ E.\t us:ERs' perspectives. In this ph..,se, we draw varJ.
ous eysrem models to dOCltment the reqtLlremet1ts for a new and impro,-ed system.The
models depict various aspects of our bulldlng blocks. Altematively, prototypes could be
bu.flt to "disco,--er requirements." Discovery• prototypts were introduced earUer h1 the
chapter. Recall tiut some prototypes can be reverse engineered Into system models.
Figure 5-17 Illustrates the typical tasks of ti1e logical design phase.11,e final phase
deU,-erable and milestone Js producing a BUSINESS R.EQ1JUlJ:ME'l(J'S STATEMfNT that will fuJ.
611 the system improvement objectives idet1tlfled In the pre,ious phase. On e of the
first dlings you may notice lo this task dtagram is that mosr of the tasks are 11ot as sequential as In previous task diagrams. Instead, many of these tasks occur In parallel as
the ream works toward the goal of completing d1e requirements statement.
The logical design phase typically indudes ti1e following tasks:
4. Ja
4 . Jb
4 .2
4.3
Structure functlonal reqttfrements.
Prototype ftmctional requirements.
Validate functlonal requlremetlls.
Define acceptance test cases.
Let's now examine each of these tasks in greater detail
Chapter Flvo
189
190
Part 1wo
Systoms Anclysls Methods
Stta:eg1c I nrormauon Systems Plan
-
...........
. .---·
8 TA TEMEN
O
""'"
WOAI(
h
••
•
'Al.
PE
N
8Y8 TE
IM
AO V EMENT 0 8JE C T Y E
OVOINCOO
....
.-.......
.........
i
I
!
I•
.
~
II
TO OTATCMCNT
....
.......
••
•m
MC
8USINU8
P ROC. . .
FEOUIFEllllNTS
.,.,
~
I
ncou,n
( u • 1ng t11 , PIE C E&
~
I
B
!
I
8Y8 TE •
(o r
PR O P OSAL
!
>o
REQUE S T FOR SYS TEM PAOP0 8AL 8)
J"
a@
A PPLI CA TI O N A R C HITE C TURE
• 11
ii:z
.
OE 8 10 N PAOTOf Y PE 8
•m
8U&INES8 PAOCES8
0
oe.,10...
PH YSICAL
OATABA8E
DESIGN
8 PECIFICATION8
~
~
•
~~
PH YSICAL
~~
USER • 8 Y8TEM
INTEFIFACE
OElSIGN
PHYSICAL
8 0FTWAAE IE.Sl(;frt
8 PECIFICA110NS
8 PECIFICATION8
0
,o
FUN C TI O N A L SYS TEM
.........
SOLUTION
w
<
~
0
i
-
~
COMMEFIOAL
8 0FT'W.AIIE
..
°"""""
,......
APPACNeO
TECHNOI..OGIE.$
I
•
PACICAGU
CUSTO•~UILT
APPLICATION
8 0FT'W.AIIE
O PER A TION A L 8Y8 TE•
.., ';:,.
~J
TR A INING M A TERI A L S
~
I-
!~0
use•
z
INTEFIFACE
..,.....
80LIJTIONS
• ii
·~
o~
INTEFIFACE
80LIJTIONS
~e
!~
P 08 T- A IJOIT RE V IEW
.., ';:.
Qi,-il'Ol'I:
APPACMO
P ROCO$
11::CHNOLOIJIES
.., !""
.....,...
c:ir.Tolllnt
INTERFACE
TEO+IOI..C>GE S
OOnsrroN: APPAOYEO NElW:iAK f"ECH,Q.OGE S
I
SltateglC El'lt&fl)JIEI& 1nrorma11or,Tecrino1ogy Arcnlteell..re
F I GU R E 5 • 1 6
The Context of the Logtcal Design Phase o f Systems Analysts
•
I
~
•i
0
•!•
•••
••
I
•••
~
Systems Analysts
THE BUSINESS
COMMUNJTV
191
' FIGURE 5-17
Tasks for the
Each ~unct1ona1
Requirement
Logical Design
Phase o f S,stem s
, Analysis
system
M00el8
ayttem mo<1e1s ana apecmcatlone
f\inctlonal
prototype --(>
eystem rmp,ovement ooect1ve•
and
• ccepta nee teet ca1ea
>
Chapter Flvo
Task 4.1 a-Structure Functional Requirements
One.approach ro logical de.sign is to structu.re the fu.1utfonal requ.h'e,nents. 11lis meailS
that, using agile methods, you should draw or update one or more system models to
illustrate the functional requlrement.These may include any comhinatlon of data, process,
and object models that accurately depict the busines< and user req,tlremenrs (but not
any technlcal solution) . System models are not complete until all appropriate flUlctlonal
reqturemenrs have been modeled. Models are frequ<'fltly supplemented with detailed log,
ical spedllcadons tlut describe data attributes, business rules and policies, and the like.
SvsrEMs ANALYS'J'S fad.litate the task. They also document the results. Obviously,
svsnru USERS are the prlmary source of facttta.l detalls needed to draw the models. As
shown in Figure 5-17, this task (and phase) is triggered by each ruNCTIONAL REQUIREMENT.
The outputs are the actual SYSTE.\t Moons AND DeTAll.ED SPECCFJCATIONS. The leveJ of detail
required depends on the methodology being followed. Agile methods usually requlre
../list enough,. documentatlo11. HO\\' much Is enough? That is arguable, but agile
methodologists hold that every deliverable should be essential to the forthcoming
design and programntlng phases.11tis textbook will tead1 you a \"Uiety of different
system modeling tools and techniques to apply to logical design.
192
Part 1wo
Systoms Analysis Method s
>
Task 4. I b--Prototype Functional
Requirements (alternative)
Prototyping ls an altenutlve (and sometimes a prereqttlslte) to system modellng. ~ometlmes users have dtfficulty expressing the facts necessary to draw adequate system
models. In sud1 a case, an alterru.tive or complementary approad1 to $)'stem modeling
ls to build discovery prototypes. Prototyping ls typically used In the requirements
analysis phase to build sample h1p uts and outpurs. These Inputs and outp uts help to
construct the underlytng database and the programs for inp utting and outputtlng the
data to and from the database. Although discovery prototyph1g ls optional, It ls frequently appUed to systems development p rojects, especlally In cases where the users
are having cllflkulty stating or visualizing their business requirements.The phllosophy
is that the users will recogrtize their requirements wbett they see them.
SYSJ'E.\.G BUW)ERS facilitate this ai1..1lysls task. SYSJ'E."1 ANALYSTS documet1t and amlyze
the results. As usual, SYSTEM us&s are the primary SOl U"Ce of factual input to the task.
Agttre 5-17 demonstrates that this task ls dependent on one or more FUNCTIO NAL
REQUIRE\!ENTS 111.11 !1.we been ldentUled by the users. The system bullders and analysts
respond by constructing the PROTOTYPES. As described earlier ht tllis chapter, tt may
be possible co reverse engt11ei!r some SYSTE.\.t MODELS directly from che prototype
databases a nd program llbrarJe.s.
>
Task 4.2-Validate Functional Requirements
Both SYSTEM MODELS and PROT01YPES are representations of the users• requirements.
111ey must be '\o-alldated for cornpJeteness and correctness. SYsTE.\SS ANALYSTS facilitate
the prioritization task by Interactively engaging system users to identify errors and
omissions or make darlflcatlons.
>
Task 4.3-Define Acceptance Test Cases
While not a required task, most experts agree that lt Is not too early to begh1 plaunh1g
for system testing. System models and prototypes very etlectlvely define the processing requirements, data rules, and business rules for the new ~tern.. Accordingly, these
spedficatlons can be used to dtfine TEST CASES that can ultimately be used to test programs for correctness. Elther SY>TEM ANALYSTS or svsTE.\.t BUILDERS can perform thb task
and YaUdate the test cases wfth the SYSTE.\.t USERS,
Recall that
SYS'l'C.'1 L'1Plt.0Vl!MCN'l'
o ,u.ccnvt:ls WCf'C defined earlier In the project. Tc.st
cases can be defined to test these objectives as weU.
~~~T~
he_D
_e_c_i_si_o_n~A_n_a_l_y_s_is~P_h_a_s_e~~~~~~~~~~~~~~~~)
Gh,--en the business requirements for an improved lnformatlon system, we can finally
add.res, how the new ~·stem- induding computer-based alternatlves- 1n-lgbt be implemented with technology.The purpose of the decfs/011 analysis phase ls to Identify
candJdate solutions, analyze those candJdate soJutlons, and recommend a target system that wUI be desJgned, constructed, and lmplemented. a1ances are that someone
has already championed a "i sJon for a technical soJutlon. But alten.1atlve solution!, pet·
haps better ones, nearly always exist. During tJ,e decision analysis phase, lt Is Imperative tl1.1t you ldet1tlf)• options, analyze those options, and thetl sell the best solution
based 011 the ai1..1lysls.
Once agah1, your Information systems bulldlng blocks (Figure 5-18) can serve as a
usef,d framework for the decision analysis phase. One of the fi rst things you should
notice ls that lnformatlon technology and archltecture begin to lnfluence the decisions we must make. lt1 some cases, we must work within standards. In other cases,
Systems Analysts
Chapter Ftvo
193
Stn11eg1c I ntonna11on Systems Plan
~
.. t••
8TATEIIE T
•
llEM STATEMENT ( •
F WORK
PIECES
Ir••••
0
•"""
••
8Y8TE
RO\IEMEMT OB J ECT
O U 6 1"t:66 flCQ\ll fl.
..
.,
( • • l• t
t•• PIECES
T6 6TATCMC N T
h
••
•
iir
•
~
•Q
I
•
u i•
"! l•
•
~II
;•
=
r.I
;
I
1
I
!
I
!
I
!
r
•
~
E
aYeTe• ••o•oaaL c•r aeoueaT •o• aYaTe• ••o•oaaLa1
;
APPLICATION &aCHITl!CTUae
I
I
I
~
;•
I
d
!•
~§
I
9•
..
F NC
IOMAt. SYSTEM
•
I;•
•
I
!
I
•
I
0
. . TIONAt. 8Y8TE•
-
.........
..........
TB>HNDLOOIEI
CCll'ISlllllm:
APPFICWEO
PAOC£88
TECIN:ll.OGIES
COntlnlN: APPFCNEO NElWOAK TEO-N:ll.OGE 8
S118teglc Enterprise 1na:irmauon T&<:MOlogy AICl1tecture
f IG U RE 5 - 1 8
!
The Context of the Decision Anatysls Phase of Systems Analysts
ii
•I
9~
la
I
I
I
5
194
Part 1wo
Systoms Anclysls Methods
Tl€ 8 USINESS CO...l>IJTY
TECHNOLOGY INOUSTA'I'
FIGURE S - 19
Tasks for the
Decision Analysis
Phase of Systems
Analysis
·1-L*"' __
-
M l'l:•Owtc""NC>u, c:,,,
-
-from n,qu.-e- - -
m,m, n,IYl!I'•)
~
I
i ==~!§::=I+-- _,
SYSTEM
PROPOSAL
bue,ineN requiremerrt,,
o, ndicl,m, ,olutio,,.
!
t.,ibility
....,..i,
.,......
..-
- - .....
<I
,olution
Repo, ito,y
croo~
1I
14-----~
•II Olndid,tee'
Meibility
•n•tyee,
projec,t ••dule
end reeouroe
,,.i91T11enllf
Upd.ted
PrqeotPle.n
.,
..
Solution(•)
~ oornfl'encled
we can look to apply different or emerging tedmology. You should also 11otlce that
the perspectives are in transition- from those. of the SYSTEM usF.Rs to those of the.
SYSTEM DESIGNERS. Again, this reflects our transition from pure business concerns or
tech110Jogy. &Jt we are not yec deslgntng. The buJJdtng blocks tndJcace our goal as
developing a proposal that wlll fulllll requirements.
Figure 5-19 lllustrates the typical tasks of the declslon analysis phase. The final
phase deliverable and milestone Is producing a SYSTEM PROPOSAL that wlll fulfill the
business requlrements ldentlfled In the pre,ious phase. The dedslon analysis phase
typically lndudes the following tasks:
5.1 Identify candldate solutions.
5.2 Analyze candldate solutions.
5.3 Compare candidate solutions.
5.4 Update d,e project plan.
5.5 Recommend a $)'stem soludon.
Let's now ex.amine each of these tasks ht greater detail.
>
Task 5.1-ldentify Candidate Solutions
Gh·en the business requirements established ln the dellnltlon phase of >)'stems analysis, we must first Jde11tify alteroatl,-e candidate solutions. Some candldate solutions
will be posed by design Ideas acd opinions from SYSTEM OWNERS and USERS. Other, may
Systems Analysis
come from "-arlous sources indudfng 5YSTENSANALYSTS,SYSTENS DESIGNERS, technical consultants, and other IS profe55ionals. And some technical choices may be llmlted by a
predefined, approved technology ardlltecture. It ls the Intent of tills task not to evaluate tJ,e candidates but, rather, simply to define possible candidate solutions to be
considered.
The SYSTE.\.SSANA.LYSTS facilllate this task. SYSTEM ~sand usflt5 are not normally
directly ilwoh-.d in this task, but they may contribute ideas and opinions that start the
task. For example, an owner or user may have read an artlde about, heard about, or
learned how some competitor's or acquaintance's sJmJL1r system was implemented.
In any case, it is politically sound to consider the Ideas. SYSTEM DESIGNERS and ButLOERS
such as database administrators, network administrators, tedutology archltects, and
programmers are also a source of Ideas and opinions.
As shown ln Figm-. 5-19, this task is formally triggered by tJ,e APPROVALTO CONnNUE
THE PROJECT FROM THE REQUIR.fl\lmt'S ANALYSIS phase. In reality, ideas and opinions have
been generated and captrn-.d sinc e the prellmil1ary lJwestlgation phase- it Is human
nature to suggest solutions througt1out any problem.solving p roces.,. Notice that, In
addltlon to coming from the project team itself, m&.SAND oPtNIONS can be generated
from both lnten1al and exten1al sources. Each Idea generated is considered to be a
CANOIIMTE SOLUTION
to the
8ustN'E68 n.EJQutn.EM6N'l'S.
The amount of information descrlbh1g the characteristics of any one candidate solution may become overwhelming. A candidate matrix, sud1 as Figure 5-20, Is a useful
tool for effectlvely capruring, organizing, and comparing the characteristics of different candidate solutions.
As bas beet1 tJ,e case througbom tllis d1apter, fact-finding and group fadUtation
tedlolques like )RP are the principle techniques used to research candidate system
soludons. Fact-flndil1g and group facllitation techniques are taught ill the next chapter.
Also, a,apter I O,"Feaslblllty Analysis and tJ,e System Proposal; wlll tead1 you how to
actually generate candidate ~·stem solutions and doatment them In the mattix.
>
Task S.2-Analyze Candidate Solutions
Ead1 candidate si·stero solution must be analyzed for feasibility. Thls can occur as each
caoddate Is ldentlfled or after all candidates have been ldentlfled. Feasibility analysis
shotdd not be Um.ired to costs and benefits. r.tost analysts evaluate solutions against at
least four sets of criteria:
Teclmtcal feaslbi/r.ty- ls the solution technlcaltJ' practical? Does our staff
~ave the technical expertise to desiiu1 and build this solution?
Operational f easibility- Will tJ,e solution fuUl li the ,rser·s requirements? To
wh.at degree? How will the solution d1ange the user's work en'\oironment?
How do users feel abottt such a solution?
F.conomlc feasibility- ls the solution cost-effective?
Schedule feasibility- Can the solution be designed and Implemented within
an acceptable time period?
When completing this task, the analysts and users must: take care 11ot to make
comparisons between the candidates.11,e feasibility malysl.s is performed on each h1dividual candidate wlthom reg.ml to the feasibility of other candidates. This approach
discourages the analyst: and users from prematurely making a decision concenling
wlllch candidate is the best.
Again, the SYSTEMS ANALYSTS facilitate the task. Usually SYSTEMS OWNERS and USERS
analyze operational, economic, and sc hedule feaslbillty. SYSTEMS DESIGNERS and
ftUD.JjERS usually contribute to the analyses and play the critical role in analyzing
techolcal feasibility.
Figure 5-19 shows that the task is triggered by the completion of ead1 candidate
solution; however, it is acceptable to delay the task until all candidate solutions have
been idet1tlfled. Input to tJ,e actual feasibility analyses comes from tJ,e various team
Chapter Flvo
19S
FIGURE S-2 0
Charaderiltics
Porrion of System
Com-ud
Briefdaaiilon cl that portion of
the lY,.iml Jt would be
ccn,pvle rized
'
A Candidate Systems Matrix
in this oordidate.
lenefih
Candidate 1
Candidate 2
Candidate 3
OOTS podrage Plotirum
Plt.G f10m Enterbinment
Software Solutions would
be pun::hcued and
OJsbmized to soti ,fy
Member Services required
hnctionolity.
Member Services and
woreho~se operotions in
relation o older fuKillmEnt.
Some as candidate 2.
Thi$ $0l,tion can be
FJly wpxufs u'Strl required
b.isineuproa1Sses for
Some as candidate 2.
this oondidofl!.
implemented quiddy
because irl o p.in:hosed
solution.
Servers and Work,tation.
Tedriically, on:hitech.re
A descri ptior of the s81'Wf'\ ard
wrsk:stationsneeded to wpport this
dicbt1n Pentii.m PIO, MS
Briefdaaiplon cl
the busineu
benefib that t10uld be realized for
Candidate ...
Soundskge Inc. Plus more
efficient nt&nxlic:n with
rnemberaccounb.
Some asCU'ldidote 1.
Some as candidate 1.
MS Visool Basic 5.0
MS Visual Basic 5.0
Sys.iml An::hited 3.1
System An::hitect 3. 1
lnt&mel Expbrer
Internet Explorer
Package $0l,tion.
Custom iolition
Some as candidate 2.
Method of Doto Pro«ttsin,g
Generally so-ne oorrbinotion cl
a,l;ne, bald,, de!..-..d bath,
remOII botch, and real lime.
di&nt/serwr.
Some OS CU'ldidote 1.
Some as candidate 1.
Output Davie• and
lmpltcotio••
(21 HPAMV depa-.,,
Some as candidate 2.
Adescriptior of ootp.,t devices that
(2) HPSSI LAN low
(21 HP4'\V depamnent
10$er printer&.
(2J HPSS IANlowprintim.
oordidote.
Wll'IIX)W\ NT cb!o$ w..rt
and PEnlium,MS Window\
NI' A.O worlc.:s.iltiorn
(donO).
Software TOO,, Needed
MS Visual C++ ard M.S
Software b:> $ needed to design and Jlcx:esl for cusk:rnizatic:n
package to pro'l'ide
bu;l:l lhe condklole (e.g., doiolxue cl
report \lj'l'ffing and
managern&nl lY,.'l&m, errulobn,
integration.
c,,e,ating
etc.).
'.t"",lall.7''
t-bt g&nero I:, applioo~ i
q:,plioations ;ohware podragel
are to be p.ichosed.
Application Software
A descri ptior of the software to be
b.ii\e,
pun::hcued,
oc:oassed, or some
ccrnbinotion of se techniqu&.
would be uSfd, $pedal
;r
loser printen.
printen.
sequiremenb(e.g., nehloo
(1J PRINIRONtX ba«xxle
printer (hc:ludes software &
t i ~)
""""""n~ frrm1., ah- ). nn n11tr,i it
'M\b pogel must be
desifnecl b VGA
reso utioi. All internal
screens wi II be desigied
ocnsiderolions (e.g., liming
ccnslraints).
for Si/GA resolution.
Input 0.vi«t6 ond
lmpltcotio••
Keyboard & mouse.
Awe "Q.iick bke" digital
cam&ra end software.
A descri ptior of i rpvt methods b be
used, inp.,t devkei (ke),boosd,
f:!;l PSC Q.iicboan loser
r cod• soann&I'$.
mouie, et.), $pedal input
sequirernenb(eJ:., new a reviied
fonni fn::rn "'hi data would be
inpvtL and inp.,t coniiderolic:ni
(e.g., lirnirg ofoctuol inp.,ts).
(1) HP SoanjetAC ffabed
ioonner.
Kt1)'D:l(lrd & mo1.Ge.
Storo,ge O.vic• and
iin.&ccrtion,
Brief daaiplorn of what dato
would be
what dab would
be occeued TOrn exislin~ $'torei,
'<ld,ot itoroge media wood be used,
how much $'torot,:'pocitywould
be needed, end
dab would be
organized.
MS SQL Server DBMS
Some oi caididote 1.
Some as candidate 2.
Some oi candidate 1.
with 1OOGll oriayed
capability.
,-.-.d,
~
Systems Analysis
participants~however, It ls not uncommon for extetn.al experts (and influet1ces) to
also pro,ide data. The feasibUity analysis for ead1 candidate ls saved In the repository
for later comparison to other candidates.
Fact.flndlng tedmlques, again, play a role In this systems analysis task. But the
ablUcy• to perform a feasiblUcy• analysis on a candidate system solution Is essentlal.111at
tedmlque Is taught In a,apter 10, • feasibility Analysis and the System Proposal.'
>
Task S.3-Compare Candidate Solutions
Once the feasibility analysis has been completed for each candJdate solution, we can
compare the candidates and select one or more solutions to recommend to the svsTfl\l
OWNtRS and USERS. Ar this point, any lnfeaslbJe candidates are usually eliminated from
further consideration. Since we are looking for the most feasible solution of those remainlng, we will identify and recommend the candk:late tl1at offers the best overall
combination of tedmlcal, operationa~ economlc, and schedt~e feasibilities. It sl10,~d
be noted that in selecting such a candidate, ft is rare that a givet1 candidate is found to
be the most operation.al, technlcal, eco11om.ic, and schedule feasible.
Once again, the SYSTE.\SSANA!YSTS facilitate the ta$k. SYS11:M DESIGNERS and eUILOms
shou.ld be a"-ai.lable ro answer any rectuucal feastbllJty quesuons. tsut urumarety,
the SYSTE.\SS OWNflt5 and us~s should be empowered to drive the final analysis and
recommet1datlon.
In Figure 5-19, thls task ls triggered by the completion of the feasibility analysis of
all candJdate solutions ( NO MORE CANDCDATE SOWTIONS), 111e input ls All OflTHECANDCDATES'
FEASCl!WTY ANA!YSES. Once again, a matrix can be used to communicate the large volume of Information about candidate solutions. Toe f.....,lbillty matrix In Figure 5-21 allows a side-by-side comparison of tite dlfferetll fealibillty analyses for a number of
canddates.
The deU,-erable of this task is the soLuTior(s)To ~ llECOMMENDm. If more than one
solution is recommended, prlorlties sJ1ouJd be established.
Ag.sin, feasibility analysis tedmlques (and the matrix) wlU be taught In Chapter I 0,
• Feasibility Analysis and the System Proposal.'
>
Task S.4-Update the Project Plan
Hopefully, you noticed a recurrlng theme throughout this chapter. \X'e are continually
updating our project plan as we learn more about a system, its problems, Its requirements, and ks so Jutioiu. We ue adjusting sco pe :iccot>dJogly. Thus, b:ised o n our rec.
om.mended solutlon(s), we sholdd once again reevaluate project scope and ·u pdate
the project plan accordingly.
The project manager, In conjunction with svsrn, OWN"'5 and the entire project
team, facllltates thls task.The SVSTENSANAIYSTs and SYSTc" OWNERS are the key lndMduals
in ~task.Bur because we are transltlonfog into technical system design, we need to
begin it1volving the SYSTEM DESJGNEt5 and BUW>ERS In the project pL1n updates.
As shown In Agure 5-19, thls task ls triggered by completion of the SOWTION(s)TO
BE R.B::OMMENDED. The !are.st PR.OJ.f.CT SCHEDULE AND RESOURCEASSJGN.\.W'ltl"S must be reviewed
and updated. The UPDATED PROJOCT PLAN Is the key output. The updated plan shot~d
now Include a detaUed plan for the system design phase that wlU follow. Toe
tedmlques and steps for updating the project pfan were taught lt1 a,apter 4,«Project
,_lanagemenr."
>
Task S.S-Recommend a System Solution
As with the prellmlnary lnvestlg.stion and problem analysis phases, the decision
analysis phase condudes with a communication task.We must rec.o1n111e11d a systettJ.
solu.tf-011 to the busines., community.
Chapter Flvo
197
198
,
Part 1wo
Systoms Analysis Methods
'
FIGURE S -2 1 A Feasibility Analysis Matrix
r-1biltyCrhrSa
w.,...
ep.ronoM ,.011b•tty
3111<
fundtono" ' A descrtpllon
of to whot d911ree tie
a,nd--.ld beoeftt .....
organllallon aid how "'911
tie IY$1em woJd worl
(co,dldcn l
O~ y wppcm -.be<
Servlc• requl......,.,
a,d cunent b-...1ne1$
c...d....,.3
Condido,. 2
ful y aupporh UW'$
Condido .. . ..
Sorre 0 1 oondldale 2.
requlr«I funcflonaltty.
proc:•1• woJd hove
k> be modified to tlb
odvo~e of 1oftwore
funcnonallty.
Po•n~I. A de1cr1p11on of
how W&II reoat¥&d lhl$
$CluHon would be from u1•
management, -..er, ord
organllallon )ellpecnv..
, ..h....t .... b. lty
3111<
T.dlnoloa')tt An OH_,.IWlf
el .._ moh.rlty, c,,,olloblhty
(or abdtty to ccqulre], ord
d•lroblltty of tie oomputw
ll!lehnology n.ded to
$Upport til$ condldote.
S.-»r.: 100
Current producnon release of
Plallnum Plu1, package h
Y&lllon 1D ard ha& been
&tiff ho$ only Powerbullder
Althou~h current ll!lehnlcd
91P9".-.c., the senlcr
""""°
en ..._ morbitfurenly6WW.,. onolyn
,ow Iii• MS
Mah.rnyof proclJd 15 a rtsk, Vhucd 8o$k: demonslrotlOn
a,d a,rnpany charge, a,
ord p11Wdollon have
oddlnonal monthly N for
oglffC the lrOrGlllon wtll be
1ectri1cal &upport.
s.lrrplea,d flrd1ng
91P-1n:ed Ya progrornmen
RecfJlred to hire or !rain C+ + wtll be eml• than flrdlng
Powerl:iudder prograrrrnin
e)IJl• 1he to peri:irm
modlfioonons. for titegronon ard ata much cheaper 00&1.
lXptrtlM. M ouewnw
of lhe lO<hnled ........
needed to dMop, operale,
ard rnalntlln the ca,dldate
-·
req!Jremenh.
MS VltJal 8a,1c 5.0 ls.o
_ , . i.cmolcgy baled
on -,ion number.
s-« so
l conomlc: ,.011b• tty
Co" to d.wlop;
Poybock ,..rSad
~
Mtt pN•nt vah•:
O.tda.d c:Sulot1on,:
Although current ll!lehnlcd
&ti ff 11, comfortable wtth
Powwbulld• , rnonagernin
1$
conc.,,,.i wtlh , . - ,
acq1111,111on of l'o'Y,erbulld.by ¥,a,. Inc. MS SQI.
Server Ii a cunent coff1)0ny
&tlndad and oornpetel
wtth SYBASE In it., dl,wrt/
DBMS market.
9&cauM of lhl$we have
no guaranlee future
ver,.k)nS, of floww.
bvid• wil ~p1oywe11~
wtth our cunent ver,.IOn
aerv•
SQLServer.
s-., 60
ApprQldmately $350,CXX>.
App,o;•maloly $418,0AO.
App'°"'maloly $400,000.
ApprQldmately A.5 yecn.
ApprQldmately $210,CXX>.
Appro;Clmalely 3.5 )e(lfl.
App'°"'maloly 3.3 )O(HS.
App'°"'maloly $325,500.
See Anochrn,wrt A.
See Anochment A
S-. 60
u,,,
Schodule , _ ...
>n a$1• 1mert of how long
t. a,ohJlon W, de IO d•lgl
S.-»r.: 95
s-., 100
3111<
...........
(
S-. 60
1111<
i..1 than 3 rnonti&.
App,o;•maloly $306,7AS.
See Atochment A.
S.-»r.: as
9-12 nonlhs.
s-., 90
9 month$.
ard Implement.
l
llaold09
100%
S-.95
S.-»r.: 80
s-.,as
60.S
92
83.S
,I
T he project manager and executive sponsor sho,dd Jointly facilitate this task.
Other meeting participants should Include the entire project team, Including assigned
~ OWNflt5, USERS, ANALYSTS, OISlG NERS, and 8UlLOflt5. As usual, the meeting st1otL!d be
open to any and aUinterested staff from the business community. Also, lf an inrranet
Web site was established for the project, lt shotdd have been maintained throughottt
the problem analysis ph.ases to ensure continuous communication of project progress.
Th.ls task ls triggered by the completion of the UPDATED PROJ-f.CT PLAN. TI1e T.\RG ET
$YSTE."1 soLtmON (from Tusk 4 .3) ls reformatted for presentation as a SYSTEM PROPOSAl. T he
format may be a repor t, a ,--etb.'ll preset1tatlon, or an inspection by an au ditor or peer
group (called a walk.t hrough). An outline for a written report is shown in Rgure 5-22.
The Next Generations: Systems Analysis
Predidi ng the future of systems analysis is not easy, bJt
we' ll make an attempt. CASE technology will continue ,a
improve, making it easier to model system requirements.
Fin l, CASE tool, will include object modeling ta ,uppcrt
emerging object-oriented analy,i, techniqu... While
,om• CASE tool, will be purely object-oriented, we believe that the demond for other type, of mode Ii ng ,uppcrt
(e.g., data modeling for databa,e,, proce" modeling for
BPR) will place a premium on comprehen,ive CASE tocl,
that can ,upport many type, of model,. Second, the
rE:WeBe-engineering technology in CASE tools will continue
ta improve our ability ta more quickly generate fint-dratt
systen models from existing databases and application
programs.
In the meantime, RAD technology will continue ta en·
able occelerated analysi, approache, ,uch a, prototyping.
We clso expect the trend for RAD and CASE tool, to inta-operah> through rever,e and forward engineering ta h.r1h....- :>irnpliry 6ulh :..y:..lvrn rn0Jylin9 und Ji:,.oovy1 y
protctyping.
~ject-oriented analysi, will "'entually replace ,tru:tured analysis and information engineering as the best
pradice for sys,tems analysis. This change may not occur as
rapicly a, object pun,b would like, but it will occur all loo
rapicly for a generation of ,y,tem, analyst. who are ,killed
in the older math od , . Th ere i, a grand opportunity for
lolented young analyst. lo lead the tran,ition; however, career opportunities will
remain ,trong for analy,h who know data
modeling that will continue to be u..d for
databa.. de,ign. Al,o, the prOC9', modeling renaissance will continue as BPR
projects continue to proliferate.
We al,o predict our ,ysh>m• proposal,
will continue to get more interesting. AJ
the Internet, e-oommerai, and e-busines,
become increa,ingly perva,ive in our
economy, ,ysh>m• analy,b will be
propo,ing new a~emative, to old problem,. There will be a fundamenlol
change in busine,s and information 'Y5'"
terns to u'9 these new technologies.
One thing will not changel We will
continue to need ,ysh>m, analy,i. who
z
CD
x
----t-
w
CD
:::J
CD
--,
0
----t-
0
:::J
undw:i:lunJ how lo rundurn"'ntull., inv1Ali·
gall> and analyze bu,ine" problem, and
define the logical bu,in .., requirement,
a, a preface to ,ysh>m d..ign. Bui wi, will
all have to do that with increa ..d ,peed
and accuracy to meet the accelerated SY5'"
h>m• development schedul.. required in
tomorrow', fo,h>r-paced economy.
Interpersonal an d commwlicatlons skills are essential to this task. Soft skills such
as salesmanship and persuasion become Important (1\ilany sd1ools offer speech and
c ommunJcatlons courses on these subjects.) Systems analysts should be able to wrfte
a fonnal busines., report and make a bush1ess presentation wlthottt getth1g Into tecbn.ical Issues or alternatives.
This concludes the decision ait.alysls phase. And Jt also concludes our coverage of
systans analysis.
F IG U R E S • 2 2
An Outline for a Typical &fstem Proposal
I. Introduction
A. Purpo,e of the report
II.
Ill,
IV.
V.
VI.
B. Background of the project leading lo thi, n,port
C. Scope of the project
0 . Slruclure of the report
Tool, and technique, u,ed
A. Solution generah>d
B. Fea,ibility analysi, (co,t-benefit)
Information $y,1em$ requirements
Alh>mative ,olution, and fea,ibility analysi,
Recommendation,
Appendi..,,
199
Q_
0
E
v
11lls chapter provided a detailed overview of the systems analysis phases of a project.
)'ou are now ready to learn some of the $)'stem.s skills introduced In this chapter. For
most students, this would he the Ideal time to stud)• the fact.finding technique, that
were identitled as critical to almost every phase and task that was described ii this
chapter. Chapter 6 teaches these skills. It Is recommended that you read Chapter 7,
•Modeling System Requirements with Use Cases; before proceeding to any of the
0
modeling chapters since use cases are commonly used to fadUtate the activity of
0
0:::::
0)
c
c
I....
0
(])
.-l
modeling.
The sequencing of the system modeling chapters Is flexible; however, we personaUy prefer and recommend that Chapter 8, •oata Modeling and Analysis; he studied first. All information systems lndude databases, and data modeUng Is an essential
skill for cbtabase developmenc Also, it ls easier to synchronize early data models
with later process models than vice versa. Your instructor Ol.1)' prefer that you first
stud)• Chapter 9, •Process Modeling.• Advanced courses may elect to Jump straight to
Chapter IO to Jeam about ob)ect-0rlented analysis and modeUng with UML
If you do Jump straight to • system modeling chapter from this chapter, mike a
commlbllent to return to Chapter 6 to study the fact-finding techniques. Reg.'ltdiess of
how well you m.1ster system modeUng. that modeling sklU Is entirely dependent on
your ability to discover and collect the business facts that underlie the models.
For those of you who have already completed a systems analysis course, this
chapter was probab~· scheduled only as a re>iew or context for systems design. We
suggest that you merely re>iew the system modeUng chapters and proceed directly to
Chapter 12,"Systems Deslgn.•Toat chapter will pick up where this chapter left off.
Summary ~
I. Formally,systems analysis ls the dissection of a S)'Scem tnco Its component pteces. J\S a problem-60Jving
phase, it precedes systems design. With respect
to lnformation systems development, systems
analysis ls the preUminary investigation of a proposed pto)ect, ti,e study and problem analysis of
the existing S)'stem, ti,e requirements analysis of
business requirements for the new system, and the
decision analysis for alten1att,--e solutions to fuLtlJJ
the requirements.
2. The results of systems analysis are stored h1 a
repository for use In Liter phases and projects.
3. There are se,-.raJ populu or emerging strategies
for systems analysis.11,ese techniques can he used
ln combination wJth one another.
a. Modeklriven analysis techniques emphasize ti,e
drawklg of pictorial S)'stem models that repre-
set1t clther a current reality or a target vision of
the $)"stem.
200
l) Structured analysis ls a technique that
f0ctises on modeling processes.
Ii) Information et1glneerlng ls a technique
tl1at focuses on modeling data.
Ul) Object-oriented an~·sis Is a technique tl1at
foctises on modeling objects that encapsulate d1e concerns of data and processes that
act on tl1at data.
b. Accelerated an~·sis approaches emphasize the
construction of working models of a $)'Stem ln
an effort to accelerate systems analysis.
l) Discovery prototyping ls a technique that
focuses on building small.scale, fw1ctlonal
subsystems to dlscover requlrements.
Ii) Rapid archltected analysis attempts to auto-
matically generate system models from
elther protorypes or existing systerns.11,e
automatic generation of models requirts
reverse engineering technology.
'
Systems Analysis
c. Both model-drJvet1 and accelerated system
analysis approaches are depe11dent on requirements discovery techniques to identify or
extract problems and requirements from system
owners and users.
I) Fact.finding ls the fonnal process of using
research, intervJews, que.stio1u1..1ires, sampllng, and other technlques to collect
information.
ii) Joint reqttlrements planrtlng ORP) techniques ltse fadlltated wod<shops to bring
together all interested parties and acceler·
ate the fact-finding process.
d. Buslness process redesign ls a technJque tl1..1t
focuses on slmpllfyh1g and streamllnh1g fw1dame11tal business processes before apply!ng Information technology to tl1ose processes.
4. Eich phase of systems analysis (prellmlnary lnvestlg,.tion, problem analysts, req,urements analysts,
acd decision analysis) can be understood In ti,e
context of the h1fonnation system building block,:
KNOWLfDGE, PRCX:ESSES, and COMMUNICATIONS.
5. Toe purpose of ti,e preliminary investigation
phase is to detennlne the worthlness of the project and to create a plan to complete those
projects deemed worthy of a detailed stud)' and
ualysls. To accomplish the prelirolnary lnvestlg,1tlon phase, the systems analyst will work with the
system owners and users to : (a) list problems, opportunltles, and dhectlves; (b) negotiate prellmlnll')' scope; (c) assess project worth; (ti) plan ti,e
project, and (e) present the project to the business
commwllty.11,e deliverable for the preliminary in·
vestlgatlon pl1..1se is a project charter that must be
approved by ~'Stem owners an<Vor a dedsionm.1king bod)', commonly referred to as the &eettng
committee.
6. The purpose of ti1e problem analysis phase ls to
answer the questions, Are the problems really
worth solving, and ls a new system really worth
building? To answer these questions, the p roblem
analysis phase ti1oroughly analyzes the alleged
problems and opportwllties first lde11tlfled In the
preliminary hwestlgation phase. To complete the
problem analysis phase, the analyst will continue
to work wlth the system owner, system users, and
other IS management and staff. The S)'Stems ana.
lj>t and approprL1te participants will (a) study
the problem domain; (b) thoroughly analyze
problems and opportwllties; (c) optionally, analyze business processes; (d) establish system improvement objectives and constraints; (e) update
the project plan; and (/) present the findings
and recommendations.111e deliverable for the
Chapter Flvo
201
problem analysis phase ls the system improvement
objectives.
7. The purpose of ti,e requirements analysis phase ls
to lde11tify what the new system ls to do without
the consideration of technology- In other words, to
define the business requlremet1ts for a new S)'S·
tern. As In the prellmlnary investigation and problem analysis phases, the analyst actively works
with system users and owners as well as other JS
professionals.To complete the requlremet1ts
analysis phase, the analyst and appropriate participants will (a) define requirements, (b) analyze
flU1ctlonal requlremet1ts using system modeling
and/or discovery prototyping, (c) trace and complete the requirements statement, (d) prioritize
the requirements, and (e) update the project plan
and scope. 111e deliverable of the requirements
analysis phase is the business requlremet1ts state.
ment. BeC1.t1se requirements are a ruo,·ing target
with no finalization, requlremet1ts analysis also
includes tl1e ongoing task of mai1aglng changes
to the reqttlrements.
8. 11,e purpose of ti,e logical design phase ls to docttroent bush1ess reqttlremet1ts using system models for the proposed system.11,ese system models
can, depending on the methodology, be any combh1..1tlon of process models, data models, and object models.111e models depict various aspects of
our bltllding blocks. Alternatively, prototypes
could be built to .. discover reqttlrements." Some
discovery prototypes can be reverse engineered
hllo system models. The systems analyst and approprL1te participants will (a) structure or prototype ftmctlonal reqttlrements, (b) validate
flUlCtlonal requlremet1ts, and (c) define acceptance test cases. These tasks are not necessarily
seque11tlal; they can occur In parallel. The deUverable for the logtcaJ design pt1ase ts the bustness
requlremet1ts statement.
9. 11,e purpose of ti,e decision analysis phase ls to
transJtion the project from business concerns to
teclullcal solutions by identifying, anal)•zing, and
recommending a tedl.ll.lcal ~·stem solutlo11. To
complete the decision analysis phase, tl,e analyst
and appropriate participants will (a) define candidate solutions; (b) analyze candidate solutions
for feasibility (teclullcal, operational, econonllc,
and schedule feasiblllty); (c) compare feasible
candidate solutions to select one or more recommended solutions; (ti) update the project plan
based on the recommended solution; and (e) pre.
sent ai1d defend tl1e target solution. The deliver.
able of the decision analysis phase ls the system
proposal.
202
Part 1wo
Systoms Analysis Methods
Review Questions
\'~~:=S
C>
l. Wh.at are the business factors that are drfving
system! analysis? Based on these factors, wt1..1t
should ;,J'stems analysis address?
2. What Is model-driven arwysls? Why is It used?
Gfve se7eraJ examples.
3. What Is the major focus of structured analysis?
4. What Is the major focus of infonnatlon
engineering?
5. Why has object-oriented analysis become popuL1r? Whit problems does ft soh,--e?
6. What are the tlve phases of systems analysis?
7. What is the goal of the scope deflnition
phase?
8. Wh.at are the flve tasks that you do In the scope
dellnition phase?
9. What is the trigger for communicating the
p roject plan, and who Is the audience? Why Is
10. Why do many new systems analysts fall to effectively analyze p roblems? What can ti,ey do to
become more effective?
11. What is a popular tool used to Identify and express the fllllctlonal requJrements of a system?
12. What is a common!)• used teclmique for priorltiz.
Ing $)'stem requirements?
13. When co,tld prototyping be used instead of
system modeling for detennining functional
requirements?
14. Why Is the decision analysts phase needed?
15. What are some ways to identify candidate
solutions?
communicating the project plan important?
Problems and Exercises
@:
1. 111ere ;re many different approaches to $)'stems
analysis. Despite tl1ese different approaches, what
Is the universally accepted deflnltlon of systems
analysis? What ls the general consensus as to
when systems analysis begins and when it ends?
As a project manager, what is lmportant to know
regarding ti,e definition of systems analysis, and
what ls important to etlSure ln your organization
reaarding ti,e definition?
2. As a sy,tems analyst, you will be exposed to
and use many different approaches to systems
CENTRICITY
(data. process. etc.)
STRUCTURED
ANALYSIS
INFORMATION
ENGINEERING
AND DATA
MODELING
OBJECT·
ORIENlEO
ANALYSIS
analysis tivoughout your career. It Is important
that you understand the conceptual basls of
each type of approach, and thelr e55e11tlal differences, streogtllS and weaknesses. Conslder the
differences in structured :u1..1lysls, lnformatlon
engineering and data modeling. and objectoriented analysis, all of which represent mode~
drlven analysis, and fill in the matrix show11
below.
TYPE OF
MODELS USED
ESSENTIAL
DIFFERENCES
Systems Analysts
3 . .\ccelented systems analysis approaches are
based on the premise that prototypes can help
reveal the most important busfr1ess requirements
faster tl1..1n other methods. Descrlbe the two most
commonly used approaches to accelerated ai1..1(y.
,Is. What do they do and how do they do It? Wh,t
ls one of the criticisms of prototyping? Do the accelerated systems analysis approaches completely
tepL1ce more formal approaches, such as structured analysis?
4. During the scope definition phase, what ls one
question that you should never lose sJght of? And
how do you aJ.lSWer th.ls question? What ft,--e taslis
,ho,tld occur during the scope dellnltlon phase?
5, \'ou are a new systems analyst and eager to prove
~·our abllitles on your first project. )'ou are at a
problem analysis meeth1g wlth the system owners and users and find yourself saying, .. \X'e need
10 do
this to solve the problem," Into what
the project pl:in or allowing stakeholders to con
11.
12.
13.
1
,. Reduce the time requlred to process the
order.
b. 111e new system must use Oracle to store dat1.
c. 111e data lnput screens must be redesJaned so
they are more user-friendly.
d. 111e ctlStomer satlsfactio11 rate wlth the onllne
orderlng process must be lncreased by
IO perce11t.
.\re these examples of good system Improvement
objectl,-es? Why or why not? If not, how could
tJ,ey be reworded? Also, objectives frequei1tly
have constralnts that are tied to them; what, lf
any, do you tlllnk tl,e matdllng constraint mlght
be for ead1 of tJ,ese objectives?
7. You'>.. made It through the problem analysis
phase of the project, and are now begimllng the
requlrements analysis phase. During the first
meeting 011 the business requirements, one of tlie
other analysts on the project team asks the sys.
1em users, .. How should the new $)'Stem meet
203
your needs?,. Wh.at common mistake is the anal)'St
making? Wh.at are ofteit the consequences of
making this mlstake?
8. What ls the difference between fm1ctlonal and
nonfw1ctlonal reqttlrements, and what ls the purpose of categorizing them lnto these categories?
What are two formats that an anal)'St can use to
document the functional system reqttlrements?
9. Is it Important to prioritize system requiremei1ts,
and lf so, when should the requlrements be prioritized? Wh.at ls one technique t11..1t can be used,
and what ls the difference between mandatory
and de.si.rable requlremei1ts? Wh.at ls one way to
test whetlter a mandatory requirement ls truly a
mandatory requiremei1t?
10. Once the system reqttlrements are idattified and
prioritized, sl10,tldn't e>.. ryth!ng be frozei1 to pre.
vent scope or fearure creep? Does11't updating
common trap are you h1 danger of fallfr1g? W11..1t
1edulique could you use to avoid th.ls trap?
6. Your project team has completed tl,e scope detlJ>.
ltlon phase,and ls now at the point In tl,e prob,
!em analysis phase for establishing system
improvement objectf,les. As the systems :u1..1tyst
on the project team, you are the facilitator of a
brait1Stormb1g session to define the system improvement objectl,..s. Since several of the project
owners and users have never done this before,
describe the characteristics of good system fm.
provement objectl,-es and provide some examples. Members of the project team suggest the
following objectives:
Chapter Flvo
14.
15.
tltme to request changes Just delay S)'1em design
and construction, and maybe even project completion Itself/
Why should acceptance test cases be dellned durh1g the logical design phase? After al~ the tedmlcal desJgn hasn't been done yet, let alone building
the $)'Stem. Shouldn't testing actlvltle! at least
watt tmtU construction is actually tm<bway?
How ls tJ,e logical design phase different from
the req,tlrements analysis phase?
Let's say you are on the project team of a project
that had a great deal of dlfllCltlty during the req,tlrements analysis phase, and fell se,·eral weeks
behind schedule .111e project manage, wants to
try to catch up by eitl1er skipping or abbrevlatlt1g
some of tl,e tasks in the logical design phase.
After all, tlte project manager reasons, we really
have a dear Idea of the requirements now, tl1e
desJgners and builders are really expe,:tenced, and
they don't really need the logical design h1 order
to do the tedmlcal design. ls this a legitimate
method to get back on schedule? W11.11 are tJ,e
posslble consequences?
In ldet1tlfying and deftn!ng possible candidate solutions, wh.at are the typical roJes of the '\o-atJous
stakeholders who are involved in the project?
You are a systems anal)'St and have been asked to
fadlitate the analysis and evaluation of several
candidate system solutions for thelr feaslblllty.
What sets of criteria wo,~d you typically use?
Who do you involve in this task? Should you compare the candidate soJutions against eich other at
this point? Why or why not? W11.11 ls the typical
deU,.. rable comh,g out of tills task?
204
Part 1wo
Systoms Analysis Methods
Projects and Research
~
l. Select an fr1fonnatlon system wlth whid1 you are
familiar, ,nd whlch you feel needs to be improved,
based ui:on your experiences as an employee, customer, other system user, or system owner. Swltch
roles and perspectives as necessary to perfonn or
answer the following:
a. Describe the nature of the information $)'stem
you have selected.
b. Describe the organization that owns and malo-
taitu d1e Information system.
c. Identify the baseline problems and opportwlltles, per Task l. l.
d. Develop a prellminary problem statement, using the format shown in Figure ~2. ~ume ~·ou are the now a systems analyst on the
project described in ti,e preceding question. Executive management was extremely lmpressed by
your work 011 the problem statement. As a result,
they h.we gh'en the project tl,e go-ahead, the baseline schedule and budget have been developed,
and ti,e project pL1n has been approved by the executive steering committee. As the systems ai1..1lyst,
you now ha,--e beett tasked to do the following:
a. Develop and document )'OlU' w1derstanding of
the problem domaln and business vocabuL1ry,
using the textbook's information system bulldlng blocks framewod< as described in Task 2.1.
b. Analyze problems and opportwlltles using
cause-and-effect analysis (Tusk 2.2).
c. Analyze business processes and de,-elop
proctss models (Task 2. 3).
d. Establish system lmprovemetll objecth'es
('l\"'k 2 .4).
e. Prepare a Problems, Opporttullties, Objecth-.s,
and Constraints Matrlx,ush,g Agure 5-12 as an
example.
3, Communicating findings and recommendations ls
the final task in the problem analysis phase. As a
systems malyst on the project, you have been
tasked with preparing ti,e System Improvement
Objectl\'eS and Recommei1datlons Report. For tills
exercise, prepare 01lly ti,e Execuu,-. Swrunary
Minicases
portion of the report, using the format shown lo
Figure 5-13. The executive steering committee wUJ
use this summary to make lts dedsJons regardlt1g
the recommendations.
4. Your strong work on the project to date h ..is con-
tinued to Impress executt,--e management..You
have received a pay increase and have beett tasked
wlth conducting dte requirements analysis pti1Se.
SpeclJlcally:
a. Identify tl,e system requirements, and prepare an
outline of functional and nonfunctional requ.f.re.
ments,perTosk 3.1.Since your orgart.izatlon uses
structured aiulysis and does 11ot employ use
case modelh1g, list each system lmprow,metll objective, and d'le inputs, processes, outputs, :tnd
stored data needed to meet ead1 objective.
b. Assume that the requirements )'OU identified in
the preceding step have been ...udated. Prioritize
the requirements according to their relative importance, using the med1od desctibed ln'last 3.2.
5. Your work has helped keep d,e project well ah•ad of
schedule, so executtve management gives you a couple of weeks of paid ,-acatloi> When you retum, the
project ls mo,ing hllo d,e decision analysis phase.
Your next task ls to identify• candidate solutions.
a. Describe the process for identifying candidate
soJutions. Wh.at should you be carefu.l ,iot ro do
at this point?
b. OeveJop a candidate systems matrix, ush1g the
fonnat in Figure 5-20 as an example, and in·
dude three possible solutions.
6. After idet1tlfyh111. candidate solutions. ti,e next step
ls to analyze these soJutions.
a. Describe the process for analyzing candidate
solutions. Wh.at sl1oti.ld the project team 1101 do
in completing this task?
b. Develop a Feaslblllty Analysis Matrix, based
upon the candJdate solutions ldentlfled in the
precedh1g question, and using the fonnat
shown h1 Figure 5-21 as an ex.ample. Determlne
what your weighting factors shot~d be.
~
l. You are the ao of a major retailer. Recently, you
read •sp)ing on the Sales Floor• in the Wall Street
jo·ur11al 011 December 21, 2004. You see that your
competitors are using video mhling to analyze consumer bel1avtor. Sho,~d your company also adopt
thls tool (video mlnh1g)? What are the strategic
Systems Analysts
lmpllcatlons to your company of your competlton'
move? Wh.at opportunities have been created?
1breats?
2 . Read "Human Reenglneeting," by Cooper and
,_larkus, ln the Sloan Afa11age111e1it Revf.eu.1, Stunmer 1995. In this artlde, Okw10 works on lnstltut·
ing a posltt,--e attitude toward change. How does
he do tills? Dlscuss the importance of d1aoge accrptance by employees to the success of a tech-
nology implementatlo11.
3. Refer to Mlnlcase l. You, as the ao, belleve that
the b usiness gains for implementing vldeo mining ln your retall stores wll1 outweigh any nega-
Chapter Flvo
205
rive customer perceptions. Your company ls
Baby's R Us, a child company ofToys R Us. Do an
economJc feaslblUry study for tllis investmet1t.
Be sure to include a listing of intangible costs
and benefits, as well as an argument for your
chosen discolUlt rate. What is the ROI of the
video ml1llng? Try to keep your anal)•,ts to under
15 pages.
4 . Develop a project plan and schedl~e feasibility
study for the vide0,mlnh1g Investment into Baby's
R Us. Be sure to Include a Gantt and PERT/CPM
chart, as well as a dear discussion of aU tasks tl1..1t
need to be completed.
~ Team and Individual Exercises
I. Hnw often do you tWnk legal issues play a role in
project success? Think of an example of a potentially
good lnfonnation system or program tlut was constrained or not feasible due to legaJ requirements.
2 . As a team, brait1Storm some ways to enhance empl.oyee change acceptance of new information
systems or business proce~es.
3, Tilink of an example when business process Improvement ls more appropriate than business
process reenglneerlng. Share wlth tl1e clas.,.
rs]]
AfJpltcatfon Deoofop1ne11t 1tends ( month!}' pc,riodical). Natick, MA: Softwatt Producthi.t)• Group, a ULLO Interru·
tional compan): This is o ur f:n'O rite systems ck\•e lop blc':nt
periodical. It fo llO\\<s syste,ms a nalysis and design stl'l.tr·
girs, me thodologies, CASE, and other ttle,.'atlt trends. Vii it
its 'Web s ite at '""'"''.adttnag.com.
Gause, Donald C., and Ge,l'J.ld M. Wei.nbc,rg . Are Jtiur Lfgbts
Ou? Hou; to Ftgure our wbar the .Probfetn REALLY Js.
N~ Yotk: Dorset Hou.se Publishing. 1990. Here •s a tide
ttut should really get you thinking. and the e ntire book adc.bt$SC'S one of the least pu blished aspects of systems
atulysis: problc,m sol-vi.Ilg.
Ham.tnct:, ~ti:kc. • Rccng in«ri.ng Work: Don' t Automate, Oblit·
ehte.• Harvard B11S11Jess Revtetv, July- Aug ust 199),
pp. 104-11. Dr. Hamme r is a noted expert on busindtS
process redesign.This seminal paper ex.amines soblc': classk cases w here the techniq ue dramatical!}' added \'llluc to
bu.incsscs.
Suggested Readings
Wetherbc, Jamcs. sysre111s A11af)1sts a1Jd DeSfftJ.' Best Pmctfces, 4 th ed. St. Paul, ~tN: West Publishing, 1994. We arc
in<kbtcd to Dr. Wetherbc for the PIECES fuwcwork.
Wood.Jane, and Denise Sih'C',r. ptnt AJ)plfcatfon Destg11.· HotlJ
to Desfgn Quattty S)1ste111s ,,, 40% Less 1fnw. Ne\\• Yotk:
John WJey & Sons, 1989.T his book provides an excelle nt
in-depth p resentation o f joint application ck\'C'lopme nt
OAD).
Yourdon, Edward. ,Wotlern Structr1ret1 Anaf)1sts, Engle\\•ood
Oiffs, NJ: Yourdon Pttss, 1989. This u pdate to the classk
DcMarco text on the same subject de.fines the c urrent
state of the p nctice fo r the structu red analysis a pproach.
Zachman, John A. •A Fl'.Ullc:Work for tnfo r nution Syste,m
Att:hitccture." /BJW S)1ste111sJ011mat26, no. 3 ( 1987) . This
a rtic·lc pltSdlts a popular conceptual fn mcwork fo r
info rmation systems sul'\'C)'S and the dc,tlopme nt of an
info rmation architectu re.
Slrategle Enterprise Pian
S11'W91C m:irmatbn s,rtems Pian
•npo,•"''"
a,,...,
COMWUltCATIONS
-
&TATE • EIIT OF WOIJI(
PIJ08LE •
S TA TE . ENT ( Ut l11 9 t ho PIE CE S 1r, 111•wo r k)
...•
.,
FUNCTIONM.
ICO. .
- ~
CO•MJNICA1l0118
.....•
Vl80ff
8 Y8 TE• IMPRO V EMENT O&JECTI Y E8 ( u t l11 9 tho PIE CE S u , m• wo rk)
~
•..
I
•
~
)
I!!
~
•
v
Ii
!
!!i
..
~
~
iii
~
t;
~
i
i!
I;;
!;
~
-
....
-......
8U8 NE88
PAOCES&
IIEQJIFE• ENT&
18
....
......
LOGIC.Al.
PAOCES&
•oons
&Y8TE• PROPOSAL
l?
(or IJEOUE8T FOR &Y8TE• PROPOSALS)
ARCHITECTURAL NOOEL
8!
OE&IGN PROTOTl'PE8
8U61NES8 PA0~ 8
~
>
~
......
PHV61CAL
DESIGN
S PECIACRIONS
~AEOE.SIG'I
""""
5
--
NTEAFACE
OESGN
6PEOFIOOIONS
SPECIFICATIONS
FUNCTIONAL SY&TEM
-RAINING •.t.TEFIIAL8
.........,.,
'"""""
cu&10w~1n
.........,.,
~
J
PHYSICAL
USEA &Sm-EW
...
..,_,,
-
•~
-
n
.........
.........
~
f
s
§
>
i
APPllCATION
-
•
USER
INTE~ACE
8Cl.VTION8
""''"
INTE~ACE
8Cl.VTION8
POST-AUDIT REVIEW
OPEAATIONAL &YSTE•
.
APPFICWEO
........
APPFICWEO
1£CHNOLOOIE$
TECHNOI.OOIU
..........
-
Cf'IC.IH.
........
...,..,.
S1rat&gle EnlerprlSe 1ntormat1on .._enno1ogy Arcnltecture
Fact-Finding Techniques for
Requirements Discovery
Chapter Preview and Objectives
Effective fact-finding techniques are crucial to the devebpment of systems p,tjects. In
this chapter you will learn alx>ut techniques to discover and analyze information system
requirements. You will learn how to use various fact-finding techniques to gather information alx>ut the systen1•s problems, opportunities, and directives. You will know that you
understand fact-finding techniques and requirements dis::overy when you can:
I Define system requirements and differentiate between functional and nonfunctional
re~uirements.
I Uoderstand the activity of problem analysis and be able to create an Ishikawa
(fohbone) diagram to aid in problem solving.
I Uoderstand the concept of requirements management
I ld!ntify seven fact-finding techniques and characterize the advantages and
disadvantages of each.
I Uoderstand six guidelines for doing effective listening.
I Uoderstand what body language and proxemics are aod why a systems analyst
should care.
I Oaracterize the typical participants in a JRP session and describe their roles.
I Complete the planning process for a JRP session, including selecting and equipping
the location, selecting the participants, and preparing an agenda to guide the JRP
session.
I De.scribe several benefits of using JRP as a fact-finding technique.
I De.scribe a fact-finding strategy that will make the most of your time with end users.
208
Part 1wo
Systoms Analysis Methods
Bob ,_lartloez has spent most of the week reading. He started with memos related to the
proposed Member Senices S)'stem to better understand the problem. He then re,iewed
SoWKIStage's procedures manual for any policies related to member senices and pro.
motions. He stud.Jed nearly l 00 member order forms seJected ar random, noth1g the
kinds of data recorded In each blank and whld1 blanks were always, sometime,, and
never used. He read the documentation for the present member senices system. Be reviewed data and process diagrams from the prior member •=ice systems development
projec~ noting things that would probably need to be changed In d,e new system. It
was gruellng work. But In ti,e end he really felt like he was beglnnlng to w1derstand the
system. He produced a report foc Sandra, hls boss, of the key Issues and questlo1u that
would need to be answered at the upcomlng Joint requlremetlls plannlng meeting.
An Introduction to Requirements Discovery
ln dt.'tptet' 3 we discussed se,,'en.l plt.'tses: of systems de"-elopment. E~ch ph~s:e is: i.m,.
requitemei.-.s disco,·ery
the process and techniques
used by systems analysts to
identify or extract system
problems and solution
requirements 1rom the user
community.
system requiremeot
something that the inbrmation
system must CO or a property
that it must ha'/e. Also called a
busin9SS f9QU.Y91Tl9nt.
ponant and necessary lo order to effectively design, construct, and t~tlmately lmplemet1t a ~·stem to meet the users' (stakeholders') needs. But to develop such a system,
we must: first be able to correctly idet1t:ify, analyze, and understand what the users' requirements are or what the usess want the system to do. The process and techniques
that a ~·stems analyst uses to idet1t:ify, analyze, and w1derstand system requirements
are referred to as req11lrements discovery. As suggested by the chapter's home
page, reqttfremet1ts disco,--ery primarily invoJ,-es systems analysts working with
system users and owners during the earlier system developmet1t pl1ases ro ob1aln a
detailed tmderstandtng of the bush1ess requirements of an information ~·stem.
What are system requirements? S)''Stem requirements specify wt1.1r the infor.
matlon system must do or wt1.1t property or quality the system must have. System requlremetlls that specify what tbe Information systetn must do are frequet1tly referred
to as functlon.-.J requirements. System requlremetlls that specify a property or qua~
ity the system must have are frequently referred to as 001UU1xtloo...'ll req11irements.
The PIECES framework (Table 6.1), Introduced lo Chapter 3, pro,ides an exceUent
tool for dasslfylng system requirements. The benefit of classifying the various types of
reqttlremetlls Is the ability to group reqttlrements for reporting, tracking, and validation
purposes. Plus doing so alds h1 klet1tifyh,g posslble overlooked requlrements.
Es~ult.llly, llut pw..,o:,;t:' uf 1·~uireuu::ut:,; ul~uvt:'ry aud t11.u1agt:'uu::u t i:,; tu c..v..-
fuoctiooal requiremeot
something the information
system must co.
oo-o.f'u.nctioa.al requiremeot a property or quality
the system mLst he/9. Exam.
pies include security, ease.of.
use, performance.etc.
rectly idet1t:ify the KNOWLEDGE, PROCESS, and COM."1UNJCATION requirements for the users
of a new system. Failure to conectJy Identify ~·stem reqltfrements may result In one
or more of the following:
The systetn may cost more tl1ao projected.
The systetn may be deliveied later than promised.
The system may not meet the users expectations, and tl1.1t di~atlsfact:Jon may
cause tl1em 11ot ro use it
Once In production, the costs of maintaining and enhancing the systetn may
be excessively hlgb.
The system may be wvelL1ble and p rone to errors and downtime.
The reptttation of the IT staff on the team is tamlshed because any fallwe,
regardless of who is at fault, will be perceived as a mistake by tl1e team.
11,e lmpact In terms of cost can be staggering. Toke, for example,Tuble 6.2, by B.'lft)' W.
Boelun, a noted expert h1 h1formatlon technology economics. 1 He studied several
tootuLld C.Gii.u,c 11t1d GduJd M. Weitibttg, E.rplon.,fl R~t1in11w#ts: Q,u,1#)' ~fan Dtstjn(New YOJ.'t: Oot'Jtt lk\.l!JIC'
Publisbitig.1989), pp. 17- 18.
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptw Six
209
,. TABLE 6-1 PIECES Classification of System Requirements
Nonfunctional
Requirement Type
Peoormanai
'
Explanation
Performance requirement$ repl'9sent the performance the system is required b exhibil to meet
lhe neods of u,en.
• What is lhe acaipioble lhrooghp<i rai<>J
• What is lhe acaipioble response timef
lnfoonation
Information requirernenb repre>ent the information that is pertinent lo the users in terms of
content, timeliness, accuracy, and format.
• What are the nea>'5ary inplll, and 001put,J When m"'1 ihey happenf
• What is lhe required data lo be slored'?
• How a..irrent must the information bef
• What are the interfaces to external systamsJ
ro>l10r11)'
Economy requiremenb repre,ent the need for lhe ,y,Jom lo reduce 0001' or increase profib.
•
•
•
•
Control (and security)
What are the areo, ol lhe sy,lom where cx,.1, m"'1 be reduaid'?
How much ,hoold 0001' be nduced or profit, be increowd'?
What are the budgelory limibf
What is lhe timetable for del'Olopmon~
Control requirements representtle en\llronment in which the system must operate, as well
a, the type ond degree ol ,ecurity lhat mu,1 be provided.
• Must acceu lo lhe ,y,19m orinfonnation beoonirol edf
• What are the privacy requirO'llOrllsf
• Doe, the criticality of lhe dat, nea>'5ilate lhe need k>r special handling (backup,, off-silo
,torage, e1t.Jol the darof
Efficiency
Efficiency requiremont, represent the ,y,Jom'• ability lo produce 001put, with minimal W<ISio.
• Are there duplicate straps in the process that must be eliminatadf
• Are there 'MJYS lo Rlduce ~ste in the way the system uses it resourcest
Service
\..
Service requirement, repre,enlneeds in order for the ,y,Jom lo be reliable, flexible, and
expandable.
• Who will use the ,y,tem, ond where an, lhey locatedf
• Wil there be differenl lypoo of u,enf
• What are the approprialo human facloBf
• Whd training devices and training materials are to be included in the systemt
• What training device, ond lroining malarial, are lo be developed ond mainloined ,eparaioly
from lhe ,y>tem, such a, ,ta rd-alone oomputer-b°'ed lraining (CBT)
program$ or databasest
• What are the reliabilily/ CMliabilily requiremenbf
• How "1oul d lh e •Y' l9m be packaged ond di ,tributed'?
• What documentation is requ:redf
,
210
Part 1wo
Systoms Analysis Methods
'
TA a LE 6 - 2 Relative Coasts of Fixing an Errar
Phase in which
Error Discovered
Requirement$
Do,ign
Coding
Development Tooting
Accepronco Tooting
Operation
Cost Ratio
1
3-6
10
15-40
30-70
40-1 ,000
software development projects to detennlne the costs of errors in requirements that
Weretl' t discovered until later in the deveJopm ent proces.,.
B.1Sed on Boehm's findlngs, an erroneous requirement dut goes tmdetected and unfixed until the opention ph.'l.Se nuy C06t t ,000 times m o re than Jt wou ld if ir wete de
tected and fixed In the requlrements phase.Therefore, h1 defining >)'Siem requirements,
it Is critical that they meet the following criterL1:
requlreme11ts are 11ot conf Uctlng or ambiguous.
Complete- T he reqttlrements describe all possible system Inputs and
Co·11sf.ste1it- 1l1e
responses.
Feasible- The requlremen1s can be satisfied based on the a"-ailable resources
and constraints (feaslbillry analysis Is covered In a,apter 11).
Required- TI, e requirements are truly needed an d fulfill the p urpose of the
system.
Accu.rate- T he requirements are Slated correctly.
Traceable- Toe requirements dhectly map to the functions and features of
the system.
Verifiable- Toe requirements are defined so that they can be demonstr.ued
d uring testing.
Tills can be a tlme-consumlng, dlfflct~t, and frustrating process that ofte11 leads org.1n izatlons and lndl:viduals ro tal:e sh or tcuts to save time and money. But tllls !hortslgbtedness often leads to the problems mentioned before. Now that we understand
our goal, lets look at che ptOCe.$.
The Process of Requirements Discovery
111e process of requlremenrs discovery consists of the following acthities:
Problem discovery and analysis.
Req,t!rements discovery.
Documenth1g and analyzlo;! requirements.
Requirements management
Let's now ex.amine each one of these actlvitles In detail.
>
Problem Discovery and Analysis
As prevJousJy stated, requirements solve problems. For systems analysts to be successM, they must be skilled h1 the actl,ity of problem analysis. To fully under,tand
problem ai1..1lysls, let•s use the fcllowlng example: A mother takes her yow1g daltylter
to the doctor because the chlld Is ill.T he first thing the doctor tries to do Is Identify
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptw Six
211
the problem.111e child h.as an earache, a fever, and a runny nose. Are these the prob.
lems? TI1e mother has been giving the chJld pain medJcine to ease the pain, but
the chUd h.as not gotten better. It turns out the mother is treating the ~·mptoms and
11ot the real problem. Forttmately, the doctor ls trained to analyze further. After examlolng the dilld, the doctor has concluded that the chlld has an ear Infection,
whld1 is the root cause of the dlild's symptoms. J\ow that the problem l1as been
identified and analyzed, ft ls time for the doctor to recommend a cure (solu tion).
NormaUy, an antibiotic ls prescribed to cttre an ear lofectlon, but in order to do that,
the doctor first needs to determine lf there are any constraints on the medicine that
he can prescribe. How old ls the chlld, and how much does she weigh? Is the dilld
allergic to any medJcatlons? Can she swallow pills? Once these constraints are
known, a prescription can be generated. Systems analysts use the same problemsol\oiog process as a doctor uses, but instead of diagnosing medical problems they
diagnose system problems.
One of the most common mistakes inexperienced $)'stems analysts make when
trying to analyze problems is Identifying a symptom as a problem. As a res,dt, they
may design and Implement a solution that more than likely doesn't solve the real
p roblem or that may cause new problems. A popuL1r tool used by development teams
to identify, :inalyze, :ind solve p roblems is an Ishikawa. d.l..1.~.m. The fish.bone.
1Sblk3wa diagram a
shaped diagram is the bralnchlld of Kaoru Ishikawa, who pioneered quality manage- graphical tool used to identify,
ment processes In the Kawasaki shJpyards of Japan and, In the process, became one explore, and depict problems
and the causes and e~cts of
of the founding fathers of modem management
1hose problems. It is often reDrawing the flshbone diagram begins with the name of d,e problem of Interest et~ ferred to as a C8IJS9.Mld-ct
tered at the right of the diagram (or the fish~ head).The possible causes of d,e problem dagam or a f#!ono diagam
are lhen drawn as bo1,es off the 111ain backbo·,w, each on an arrow pointing to the (because it resenbles the
bacl:bone.1)•plcall)', these "bones· are labeled as fotu basic categories: materials, ma- skeleton of a fish).
dili1es, manpower, and methods (the four ,_Is) . Other names can be used to suit the
problem at hand. Alternative or additional categories lnclude places, procedures, policies, md people (the four Ps) or sum,undlogs, suppUer,, systems, and skills (the four Ss).
The key is to have three to six main categories that encompass all possible areas of causes. Bn.lnstormlng techniques (defined farer In the chapter) are commonly
performed to add causes to the main bones. Whett the braJnstonnJng is complete,
the flshbone depicts a complete picture of all the posslbllltles about what could be
the root cause for the desJgnated p roblem. TI1e devtlopmet1t team can then use the
diagram to decide and agree 0 11 wh.at the most likely causes of the problem are and
how they shOldd be acted on. Figure 6-1 is an example of a fishbone diagram
_
-Mernoer unriapp1ness •
~Fnane1a1 _
N04JJIOmaDc
oe1a11t eo1uaon
~
_ _ 1n, ume1ent
proo1erns
B'lroroement
IOOCOSlly
, . No rern1naere
w.arn1ng customers
~
~ N o progress _ _
tract<ll'lg
lnoentlVM
Laekot
-B'lroroernent ~
- - PollCle.s
1naaequate
~
C- ·- - - - - - - - - F I G U R E 6 • 1 Sample Fishbone Diagram
)
212
Part 1wo
Systoms Analysis Methods
depicting the SoundStage problem of members defaulting on contracts. In the diagram, notice tliat the problem to be solved is in the box at the far right. The five
areas thar have been ldentlfled as categories of causes (People-?ttembers, r.tethods,
Contracts, ,_laterials, and Policies) are listed In boxes above and below the
fish's skeleton and connected by arrows (bones) poh1tlng to the fish's backbon e.111e
actual causes of the problem for each cat egory are depicted as arrows pointing to
the category arrow (bone).
>
fact-flnd.it1g the formal
process of using research,
meetings, inte'Views, questionnaires, sampling, and
other techniques to collect
information about system
proo1ems, requirements, ana
preferences. It is also called
inbrmation gath9ring or data
coH9c1m.
Requirements Discovery
Gtven an understanding of problems, the systems analyst cut start to define requirements. For today's systems analysts to be successful In defitl.ing system requirements,
they must be skilled in effectl..-e metl1ods for gathering informatlon- fact-tlndlng.
Fact-fhtdiug Is a tedmlque that Is used across the enthe developmetll cyde, but it is
extremely critical h1 the requlrements analysis pbase. Once fact-finding h.as been completed, tools such as use cases, data models, process models, and object models wlU
be used to document facts, and condusJons wUJ be draw11 from the facts. You will
learn about these tools and ho\\· to dOCltment requirements dert,--ed from fact.finding
u1 subsequent chapters of th.ls textbook.
Facts are in the domain of the business application and its end users.Thertfore,
the analyst must collect those &cts In order to effectively apply the documentation
tools and technlques. During Sj'stems analysis pbases, the analyst learns abo<K the
,"'OC:lbutary, problems, opportunities, constraints, requfremet1ts, an d priorities of a
business an d a system.
What types of facts must be coUected? It wot~d certainly be benetlcL1l If we had
a framework to help us determine what facts need to be collected, no matter what
project we are working 011. Fomm.ateJy, we have such a f.ramewodc As It turns out, the
facts that describe any information system also correspond nlcely with the building
blocks hlghlighted on the chapter home page. Notice tl1at fact.finding tedmlques are
used In the early systems development phases to Identify h1formation, functional, and
communlcatlon scopes and visions, as well as to identify business knowledge prcce.s.,,
and communlcatlon requ.frements for the system .
>
Documenting and Analyzing Requirements
When the systems analyst Is pe,forming fact.finding activities, It is Important tltat the
.1.n.'llyst assemble or dOClunenr the g2dtered lnfonn:ltion (or
war
draft ,.oqulwn1q11/$) In ,n
organized, understandable, and meaningful
These initial documents wlU provide
direction for the modeling techniques the systems analyst wlU use to analyze the requirements and determine the correct requirements for the project. Once those have
been ldentltled, the systems analyst formalizes the requlremetlls by presenth1g them
in a docttment tl1..1t will be re"iewed and approved by the users.
Documenting the Draft Requirements Systems analysts use various roots ro document thelr initial findings In cltaft form. They write use cases to describe the system
functions from tl1e external users' perspective and in a manner and terminology tl1e
users w1derstand. Declsf.011 tables are used to dOCltment an organlzatio11's complex
business policies and dedsion-making rules, and requ.lretnents tables are used ro document each specific requirement Each of tl1ese roots is examined in more detail L1ter
h1 the chapter.
Anatyzing Requirements More often than not, fact-tlndh1g activities produce
requirements that are lo conflict witl1 one another.1bls Is because requirements are
solicited from many different sources and ead1 person has bis or her own oplnloos
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptw Six
213
and desires for the functionality and features of the new system. The goal of the
requirements analysis activity ls to discover and re.solve the problems with the
requirements and reach agreement on any modifications to satisfy the stakeholders.
The proces., ls concerned with the .. lnltial" requirements gathered from the stakehoJders.These requirements are usually Incomplete and documented in an informal
way in instruments such as use cases, tables, and reports. The fOCllS at dlis stage ls on
reachJog agreement on the stakeholder's needs~In other words, the ai1..1lysis should
aOS\'let the question, '1)o we ha,--e the right system requirements for the project.?•
Inevitably, the draft reqttlrements contain many problems, such as:
blissing requirements
Conflicting reqtdrements
Infeasible requirements
o,--erlapplng requ.frements
Ambiguous requirements
The.se types of requirements problems are very common in many of the requirement
documents written today. If left unresolved, they can be extremely costly to fix later
In the development cycle.
It w:is pre"iot1sly mentioned that stakeholders should agree on the resulting &)'S
tern requirements-thus there is an Inevitable negotiation process that ex.1sts among
staktholders during analysis. If m,dtlple stakeholders subndt reqturements that are In
conflict with each other or lf the proposed requirements are roo ambitious, the stakel10Jders must negotiate, oftet1 under the guidance of the ~tem.s analyst, ro agree on
any modifications or simplifications ro the system requ.Irements. They also must agree
on the crftlcallty and prlorfry of the requirements. 111.is is crucial ro ensure the success
of the development effort.
Toe fact-finding and reqtdremet1ts analysis acthities are very closely assocL11ed
with each other and ln fact: are often interwoven. If reqttlrements discovered during
tl1e fact-finding process are found to be problematic, tl1e analyst may go ahead and
perfonn analysis actl'\oitles on the select Items it1 order to resolve the problems before
continuing ro eUdr addJtlonal ~tern needs and desires.
This chapter foctrses primarily on tl,e business side of requlremet1ts, or, In other
words, the logical reqttlrements, bur Jr is important to 11ote rhar addltlonal technical
requirements exist that are physical In nature. Examples of technical requlrements h,
clude specifying a req,ured software package or hardware platform. These types of
requirements wUI be discussed In depth In Chapter 11.
Pormallzlng Requirements syscem reqturemencs ue usually docttruenced In a formal way to communicate d1e requiremet1ts ro the key stakeholders of the system.1b.ls
document serves as the contract between the system owners and the development ream on whar Is goh1g ro be pro"ided it1 renns of a new ~·stem. Thus, ft may go
through many revisions and re'\oiews before everyone agrees and authorizes Its conret1ts.
There is 110 standard name or format for tllls document In fact, mai1y organ.izatlons
use dlfferenr names such as requirements statement, requirements spec.Jflcation,
requirements defhlitlon, fw1ctlonal speciflcatlon, and the like, and the fonnat Is usually tailored ro d1e organization's needs. Companies that pro"ide Information systems
and software ro the U.S. government must use tl1e format and naming conventions
specified h1 tl,e governmet1t's published standards dccwnent MIWTD498.' Many orgatl.i1atlons have created tl1eir own standards adapted from ,_UlrS1D-498 because of
Its thoroughness and because rnany people are already familiar with It. In this book
we wUJ use the term requirements defio.ltion document, and Agure 6-2 pro"ides
a sample outline of one. Please note that this documet1t will be consolidated with
11\LIL.SrJ)..(98 #11 llCLlld.:i:td that tndpJ OODSrD-2167A iLlld 00J).Sfl).793SA to dc£1t1c- 11 lid.of!lelivitio 11t1d docu.ll)C'.~
talion -.iitable for- the ~loptndll d both '111'.-i:1.J)OA ~il..lld 11u!Olnlkd ibfottnllliob ~ctn,.
requiremeot! defitlitioo
documeot a formal document that comrrunicates the
requirements of a proposed
system to key S1akeholders
and serves as a contract
for the systems project. Synonyms include r.iqu irements
S1atement, requ rements
specification, and functional
specification.
2 14
Part 1wo
Systoms Analysis Methods
FIGURE 6 - 2
REQUREMENTS OEflNITION DOCUMENT
1. Introduction
Sample Requirements Definition
Outline
1.1. Pupose
1.2. Backgto(lld
1.3. Scope
1.4. Definitions, Acronyms, ard.A.bbreviations
1.5. References
2. General ~oject Description
2.1. Functional Requirements
3. Requirements and Constraints
3.1. Functional Requirements
3.2. Nom.nctional Requirements
4. Con:lusion
4.1. OUtstarding Issues
f.ppendix(optional)
other project lnforlillltlon to form the reqttlremenrs statement, wbid1 is the firul deliverable of the requirements analysis phase. A requirements definition document
should consist of the following:
The ftmctlons and services the ~·stem should provide.
Nonfunctional requlremen1s, induding the ~·stem's features, d1..1rncterlstlcs,
and attributes.
The constraints, wbid1 restrict the development of the system or lmder
whlch the system must operate.
Information about other systems wfth wll.ich the system must interface.
Who will read the requlremenrs definldon document? 1bls document ls probably
the most widely read and referenced document of all the project documet1tatlon.
Systetn owners and users use It 10 specify their requlrements and any changes that may
arise. ,_lai1..1gers use it ro prepare project pt.uu and estimates, and developers use it to
understand what is required and to de,'dop tests to validate the system. With this In
mind, it ls important to note that requirements are read more often than they are written. Therefore, taking the time to write thetn correctly, concisely, and dearly no, only
will sa,--e time in tenns of the schedule but ls also more cost-efficient and reducts the
risk of costly requirements errors. Perfonnlng requirements validation, therefore, is a
necessary step toward acble,,ing that goal . Requlrements validation ls perfonned on a tlnal draft of the requlrements definition document after all Input has been solicited from
the system owners and users.The purpose of this actfvJty is for the systems analyst to
ensure the reqttlremet1ts are written correctly. Examples of errors the systems aaalyst
mlg)lt find are:
System models tl1at contain errors.
Typographlcal or grammatical errors.
Conflicting requlretllents.
Ambiguous or poorly worded req,tlremenrs.
L,ck of conformance to quality standards req,t!red for the document
>
Requirements Management
Over the lifetime of the projec1 ft ls very common for new requirements to emerge
and existing requfremet1ts to cb.ange after a requirements definition document has
beet1 approved. Some stud.Jes have shown that over the life of a project as much as
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
50 percet1t or more of the requirements will dw1ge before the system ls put Into prod uction. Obviously, this can be a major headache for the development team. To help
alleviate the many problems associated with changing requlremet1ts, ft ls necessary to
perform requlremeitts m.1Jugerueut. Reqttlrements management encompasses the
policies, procedures, and processes that govern how a change to a requfremet1t ls
handled. In other words, it specifies how a change request should be submitted, how
it ls analyzed for Impact to scope, schedt~e, and cost, how It is approved or rejected,
and bow the change ls implemented If approved.
( Fact-Finding Techniques
In this section we present seven common fact-flndtng teduliques:
Sampling of existing documetllation, forms, and databases.
Research and site visits.
Observation of the work en'\oironment.
Questionnaires.
lnteniews.
rrototyptng.
Joint requlremetlls planning.
Alt analyst usually applies several of these techniques d uring a single systems project.To be able to select the most sultable technique for use lo any given sltuatlon,
systems analysts need to learn the advantages and disad,-antages of each of the fact.
finding techniques.
fact-Finding Ethics During fact-flndtng, systems analysts often come acros., or analyze lnformation that ls set1SJttve in nature. It could be a file of an aerospace compatlf'S prlcing structure for a contract bld or e,--en employee profiles, induding
salaries, performance history, medical history, and career pL1ns. A11..1lysts must take
greai care to protect the security and privacy of"'"! facts or daia with whldt they
have been etttrusted. Matty people and org,1nlzations in this hlgbly competitive atmosphere are looking for an .. edge" to get ahead. Careless $)'stem analysts who leave
sensltlve documei1ts in pL1in view on their desks, or publicly discuss sensJtive data
could cause great harm to the organization or to lndtvJduals. If such data should fall
into the wrong people's bands, dte systems analyst m,y Jose the respect, crediblUty, or
confidence of users and management. In some cases, dte ailalyst '\\"'Ould be responsible
for the Invasion of a per30n's p.riva.cy and could be liable.
btost corporations make every effort to ensure they conduct business In ai1 ethical
manner because the L1ws may reqttlre them to. There have been many cases where corporadons have lttctUred heavy fines for not conducting business properly. To this end,
many corporatio11S reqttlre that their employees attend annual training seminars on
company ethics, and they reinforce the leamlng by displaying banners or signs titat
conttln the company's code of conduct and ethics statemei1ts throughout the workplace In hlghl)' visible locations. The company's ethlcs policies may be ht a hard.copy
format that ls distributed to all employees, or titey may be on dte company's Web
pages, making them easily accesslble to employees no matter where they are currently
located. Ethics policies document expected and required behavior. Violations of these
policies could lead to dlsclpllttary action or even termination. Ethlcs play a crucial role
in fact.finding.
Sampling of Existing Documentation, Forms, and Files
When studying :u1 existing system, systems analysts revelop a pretty good feel for the
system by studying existing documentation, forms, and flies. A good analyst always
knows to get facts first from ex.lstlng documentation rather thatt from people.
d,aptor Six
21S
requiremeot!
maoagemeot the process
of managing change to the
requirements.
216
Part 1wo
Systoms Analysis Methods
Collecting facts from Existing Documentation What kind of documents can
teach you about a ~tem?The fi rst document the analyst may wish to seek our is the
organizatio11 chart. Alt organ.ization chart serves to Identify key individual owners and
users for a project and their reporting relationships. The analyst may also want ro
trace the hlstory tl1at Jed to the project. To accomplish thls, the analyst shot~d collect
and review documet1ts that descrlbe the problem .These indude:
Interoffice memoranda, studies, minutes, suggestion box 11otes, customer complaints, and reports that document the problem area.
Accotmtlng records, perfonnance reviews, work measurement rel-iews, and
other schedt~ed operating reports.
Information systems project requests-past and present.
In addition ro documents that descrlbe the problem, there are usually documents thar
descrlbe the business function being stud.Jed or desJgned. These documents may
indude:
The company's mission statement and strategic plat1.
Formal objectives for the organlzatlon subunits belng studied.
Policy manuals t11at may place constraints on any proposed system.
:standard operattog proced1.1res (.!SUt'S), Job outltoes, or task tnstrucuons for
spedflc day~o-day operations.
Completed fonns that represent actual transactions at '\o-:trlous points In the
processing cyde.
Samples of manual and computerized databases.
Samples of manual an d computerized scteetlS and reports.
Also, analysts often check for documentation of previous system studies and designs performed by Conner systems analysts and consultants. 'This documentation may lndude:
Various types of flowcharts and diagrams.
Project dJctlonarles or reposltorles
DesJgn dOCltmentation, such as lnputs, outp uts, and databases.
Program docttmentatlon .
Computer operations manu.als and training manuals.
All documet1tatlon collected should be analyzed to determine whether or not the loformation is nurenr. Outdated d0Cltmentatio11 should not be cllscatded~ l1owe,--er, analysts should keep in mlnd that additional fact-finding wlU be needed to verify or
update the facts collected. W11.-. Is tl,e analyst looking for In all this material? Things
that can be e:leaned from these dOCltments lndude:
The symptoms and (possibly) causes of the problem .
What persons in the organization h.ave an understanding of the problem.
The business functio11S that support the present system.
The type of data that needs to be collected and reported by the system.
Things ln the documentation that the analyst: does 11ot w1derstand and so
need to be covered in interviews.
sampllilg th• process of
collecting a representative
sample of dooJments, forms,
and records.
Document and File Sampling Techniques Because it would be impractical to srudy
every occurrence of every form or record in a file or database, system analysts norm.ally
use sampllog techniques to get a large-enough cros., section to determine what can
happen In the system. The systems analyst should seek to sample enough forms to represent d,e full nature and complexity of the data. Experienced analysts avoid the pJtfaJJs
of sampling blank fonns-blanl< forms tell little about how the form Is actually used,
when it ls 11ot used, or how it ls often misused. Whet1 srudylng docttments or records
from a database table, analysts shot~d Sl\ldy enough samples to identify all tl,e possible
processing condJtlo11S and exceptions. Statistical sampling technlques can be used to
determine lf d1e sample sJze is L't!'ge enough to be representative of the total population
of records or doctunents.
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
r
d,aptor Six
217
TA II LE 6 • 3 Partial Table of Certainty Factors
Desired Certainty
Certainty factor
95%
1.960
1.645
1.281
90
80
There are many sampling issues and factors, and tllis is a good reason for taking
an introductory Slatistlcs course. One simple and reUable formula for determitling
sample size ls
Sample size
=0.25 X (Certainty factor/Acceptable error)'
Toe certainty factor is a value that can simply be looked up In statlstlcal tables
based on the deslred certainty that the sample selected will be represetllatlve of the
total popufatlon. See T.,ble 6-3 for a partial example.
suppose an analyst wants to be 90-percenr certatn that a sample of mvotces Will
conttln no unsampled variations. TI1e sample size, S~ is calculated as follows:
SS = 0.25(1.645/0.10)2 = 68
Toe analyst will need to sample 68 Invoices to get the deslred accuracy. If a higher
level of certainty ls desired, a L1rger number of invoices are needed.
If the analyst knows from experience that I In e;uy 10 Invoices varies from the
norm, then he or she can replace the heuristic 0.25 with p(l - p) where p Is the proportion of it1v0Jces with variances:
SS = p(l - PX!.645/0. 10)2
By ush1g this form,tla, the analyst can reduce the number of samples requlred to
get the desired accuracy:
SS = 0.10(1 - O.IOXt.645/0. 10)2
= 25
How are the 25 lnvolces chosen? Two commonfy• used sampling techniques are
randomization and stratificatio11. Randomization inToJ,-es randomly, or without concen1, selecting sample data.Therefore, we Just randomly choose 25 lnvolces based on
tl1e sample size calcttlated above. Stratification is a thoughtful and systematic approach aimed at reduch1g the "-arlance of the sample data. For computerJzed files,
stratlflcatlon sampling can be executed by wrlting t simple program. For lnstance,
suppose our invoices are In a database that has a volume of approximately 250,000
invoices. Recall that our sample sJze needs to include 25 in,-oJces. \X'e wJU simply
write a program tl1at prints every I O,OOOth record ( = 250,000/25). For manual files
and documents, we couJd exea1te a sJmllar sd1eme.
>
Research and Site Visits
A second fact.finding technique Is thoroughly researdling the problem domain. Most
problems are not completely wllque. Other people have solved tl,em before us. Many
times organJzations contact or perform site '\oisJts with comparties they know have
previously experienced sirulLu problems. If these companies are •willing to share;
valuable Information can be obtained tl1.1t may save tremendous time and cost in the
development process.
Computer trade joun1.1Js and reference books are a good source of information.
They can provide lnfonnation on how others have solved shn.lL1r problems. With
recent ad'\o"3J.lces h1 cyberspace, analysts rarely have to leave tl1eir desks to do reseateh.
raodomizatioo a sampling
technique characterized by
having no predetermined
pottem or pion br 3electing
sample data.
stratification a systematic
sampling techni~ue that
attempts to redLce the variance of estimates b'f spreading out the samplin~for
example, choosng documents
or records b'f brmul~and
by c!/Oiding very high or very
low estimates.
2 18
Part 1wo
Systoms Analysis Methods
Exploring the Internet and intra.net via personal computer can provJde lmmeasurable
amow1ts of informatlo11.
A slmlL1r type of research iovolves >isltlng other companies or departments that
have addressed similar problems. ~tembershlps In professJonal societies such as the
Association for Information Technology Professionals (AlTP) or AssodatJon for J.n..
fonnatlon Systems (AIS), among others, can provide a network of useful contacts.
>
Observation of the Work Environment
Observation ls one of the most effective data<ollectlon techniques for learning abottt
obsenatioo a fact.finding
a ~·stem. Observation involves the systems analyst becoming an observer of people
technique wh,rein the eystems analyst Either partici·
and actlvitles In order to lean1 ibout the ~·stem. Th.ls technique ls oftet1 used when
the validJty of data coUected tluough other methods ls ht question or when the complexity of certain aspects of the system prevei1ts a clear explanation by the end users.
pates in or wa-.c.hes a person
perform ac.tivites to learn
about the syst~m.
Collecting Facts by Observing People at Work Even with a well-concclved
observation plan, tl,e systems analyst ls not assured tl1at fact.tlndlng wlll be successful.
11,e following story, wlllch appears In a book by Gerald M. Weltme,g called Ret/1'11klng Sys-tP'ttl.<' An.aly.«s and T>P.<':IJn, ei\o-P~c. 1Lc. :in P.ntP.tta inine }'Pt PTrP.IIP.nr PT:1mplP nf
some of the pitfalls of observao,n. 3
The Railroad Paradox
About thlrry miles from Go,ham aty Jay the commuter commwllty of Suburban.
town. Ead1 momlng, thousands of Sutburbanltes t ook the Central Railroad
to work In Gotham Oty. Ea.ch evening, Central Railroad returned them to thelr
waiting spouses, children, and dogs.
Suburbantown was a '\\'ealthy subwb, and many of the spouses liked to leave
the children and dogs and spend an evening in Gotham aty wlth thelr mates. They
preferred to precede their evenit1g of dinner and theater wJth browsing among
Gotham City's lush markets. But there was a problem. To allow time for proper
shopph,g, a Subwbanlte wotdd have to depart for Gotham Oty at 2:30 or 3:00 in
the afren.1oon. At that hour, no Central Railroad traitt stopped it1 Suburbantown.
Some Suburbartites 11oted that a Central train dkl pass through their Slatlon at
2:30, but dld not stop.11,ey decided to petltlon the railroad, asking that the train
be scheduled to stop at Subutbantown. They readily found supporters In thelr
door-to-door canvas.,. When the petition was malled, Jt contained 253 sJgna1ures.
About three weeks later, the petltio11 commlttee received the following tener
from thP. C'.t>ntf":11 R:tllrn!trl:
Dear Committee
Thank you for your continuing interest In Central Railroad operations. \X'e tal::e seriously our commitment to providing responsfve senice to all the people lfving
among our routes, and greatly appreciate feedback on all aspects of our busi.1es.,.
In response to your petition, our ctistomer service representative \oisJted the Suburba11tow11 Slation on tltree separate days, each time at 2:30 In tlte afrernoo11.
Although he obser,--ed with great care, on none of the three occasfons u-ere there
any passeugers 11.:oatt11,gfor a so·uthbou.,ut train.
We can only condude that there Is no real demand for a southhotmd stop at
2:30, and must therefore regretfully decline your petltlon.
Yours sit1cerely,
CttStomer Service Agent
Central Railroad
~ M. ~tib(tg.Rtlbinltins Sy1*'11UA1ulyd, and Dfstin., pp. 23-24. C.Opyri(tlt 4.'I 1988, 1982 byGdllli M.
~betg. llc-ptiru:ed t,' p(ttnsionof0olw1Rou,( PubJi$hills,353 W. 121h St.,N,:w·Yotk,NY 1001.i at2-62040:53/
800.J>M.J300KS,,..,..,.·.dohtthouSl'.~tn.). All tighu te.s(~ .
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
What are the lessons Jeamed form the story abo,-e? For one,it ls necessary rouse the
appropriate fact-finding technique for the problem a1hand. Observation, In thJs case,
was an Incorrect d1oice. Why would anyone be walling for a 2:30 train when all the
town's peopJe knew the train doesn't stop? A second lesson to be Jeamed ls to verlfy
fact.findh1g results wJth users. Based on the user feecback, you may discover that you
need to try other fact-finding tedmlques to gather addltlonal Information. Neve, Jump
to cet1dusJons.
Observation Advantages ancl Disadvantages Observation can be a very useful
and beneflcL1l fact-finding technique provided tl1at you have tl,e ability to obsen-e all
aspects of the work being performed by the users and tl1at tl,e work Is being performed In the usual matu1er. You should become aware of the pros and cons of the
tedll'Uque of observation. Ad-vantages and disad"-antages indude:
Advantages
Dita gathered based on observation
c:in be very reJJable. Sometimes,
observations are conducted to
Disadvai1tages
Because people usuallr feel uncomfortable when being watched, tl,ey
may unwittingly perform dlfferently
check the "-:illdlty of d.:it:1 obt:tlned
when being observed.
directly from indl>iduals.
The systems analyst Is able to see
exactly wbat Is being done. Complex
Toe work being obsen-ed may not
lnvolw the level of dlftlctdty or vo~
ume normally experienced during
tlut time period.
tasks are sometimes difficu.lt to
dearly explaln In words. Through
observation, the ~tem.s analyst can
idl'1ltify tasks that have been missed
or Inaccurately described by otl1er
fact-finding techniques. Also, tl,e
analyst can obtain data describing
the physical emironmetll of the
task (e.g., physical layout, traftlc,
lighting, noise level).
Some systems activities m.1)' take
place ac odd times, causing a sdJedullng incon,--enlence for the systems
anal)st.
Toe usks being ooserved are subject
to '\<'ariOltS types of lnterruptlons.
Some tasks may not always be per-
Observation is relatively inexpetlSJve
formed In the manner In whld,
they are obsen-ed by the systems
analyst. For example, tl,e systems
compared with other fact-finding
analyst mlght ha,--e obser,--ed l1ow a
teduliques. Other cechnlques usu-
company fllled several customer
ally require substantL1lly more
employee release time and copying
orders. However, the procedures
expenses.
Observation allows the ~terns
have been d1e seeps used co fill a
analyst to do work measurements.
Guicleline1 for Observation
the s~'Stems ai1..1lyst observed may
numl:<'r of regular customer orders.
If any of those orders had been
specul orders (e.g., an order for
good, not normally kept in stock),
the s~'Stems ai1..1lyst woldd have
obseived a different set of procedures being executed.
If people have beetl performing
tasks ht a manner that vioL1ces
stan<brd operating procedures,
they may temporarily perform
their jobs correctly while you are
observing tl1em. In other words,
people may let you see what they
want you to see.
How does the ~·stems ai1alyst obtain facts through
observatlo11? Does one simply arrive at the observation site and begin recording
d,aptw Six
219
220
Part 1wo
Systoms Analysis Methods
everything that's viewed? No. 1,fud1 preparation should take place in advance. TI1e
analyst must determ.Jne l1ow data will actually be captured. Will ft be necessary
to have special forms on which to qulckly record data? Will the lndMduals being
observed be bothered by h.avlng someone watd1 and record their actions? When
are the low, normal, and peak periods of operatio ns for the task to be observed?
work samplog a fact·
finding technicue that
irrvotves a larg9 number of
observations t:1.ken at random
intervals.
T he systems analyst must Identify the ideal time to o bserve a partlcttlar asp,ct of
the system.
An analyst should plan to o bserve a slte when there ls a typical workload. Once a
typical workload has been obs<rved, observations can be made d uring peak periods
to gather information for measuring the effects caused by the increased volume. As
part of the analyst's observation, he or she sl1ouJd obtain sampJes of dOCltmeuts or
forms used by those being observed.
T he sampJing techniques discussed earlier are also useful for observation . In tllis
case, the technique is called work sampllog, wherein a large number of o rnervations may be condu cted at random intervals.11lis technique ls Jess threatening to tl1e
people being observed because the obsen-atlon period is not continuous. When using
work sampling, an analyst needs to predefine the operations of the Job to be observed. A sample size t11ei1 needs ro be calculated as was done for document and file
sampling. The analyst sho ldd m:ike m.-1ny r.mdom ob6er~tio ns, belng cireful to o b
serve act:l\oitles at differet1t tlme.s of the day. By cow1th1g the number of occurrences of
ead1 operation during the observations, the analyst will get a feel for how employees
spend thelr days.
T he following guldellnes are key to honlng observation skills:
Determine the who, what, where, when, why, and how of the obsen-ation.
Obtain permission to observe from appropriate supenisors or managers.
Inform those who wUI be obser.-ed of the purpose of the obser.-atlon.
Keep a low profile.
Take 11otes during or Immediately following tl1e obsen-ation .
Review observation 11otes with appropriate individuals.
Don't Interrupt indJvJduals at work.
Don't focus h eavily on tri,ial activities.
Don't make assumptions.
Living the System In this type of observation tl,e systems analyst actl.-ely performs
the roJe of the user for a st1ort: period of time. 11lis is one of tl1e most effective ways
to team about problems and requlrements of the system. By filling the user's•stoes;
2 systems an.tlyst qulcldy gains: :Ul 2t)precl2tlo n for what the user experience$ 20d
what she or h e has to do to perform the Job. This type of role playing gives the sys.
terns analyst a Brst11..1nd edu cation in the business processes and functions, as '\\'ell as
the problems and challenges associated with them.
>
questioooaire a document
that allows the analyst to
collect inforrn&ion and
opinions from respondents.
Questionnaires
Anotl1er fact-findi ng technique ls cond ucting surveys through questio 111uires. 111e
document can be mass-produced and distributed to respondet1ts, who can then complete the questionnaire on their own tlme. Questionnaires allow tl1e analyst to collect
facts from a large number of people while maintaining uniform responses. When dealing with a large audience, no other fact-finding teclmlque can rabuL1te the same facts
as effidet1tly.
Collecting facts by Using Questionnaires Systems analysts l1..1ve often c:rltklzed
the use of questionnaires. ,_lany systems ai1..1lysts claim that the responses lack reliable
and useful lnformatlon. Nevertheless, questioru1..1lres can be an effective means of fact
gathering, and many of these critldsms can be anrlbuted to the inappropriate or
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptor Six
221
ineffectlve use of the questionnaires. Before using questJonnafres, an analyst should
unckrSland the pros and cons associated wlth their use:
Adv.lntages
,_lost questionnaires can be answered
qulcld)•. People can complete and
retltn1 que.stioru1..1lres at their
con,--enlence.
Q.lestionnalres are a rehtively
inexpetlSh-. means of gathering
data from a large number of Individuals.
Que.stio1u1..1lres allow indJ'\oiduals to
maintain anonymity. Therefore,
lndhiduals are more likely to prc»ide
the real facts, rather than telling you
what they think their boss would
wint them to.
Responses can be tahufated and
analyzed quicld)•.
Oisadva11tages
The number of respondents is
often low.
There's no guarantee that an incli,ich.tal will answer or expand on
all of the questions.
Quest!onnalres tend to be lnflexJ.
ble. There's no opportunlty for the
sy,tems analyst to obtain voluotl!)' lnfonnation from lndhiduals
or to reword questions that may
h..1Ye beett misinterpreted.
It'! not possible for the ~·stems
antlyst to observe and analyze
the respondes1t's body language.
There is no Immediate opportunity to darlfy a "-ague or incomplete answer to any question.
Good questionnaires are diftkult
to prepare.
Types of Questionnaires There are two formats for questionnaires: free fonnar and
fixed format Free-format questionnaires are des~ned ro allow the users to exercise more freedom or latitude In their answers to eadl. question.
Here are two exampJes of free-format questions:
W11ar reports do you curret1tly recetve and how are tJ1ey used?
Are there any problems with these reports (e.g., are they lnacnuare, Is there
lnsutlldent Information, or are they diftkult to read and/or use)? If so, please
explaln.
free-format
questioo.oai.tt a ques.
tionnaire desig1"'19d to offer the
respondent greiter latitude in
the answer. A question is
asked,andtherespondent
records the answer in the
space provided after the
question.
Ob,iously, responses to such questions may be dlftkult to tahufate. It is also possible thar d1e respondents•answers may nor match the questions asked. In order ro ensure useful responses in free-formar questionnaires, the analyst should phrase the
questions In simple sentences and 11ot use words- 5\lch as good- that can be interpreted diffes-.ntly by differetll respondeslls. Toe analj>t sho,dd also ask questions ti1.11
c:in be answered with three or fewer sentences. Otherwise, the questionnaire may
take up more time than the respondent is wUllng to sacrifice.
The second type of questionnaire is fixed-format.Fb:ed-format questionnaires
are more rigid, requiring that the user select an answer from a predefined set of possible answers. Gtven any question, the respondent mu.st d1oose from the available answers. This makes the results much easier to tabldare. On the other hand, the
respondent cuu1ot pro"ide addJtlonal lnformatlon thtt might prove valuable.
There are tivee types of fixed.format questions:
J. For 1uultrple-cboice quesffons, the respondent is givet1 se,-eral answers from
'\\tl.ich ro choose. The respondent should be told if more than one answer can
be selected. Some mtdtiple-d1oice questions allow for very brief free-fonnat
responses when none of the standard answers apply. Examples of m,dtiple-choice
fix:ed-formar questions are:
Do you feel that backorders occur too frequently?
OYES
ONO
Is the current accotlllts receh--able report thar you receive useful?
OYES
ONO
If no, please expL11n.
6.'"ed-for-mat
questioo.oai.tt a question.
naire containing questions
that require selecting an
answer from predefined
available resporses.
222
Part 1wo
Systoms Analysis Methods
2. For mt111g questions, the respondent is given a statement and asked ro use
supplied responses to stare an opinion. To pre,--enr bu.flt.in bias, there should be
an equal number of positive and negati,-. rntlngs.11,e following Is an example of
a rating fixed-fonnat question:
111e Implementation of quantity discotmts would cause an increase In customer
orders.
Cl Strongly agree
Cl Agree
Cl No opinion
Cl Disagree
Cl Strongly disagree
3, For m11klng qu.esttons, the respondent ls gtven se,--eral possible ai1SWers, wbid1
are robe ranked in order of preference or experiet1ce. An ex.ample of a ranking
ftxed-formar que.stio11 ls:
Rank the followlng trailSactloos according to the amount of time you spend
processing them:
_ _ _ _ new customer orders
order cancellations
_ _ _ _ order m od1.flcatlons
_ _ _ _ payments
Developing a Questionnaire Good questionnaires can be dJfflcult to develop. 111e
following procedure can prove helpful In developing an effective questionnaire:
I. Determine what facts and opinions must be collected and from whom you sl»<dd
get tl1em. If the number of people Is L,rge, consider using a smaller, randomly
selected group of respondents.
2. Based on the facts and opinions sought, determine whether free- or flxedformat questJ011s will produce the best answers. A combination format tl1at
permits optional free-format clarlflcation of fixed-fonnat responses ls often
used.
3, Write the questions. Examine tl1em for construction errors and possible mlsJnterpretatlons. lttake sure tl1at the questions don't reveal your personal bias or
opinlons. Edit the questions.
4. Test the questions on a small sample of respondents. If your respondents had
problems wJt11 them or lf the answers were not useful, edJt the questions.
5, Duplicate and dlstrtbuce thequesctonnaJ..re.
>
interview a fact.finding
technique whEreby the S'iS·
terns analyst collects informa.
tion from indiv duals through
face.to.face interaction.
Interviews
The personal Interview ls gei1erally recognized as the most important and most
often used fact-flndlng technique. Personal interviews ln\--olve soliciting requirements tluough direct, face-to-face interactio11. Interviewing can be used to ach.leve
any or all of the following goals: find facts, verify facts, cfarify facts, generate eotl1uslasm, get the end user 1t1,·o[ved, Identify requJrements, and solicit Ideas and
opinions. There are two roles assumed in an inter\-iew. The systems analyst Is the
111..tervleu,-er, responsible for organizing and conductlng the lntervJew. The system
user or $)'Stem owner is the l11.tervie1vee, wl10 ls asked to respond to a series of
questlons.
There may be one or more interviewers ancVor inteniewees. In other words, lnteniews may be conducted one-0n-0ne or many-t:o-many. Unfortw1ately, many systems
analysts are poor interviewers. In this section you wUJ Jearn how to conduct proper
intervJews.
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptw Six
223
Collecting Facts by Interviewing Users People are the most important element
of an Information system. r.tore t11an anythJng else, people wanr to be in on tilings.
No other fact-finding technique places as much emphasis on people as interviews. But people have different values, priorities, opinions, motl:vatlons, and
personalities. TI1erefore, to use the Interviewing technique, a systems analyst must
possess good human relations skills for deaUng effectively with different types of
people. As with other fact-findlng tedmlques, inter>iewlng Isn't the best method
for all situations. Interviewing has its advantages and disadvantages, which should
be weighed against ti1ose of other fact.finding techniques for every fact.finding
siruatlo11:
Adv.lotages
Interviews give the analyst an
opporrunlry ro motivate the
interviewee to respond freely and
opetlly to questions. By estabUshlng
rapport, the systems analyst Is able
to give the inteniewee a feeling of
acuveJy contnbuung to the systems
pto)ect.
Interviews allow the ~·stems analyst
to probe for more feedback from
die Interviewee.
Interviews permit the systems analyst to adapt or reword questions
for ead1 Individual.
Interviews give the analyst an
opportunity to observe the Interviewee's 11011vetbal communlcatlon. A good systems analyst may
be able to obtain Information by
obsen-ing the interviewee's body
movements and facial expressions
as well as by listening to verbal
repUes to questlo11s.
Disadvai1tages
lnterTlewlng Is a very tlmeconsumlng, and therefore a costly,
fact-finding approach.
Succ.-ss of hllerviews ls hlgllly
dependent on the systems analyst's
human relations skills.
1nten1eW1ng may be tmpracucal
due t •) the location of inten-iewees.
wistructuted interview
an interview that is conducted
with only a gen, ral goal or
subject in mind and 'Mth few,
if any, specific qJestions.
The interviewer counts on the
interviewee to pw ide a
framework and direct the
conversation.
lntetvlew Types and Techniques ntere are rwo types of Interviews, wtstrucrured
and structured. U1tstn1ctured interviews are characterized as Involving general
questions tl1..1t allow the interviewee to direct the conversation .11lis type of lnteniew
frequently gets off track, and the analyst must be prepared to redirect tl,e hllervlew structured interview an
back to tl1e main goal or subject. For this reason, unstructured interviews don't usu- interview in 'M'lich the interhas a specific set of
ally work well for ~·stems analysis and deslgit. Structured interviews ln,"'Olve the in- viewer
questions to asl: of the
ten-iewer asking speciflc questions designed to elicit speciflc lnfonnatlon from the interviewee.
interviewee. Depending on the lnterviewee•s responses, the lnterviewer will direct
addJtlonal questions to obtain clarification or amplification. Some of these questions
may be plaJ.u1ed and others spontaneous.
opeo.eoded question a
Unstructured lntervJews tend to involve asking open-ended questions. Such question that all~s the interquestions give the lnteniewees slgoiflcant latitude in tl1eir answers. Alt ex.ample of an viewee to respo1d in any WS!f
open-<,nded question is "Why are you dissatisfied with ti,e report of uncollectable that seems app1opriate.
accounts?" StrlK'tured inteniews tettd to tn,-otve asking more closed-ended questions
t11..1t are desJgned to elicit sl1on, direct: responses from t11e interviewee. Examples of cJosed.('oded question a
such questions are ..Are you recei"ing the report of uncollectable accow1ts on time?• question that restricts answers
and "Does the report of tmcollectable accow1ts conraln accurate lnformatlon?" Real- to either specific choices or
short, direct res,)onses.
istlcally, most questions fall between the two extremes.
224
Part 1wo
Systoms Analysis Method s
> How to Conduct an Interview
A systems analyst's success Is at least partially dependent 0 11 the abillty to hllerview.
A successful Interview wUJ imolve selecting appropriate Individuals to Interview,
preparing extensively for the Interview, conducting the hller>iew properly, aml fo~
lowing up on the interview. Here we examine each of these steps In more detail. Let's
assume that the analyst has ldutilled the need for an hllerview and has determined
exactly what kinds of facts and opinions are needed.
Select Interviewees The systems analyst should lnteniew the end users of the loformation system being studied. A forma l organlzatlon chart wUJ help identify d,ese
indJviduals and their responsibilities. The analyst sholdd attempt to learn as m ud1 as
possible about each indJ'\oidual prior to the Interview, such as the person's st.rengtlu,
fears, biases, an d motl'\o-atlons. The inteniew can then be geared to take the characterlstlcs of the lodtvJdual Into accotmr.
The analyst should make an appointment with the Interviewee and never Just
drop h1.The appointment should be llruited to somewhere between a half hour and
an hour.The higher the mai1..1gement level of the Interviewee, the less time should be
r.rhpciufpc1. If thp i n tP.tViPWPP ii;. :t rlPf'ir::tl, ~ i r P, nr h htP4'011!l f' WOf'l.Pf', thp :tn:dy.i.r
must get the supervisor's permission before scheduling the inteniew. It is also imponant to ensure that the location for the interview will be a"-aUable during the time
Jt is scheduled. Interviews should never be conducted ln the preset1ce of the analyst's
officemates or the interviewee's peers.
Preparatio11 ls the key to a successful inteniew. An Interviewee cu1 easily detect: when atl inteniewer ls unprepared ai1d may resent the
L1cl:: of preparation because ft wastes '\o-:tluable time. When the appolntmetlt ls made,
the lnteniewee should be 11otified about the subject of the lnteniew. To etlSltre tlut
all pertinent asp«ts of the subje.._"t are covered, the analyst: should prepare an l1itervleu1
gu.r.de. 111e Interview guide is a checklist of specific questions the int eniewer
will ask the lntervJewee. The Interview guide may also contain follow-up que.stlons
that will be asked only if the answers to otl1er questJons warrai1t tl1e additional answers. A sample hllerview gulde is presented In Figure 6-3. Notice that the agenda is
careMly lald out with the specillc time a llocated to ead1 question. Time should also
be reserved for ask.log follow-up questions and redfrectlng tl1e inteniew. Que.S-lons
should be carefully chosen and phrased. Most questions begin with the stan dard who,
what, when, where, why, and now much type of wordlng. The following types of
q 11P.«-lnns. s.hn111c1 hf, avoltwl:
Prepare for the Interview
Waded quesff-011s, such as "Do we ha,--e to have both of tl1e.se colunulS etl
tl1e report.?• 111e question conveys the inteniewee's personal opitlion on the
issue.
l.eading quesff-01JS, such as "You're nor going ro use this OPF.RATOR CODE,
are you?• The question leads the intervJewee to respond, .. No, of course nor,"
regardless of actual opinion.
Biased questions, sud1 as ~How many codes do we need for FOOD ClASSIFICATION In the INVENTORY FILE? I think 20 ought to cover It." These types
of biased questions wUJ lnrluence an lnteniewee.
Interviewers shotdd always avoid tbreatetli.ng or crftlcal questions. The purpose
of the Interview is to lnvestfgate, not to evaluate or crftldze. Additional guldellnes for
questions Include:
Use dear and concise langtiage.
Don't Include your opinion as part of the questio11.
Avoid long or complex questions.
Avoid threatening questions.
Don't use ..you• whei.1 you mean a group of people.
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
lntervieNeei
Janua,y 19, 2003
Tirrei
Place
Subject1
1 13:>P,M,
Time
1 to 2min,
22S
Jeff Bentle,,, Accounts Receivable Manager
Datt,
Allocated
d,aptw Six
Room 223, Admin. Bldg.
Clll'e'1t Credlt-Checijng Policy
Interviewer
Question or Objectlw
Interviewee
Resl)Onse
Ob)«tlve
Open the inteiview1
• Introduce ourset...'es.
• Thank Mr. Bentley for his valuable time.
• State the purpose o f the inteivie.v - to obtain an uiderstanding o f the
existing credit-checking policies,
Smin,
aue,-tion 1
What cond itions determine whether a rusto11er's order is cl)pr0ted for credit?
Follow-up
Smin,
aue,-tion t
What are the possib le decisions or actions that might be taken once these
conditions have been evaluated?
Follow-up
3 min,
aue,-tion 3
How a-e customers notified Yilhen credit is not cl)pr0ted for their order?
Follow-up
1 min,
1 min,
aue,-tion 4
A fter a new order is apprcwed fer credit and placed in the file containing ordeis
that ca, be filled, a rustomer might reQJest that a modificatio n be made to the
order. Would the order hove to go through credit cPP(OVal again if the rteW total
order cost e:xc«ds the original cost?
Follow-up
aue,-tion s
Who are the indt.'iduals who perform the credit checks?
Follow-up
1 to3 min,
aue,-tion 6
Milf I have permission to talk to those indivi,juals to lea-n specificalty hON they
cary out the credit<hecking process?
Follow-up
If soi When would be an appropriate time to meet w ith each o f them?
1 min,
Ob)«tlve
Conclude the intervie;,.vi
• Thank Mr, Bentley for his cooperation aid assure him that he \Mii be
recet.'ing a copy o f w hat transpired juring the intervie;,.v,
21 11inutes
Time allotted for questions and objectives
9 minutes
Time allotted for follo..v-up questions and redirection
30 11inutes
Time allotted for interview (1i30 p,m, - 2100 p,m,)
General Convncnts and Note,:
( F I G U RE 6 • 3
1;;ample Interview <.;uide
)
226
Part 1wo
Systoms Analysis Method s
Conduct the Interview Respect your inteniewee and bis or her time. Drtss to
match the lntervJewee. That generally means tl1at you will dress differently to interview managers tl1..1n you wUJ to lnterview workers on the loading dock. If the interview wlU be held In a meeting room other tl1an the inteniewee•s office, arrive early
to make sure lt Is set up appropriately.
Open the inteniew by thanking the Interviewee In ach--ance. State the purpose
and let1gth of the lnteniew and how the gathered data will be used.111et1 monitor the
time so you will keep your promise.
Ask follow-up questions. Probe untll you understand the system requirements.
Ask especially about exception conditions. As what-If questions, such as "What if tl,e
check doesn't clew.• or "What happens If a product Is not In stock?"
Listen d oseJy, observe the inteniewee, and take notes concerning both ,-erbal
and nonverbal responses from the inteniewee. Ir's ,--ery lmportant to keep the Interview on track; tllls meaJ.15 anticipating the need to adapt the lntervJew, lf necessary.
Questions can often be bypassed lf they have been answered earlier or they can be
deleted if detennlned to be irrelevant, based on pre"ious answers.
Here is a set of r ules tl1at an Interviewer sholdd follow:
Do
Dress appropriately.
Be courteous.
Ustet1 carefully.
tttaintain control of the Interview.
Probe.
Observe m:umerisms an d nonverbal
communication.
Be patient.
Keep the lnteniewee at ease.
tttaintain self-control.
Finish on time.
Avoid
Assuming an aJ.lSWer ls fl.nlshed or
leading nowhere.
Revealing verbal and 11on,--etbal
d ues.
Using jargon.
Revealing your personal biases.
Talking Instead of listening.
Assuming anything about the topic
or tl1e Interviewee.
Tape recording- a sign of poor
Ustenlng skills.
Conclude the lnteniew by expressing appreciation and p ro,i ding answers t•>any
questions posed by the lnteniewee.The conclusion is very important for maintaining
rapport and trust with the intecvlewee.
Follow Up on the Interview To help maintain good rapport an d trust with Interviewees, the inteniewer should send them a memo tl1at Slunmarizes the lnterview.
This memo shot~d renllnd the Interviewees of their contributions to the systems pro~
ect and a uow them the opporn1n 1ty to ctarlfy any nus1nterpretauoos that the inter·
viewer may have dertved during the lnteniew. ln acklltlon, the lnteniewees sl1ould be
given the opportunity to offer additional Information they may have faUed to bring
out during the interview.
Listening When most people talk about communication skills, they think of speaking and wrltlng. The skill of listening is rarely mentioned, but it may be the most imporcant skill during the lnter,·lewlng process. ln order to conduct a successful
interview, the lnteniewer must make a distinction between hearing and listenin.g:*To
hear ls to recognize tl1at someone is speaking, to listen ls to w1derstand what tl1e
speaker wants to communicate."'
\X'e have actually been conditioned most of our lives not to listen.Take, for example, how we can ignore our quarreUng brothers and sisters while we enjoy our
favorite CO or, as students, how we learn to study by blocking out distractions socb as
noisy roommates. \X'e have learned not to listen, but we can also learn how to listen
effectively and productively.
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptw Six
227
When working wJth users trying to soJ,-e thelr problems, analysts may find tl1..1t
getting the users to commwllcate can be difficult. The following guldellnes can help
open the lines of communlcatlon:
Approach the session wr.tb a positive attitude. The lnteniewer sho,dd make
the best of any situation, and look at lt as a fun, pleasurable experience.
Set the other perso1i at ease. Preset1tlng a 11.ice, cheerful attitude can heJp
the person reLu. 111e interviewer st1ouJd scart by talking about the perso11's
Interests or hobbles. Showing an Interest in the lnteniewee's personal life
sometimes can serve as an icebreaker and put the person more at ease.
Let the other perso11 know you are llste1il11g. 111e intervJewer should always
maintain eye contact when listening and use a response such as a head nod
or an ..uh-huh" to acknowledge what the person ls saylng. Good posture and
leaning forward wUI tell the speaker that the Interviewer Is really hllerested
In what the person Is saying.
Ask quesff.0·1,s. The inteniewer should ask questions to make sure he or she
dearly understands what the person Is saying or to clarify a point. 1bls wUI
show that the lnteniewer ls llstesllng; It wUI also gh-. the other person the
opportunity to expand on the answer.
Do11 't assu.n1e a11ytbt11g. One of the worst things an loteniewer can do is to
act as if he or she ls lo a hurry. For example, ll an loteniewer a~umes what
the other person ls going to say and cuts lo aOO fhlishes the sentence, he or
she will possibly miss what the person Intended to say and Irritate tl,e
speaker. Or If the speaker Is Interrupted becau,e the lnteniewer has already
beard the Information and belleves It Is not applicable to tl,e topic of the
lnteniew, a valuable piece of information may be missed. Don't assume anyth.lng! TV l1ost Art: UnkJener lean1ed this lesson on Ills popuL1r television
,how, Kids S~ the Darnedest Tbl11gs, whes, he asked a chUd a phllosoplllcal
questio11:
On my sl1ow I once had a child tell me he wanted to be ai1 alrllne pilot. I asked
blm what he'd do If all the engines stopped out over the Pacific Ocean. He said
"First I would tell everyone to fasten thelr seatbelts, and thes1 I'd find my parachute and Jump our.•
Wh.Jle the audience rocked wlth laughter, I kept my attention on the yotmg
rnai1 to see lf he was being a smart alee. The tears that sprang Into h.1s eyes alerted
me to hlsdiagrln more than anytlllng he could have sald,so I asked him why he'd
do sud1 a thing. His answer revealed the sound logic of a dilld: .. rm going for
gas, .. rm coming back!tts
Take tiotes. The process of taking notes serves two purposes. First, by jotting
down brief notes while the other person Is speaking, you give the person
the impression that what he or she h..,s to say is important enough to be
written down. Second, the notes help the lnteniewer remember the major
points of the meeting later.
Body Language and Proxemics What Is body hnguage, and why should a systems analyst care about It d uring the Interviewing po:>eess? Body language Is all the
1100-Yerbal lnfonnatlon being communicated by an lndlvidual. Body L,nguage ls a form
of 11onvetbal commwlicatio11 that we all use ai1d of whid1 we are usually w1..1ware.
Studles have determh,ed a startling fact: Of a person's total feellngs, only 7 percent
are rommun.lcated verbally (h1 words), whereas 38 J)(tcent are communicated by the
tone of voice used and 55 percesll are communicated by facial and body expressions.
If you only listen to someone's words, you are missing most of wh.at the person l1..1s
to sar
body language the
nonverbal information we
communicate.
228
Part 1wo
Systoms Analysis Methods
For dlls discussion, we will focus on just three aspects of body language: farul disclosure, eye contact, and posture. Paa.al dlsdosure means you can sometimes understand how a person feels by watchJog the expressions on bis or her face. ~lany
commo n emotio ns have easily recogil.izable facial expressJons associated witl1 them.
However, the face is one of the most controlled parts of the body. Some people who
are aware that their expressions often reveal wh.at they are thinking are very good at
disguising these expre~Jons.
Another fonn of non,-erbal communlcation is e)~ co11tact. Eye contact ls the least
controlled aspect of facial expressio11. Have you ever spoken to someone who will not
look directly at you? How did It make you feel? A continual lack of eye contact m1y Indicate uncertainty. A 11orm.1l gbnce ls usually from three to five seconds in Jengtli;
ho wever, direct-eye-contact time sho uJd Increase with distance. Analysts need to be
carefu.l nor to use excesst,--e eye contact: with users who seem tlveatened so that tl1ey
won't further Intimidate them. Direct eye contact: can cause strong feelings, tither
posltive or negative, ht otl1er people.
Posture ls the least controlled aspect of the body. As such, body posture holds a
wealth of lnformatlon for the astute analyst. t.tembers of a group who are In agreement tend to display the same posture. A good analyst: wUJ watch the audience for
changes In posture that could lndlcare ;uudety, dis:igreemenr, o r boredo m. An an:llyst
proxemics 1he relationship
between peope and the
space around them.
sho,dd normally maintain an •open· body position, signaling approachab!Uty, aocep,
tance, and receptlvenes.,. In spedal drcumscances, the analyst may choose to use a
confrontation angle of head-on or at a 90-degree angle to anotl1er person In order to
establish control and dominance.
In addition to the lnform1tlon communlcated by body L,nguage, lndlvldua!s also
commwt.icate via proxemics. Proxemics, the re.latlonshJp between people and tl1e
space arow1d tltem, is a factor In communications that can be controlled by the
knowledgeable analyst.
People still tend to be very terrltorlal about their space. Observe where your
classmates slr In one of your cotuses t11..1r does not ha,-e assigned seats. Or the next
time you are tn,-olved In a convtrsation wlth someone, dellberately move mudt d oser
or farther away from the person and see what happens. A good ai1..1lyst is aware of
four spatial zones:
lntlniate 20ne- doser than 1.5 feet
Person.a l zo·, ie- from 1.5 feet to 4 feet.
Social zone- from 4 feet ro 12 feet.
Public 2011e- beyond 12 feet.
Certain types of communications take place only ht some of these zones. For example, an analyst: conducts m~t httervJews with system users ht the personal rone.
But the ai1..1lyst: may need ro mo,·e back ro tlte soc.L1l zone if the user dispL1ys any signs
(body language) of being w1corufortable. Sometimes Increasing eye contact can make
up for a long distance that can't be changed. Many people use the fringes of the social
zone as a .. respect" distance.
\X'e l1..1ve examined some of tl1e htformal ways that people communicate tl1elr
feelings aitd reactions. A good analyst will use aU tlte h1fonnatlon available, not just the
wrltten or verbal commwt.icatietts of others.
>
Discovery Prototyping
Anotl1er type of fact-finding teclmlque ls prototyping. Prototyping was Introduced In
Chapter 3 for use In rapid appllcation development (RAD). As you shot~d recaD, tlte
concept behind prototyping ls bulldlng a small woddng model of the users' requirements or a proposed design for ,11 Informatlon system.1bls type of prototyping Is ust•
ally a design tedmlque, but the approad1 can be applied earlier In the system
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
development life cycle to perfonn fact.flndlng and requlrements analysis.11,e process
of buildlng a prototype for the purpose of ldet1tlfylng requlremei1ts Is referred to as
dl.scovery prototyping.
Dlsco,.. f)' prototyping is frequently applied to systems development projects, especially In cases whet-e tl,e developmet1t team Is having probletnS dellnlng the system
requirements. 111e philosophy ls that the users wUJ recognJze their requirements
when they see thet11. It ls Important that the prototype be developed qulddy so tl1at
lt can be ,tsed during tl,e developmet1t process. Usually, only the areas whet-e the requlrements are not dearly understood are prototyped. Tols means that a lot of desired
functionality may be left out and quality assurance may be Jgnored. Also, nonfunctional requirements such as performance and rellalility may be less stringent than
they would be for the final product. Tecbnologles other than the ones used for the
final software are frequently ,tsed to b,uld the dlscovery prototypes. 111 these cases,
tl1e prototypes are most likely dlscarded when the system is llnlshed. Thls "throwawa}~ approad1 ls primarily ,tsed to gatl1er l11formatlon and develop Ideas for tl,e system concept. ,_lany areas of a proposed system may not be dearly understood, or
some features may be a technlcal dl..11lenge for the developers. Creating discovery
prototypes etl..1bles the developers as well as the users to better understand and refine
d,aptw Six
229
discove,y prot0typitlg
the act of building a smallscale representative or
working model of the users'
requirements in order to
discover or verify those
requirements.
the lss\les ln'\--o(ved wlth deveJoplng the system.11l..ls techniqu e helps ru.lni..ru1ze the
risk of delivering a system tl1..1t doesn't meet tl1e user's needs or that can't fulfill the
tedll'Ucal requ.lrements.
Discovery prototyping has its advantages and disadvantages, which should
be weighed agalnst tl1ose of other fact.findlng techniques for every fact.finding
sJtuatlon:
Adv:ant..1ges
Allows users and developers to
experiment wlth the software and
develop an understanding of how
tl,e system ought work.
Alds in determining tl,e feasibility
and trsefulness of tl,e system before
high development costs are
incurred.
Serves as a training mechanism for
u..~rs.
Alds in b,uldlng system test plans
and scenarios to be ,tsed List in the
system testing proces.,.
May mlrdmlze the time spent on
fact-flndlng and help define more
stible and reliable requirements.
>
Disadvai1tages
Developers may need to be trained
In du prototyping approad1.
Users may develop unrealistic
expectations based on the performance, reliability, and features of
the prototype. Prototypes can only
slmu.lite system fw1ctlonaUty and
are incomplete In nature. Care must
be taket1 to educate tl1e users about
this ftct and not to mis.lead t11em.
Doing prototyping may extend the
de,-el)pment schedule and Increase
the development costs.
Joint Requirements Planning
,_I.any org.ul.izations are using the group work session as a substitute for numerous and
separate lnterv.iews. One ex.ample of the group " 'ork session approach is joint
requirements pfanoiog QRP), wherein hlghly structured group meetings are co,~
d ucted for the purpose of Identifying and analy7ing problems and defining systet11 requirements. Th.ls and slmJL1r techniques generally require extensive training to work
as lntended. Howe,--er, they can s.ignlfkantly decrease the time spent on fact-finding In
one or more phases of t11e life cyde.JRP ls becoming lncreasfr1gly common in systems
planning and systems analysis to obtain group consensus on probletnS, ob)ectl,..s, and
requirements. In this section, you wUJ lean1 about the participants of a JRP session
joint requiremeots
plaruliflg QRP) a process
whereby highly structured
group meetings are conducted
for the purpose :)f analyzing
problems and de fining
requirements.
230
Part 1wo
Systoms Analysis Methods
and their roles. \X'e wUJ also dlsctiss how to go about plannlng and conducth1g 1 JRP
session, the tools and techniques that are used during a JRP session, and the benefits
to be achieved through JRP.
JRP Participants Joint requirements planning sessions lndude a wide varltty of
participants and roles. Each participant is expected to attend and actively partldpate
for the entire JRP session. Let's examine ti,e dllferent types of Individuals hwolw,d In
a typical JRP session and their roles:
Spo11sor- A11y
successful JRP session reqttlres a single person, called the
sponsor, to serve as its champion. This person is normally an lndJ'\oidu.al
who is In top management (tJ.ot rr or IS management) and who has
authority that spans the different departments and users who are to be
Involved In the systems project. TI,e sponsor gives fld l support to the systems project by encouraging designated users to willingly and actively
participate In the JRP session. Recalling the • creeping commitment'
approad1 to systems development, ft is the sponsor (system owner) who
usually makes final dedsJons regarding the go or no-go direction of the
project.
The sponsor plays a ""klble role during a ]RP session by kicking off the
meeting by introducing the participants. Often, the sponsor will also make
dosh1g remarks for ti,e session. The sponsor also works dosely with the JRP
leader to plan the session by helph1g idet1tlf)• Individuals from the user rommwllty who shot~d attend and detennhllng ti,e time and location for the JRP
sessJon.
Facfiltator- JRP sessions involve a single indJ'\oidual who plays the role of the
leader or facilitator. The ]RP facilitator Is usu.Uy responsible for leading aU
sessJons that are heJd for a systems project. 11lis lndJvidual ls someone who
h ..,s excellent commwlicatio11 skills, posse~es the ability to negotiate and
resolve group conflicts, has a good knowledge of the b,tsiness, h.as strong
orga,llzational skills, is Impartial to decisions ti1at will be addressed, and does
not report to any of the ]RP session participants.
It is sometimes dlfflct~t to find an indMdual wlthh1 th.e company who
possesses all these traits. n1us, companies often must pro"ide extensJve JRP
trainlng or hire an expert irom outside the organization to fill tllis role. Many
systems ai1..1lysts are trained to become ]RP fadUtators.
The role of the JRP facilitator is to plan the JRP session, conduct the
sessJon, and follow through on the results. Durlng the session, the facilllator
ts responsible for leading the dlscusston, encouraging the auendees co
actively participate, resolving issue conflJcts t11..1t may arise, and ensuring t11..1t
ti,e goals and objectives of the meeting are fldfilled. It Is ti,e JRP facili tator's
responsibUlty to establish. the grow1d rules that will be followed durh1g t~e
meeting and ensure that the participants abJde by tl1ese rldes.
Users and 111a11.agers- JoiI:it requirements pL'Ul01ng Includes a number of
participants from the user and management sectors of an organization who
are gh-.n release time from their day~o-day jobs to devote ti,emselves to
active ln,"'Otvement In the JRP sessions. These participants are normaUy chosen by tl1e project sponsor, who must be careful to ensure that ead1 person
l1..1S tl1e business knowledW! to contribute during the fact-finding session!.
The project sponsor must exercise autl1orlty and encouragement to ensure
ti1at ti,ese h1dlvlduals wUJ be committed to actlvely participath1g.
A typical JRP session may Involve anywhere from a relatively small
number of user/mat1..1gement people to a dozen or more. The role of the
users during a JRP session is to effectively communicate business rules and
requirements, review design prototypes, and make acceptance dedsJons.
The role of the managers during a JRP sessJon is to approve project: objectives, establish project: priorities, approve schedules and costs, and approve
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
klentlfled trainJng needs and Implementation pL1ns. Overall, both users and
managers are relied on to ei1su.re tl1at their cdtlcal success factors are
being addressed.
Scrlbe(s)- A JRP sessJon also lndudes one or more scribes, who are
responsible for keeping records pertaining to everything discussed h1 the
meeting. These records are published and dissem.Jnated to the attendees
bnmediately following the meetfrlg In order to maJntaitt the momentum
that has been established by the JRP session and Its members. The need to
quickly publish the records ls reflected by the fact that scribes are Increasingly using CASE tools to capture many facts (documented using data and
process models) thar are commwlicated during a JRP sessJon. Thus, ft is
advantageous for scribes to possess strong kt10wledge of systems analysis
and design and be skilled with using CASE tools. Systems analysts
Crequently play this role.
rr staff- A ]RP session may also lndude a number of IT personnel who
primarily listen and take notes regarding Issues and requirements volced by
the users and managers. Normally, IT personntl do not speak up unless
Invited to do so. Rather, any questions or concerns they have are usually
dJrected ro the JRP f:1.clUr:iror immediately after or before the JRP sessl01t. It
Is the ]RP fadlitator who lnltiates and facllitatts disa1sslon of issues by users
and managers.
11,e IT staff In the JRP session usually consists of members of the pro~
ect team. These members may work closely with the scrlbe to develop
models and other doaunentatlon related to facts commwlicated during the
meeting. Specialists may also be called on to gain information regardJng
special technical issues and concerns that may arise. W11en the situation
warrants, the JRP facilitator may prompt an rr professional to address the
technical issue.
,_lost JRP sessions span three to five days and occasionally last up to two weeks. The success of any ]RP session depends on properly
planning and effectively carryh1g out the plan. Some preparation ls necessary well before the JRP session can be performed. Before pL,nning a ]RP session, tl1e analyst must
wort closely with the executive sponsor to determine the scope of tl1e project tl1at Is
to be addressed through JRP sessions. It ls also Important that tl,e hlgl1-Je>-.l requirements and expectations of ead1 JRP session be determlned.11lls normally involves interviewin,a selected lndi'\oiduals who are responsible for departments or ftmctlons tl1..1t
are to be addressed by the systems project. Fh1ally, before planning the JRP session,
the analyst must ensure that the executive sponsor ls willing to commit people, time,
and other resources to the session.
PlaJ.uling for a JRP se~ion tn,-olves three steps: selecting a location for the ]RP
session, selecth1g JRP partldpants, and preparh1g ao agenda to be followed during
tl1e JRP session. Let's examine ead1 of these pL1nnln@ steps In detail:
How to Plan JRP Sessions
I. s,tect111g a locatton for ]RP sesslo11s- When possible, ]RP sessions should be
conducted away from the company workpL1ce. tttost local hotels or unl:versitles have facllltles designed to host group meeth1gs. By holding the JRP session at an off-site location, the attendees can concentrate on the Issues and
ad:i"ities related to the JRP session and a,-oid interruptions and distractions
that would occur at their regular workplace. Regardless of tl,e location of tl1e
]RP session, all attendees should be required to attend and be prohibited
from returnh1g to their regular wortplaces.
A JRP session typically requires several rooms. A conference room is
required h1 which the entire group can meet to 1ddress JRP issues. Also, If the
]RP session Includes many people, se,-eraJ small breakout rooms may be needed
far separate groups of people to meet and focus disalSslon on specific issues.
d,aptw Six
231
232
Part 1wo
Systoms Analysis Methods
4 1' • o·
Food & Refreahment&
IT Profe.ssionals & Other Cb!ervers
Sc,be
~
W:>rbtation
(for CASE tool)
i
Scribe
+-
""'"
and
Manager&
Smartboan:t
Overhead Projector
Corrputer
Projection
Device
a
D
b
JAP
Facilitator
"
(')
t
Whiteboard
Workstation
(for prolotyping tool)
IT Prole881onale & Other Observers
Sc,be
C---------~
F I GU R E 6 • 4
Typical Room Layout for )RP Session
)
..____
The conference or maJn meeting room should comfortably hold all the
accendees. n1e room shoul<I be fttlly eqUlpped wtth cables, chairs, and ocher
items that meet the needs of all attendees. Figure 6-4 depicts a typical ,oom
layout for a JRP session. 1)pical visual aids for a JRP room should include a
wh.iteboard, smartboard, or blackboard~ one or more fUpcharts; and one or
more p rojectors.
The room sholdd also lndude computer eqttlpmenr needed by scrlbes ro
record facts and Issues communicated during the session. 111e computer itself
sho,dd include software packages to support the various types of records or
documetllatlon to be captured and later published by the scribes. Such software may include CASE tool, word processing, spreadsheet, presentation package, p rototyping software, printer, copier (or qulck access), and computes
projection capability. As a guldeline, computer equlpment (except that used
for prototyping) should be located at the rear of the room so that it doe!n't
interfere or become a distraction for the JRP participants. Personal lnteractlon
of the participants, not technology, sho,dd be tl,e focus of the session.
Finally, the room should be equlpped for teleconferencing so tl1.1t usess at
distant locations can participate. The room sl1ould include notepads and pend.ls for users, managers, and other attendees. Attet1dees should also be provided with nametags, place cards, snacks, and drinks so that they will be as
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptw Six
233
comfortable as possible. Creature comforts are very Important sh1ce JRP sessions are , -ef)' intet1SJve and often run the entire day.
2. s,tecting ]RP part!.ctpants- As mentioned earUer, participants selected lndude
the JRP facilitator, scrlbe(s), and representat1,..s from the user community. The
u,ers should be key lndMduals who are knowledgeable about thelr bush1ess
atea. Unfortw1ately, mai1..1gers are often very dependent on these indJ'\oiduals to
run their business areas and are often hesJtant to release them from their
duties. Thus, the analyst must ensure that m.1~ment is committed to the
}RP project and wUUng to not only permit but also require ti,ese key h1dlvkluah to participate.
Various IT professionals may also be selected to be hwolved In the JRP
session. Usually all IT lndl,iduals assigned to ti,e project team are Involved h1
the JRP session. Other IT spedaUsrs may also be assigned to address specllk
technlcal Issues pertahllng to the project.
3, Preparl11g a ]RP sess/011 agenda- Preparation is the key to a successful JRP
session. The JRP faclll tator must prepare documentation to brief ti,e partlclptnts about the scope and objectives of the ses5loos. In addltlon, an agenda
for each JRP session sho,dd be prepared and dlstrlbmed before each session.
1
The agend:i dictates issues ro be discussed during the session :ind the amount
ol time allotted to each Item.
The agenda sl1ould contain three parts: the opening, bod)', and condusion.
The opening ls intended to communicate the expectations of the session, to
communicate the groWld rules, and ro influence or motivate the attendees ro
ptrtldpate. The body is hllended to detail d,e topics or Issues to be addressed
ln the JRP session. Flnally, the conclusion represents the tlme set aside to summarize d1e day's session and ro remind the attendees of unresolved Issues
(t,, be carried forward).
How to Conduct a JRP Session The JRP session begins with opening remarts, h~
troductloos, and a brJef overview of the agenda and objectlves for the session. The
JRP facilitator will direct the session by following the prepared script. To successfully
conduct the se~Jon, the facilitator should follow these guidelines:
Do not unreasonably deviate from the agenda.
Stay on sd,eduJe (agenda topics are allotted specillc times).
Ensure thar the scribe is able to rake notes (th.is may mean having the users
and m.u1..1gers restate their points more slowly or dearly).
1i.vold the use of tedul.lcal Jargon.
Apply confUct resolution skills.
Allow for ample breaks.
Encourage group conset1Sus.
Encourage user and managemet1t participation without aUowing indl\oiduals ro
dominate the se~io11.
btake sure tl1..1t attendees abide by the established ground rules for the
session.
One of the goals of a JRP session ls ro genera.re possible ideas to solve a problem. One approach ls bra.lnstormlng. Brah1Stormi11g io\--o[ves encouraging participants to generate as many ideas as possible, without analyzing the valldJry of the
Ideas.
Brainstorming Is a formal tedmlque tl1at requires dlsdpllne. The following guldellnes should be trsed to ensure effect1,.. brainstorming:
I. lsoL11e the appropriate people h1 a place that will be free from distractions
and interruptions.
2. lttake sure that everyone understands tl1e purpose of tl1e meeting (to get1erate
Ideas to solve ti,e problem) and focuses on the problem(s).
bta.itlstor-mi.og a technique
for generating ic'eas by en.
couraging participants to offer
as many ideas u possible in
a short period of time 'Mthout
any analysis un1il all the ideas
have been exhausted.
234
Part 1wo
Systoms Analysis Methods
3. Appoint one person to record Ideas. Tills person should use a fllpchart, chalkboard, or overhead projectoc that can be viewed by the et1tlre group.
4. Remind everyone of the brainstorming ntles:
a. Be spontaneous. Call our ideas as fast as they ocntr.
b. Absolutely no criticism, analysis, or e>-.Juatlon of any ldnd Is pennltted
while the Ideas are being generated. Any idea may be usef,tl, if only to
spark ai1other idea.
c. The goal Is quantity of Ideas, not necessarily quality.
5. Within a specUled time period, team members call out their ideas as qultlly
as they can think of them.
6. After the group has run out of Ideas and all Ideas have been recorded, then
and only tim1 should the Ideas be analyzed and evaluated.
7. Refine, combine, and enhance the ideas thar were generated earlier.
With a little practice and attention ro these rldes, brainstorming can be a very effective technique for generating Ideas ro solve problems.
As met1tloned earlier, the success of a )RP session Is highly dependent on planning and ti,e skills of ti,e JRP facil itator and scribes. These skills Improve through
proper tralnlng and experiet1ce.Therefore,)RP sessions are usually concluded with an
evaluation questio1u1..1lre for the participants to complete. The responses wUJ help
ensure the likelU1ood of furure JRP successes.
The etld product of a JRP session is typically a formal written document. This
document is usually created by the JRP faclliraror and scribes. It is essential for
confirming the speclflcatlons agreed on during the session by all participants. TI1e
content and organization of the speci.flcatlons are obviously dependent ou the
objectives of the JRP session. The analyst may provide a clifferetll set of spec!Jkations to different participants based on their role- for example, a manager mty receive more of a summary versJon of the document provJded to the user participants
(especially ln cases In whld1 the ~·st:em owners had minimal actual involvement in
the JRP session).
Benefits of JRP Joint requlrements plarullng offers many benefits as an alteroatl,..
fact.finding and development approach. More and more companies are beginning to
realize its advantages and are Incorporating JRP Into their existing methodologies. An
effectively conductedJRP ses.<;ion offers the following benefits:
JRP actlveJy lnvotves users and management in the development project
(encour.uclna them to take ..ownership" ln the project).
JRP reduces the amount ol time requlred to develop systems. This is achleved
by replacing uadJtlona~ time-consuming one-on-one lnteniewing of each user
and manager wlth group meeth1g.1. The group meetlng.1 allow for more eJSil)'
obtaining consensus among the users and m.u1..1gers, as well as resolving conflicting Information and requlrements.
When ]RP incorporates prototyping as a means for confirming requirements
and obtalning design approvals, the benefits of prototyping are reallzed.
Acbie'\oiog a successful ]RP session depends on the JRP facilitator and his or her
ahUity to plan and facili tate the )RP session.
~~~A~ F_a_ct_-F_i_n_d_in_g~ S_tr_a_te_g_y~ ~~~~~~~~~~~~~~~~)
An at1..1lyst needs an organized method for collecting facts. Inexperienced analysts
will frequently Jump right into lnteniews. They believe, "Go to ti1e people. That's
where the real facts are!,. Wrong! This approach fails to recognize an Important
fact of life: People must complete their day-to.day Jobs. You may be thlnklng, "But
Fact-Finding Tochnlquos f« Roq<lromonn Discovery
d,aptw Six
23S
I thought you've been saying that the system is for people and that direct end.
user Involvement In systems development ls essential. Aren't you contradicting
yourselves?"
Not at all.11me ls money. To waste end users• tine is to waste their company's
money. To make the most of the time spetll with etld usets, analysts should not Jump
right Into Interviews. Analysts should first collect all the facts they can by using othet
methods. Consider the following step-by-step strategy:
1. Learn from existing docttments, forms, reports, and flies. Analysts cut leant a
lot without any people contact.
2 . If approprL1te, observe the system in action.
3. Gl,-.n all the facts already collected, design and distribute questionnaires to
ckw up things that aren't fully w1<lerstood.
4. C)nduct inteniews (or group work sessions). Because most of the pertinent
facts have already been collected by Jow-tLSer-contact metl1ods, Interviews cut
be used to
and clarify the most difficult l,sues and problems. (Altetnatr;ely, consJder usfr1g JRP techniques to replace or complement lnteniews.)
,-.rifj·
5. (Optional). Build dlscovety prototypes for any functional requlremet1ts that are
not understood or fo r requirements th:tr need ro be "-:iUd.ared.
6. Follow up. Use appropriate fact-finding techniques to vetlfy facts (usually Interviews or observation).
The strategy Is not sacred. Although a fact.finding strategy should be developed
for every pertinent phase of systems development, every project is unique. Sometimes obsetvatlon and questionnaires may be Inappropriate. But the Idea shot~d
always be to collect as many facts as possible before using interviews.
,-CD
/
0
This chapter Introduced you ro a wide range of tochtliques for discovering Infor-
mation system requirements. tttost systems deve.lopment methodologies require
some level of documentation and analysis of system reqttlrements. Accordingly, the
remaining chapters In thls part present a number of systems documentation tools
and 1echnlques that can be used during the analysis phase of systems development.
Most of you wUl proceed directly to a,aptet 7, "Modeling System Requirements with
Use Cases." Use-case models serve as a foundation for the deve.lopment of subse-
quent models for modeling additional systems requirements and are presented In
Chaptets 8 through 11.
"""'""
::J
::J
co
:::::0
0
0
Q_
3
0
--0
236
Part 1wo
Systoms Analysis Methods
Summary ~
l. The process and techniques that a systems ai1..1lyst
uses to Identify, analyze, and understand system
requirements are referred to as requirements
dlscoverr
2. System requlrements specify what the infonnation
system must do, or what property or quality the
system must have.
3, The process of requirements discovery consists of
the following activities:
a.
b.
c.
d.
Problem discovery and analysis.
Requlrements discovery.
Documenting and analyzing reqttlrements.
Requirements m:u1..1gement.
4. Fact-fincli11g ls a technique that ls used across the
entire d€velopmet1t cycle, but It is extremely critical in the requlrements analysis phase.
5. A popt~u tool used by development teams to
Identify, analyze, and solve p roblems ls an Ishikawa
diagram.
6. Conductlng busloess ln an etll.icaJ manner is a
required practice, and :u1..1lysts need to be more
aware of the Implications of not being etillcal.
7. There are sevett common fact-flndlng teduliques:
a. The s,mpling of existing documents and files
can provide many facts and details with little
or no dlrect personal communication being
neces,ary. The analyst sho,M collect hlstorical
dOClunents, business operations manuals and
fonns, and lnformatlon systems documents.
b. Research Is an often-overlooked technique
based on the study of other similar applications.
It now h ..,s become more con,--enlent wfth the
lute1:uC'l .u.KI Worh.1 Whk WC"U (WWW), Site' vi:,.
its are a special form of research.
c. Obsetvation Is a fact-finding technique In wlllch
the analyst studies people doing their jobs.
d. Queslio1uulres are used to collect similar facts
from a large nunlber of Individuals.
e. lnter,·Jews are the most popular but the most
tlme<onsuming fact-finding teclullque. When
inteniewlng, the analyst meets Individually
with people to gather informatlo11.
i) When most people talk about communication skllls, they tlllnk of speaklng and
writing. The skill of listening hardly gets
mentioned at all, but ft may be the most
important, especially during the Interviewing process.
il) Researd1 stud.Jes h.ave determined a startliJlg fact: Of a person's total feelings, only
7 percent are commwllcated verbally (ill
words), whereas 38 percent are communicated by the tone of voice used and 55 percent are communicated by fadal and body
expressions. If you only listen to someone's
words, you are missing most of what the
person has to say. Experlenced systems analysts pay close attention to body L,nguage
and proxemics.
f. Discovery prototyping Is frequet1tly applied to
systems developmet1t projects, especially In
cases where the development team ls having
problen,s defining tJ,e S)'Sten> requirements.
The philosophy Is that the users will recognize
thelr requirements when they see them. It is
Important that the prototype be developed
qulckly so tl1a1 it can be used during the d<velopment process.
g. Many analysts find fL,ws with lnterviewlngseparate interviews oftet1 lead to conflicting
facts, oplnJons, and priorltles. The end result ls
numerous follow-up lnterviews and/or group
meetings. For this reason, many organizations
are usfr1g a group work session known as the
joint requirements planning session as a s,i>stitute for interviews.
i) Joint requlremet1ts plamllng sessions In,
elude a wide ,,irlety of participants and
roles. Eacl1 participant Is expected to attend
and actlw,~· participate for the entire duration of the ]RP sesslon.
Ii) An effective JRP session Involves extensive
plannl1~. Plannlna for a JRP session ln,'=>lves
three steps: selecting a location for the JRP
session, selectlng]RP participants, and
preparing an agenda to be followed dwing
the ]RP session.
& To help allevL11e tJ,e many problems associated
with changing reqttlrements, it is necessary to perform requirements m:u1.1gemet1t.. Requlremet1ts
management encompasses the policies, procedures, and processes that govern how a change to
a reqttlrement is handled.
9. Because • tJme is money; ii ls wise and practletl for
the systems analyst to use a fact-finding strategy to
maxlroize the value of time spet1t with the et1d
users.
a. Learn from existing documents, forms, reports,
and files. Analysts can learn a lot without any
people contact.
Fact-Finding Tochnlquos f« Roqclromonn Discovery
b. If appropriate, observe the system h1 actlon.
c. Givei1 all the facts already collected, design and
distribute questionnaires to dear up tllings that
aren't fully understood.
d. Conduct h1tervJews(or group work sessions).
Because most of the pertinent facts h.ave already beett collected by low-user-contact methods, Interviews can be used to verify and clarify•
the most dltlktdt issues and problems. (Altern,-
d,aptw Six
237
th1'1)', consider using JRP technlques to replace
or compJeruent intervJews.)
e. (Optional.) Build discovery prototypes for any
ftmctlonal requirements that are 11ot tmderstood
or for requirements that need to be validated.
f. Follow up. Use approprL1te fact-tlnding techniques to verify facts (usually Interviews or
observatlo11).
\ ';::: ;:s Review Questions
l. What ls the lmponance of conducth1g the requirements discovery process?
2. What are the possible consequei1ces If you fail
10 identify system requhemetlls correctly and
oomplctcly?
3. What are some of the criteria deemed to be criti,
cal lo defining system requirements?
4. The requirements dJsco,lery process consists of
wll..1t
"'
9. What are some of the drawbacks of c0Uecth1g
facts by observing employees In ti1elr worl< environment? How can systems analysts deal with
these drawbacks?
10. What arc the types of survey qucstionnalrcs that
11.
actlvitles?
5. Briefly describe the purpose and componetll
parts of ait lshlkawa d11gram.
6. What technlque Is commonly used In the reqtth1'ments disco,..,ri· phase? Why is It hnportant?
7. Why Is analyzing reqtdrements essential?
8. When collecting facts from existing documentation, what kind of documents sho,tld system
analysts review?
l. \'ou are manaaitw. a project that was postponed
1wJce because lts funding was diverted to hfghetpriority projects.111e $)'stem owners do not want
that to happett agaln, so they are very anxious to
get the new system started and built as quickly as
possible. They are putting a great deal of pressure
on you to spend no more than a couple of days
on requhements discovery. If anything is ndssed,
tl,ey tell you, It can be fixed later on. You really
want to make them happy, but a Uttle voice of
caution is going off. What are the potentlaJ consequences and costs of rushfrlg through the requirements discovery process?
2. \'ou have leanted the lmportance of making sure
tl1at requh1'metlls are correctly idei1t!Jled. But
how do you know when you ha,-e a correct
requirement-that ls, wh.at criteria must each
requirement meet in order to be considered
correct?
12.
13.
14.
15.
systems analysts can use to collect infonnation
and oplnlons?
What are some of the ways that you can ltSe to heJp
open dte lines of commwtlcatlon ln an lntervlew?
What is joint req,urements planning ORI')?
Why has }RP become pop,dar?
Why Is the fadUtator lnJRP so Important?
What ls the main concen1 ln seJectlnga location
for JRP sessions?
@:
Problems and Exercises
3. What common error does a new systems :u1..1tyst
often make when :u1..1tyzing a problem? W11..1t are
the potential consequences of th.ls error? W11..1t
tool can be used to help avoid tills problem?
4. System developers use fact.findh1g techniques h1
every project phase. Is fact.finding more Important during the requhernents analysis phase than
for other phases? Why or wh.y not?
5. What ethical issues ought arise during the
fact.finding process, and how sho,tld they be
handled?
6. What are some of the common tools and technJques a systems analyst can use to document the
h'dtial findings? Should ti,e systems :uulyst expect
the requlrements to be complete and correct at
this polnt? If not, what are the common problems? What should be the focus of the project
team at this polnt?
238
Part 1wo
Systoms Analysis Methods
7. Wh.at ls the deliverable that ls created once re.qttlrements analysis ls completed? Why ls this
deU,-.rable needed, and what does It lndude?
Who are the audience and/or users of tills deliverable, aod for what reasons?
8. )'ou are a systems analyst ln a software development company that has been hired to do the reqttlremmts analysis phase for a large organlzatlon.
What are three categories of existing documentation tl1.11 you should collect d uring requirement
discovery? What are some examples of ead1 of
these three types of documet1tatlon? W11at should
the systems analyst watch out for In collecting
gather facts. What are some of the ad"-:i.ntages and
disadvantages of questionnaires? When might you
choose free-format que.stioru1..1lres over fixed
format questionnaires? W11..1t is one method of
determlnh1g the effectiveness of a questlonndre?
11. What are some of the reasons to use joint req,tlrements planning ORP) as a fact-finding technique? What sho,tld be the basis for selecting
whld1 ,rsers and mai,agers will participate In
the ]RP se~Jon, and who generally selects them?
What skills should the facllltator and scribe possess? What Is the role of IT staff d urlngJRP
sessions? What ls the typlcal d u.ration of the
documentatlo11?
9. Suppose that you are a ~·stems :u1..1lyst on a
project that Involves modlfyh1g the sales order
process. Slnce your company receJ,--es ln d1e neighborhood of 2,500 sales orders per day, how 01.1ny
do you need to ~mple Jf you ~nt 95 percent
certainty that you have covered aU '\o-atL1tlons?
What lfthe number of sales orders per day was
25,000 orders?
Projects and Research
10. Surveys and questlonnah-.s are frequently used to
JRP sessions?
12. ProvJde at least five of the crJtical success factors
for JRP sessions.
13. What one tiling should an analyst 1101 do when
begituli.ng the f:ict finding portion of require
met1ts discovery, no matter how tempting?
1b
I. Systems ai1.1lysts must h»-. expertise h1 problem
ai1..1lysls. When systems analysts are starting out,
they often find It dlfflcttlt to differentiate symptoms from problems, and to Identify the actual
causes or' the problem. One tool that can help
a,1.1lysts learn to do thls ls ti,e lsWkawa, or
tlshbone, diagram.
a. Find and select a problem that your organization. school or other oraanli.atlon is currently
attempting to resolve. Describe this problem.
b. Follow the process described In this d1.1pter
and create an Ishikawa diagram.
c. Which categories did you start with h1 the dlagrain,and wWch categories did you add during
the process?
d. Did this diagram help In findh1g the actual
cause(s) of the problem? Did the cause(s) tum
out to be wt1..1t you originally thought, or somethh1gdifferent?
2. Observing the work environment ls a technlque
that predates the lnformation age, but that cut still
be hlghly effective. Although not appUcable for
every sltuatlon, observlng wh.at people actually do
and how they do ft ca11 be ht some cases much
more accurate tha11 asking them! Select a
system- whether hypothetical or real- and do
the following:
a. Provide an o,-ervJew of d1e system and what you
are trying to learn about the system for a project.
b. Develop a w ork observation plan ush1g the
guldeUnes In tills diapter.11,e format Is up to
you, but It generally sho,tld not need more tlw1
1-2 pages.
c. Develop a work-samplln.e: plan. an d descrlbe
the sampllng procedures you will use.
d. What are your tl1oughts about th.ls metl1od
compared to otl1er fact-tlndJng methods?
3. You are a systems ai1..1lyst working on a project to
develop an Intranet for a large organ.ization with
several thousand employees working In offices
iliroughout the United States.11lls will be the
organization's first h1tranet, ai1d executive management wants ft to help increase employee effidet1q•
ai1d commlt.ment to tl1e organizatio11. As part of
fact-finding, Information needs to be g.1thered from
employees of tl1e organization regarding lntnaet
content ai1d functionality. Due to the size ai1d geographic distribution of tl1e organization, as well as
project time constraints, there ls Insufficient time
Fact-Finding Tochnlquos for Roqclromonn Discovery
aad resoltreeS for personal interviews, so you have
decided that a questionnaire is needed.
a. W11at facts and ophlions do you need to collect?
b. Sho,~d all employees In the org,1nlzation be surveyed? Why or why not? If not all employees
sl1ould be surveyed, how would you select the
employees to be surveyed?
c. What format do you thlnk wo,~d work best for
tills survey questionnaire? If fixed format, what
type(s) of fixed-format questions st,o,~d be used?
d. How long should the survey questionnaire be ill
order to get the necessary information without
discounglng employees from fllling lt out?
e. Create the sur,--ey questlonnalre, using the
questlon-wrltlng guldeUnes given In this d1apter.
4. B1Sed upon the responses to your Intranet survey,
you feel that It wo,~d be helpful to Interview
someone in !ulother org.•ulizatl0tl wlto h.as h.'ld ex
perlence h1 developing and/or malntalnhlg company lntranets.
a. What type of lnteniew do you think would be
most appropriate In this sltuatlon-WlStrucrure:J
or structured? Why?
b. Make an appointment with the h1tranet admlni;.
trator ln your organization or ai1other organization or school to discuss her or his experiences
in developing an<Vor maintaining an intranet.
Describe the organizatio11 and its lntranet.
c. Prepare an interview guide using the format of
FJgure 6-3 as an example, ensuring that questions are free of the problems disct~ed in
tills chapter.
d. Conduct d1e h1terv:iew, and record the responses.
e. Wll..1t do you feeJ worked well In the Interview,
and what would you do dlfferently next cime?
5. Bod)' language ts an extreme!)• Important pan of
communlcatlon, as descrlbed ln the textbook.
Analysts need to be aware of not only what is heh11
communicated ci,rougl> the body language of the
intervJewee but also the impact tll..1t their own
body L,nguage may h»-. upon the Interview
process. Make an appointment with several
d,aptw Six
239
co-worl.:ers or fellow students to intervJew regarding
the features they would Uke to see ln an lnuanet; lf
possible, select intervJewees you know well and
those that you don't. Prepare for the ln1emews fo~
lowlng the same steps as ln the prior question.
a. Oescrlbe tl1e lntervJewees you selected and the
questions you asked.
b. During each Interview, observe the racial expressions of the h1tervJewee. What did you observe? Were the facial expressions always
consistent with the responses?
c. Ou.ring ead1 lntervJew, observe the eye contact.
How long dld It fast? Observe and describe what
happened when you made eye conttct for more
than three to ft,--e seconds wJth d1e interviewee.
d. Try changh1g your spatial zone during the Interview. Did the Interviewee show any sgns of beh1g uncomfortable? At what point dkl dut OCClui'
e. Old you note any dlfferences h1 body L1nguage
between tl1ose you knew well and those you
dldn't.?
f. What dld you do that was the most succe55ft~
and the least successful h1 elldtlng informatlo11?
6. Analysts typically have access to confidential or
sensitive data during the requirements discovery
phase of a project, partlct~arly during bet.finding.
Analysts need to be aware of situations where
there may be a breach of professional etlllcs,
whether by acts of comml~Jon or omi.ssJon, and
the possible consequet1ces. Search on the Web
and/or In business perlodlcals h1 your sd1ool (I.
brary for artlcles on Incidents Involving breaches
of professional ethics.
a.
b.
c.
d.
What artldes did you find?
What was tl1e nature of each of tl1ese lncideots?
What were tl1e consequet1ces?
What was the analyst's personal responslbUlty
In each incident?
e. What could have been done at tl1e org..1nlzatlonaJ and/or individual level to pre,•et1t the
lnddet1t or to reduce its severity?
240
Part 1wo
Minicases
Systoms Analysis Method s
O
I. In Chapter 5, you developed feasibility studies for
a project. Economic feasJbllJ ty assessments are lmpacted slgnlJlcantly by Intangibles, whose value Is
obtained lo part by intervJews and questionnaires.
Develop interview questions to determine the
value to emp loyees of telecommu ting.
a. Begin wlth wutrucrured questions posed to one
group of employees to determfr1e what matters
to the employees and how they vJew telecommuting.
b . Once you know what issues surround employee
perceptions of telecommuting and why they
mlgl11 like/dislike it, create open-,,mled, b ut structured, questions on d1ose Wues, and interview a
second set of employees. Why are we lL'Sing two
different groups of emplO)'ees for this process?
2 Develop a questionnaire for rnass employee distribution based on your findings from the previous
Interviews. Why are we com pleting the analysis
wlth an anonymous survey?
3. You are In d1arge of de,-eloplng a n ew 01illne class
registration system for your sd.1001. Develop a set
of Interview questions to determfr1e Issues and
needs of stude11ts, registration staff, and facul ty for
an 01illne registration system.
4. Discuss the Impact that biased or leading que~
tions may have 011 an analysis. Create one no11·
biased lntervlew question and one blased or
leadlng question. Pose each of those question! to
five people. What kind of responses did you get?
WCf'C they what yo u expected?
Team and Individual Exercises
I. Create a bL1Sed, leading, or loaded set of interview
questions. Pose them to another student ht the
class.T he other student, Instead of answering the
questions, should tell you how you are bL1Sed and
what response you are looking for.
2 . Oass exercise: Create as tmblased a set of lntervJew questions as you can on a particular toplc.
Pose the questions to the class. However, wear a
shlrt, pins, and so on, tl1at Jead the class to respond
Suggested Readings
In a particular way. Have fun, and experiment with
visual alds, props, and the lli(e.
3. It has been found h1 past research s tudies that em.
ployees who are allowed to telecommute actually
work approximately three extra unpaid hours a
week. But teJecom.mutlng is ofte.1.1 used as a negotiating tool by an employer- in order to telecommute, employees must accept a lower salary,
typically JO percent. What do you thJnk aboutthls?
[3]]
Andrcu,s, 0 . C., and N. S. l.c\•c nthal. Fuston Jntegmttng IE,
CASE and)AD: A Hauabooll for Reengtneertng tbe S)'S·
r.e,ns orga11tratfo11. Englewood Cliffs, NJ: PrcntkC' Hall,
1993.
Jkrdic, Douglas R., andJolU\ E Anderson. Qtl<!Stto1111afres: Desfgn and Use. l'itctuchen., NJ: Scarccrou• Pttss, 1974. A
practical guide to the construction of (fuC'Sl:ionnaircs. Particularly tiSC'ful because o f its short length and i.Uustrative
examples.
OJ.vis, Wi.lliam S. sysr.e,ns A11al)1sts and [}(!Sfgn. Reading, l\otA:
Addison-Wesley, 1983. Provides useful pointers for preparing and conducting intc,r,'lcu<s.
DtjoiC', Ro }; Gc-orgc Fowler;and 0.'l.vid. Paradk.'C'. Etbl.Cal ISStl<!S
tn Infortnat«>n sysre1ns, Boston, l'itA: Boyd and FraSC',r,
1991. Focuses on the impact o f compute r technology on
cthkal decision making i.n today's business organi.'13.tions.
Rtzgcrald..Jerry; Ardra E Fitzgc,ra.Jd:; and Wartt'Jl 0 . Stallings, Jr.
Fundmnentals of S)'SlettlS A11atyS1s, 2nd ed. Neu• Yolk:
Jo hn Wiley & Sons, 198 1. A useful sut,'C'}' text for the
syste,ms anal)'Sl:. Chapter 6, •unck,rstandi.ng the Existing
System/ docs a good job of pltSC'tlti.ng fact·fUldin@tech ·
nkfuC'S in the study phase.
Fact-Finding Tochnlquos f« Roqclromonn Discovery
Gtutc:, c. Raptd sysre1ns Develop11ie11t. Neu• York: Rapid S}stclllS Dc\•clopblcnt, lnc., 1987. This book provides a good
discussion on how to lead a group mcctingtintcni.cu:
Gause, Donald C., and Gerald ~1. Weinberg. EXplortng .Requtre1ne11ts: Quattty before Desfgn. New York: Dors:-t
Housc Publishing. 1989. An cxccUcnt book describing the
techniques of rt-q_ttitcrnc:nts discO \'t't):
Gilckts!CC'\-e, Thom.."U R. successful Data Processt11g S)1st.ern
A1f0~1SIS, Eng)C\\•ood Cliffs, NJ: Prentice Hall, 1978. Cltaptcr 4, •Jntc,r,'lcwi.ng i.n Systc.ms Wod,:: provides a coblplc'hc:nsivc look at intc,r·viewing sJ)<'ci.ficall}' for the systems
atw)•st. A thorough sample intc,r·vicw is scripted arid
atulykd in this chaptc.r.
LonO,n, Keith R. The People Side of S)1st.e1ns. Ne\\• Yori::
McGrav.•-Hill, 1976. Chapter 5, •tn,-c-stigation ,-crsus ln({Ui·
sition," pro,'ldcs a ,try good people-oriented look at fact·
fir.ding. with consickl'.\ble emphasis on inteJ,'lC\\•iJlg.
Lord, Kenniston W., Jr., and JaJncS 8. Steiner. CDP RevfetlJ
AfiltJ.Hal: A Data Processf11g Handbooll, 2nd ed. New
Yc rk: Van Nostt'.Uld Reinhold, 1978. Chapter 8, •systems
Analysis and Design,• provides a comprehensht cornpari·
son o f the merits and demerits of each fact·finding tech·
niguc. This matctial is intended to plt'patt data processors
for the Ccrti.ftcate in OJ.ta Processing examinations, one of
vvhich covers systems analysis and design.
Mille~ In~d.n, and John E Fft'und. Probabfttty a11<1 srartsttcsfar
E11g111eers. f.ngleu'Ood aiffs, NJ: Pttntice Hall, 1965. Jn.
ttoductory college textbook on probability and statistics.
Mitchell, Jan; No rman Parrington; Pete.r Dutute; and John
Moses. •Practical Prototyping. Part One," Object Clll'IT!IIIS,
d,aptw Six
241
r,,tay 1996. First of a three-part series of artic·lcs that
cxplotts protocypiJlg and how you can benefit horn it.
Prototyping is an integral part o f }RP.
Robertson, Su:zatute, and James Robertson. Ala.s!errng the Requtren1e11ts Process, Reading. MA: ACM Press/Addi.son·
Wesley, 1999. This book contains an in-depth co,tragc of
ste~by--step procedures for lt'quitt-.ments di.sco,'t't):
Sa.htnd)·, G., ed. Ha11t1booll of 111<1ustrfal E11gt.1wertng. New
York:John Wile)' & Sons, 1974. A comprcbc.nsh't' hand·
book for industrial engineers; syste.ms analysts att-, in a
way, a type of industrial enginccr. Excellent coverage on
Sl.mpling and wod,: measuremcnt.
Stcu,art, Charles )., and William 8. Cash, Jr. h1lervtet1Jtng:
Prt1JC(pfes a11d Pmcltces, 2nd ed. DttbuqtlC', IA: Brou'tl,
1978. Popular college textbook that provides broad expo·
sure to inte.n •icwing techniques, tnatl)' of u •hich arc
applicable to syste.ms analysis and design.
Walton, Donald. Are }'?)fl Cbtntnuntcartng? Jou. can't ,wan.
age. uJl.tbout JI, New York: r,,tcGt'.tw·Hill, 1989. This book is
an casy-t~tlSC guidebook on the process or" cornmunica·
tions and a must tor anyone utio rnust wott with people
and influence thern.
Weinberg, Gerald M. Retbtnklng sysre111s A11atySfs and De·
stgn, Boston: Little, Brown and Company, l982. A book
cft'ated to stimulate a ncu• '"'al' o f thinking.
Wood,Janc, and Denise: Sil·ver.}Otnt AfJpltcatto11 Desfgn, New
York:John Wiley & Sons, 1989. This book provides a com·
plt'hcnshtc: m•en•icu• of mr,,t's joint application design
technique.
Slrahgl: 1n1:1rmat1on s,rtems Pian
Slrategle Enterprise Pian
.....
.............
"''"
rnpo,o a..i,_
"''"
i~eusrw.u
PACC.....
l(NOWlEOGE
COMWUNICAnONS
JI
811.TEMEN'f OFWOFI(
PFI08LEM STKEWENT ~~ N Plce.s ...,._.,,,
INFORMATION
•COP<
FUNCTION.t.L
SOOPE
00Wt.lJNICR10NS
SCO,E
VISION
VU$10 N
""°"
•
•
•
SYSTEM IWPAOVE~N'f Oe..ECTIV€8 ~1'9 N PECES ...,._.,,,
8USIIESS FEOU FIEt.ENTS $1;UE~N'f
.
...
.B
'
,
:
"' Jl~
J.
'
~m
'
'. .
..
"'
I
AFICH TECTVIW. t.C<IEL
OE & IGN PR O TOT \ 'PE 8
PHY61CAL
""""
'""'"
8 PECFICR10 NS
~FIEDESIG~
SPECIFICATIONS
FUNCTION A L 8 Y & TEM
• R A INING •ATERI A L 8
-
~
.........
"°'"'°"
PHYSICM.
USEA A SYSTEM
INTERFACE
OESGN
61'EOFIOOIONS
...
...........
~
f
s
§
>
-· i .
-·
OPER A TION A L & YS TE •
. . ..
..........
Cl'ICIH.
INTE~ACE
SOI.UTION8
.....,
CUS10W~ ILT
APPI.ICIJION
-
~-
•
INTE~ACE
SOI.UTION8
PO& T. A UOIT RE V IEW
........
.........
APPFIOYEO
TECHNOLOGIES
Ccrlt1111ntAPPAOVEON~NOLOOIE$
S1rategl c Enter pri se 1ntormat1on Tecnno1ogy Arcnltecture
g
!1
!~
§
u,
~
I
~
I
I
m
I
"' n::!
~
'
'
'
6l
•i
~
~
$
,
I
•I•
1
• '
>
,
6U611ES8 PAOCU8
OE.slON
!
-
i
!{
smew PFIOPOSM. (or FEOJESTFOASYSTEW PFIOPOSM.8)
-
ii
•
'.
p
''
••
I
•
w Iz f
J,!
1
n,
I -
.
- -
Modeling System
Requirements with
Use Cases
Chapter Preview and Objectives
In this chapter you will learn about the tools and techniques necessary to pe,form u.secase mcxieling to document system requirements. Capturing and documenting system
requiren1ents have proved to be critical factors in the ouloome of a successful information
systems development project. Documenting the requirements from the perspective of the
users in a manner that they can understand promotes user involvement, which greatly enhances the probability for the success of the project. You will know that you understand
requiren1ents use-case modeling when you can:
I Describe the benefits of use-case modeling.
I Define actors and use cases and be able to identify th?m from context diagrams and
other sources.
I Describe the four types of actors.
I De.scribe the relationships that can appear on a use-case model diagram..
I Describe the steps for preparing a use-case model.
I De.scribe how to construct a we-case n1odel diagram..
I De.scribe the various sections of a use-case narrative and be able to prepare one.
I Define the purpose of the use-case ranking and priority matrix and the use-case
dependency diagram.
244
Part 1wo
Systoms Analysis Method s
Following the Joint requlremetl1s planning ORP) meeting that was held as one t,.sk of
the requirements analysis pha,e, the SoundStage Member Senices systet11 p rojec t
team has built a list of use cases that specify all the required fw,ctionality of ti,e systet11. At first ead1 use case was Just a simple verb phrase (sud, as "Place New Order")
that described something one or more users wanted to do with the system. Next,
each use case was documented wlth a narrative describing In detail the desired Inter-
action between the user and the ~·stem. Then Bob ,_lartlnez and other systems analysts held a series of interviews with users to verify those use-case narratl,-es. Finally
they are analyzing whld1 ltse cases are the hlghest priority to the system. Bob's boss,
Sandra, says that will identlfy for them what functlonaUty has to be Included ill ti,e
first build cycle of the system. The plan is to take those highest-priority use cases Into
the logical design and later phases and lruplet11et1t a woddng version l. 0 of the systet11
on schedule and within budget.
1
~~~-A_n~ l_
n_tro
~ d_u_c_t_io
~n_t_o~U_s_e_-_c_a_s_e~Nl_o_d~e_li_n_g~~~~~~~~~~~____,)
One of the primary d1allenges of vital Importance to any lnformatlon systems developmet1t team, and especL1lly the systems analyst, is ti,e ability to ellclt the correct and
necessary system requirements from the stakeholders and specify them in a manner
that ls understandable ro the stakel10Jders in order for those requirements to be verified and validated. In fact, this has been the case for many years, as the distinguished
autltor Fred Brooks wrote ht h.Js famous 1987 artlde:
The hardest single part of buildlng a software systet11 is decldlng precisely what
to bldld. No other part of the conceptual work is as diflktdt as establishing ti,e
detaUed technlcal requlrements, Including all ti,e Interfaces to people, to madtlnes, and to other software systems. No other work so crlpples the resulting
system lf done wrong. No other part is more diffintlr to rectify L1rer.
The information tec hnology commwllty has always had p roblems trying to
specify requirements, espedaliy fllllctlonal requirements, to users. In the past we
have used tools such as data models, process models, prototypes, and re(Jltlrements
speclflcatlons that we w1derstood and were comfortable with, but they were ltard
to understand for any user who wasn't educated ln software de,--etopment practices.
Because of cbts, many development projeets were and srtU are pL1gued wtcb scope
creep, cost overruns, and schedule creep p roblems. Very often systems are deveJoped and deployed ti1at really don't satisfy ti1e user·s needs. Some are shelved and
not used at all, and a large percentage are canceled even before the development
effort is complete. A very weU known research firm, the Standish Group, studJed
23,000 IT appllcatlons in 1994, 1996, and 1998. 1 As shown In Figure 7-1, the 1998
study folllld that only a little more than a quarter of the p rojects In 1998 were successful (on budget, on tlme, and included all features). ,_lore titan a quarter of them
failed (canc eled before completion). A little less than half were what Stan dlsh consJdered challenged- the project was complete and operational, bur ft was completed either over budget, o,·er the time estimate, or wJthout all tl1e features
speclfled by the users. The good news reflected In these srudles and otl1ers is that
the ways and means we are U!ing to develop ittformatlon systems are improving.
The software development lnWstry l1as learn ed that in order to successfully pL1n,
llb,:- !illlldi:lb Group lbtettPtiorial. lbC._,·av.os: A hdpe for- Succas''(tkrtlttik veftiOll), 1999, Rctric-vtd O«ernbet 5,
~ 02, 0otn www. ptn2go~o.1n/SJ..1Dplt h'!lmh'.hk
ptilnt.ry tc1't'll.ldl lllld ll.llldy,i$ of the' IT indutty.
hws199fl·Ddf, The StiuldWl Group ;, be.._ kbO'fl'h for i~ in.dc,pellddl.t
Modoling Systtm Roq<lromonn with Uso Caso,
Project Success Rate
1JO%
-
11111'
l0%
fl()%
SI%
21'!1,
83'K.
--48%
<0%
20%
3 1~;
40%
28~;
0%
1994
1996
1998
--
chaptor S..von
24 S
, FIGURE 7 - 1 '
D Succeeded
D Challenged
O Failed
Project Success
Rates As Reported
by the Standish
\. Group
~Kt: 'Ibo Su,ndii:I Croup h:tttnatioMl. l~,. "'Ch-:A Recipe lot
S'lx«-'"(tlectf011ic,~n:io11). 1999.
www.p m2Ro.oom/f(IQple__t-.i,rtb/
duo•l998.pdf.
v...
analyze, desJgn, construct, and deploy an Information system, the ~·stem.s analyst
first must tmderscand the needs of the stakeholders and the reasons why the system
should be developed- a concept called user-centered development. By focusing
011 the users of the system, the analyst can concentrate 011 l1ow the system will be
used and not how ft will be constructed. Use-case modellog is an approach that
facilitates usage-centered development.
Use<ase modeling has its roots in object-orJented modeUng, and you will learn
more about how to apply use-case modeling In the ~ect-orlented analysis and design
diapters, but It has gained popularity In nonobject developmetll environmetlls. You
will learn throughout the remaining diapters of this book how tLSe-Clse modeling
complemet1ts tradJtlonal systems analysis and design tools such as data modelit1g and
process modeling as weU as provides a basis for architectural decisions and user
Interface design dedslons.
Use<ase modeling was originally conceived by Dr. Ivar Jacobson In 1986 and
gained pop,tlarity after he published hls book, Object.Oriented Software E11gl11eeri11g, in 1992. Dr. Jacobson used use-case modeling as the framework for hJs objectory
methodology, which he successfully used for developing object-Oriented Information
systems. Use<ase modeling has pro,-ed ro be a valuable aid in meeting the challenges
of dttermlnlng what a system is requlred to do from a user and stakeholder perspective. It is now widely recognlzed as a best practice for the defining, documenting, and
unckrsrandfng of an informatio11 ~tern's functional requirements.
Usfr1g use-case modeling fadlitales and encourages user invotvemet1t, wbid1 ls
one of the primary crltlcaJ success factors for et1Surina project success. In addition.
use.case modeling provides ti,e following benefits:
Pro,ides a rool for capturing fw1ctlonal requ.lrements.
Assists In decomposing system scope lnro more manageable pieces.
Pro,ides a means of communicath1g with users and other srakeholders concerning S)'stem ftUlctlonallty. Use cases presetll a common language that ls
easily understood by various stakel1olders.
Provides a means of identifying, assigning, tracking, controUlng, and managing
>)'Siem de,-.Jopment actMties, espedally Incremental and iterative developmet1t.
Pro,ides an aid In estimating project scope, effort, and schedule.
Pro,ides a baseline for testing In terms of dellnlng test plans and test cases.
Pro,ides a baseline for user help ~tem.s and manuals as well as ~tern
development documet1tatlon.
Pro,ides a tool for requirements tmceabUlty.
Pro,ides a starting point for the ldentUlcation of data objects or et1tlties.
Pro,ides functional specUkations for designing user and system Interfaces.
Pro,ides a means of defining database access requlremet1ts lo tenns of adds,
changes, deletes, and reads.
Pro,ides a framework for drhing the system developmetll project.
user<eoteted
developmeot a process of
~y.sl!:1111~ d1:M:1lo p1111:111l b1;1~ecJ
on unders1B.Jlding the needs
of the stakeholc»rs and the
reasons why the system
should be devebped.
use-case modeling the
process of modeling a sys.
tern's functions h terms of
business events, who initiated
the events, and how the eystem responds tc those events.
246
Part 1wo
Systoms Analysis Methods
System Concepts for Use-Case Modeling
use-case d.iagtam. a dia.
gram that depicts the inter.
aciions betwe&n the system
and external systems and
users.In other words, it
graphically describes who
'Mii use the sy31em and in
'M'lat WS!fS theuser expects to
interact with tte system.
fuoctiooal
decomposition the act of
breaking a syEtem into
subcomponents.
use-case oatratt'\•e a
111ere are two primary artifacts Involved when performing use<ase modellng.111e
first Is the use-case dlagram, wbld1 graphically depicts the system as a collection of
use cases, actors (users), and their relationsbips.11lis dL1gram commwlicates at a high
JeveJ the scope of the business events tl1at must be processed by the $)'stem. An example of a use-case diagram is shown in Figure 7-2. It shows each system function, or
business event (in the eUipses). and the actors, or system users, who interact with
those fw1ctlons. As you can see ln Ffgure 7-2, actors can be pL1ced on either side of
the set of use-case figures and can interact witl1 one or more use cases. The us<-<ase
diagram Is extremely simple. Bot It begins an Important process called functional
de,compositio.-1, the act of bre1king a system apart Into its subcomponents. It is impossible to understand the entire ~tern at once, but it Is posslble to w1derstand and
specify each part of the system.
The second artifact, called the tise-case ua.n-ative, fills in tl1e details of ead1 business e,-ei.1t and specifies how the users interact wlth the $)'stem durlog that event.The
use-case narrative will be discmsed in detaU later ln the d1apter.
> Use Cases
textual descriJ:tion of the
business evert and how
the user will irteract with the
system to accomplish the
task.
use case a b; havioralty
related sequence of steps
(a scenario), both automated
and manual, for the purpose
of completing 1 single
business task.
~
~
Use<ase modeling ldentllles and describes the system functions by ush1g a tool called
use cases. Use cases descrlbe d1e system ftmctlons from the perspecth,--e of external
users and ht a manner and tennhology they understand. To accurately and thoroughly
accomplish this demands a high level of user ln,--olvement and a subject-matter expert
who is knowledgeable about the business process or event
Use cases are represented gr.tphlcally by a horizontal ellipse wltl1 tlte name of tlte
use case appearing above, below, or Inside the ellipse. A use case represents a single
goal of the system and describes a sequence of activities and user Interactions Ill try·
ing to accomplish the goal. TI1e creation of use cases h ..,s proved to be an excellent
technique to better understand and document system requlremenrs. A use case itself
is 11ot considered a function.al requirement, but the story (scenario) the use case tells
consists of one or more requirements.
Use cases are lnltially detlaed during the reqttlrements stages of tl1e life cycle
and will be addltlonally refined throughout the llfe cycle. During requirements
__
System
r FIGURE 7 - 2 '
Sample Use-Case
Model Diagram
,,
Actor 1
Actor S
Actor 2
Modoling Systtm Roq<lromonn with Uso Caso,
chaptor Sown
247
discovery, use cases are used to capture the essence of the business problems and
to model (at a high level) the functionality of the proposed system. Additionally,
they are the starting point for identifying the data entities (covered in Chapter 8)
or objects of the system (covered in Chapter 11). During requlreme11ts analysis the
use cases are refined to model usage of the system In more detail. In other words,
they are updated to specify what the users are trying to accompUsl1 and why.111e.se
use cases aid In the definition of any prototypes ot user Interfaces. During design
the use cases are refined to model how the users will actually use the system
with regard to any Interface and ~·stem const:raJnts(covered in Chapter 18). TI1ese
types of use cases aid In identifying object or system behavior and in designing interface and code speci.flcatlons, as well as serve as the plan for testing the $)'stem .
ln construction, use cases aid developers in progr.imming and testing. These use
cases also serve as the baseline for preparing any user and system documentatJon,
plus they serve as tools for user trainJng. And, because use cases contain an et1ormous amount of system flIDctlonaUty detail, they will be a constant resource for
validating the system .
> Ai:tors
Use cases are ln.itiated or triggered by external users called actors. An actor Initiates system activity, a use case, for the purpose of completing some business task
that produces something of measurable value . Let's use the example of a college
student enrolling for the fall semester's courses. The actor would be the st1,de1it,
and 1he buslness evet1t, or use case, would be /!:nrolll11g in Co,,rse. An actor represents a role fulfilled by a user lnteractJng wJth the system and ls not meant to portray t single individual or job tltJe. In fact, an actor doesn't have to be human. It can
be an organization, another information system, an external device such as a heat
sensor, or evet1 the concept of time (which will be discussed a little later). An act or is represented graphically as a stick figure Libeled with the name of the role the
actor plays.
It ls important to 11ote tl1..1t there are primarily foltr types of actors:
Prt111ary b ·ust11ess aaor- the stakeholder that primarily benefits from the
execution of the use case by receiving something of measurable or obser,lable value. The primary business actor may or may 11ot lnltL1te the business
event. For example, ln tl1e business e,-ent of an employee rece.ivlng a paycheck (something of measurable value) from the payroll system each Friday,
the employee does not lnltlate the event but is the primary redplenc of the
something ohalue .
Prl111ary systettJ. actor- tl1e stakeholder that directly interfaces witJ1 the ~ tem to ln.itiate or trigger tl1e business or system event. Primary system actors
may Interact wlth prlmary business actors for the purpose of usfr1g tl1e actual
system. They facilitate ti,e event through the di'ect use of the system for the
benefit of the primary business actor. Examples include a grocery store
clerk who scans the Items for the n1stomer buying groceries, a telephone
operator who gives directory assistance to a customer, and a bank teUer who
processes a banking transaction. The primary business actor and primary
~·stem actor may be the same person for e,-ents where the business actor
Interfaces with the system directly- for example, a person resening a rental
car ,ia a Web slte.
E.."<ternal server actor- tl1e stakeholder that respon ds to a request from the
u.se case (e.g., a cred.Jt bureau authorizing the charging by a cred.Jt card).
E.."<ternal receiver actor- the stakeholder that ls not the primary actor but
receives something of measurable or observable value (output) from tl1e use
case (e.g., a warehouse rece.i,ing a packing order to prepare a sh.ipment after
a customer has pL1ced an order).
actor anything that needs
to interact 'Mth tie syS1em to
exchange information.
\
Aclor Symbol
248
Part 1wo
Systoms Analysis Methods
In many information systems there are busfr1ess events trfggered by the calendar
or the time on a dock. ConsJdet the following examples:
The billing system for a credlt card company automatically generates its bills
on the 5th day of tl,e month (billing date).
A bank reconciles Its check transactions every day at 5 P.M.
O n a nlgbtly basis a reporl is automatically generated llstlng whlcb courses
have been dosed to enrollment (no open seats available) and wh.lch courses
are stl U opet1.
tem poral e,ieot a system
These events are examples of te mporal events. Who would be the actor? All of
event that is trggered by time.
the events listed above were performed (or triggered) automatically- when ft
became a certain date or time. Because of that we say the actor of a temporal event
ls time.
>
Relationships
A reL1tlonshlp Is depleted as a Une between two symbols on the tase<ase diagram. The
meaning of the relationshJps may differ depend.fog on how the Unes are drawu and
what types of symbols tl,ey cetmect. In the following sections we will define tl1e
dlfferent relatlonshJps fow1d on a use-case diagram .
Associations A relatlonsl:l.ip between an actor and a use case exists whene,--er the
use case descrlbes an Interaction betweet1 them. This relatlooshJp is referred to as an
assocl..1.tlo11. As lndicated lo Figure 7-3, an as.,odatlon is modeled as a solid line connecting the actor and the use case. An association that contaitlS an arrowhead on the
end touching the use case (0) indicates the use case was Imitated by the actor on the
other etl d of the line. Assodatloos without arrowheads (0) Indicate an interaction between the use case and an exremal server or recetver actor. Whetl any actor is associated wlth a use case, we say the actor co1u1uu.11tcates witl1 the use case. Associations
may be bidirectional or wlldirectlonal.
associatioo a relationship
between an attar and a use
case in which an interaction
occurs between them.
exteosioo use case a use
case consistin.:J of S1eDS extracted from a more complex
use case in oder to simplify
the original case and thus
extend its functionality. The
extension use case 9Xtends
the functionati}' of the original
use case.
,
\.
FIGURE 7 - 3
Extends A use case may contlin complex functionality consisting of several steps
making tl1e use-case logic difflcttlt to llllderstand. For the purpose of simplifying
the use case and making it more easily llllderstood, we can extract the more complex steps Int o their own use case. TI1e resultJng use case is called an e xteosiou
u SE" a1s:e in th.it ft extends: the flmct1on11ir:y of the original use c:ise. The rel:ttion.
ship between the ex.tension use case and tl1e use case it ls extending is called an
e:'(te11ds relatlo11shlp. A use case may have many ex.tends relationships, but an extension use case can be h1.,...-oked only by the use case it is extending. As depicted
in Flgttre 7-4, tl1e extends relationship is represented as an arrowheaded Une
(either soUd or dashed) beginning at the extension use case and pointing to the
use case ft ls ex.tending. Ead1 extends relatlo11ship line is labeled "<<extends>>."
Get1erally exte11Slon use cases are not identified in the requirements phase but in
the analysis phase.
'
0
Exam p le of an
Association
Relationship
Club Member
Distribution Center
Modollng systom Roq<Aromonn with Use Cases
chaptor S..von
249
FIGURE 7-4
Example ofan
Extends
Relationship
Uses (or Includes) Very commonly, you may discover two or more use cases tl1..1t
perform steps of Identical functionality. It ls best 10 extract these common steps
into their own separate use case called an abstract \1se case. An abstract use case
represents a form of ..reuse" and is an excellet1t rooJ for reducing redw1dancy among
use cases. An abstract use case ls available for referencing (or use) by any other use
case that t'0qui.re6 its functlonaUty. The t'el:ttionship ~tween the nbstt:tct use case and
t11e use case that uses ft is called a uses relatlonshJp (some use<ase modeling tools refer to lt as an tncludes relatlonshlp). The uses relationship as presented in Figure 7-5
is depicted as an arrowheaded line (elther solid or dished) beginning at the original
use case and pointing to the use case it ls uslng. Each uses relationship line ls L1beled
.. <<USes>>:' Generally abstract use cases are not Jde1xified ln the requirements ph.a se
but ln the analysis phase.
Dep•nds On As the project manager or lead developer, lt is very helpful to know
wh.ich use cases have a dependency on other use cases in order to determine the sequence in wllich use cases need to be deve.loped. Us.Ing the banking business as an
example, the use case lttake a Withdrawal cannot be performed until the use case
Make a Deposit has been executed, and that use case cannot execute until the use
case Establlsh Bank Accotult has occurred. Because cf these dependencies the deve~
opment team wlll most likely choose to deveJop the use case F.stabllsh Bank Accotmt
first, the ~take a Deposit use case second, and the !\take a Withdrawal use case tllird
for usability and testing purposes. A use-case d11gram modellug the system's use<ase
depende11des using the. depends 011 reL1tlonshlp pto\'ides a n1odel that is an excellent tool for pL1nning and sd,edullng purposes. Toe depends on relatlonshlp as
Abstract
Use Case
<<u~es>>
<<u~es>>
I
abst:tact use <ase a use
case that reduces redundancy
among two or rrore other use
cases by combining the com.
mon steps rounCI 1n tnose
cases. Another use case use,s
or includss the abstract use
case.
depe-ods o-o a. relationship
between use cases indicating
that one use case cannot be
performed until another use
case has been performed.
/
"
FIGURE 7-S
'
Example of a Uses
Relationship
,
250
Partlwo
Systoms Anclysls Methods
FIGURE 7-6
Example of a
Depends On
Relationship
<<depends on>>
I•••~
<<depends on>>
presented h1 Figure 7-6 Is depleted as an arrowheaded line (either solid or dashed) beginning at one use case and polntlng to a use case ft ls dependent 0 11. The depettds on
relationship line Is Libeled "<<depends on>>.'
Inheritance When two or more actors share common behavior- in other "i'Otds,
they can lnltiate the same use case- lt ls best to extrapolate this comn1011 beha"ior
and assign ft to a new abstract actor lo order to reduce redw1dant commwlicatlon
wJth the ~tern. For example, a library parro,, is a card-carrying member who ls a u-
ialteritaoce in use cases,
a relationship Oetween actors
created to simolify the drawing
¥itlen an abstract actor inherits the role of multi pie real
actors.
thorized to "Search library hwentory" as well as "Check out books" from the library.
Since many Ubrarles are public Institutions, they we.lcome visitors to use th eir
services onsJte such as ..Search Jlbrary Jnventory; but the '\oisJtors are not allowed the
extended services (such as "Check out books") tli.1r are reser,--ed for the patrons . By
creating an abstract actor caUed a1sto1ner, from wllid 1 patro11 and visitor w UJ JnherJt,
we have to modeJ only once the relationship loJt.iating d1e use case Search Library
Inventory. In the use-case diagram the Inhe ritan ce relationshlp is depicted by the
type of arrow shown in the ..Afrer" section of Ffgu re 7-7.
FIGURE 7-7
Example of an
lnheritarce
Relationship
Vis itor
Patron
Patron
Before
Viet tot
After
Modoling Systtm Roq<lromonn with Uso Caso,
The Process of Requirements Use-Case Modeling
The objective of constructing the requirements use<tse model Is to elicit and analyze
enough requirements information to prepare a mockl t11ar communicates what is requlred from a ,rser perspective but Is free of speclfk details about how the system
will be b,ult and Implemented. Following this approach will Liter produce a design
tl1at is more robust and less Ukely to be impacted by change. Bur ro effectively estimate and sd1edule the project, the model may need to lndude prelimlnary«system
Implementation assumptions· to aid In those activities. It Is critical that tl1e analyst
does not slip Into a state of analysis paralysis when preparing this model. Speed Is
the tey. Not all of tl1e facts wiU be learned during this phase of the life cyde, bttt
by utilizing iterative and Incremental development, the methodology allows the In-
troduction of new requirements later In the project without seriously Impacting
the deployment of the final solutlon.111e steps requlred to produce this model are the
following:
1. Identify bush1ess actors.
2. Identify busU.tess reqttlrements: use c:ues.
3, C)11Struct use-case model dtagram.
4. Ooa1ment busfr1ess requirements use<ase narratives.
>
Step I : Identify Business Actors
Why identify actors first? By foalSfng on the actors, you can concentrate on how the
system will be used and not how It will be built. Foct1Slng on the actors helps to refine and further define the scope and boundaries of the system. Actors also determine
the completeness of the system requlrements:2 A benefit of Identifying actors first ls
tl1at doing so Identifies candidates we can later inten-iew and observe to complete
tl1e use<ase modeling effort. Plus, tl1ose same lndJvk:luals can be used to verlfy and
validite the use cases when they are finished.
Where do you look for potential actors? The followlng references are excellent
sources:
A context dtagram that ldentlfles the scope and bowlClaries of the system.
Existing system documentation and user manuds.
6Unmes of project meetings and workshops.
Existing requirements documents, project charter, or statement of work.
When looking for actors, ask tl1e following questions:
W110 or wh.at provides Inputs to the ~tern.?
W110 or what receives otnputs from the system?
Are lntetfaces required to other ~·stems?
Are there any events that are automatically trJggered at a predetennlned
time?
W110 wUI maintain information In the system?
Actors should be named with a noun or 11otm phrase.
W11en you Identify an actor, create a textual deflnltion of that actor according to
the users' perspective and ush,g their terms. Figure 7-8 Is a template of an actor glossary tl1at can be used to doalOlent actors. 111is example contains a partial listing of the
SotmdStage ,_lember ServJces System's actors.
chaptor S..von
25 1
252
Partlwo
Systoms Analysis Methods
Actor Glossary
FIGURE 7 - 8
Term
Partial List of
SoundStage
Member Servires
System's Actors
Synonym
An individual o r corporatio n that submits a slbscription
order in order to join ihe ell.A:>,
1, Potential
member
2. Clubmember
Description
Member
An individual or corporation that has joined the club ·1ia
a, agreement.
3. Past member
lnactWe
member
4, Marketing
A type cl member that has fulfilled the ag-eement
obligation but has not placed an order w ithin the last
six months but is still in good standing.
Oganization responsible for creating promo tion and
slbscription programs and generating sales for the
compalT'/,
Oganization responsible for prCMding point o f c onta:t
5. N'£mber
for SouidStage Entertainment customers in terms o f
agreements and orders,
setVic es
6. Distributio n
center
>
business requiremeots
use case a use case created
during require11ents analysis
to capture the interaciions be·
tween a user ,111d the system
free oftechnobgy and imple-
mentauon aetans aiso ca11ea
an essential use case.
Warehoose
Entity that houses aid maintains SoundStage
Entertainment product inventory and processes
c ustoma shipments .:ind rctums,
7. Accouits
receivable
Oganization responsible for processing customer
payments and billing as well as maintaining custo mer
account information.
8. lime
Actor concept responsible for triggering temporal events.
Step 2: Identify Business Requirements Use Cases
A typical lnformatio11 $)'stem may consist of dozens of use cases. During requirements a nalysis we strlve to Jdentify and document only the most critJcal, complex,
and important ones, often referred t o as esse11tial use cases because of time and
cost considerations. A business requiremeit ts tise case captures the Interactions
wJth the user in a manner that is free of technology and lmplementatJon details.
Since a use case describes ltow a real-world actor Interacts wJth the system, an
excellent technique for finding business requJrements use cases ls to examine
actors and how they will use the system. When look.Ing for use cases, asl: the
following quesrJons:
What are the mait1 tasks of dte actor?
What infonnatlon does the actor need from the system?
What infonnatlon does the actor provide to the system?
Does the system need to lnform the actor of any changes or e,--ents tl1..1t have
occurred?
Does the actor need to lnform the system of any changes or e,--ents tl1..1t have
occurred?
Agait1, a context dL1gram l! an excelle nt source for finding potential use cases.
Context diagrams were discussed in 01apter 5. They come from traditional process
modeling (Chapter 9) but are useful <>1'11 for projects that take an object-0rletl1Ed ap,
proach. Let's examitte the SoundStage ~tember Services System's context diagram in
Agure 7-9. We can ldentlf)• potential use cases by Jooklng at the dlagnm and ldentlf)•ing the prlmary Inputs and outputs of tl1e system and the exten1..1l parties that submit
and receive them. T he p rimarJ' inp uts that trigger business e,-ents (for example,
Sub1nlt ,lletnber Order) wJtl)ln the organization are considered use cases, and tl1e
external p arties that pro,ide those Inputs are considered actors (for example, aub
,lfe»iber). It Is important to note t11..1t inputs that are the result of system requests do
Modoling Systtm Roq<lromonn with Uso Caso,
Chaptor S..von
Member Services Context
Diagram
Marketing
CIUl) Mem.11er
- - - - S u t m l Memllef ClfGer----,
-
su11n1t Promoaon 1ntormaaon -
1nqure AOCCUnt (oraer & payment ntsto'Y)
SLOrrfl SU!l&Cllptlon - - -
Program
Generate va11ous
Generate nq1Jry Responses - -
__
SUll&Cll~bn Reportl
ecnc:11 nomottonOtrOI" - - - -
Poterltl81 CIUD
MemDel'
t
•
-----
- - - Ccnoldo V41'1ouo _ __,
Promotion Reports
Generate YallOU$
- - - - - - S~86Aeports
suDmn SL09Crlptlonoroer~
(app~ t:ir memDer&lllP)
~
P~utMemDe,
Sena SU!ltcrlptlon Offer
'
I ,..,_
J
..,.
St.0mn SUOto!"'cn
"'"'''"
>---Rasutl6Cll~IOn - - - - - '
°""
suomn Memoer
CredtSlab.Js - - - - - '
He:sponse
Ol8tr1Dut1on
Center
(Warenou,e)
Gnrate Va,IOus
Menllef Reports
•
Merrt:ler 5el'Ylcee
F IG U R E 7 •9
SoundStage Member Services System Context Diagram
11ot fndicate a separate use case- such as a credit card company responding to an
authorization request or, as presented in Ffgure 7-9, the Acco,,nts Receivable actor
responding witl1 Afe,nber Credf.t Status /11for111atlo11.
Use cases are named with a verb phrase specifying the goal of the actor, such
as Su.btuit Subscrlptio·n Order. Use cases thar are temporal events are usually
253
254
Partlwo
Systoms Analysis Methods
identified as a result of analyzing the key outp uts of the system. For example, any
output that ls generated 0 11 the basis of time or a dat e, such as monthly or annual
reports, ls considered a use case, and the actor, as you recall, ls time. In Figttre 7-9
Jet's assume that one of the Yarious reports that ~tember Services receives is a
/0-30-60-day default agreement report that is automatically gei1ernted on a dally
basis. Since the generation of the report ls triggered by time, a use case is requ.Jred
to process the event, and we would name it Generate Dally /0-30-60-Day D•fault
Agree,ne11t Report. It ls important to note that many times indJ'\oiduaJ reports are not
listed on a context diagram be::ause they are too numerous and would clutter the
diagram and make it hard to read. It is the system analyst's responsibility to research
with the ap propriate stakeholders the type of outp uts tl1ey receive and thelr dtaracterlstJcs, in tenns of volume, frequency, and triggering mechanism, In order to
identify "h idden use cases.·
FJgttre 7-1O is a template of a use-case glossary tl1..1t can be used to document use
cases. 1bls exampJe contains a partL1l listing of the SoundStage ~tember Services
System's use cases and actors identified from the context dL1gram as weU as from
other sources.
>
Step 3: Construct Use-Case Model Diagram
Once the use cases and actors have been identified, a use<:ase model diagram can
be used to graphica lly depict the systetn scope and boundaries. The use-case
r FIGURE 7 - 1 0
Partial List of SoundStage Member Services System's Use Cases
~
Use-Case Glouary
Use-Case Name
Use-Case Description
Participating Actors and Roles
Submit Submiption
Order
Thi$ use case de$cribes the event of a
potential member roque,ting lo join ih• dub
by ,ubscribing. ("Tokoany 12 CD, for one
penny and agree lo buy A more at regular
prices within two years:")
• Pok>ntia I member (primary bu ,iness)
• Oi$tribution Center (aicternal receiver)
Submit Submiption
RenCJW<J I Order
This use case describes the event of a past
mombor roquostiOQ lo rejoin tho dub by
,ub,cribing. ("Tako any 12 CD, for one
penny and agree lo buy A more at regular
prices within two years:")
• Past member (primary bu,iness)
Submit Manbor
Profile O,onge,
Thi, u,e ca,e de,crib.. lhe "'9111 of a dub
mombor ,ubmitling change, b hi, or her
profile for such lhing, a, postal address,
e-mail oddres$, privacy code$, and order
preference$,
• Club member (primary bu,iness)
Plaai NowOrder
Thi$ use case de$cribes the event of a
dub member submitting an order for
SoundStoge producn.
• Club member (primary bu,ine")
• Oi$tribution Center (aicternal receiver)
• Acrounb Payoole/ Receivable (9""'rnal ,er,..r)
Revise Order
Thi, u,e ca,e de,crib.. lhe "'9111 of a dub
member revis.ing an order previously
plaaid. (Order must not hCM> shipped.)
• Club member (primary bu,ine")
• Oi$tribution Center (aicternal receiver)
• Acrounb Payoole/ Receivable (9""'rnal ,er,..r)
l
• Distribution Contor ('11Xh:1rnol rocoivor)
,
Modoling Systtm Roq<lromonn with Uso Caso,
chaptor S..von
2SS
F I G U R E 7 - 1 0 Concluded
Cenco! Order
This use case describes the event of a dub
member oonailing an order
placed. (Order m,nt nol haw ,hippo .)
• Club member (primary bu,ine6')
• Distribution Center (e,ternal receiwr)
• Accaunb Payable/Receivable (ex!Qnal sOM>r)
Maka Product Inquiry
This use case describes the event of a dub
mom bar viewing product, for J:XlO•ible
purcho,e. (DriV911 by Web aro>'5
• Club member (primary bu,ine6')
previoul
requirement.)
This use case describes the event of a dub
member viewing her or hi, purchasing
hislory. (1hree-}'90r time limit.)
• Club member (primary bu,ine6')
Est.ibli,h New Momber
Sub,cripoon Prog rom
This use case describes the event of the
marketing depar1ment eotobli,ling a new
membeBhip wbscription plan b entice new
members
• Marketing (primary busine'5)
Subm ii Subscription
Program Changeo
This use case describes the event of the
marketing depar1ment chonging a
subscription plan for dub members (e.g.,
extonding the fulfillment period!.
• Marketing (primary busine'5)
fabbli,h Past Member
R..ub,criplion
Program
This use case describes the event of the
marketing depar1ment eotobli,ling a
r..ubmiption pion lo lure bad k>nner
members.
• Marketing (primary busine'5)
Submit Member
Prolile Changeo
This use case describes the event of the
marketing depar1ment eotobli,ling a new
promotion plan to entice active and inactive
membOB lo order the product. (Noto: A
promotion leature, ,pacific ti~ ... usually
"""'· that the company is trying b ,oll at a
special pric:e, These promotion! a re
• Marketing (primary busine'5)
Mo lea Pu rcha,e
Hiitory Inquiry
integrated into o catalog
$9111 (or
communiooted) lo all membenJ
Revise Promotion
This use case describes the event of the
marketing depar1ment revising a promotion.
• Marketing (primary busine'5)
G<nerate Doily
1(). 30-60-Doy Defoult
~reernentReport
This use case describes the event of a report
that i, generated on a doily bo1i, to list the
membOB who have nol fulfilled their
ogreernent by purcho,ing the required
number of product, oufoed when they
subscribed. Thi, report i, sorted by
membOB who are 10 day, pa~ due, 30
day, past due, and 60 day, po,t due.
• Time (initioong actor)
• Member Service, (primary"-'"rnal
receiver)
256
Partlwo
Systoms Anclysls Methods
Order Sut,eyetem
Subtcription S ub•yatem
Potential Mtmber
1nrua1ee
Club Member
~
rnaias
1n111a1es
1nt11atee
Paet Member
1nn1a1ee
Operation• Subeyetem
1n111ates
Prcmotion Su:bayetem
~
~
~
Ti,111:t
1nrua1ee
FIGURE 7 · 1 1
SoundStage Member Services Sy>tem' s Use-Case Model Diagram
dlagram for the ltSe cases listed In FJgure 7-10 ls shown in Figure 7-11. It was created using Popkin Software's Syste111 Architect and represents the relationships between the actors and the use cases. In addltion, the use cases l1ave been grouped
into business sub,ystems. The sub,ystems (UML's package symbol) represent logical functional areas of business processes. The portjonJng of system behavior into
subsystems is very important In w1derstandlng the system architecture and is a key
to defln..lng your development strategy- whld1 use cases will be developed first
and by whom. We have labeled the associations between the actors and the use.
cases .. Initiat es" because tl1e tool did not support lines wlth arrowheads at the
time. We also didn't include the external server and recelver actors because of
space Umltatlons. To model all the use cases of a particular >)'stem may requlre the
creation of several use<ase mode! diagrams- as you recall, a system may contain
dozens of use cases. J.n tl1at event you may want to create a separate use-case
model diagram for ead1 subsystem.
>
Step 4: Document Business Requirements
Use-Case Narratives
When you are preparlog the nlrratlves, it ls wise to first document them at a high
level to qulckly obtain an w1detstand.Jng of the events and ma.gnltude of the system.
111en return to ead1 use case and expand lt to a fully docume11ted buslness requirement narrative. Figure 7-12 represents a re(Jltlrements use-case narrative for tl1e
chaptor Sow n
Modoling Systtm Roq<lromonn with Uso Caso,
257
Member services System
Author (s),
- --=o=---- -
Date,
E)
Version,
Use.case Hemet
Use.case ID,
Priority,
Soll'cc,
PrtmsyB..,ncn
Place Nev,., Order
Peitlclpatlng
Actors,
Otl>cr
Interested
St*choldcrs1
Ocscrlptlon1
'9
Use--Cas.e Type
MSS-BUC002.00
0
High
REQ.Jirement - MSS-R1 .00
e
CIIJ:> member
Actor,
Otl>cr
0
•
•
Business Requirements:
0
0
0
Warehouse(e:xtemal recet.'ef)
Accounts ReceWable (external server)
~
•
Mneting - Interested in sales acti'IAty in order to pla, ne.v promotions .
Prorurement - Interested in sales actWity in order to replenish inventory.
• Msiagement- Interested in order acti'IAty in order to evaluate compaly' performance and
customer ( member) satisfaction,
This use case describes the event of cell.A:> member submittinq a new order for SoundSta:Qe products.
The member's demographic inforrnaton as well as his or her account standing is validated, O'lce the
products « e verified as being in stoc<, a pa::king order is sent to the warehouse for it to prep9re the
shipment !=or iS'o/ product not in stod<, a back order is created, On completion, the member w ill be sent
an order confilmation.
CD .
F I G U R E 7 • 1 2 High-Level Version o f Place Ne w Order US<H:ase Narrative
,_leni>er Services System's Place New Order use case. Notice tl1..1r Jr tersely descrlbes
the event, whlch lndudes the following Items:
O Au.thor- The
GI
names of the Individuals who contributed to the writing of the
use case and who pro'\oide a polnr of contact for anyone requlrlng additional
Jnformatio11 abour the use case.
0 Date- T he dare tl1e use case was last modtfled
O Ver.rf.o·n - T he current version of the use case (e.g., 1.0).
O use-case 1ui1ne- llle use-case name should represent the goal that the use
case Is trying to accomplish. T he rwne should begin with a verb (e.g., Enter
New Member Order).
0 Use-mse type- It, perfonnlng use-case modeling, business requlrements use
cases, wltich focus on d1e strategic "islon and goals of the Yarlous stakeholders,
are constructed first:.This type of use case ls blr:iness-orlenred and reflects a
hlgh-level >iew of the desired behavior of the system. It Is free from technlcal
details and may lndude manual actMties as weU as the acthities that will be
automated. Business requirements use cases pro,ide a general lUldersranding of
the problem domaln and scope bur don't indude d1e necessary detail ro communicate to developers what d1e system sho,dd do.
O Use-case ID- An ldentlller that uniquely Identifies the use case.
O Priority- Toe priority communicates the importance of the use case In terms
of hlgh, medium, or low.
O Sou.rce- T he source defines tl1e entity thar triggered tl1e creation of the use
case. 11lls could be a requirement, a sped.tlc document, or a stakeholder.
O Prl1nary busl1iess actor- The primary business actor is the stakeltolder tl1..1t
primarily benefits from tl1e execution of tl1e use case by receiving sometlling
of measurable or observable value.
258
Part lwo
Systoms Analysis Method s
C?:) Other participating actor.s- Od1er actors tl1..1t participate in the use case to
accomplish lts goal lndude lnltiatlng actors, facilitating actors, server/receJver
actors, and secondary actors. Always include the m:uu1er ln wtlich the actor
partldpates.
'D Interested stakebolder(s)- A stakeholder is anybody who has a stake in the
development and operation of the software system. An interested stakel10Jder
ls a person (other than an actor) who has a vested lnterest In the goal of
the use case.
cP) Descrtption.- A short summary description that consists of a couple of
sentences outllnlng the p urpose of the use case and its activities.
Documenting the Ute·Case Course of Events For each high-level use case Identified, we must now expan d It to indude the use case's typical course of events and
its alternate courses. A use case's typlcal course of events is a step-by-step description
starting with the actor lnitiath1gthe use case and continuing until the end of the business event. In tl1is section we include only the major steps that ocntr the majority of
the time (its typical course). The alternate coltrse documet1ts the exceptions or tl1e
conditional brandling of the use case. Figure 7-13 represents a requirements us<-<ase
narratl,-e for the ,_lember Servlces System's Place New Order use case. Notice that it
indudes the following additional items:
O Prec.ondlt/011- A precondition
is a const.ralnt on the state of the system
before tl1e use case cut be executed. Typically this refers to another use case
that must be prel-iously executed.
& Trtgger- T he trigger ls tl1e evet1t that initiated the execu tion of tlte use
case. Tilis ofte11 is a physkal action, such as a n1stomer walking up to a
sales counter or a check uriving In tlte mall . Time can also trigger use
cases.
0 'lyptcal cou.rse of events- Toe typical course of events is the normal
sequence of actMties performed by the actor(s) an d the system in order to
satisfy the goal of the use case. These lndude tlte interactions between the
system and tl1e actor and the actfvities performed by tlte syst:em In response
to tlte interactions. Note that the actions of the actor are recorded ln t11e Jeft
hand column while the actions of the systems are recorded in ti,e right hand
column.
O Alternate co,,rses- Alternate coltrses document tlte behaviors of the use
case if an exception or vulatio11 to tlte typical course occurs. This can
happen when a dectston point occurs wtthln cbe use case or an excepuon
occurs that requires addidonal steps outside the scope of the typical
course.
0 Co11dusto11- 1l1e conduslon spedBes whet1 the use case succ~fully ends- in
oth er '\1/"'0rds, when the primary actor receives sometlth1g of measurable value.
O Postcondition- A postcondition is a constraint 011 the state of the ~tern
after the use case has been successfttlly executed. This could be data
recorded ht a database or a receipt deU,--ered to a customer.
O Business rules- Business n~es specify policies and procedures of ti,e
business that ti,e new system must abide by. 1bis could lndude the calcufatlon of shlpping d1arges or rules for granting credit terms.
0 /111plenie11tatlo11 constrai,zts and spectflcatto1,s- lmplemet1tatfon constr.1ints
and spedllcations specify any nonfunctional requirements diat may Impact
the reaUzation of the use case and may be helpful In any archltectural
pL'Ullling an d scoping. Items that may be lnduded are security spedBcatlons,
Interface requirements, and so on .
C:) Ass1,n1.prto11s- AJ.ry assumptions that were made by the creator wbett do..."Umet1th1g tl1e use case.
'1:) Ope1i Issues- Any questions or i~ues that need to be resoJ,-ed or ln,--esti
gated before the use case can be finalized.
Modoling Systtm Roq<lromonn with Uso Caso,
chaptor S..von
259
Member Services System
o.rte,
Author (s), - - - - - -
version,
u,c--CaH Memc1
u,c--CaH 101
MSS-BUC002.00
Priority,
High
Place New Order
Use--Casc Type
Buslneu Rcq<irements, lllJ
Source,
Requirement- MSS-R1 .00
Prmery Buslncn
Club member
Acton
Ofter
Pertlclpatlng
Actors,
•
•
Warehouse(extemal receiver)
Ofter
lntcrated
Stikeholden,
•
•
•
Ma'keting - Interested in sales activity in order to plan reN promotions,
Dac,..,.k>n1
Accounts Receivable(extel'ra se!Vtt)
Procurement-
Interested in sales activity in crder to replenish irwentoiy.
Msiagement - Interested in :irder activity in order to evaluate comparry perlorrrwice and
rustomer ( merrt>er) satisfaction.
lhis use case describes the event o f a club member slbmitting a ne.v order for SoundStage prod.Jets.
lhe member's demogr~ic informa1ion as well as his or her a:count standing is valid ated. Cnce the
products are verified as being in stod<, a packing order is sent to the warehouse for it to pre,:are the
shipment. !=o r arrt p roduct not in stcx:k, a back o rder is created. 01 completion, the memberwill be
sent an order cc:nfirrnation.
Prccondltlon1 •1 lhe party( individ..Jal or compal'/) slbmitting the order must be a member.
Trl19cr,
lhis use case is initiated w hen a new o rder is submitted.
0
lyplcel Course
ofEvcnt1-1
E)
Actor Actlon
Step 1, Thecllb member
provides his or her demographic
informatio n as well as order and
payment information.
System Rt:cpons,e
Step 2: The system responds by verifying that all required
iiformatio n has been p r0tided.
Step 3: The system verifies the club member's demograohic
iiformatio n against what has been pre-v;ously recorded.
Step 4: ~or each product o rdered, the system valid ates the
product identity.
Step 5: ~or each product o rdered, the system verifies tte pioduct
availability,
Step 6: ~or each available product, the system deterrnires the
price to be ctwged to the club member,
Step 7: 0,ce all o rdered products are processed, the ~em
determines the total cost of the order,
Step 8: The system checks the status o f the club member's account
Step 9: The system valid ates the club member's payment if
provided.
Step 10: The s1stem records the order informatio n and !hen
releases the order to the appropriate distribution center
(warehouse) to be filled.
Step 11: O nce the order is processed, the system geneates a,
order confirmatio n and sends it to the club member.
FIGURE 7 - 1 3 ExpandedVersionofPlaceNewOrderU~aseNarrative
Btisfness requirements use cases are excellent tools in t11at they desc:rlbe the
events the organization must process and respond to, but tl1ey lack information regarding the interfaces and the acthities tl1..1t are targeted to be automated by infonnatlon technology. Later, in Chapter 11, you wUJ learn how to evolve the use case to
Include technlcal and Implementation details.
260
Part 1wo
Alternate
Coursa:
0
Systoms Analysis Methods
Att·Step 2: The club member has not provided all the information necessay to process the order. The
club merrt>er is notified o f thediscrepa,cy and prompted to resubmit
Att·Step 3: If the club member information prCMded is different from vvhat w as previously recordec,
verify w hat w as recorded is cLrrent, then upc.ate the ell.A:> member information accordingly,
Conclulloni ~
Postcondllon, O
Att·Step 4: If the prod.Jct information thecll.b member provided does not match arry o f SoundStage's
products, notify the club member o ftt,e disc1?Pancy and request clarification.
Att·Step 5: If the quantify ordered o f the preduct is not available, a back order is created.
Att·Step 8: If the status o f thec llJ:> member's account is not in good standing, record the order
information aid place it in hold sta1us, Notify the club member o f the account status aid the reason the
order isbeing held. Terminate use case.
Att·Step 9: If the payment the club member provided (credit card) cannot be validated, notify the club
member aid request a, alternative means o f payment, If the club member cainot provide ai alternate
meais, cancel the order and terminate ihe use case.
This use case concludes vvhen thec llJ:> member receives a confilmation o f the order.
lhe order has been recorded aid it the ordered products were available, they were released, !=or iS'fy
product not available a back order has been created.
Buslnc11 Rula1
•
0
•
•
•
lq>lcmcmetlon
Cons traints end
Spcclflcetlons, G
AIM.nptlonl1
Open l11uni
0
CD
lhe club merrt>er responding to a promotion or a merrt>er using credits rneJt affect the price of
each ordered item.
(ash cr checks w ill not be accepted with ihe orders. If provided, tl"lef w ill be retuned to ihe
club member,
lhe club merrt>er is billed tor produc:s only vvhen they are shipped,
GUI to be provided tor Member Services associate, aid Web screen to be provided for club
member.
Procurement w ill be notified o f back ordeis ty a daily report (separate use case).
Need to determine how distribution ctnters are assigned.
,.
( FIGURE 7 - 13 Conclued
)
----------
-·
~~~-U_s_e_C
_a_s_e_s~a_n_d~P_ro~ie_c_t_Nl
~a_n_a_g_e_in
~ e-"_'~~~~~~~~~~~---)
As you recall, one of the benetltsof ltSe<ase modeling ls that the use<ase model c,1n be
used to drtvc the entire S)'Stcm de,--clopmcnt d'fon. Once the business t'C<Jltlremcnts usccase model ls complete, the project manager or systems analyst: uses the business re-
qulremetlls use coses to plan ( estilllltte and schedl~e) the build cycles of the project.1llls
is especWI)' crucial when applying the lterath.. and incremetllal approach to software
de,'dopment . A build cycle, whlch consists of the system analysis, design, and construction actlvldes, is scoped on the basis of the Importance of d,e use case and the tine it
takes to implement the use case. In other '\\"'Ords, one or more use cases wlUbe developed in ead1 build cycle. For a u;e case that is too brge or complex to be comple1ed In
one build cycle, a slmplltled version wlll be lmplemetlted hlltlally, followed by d,e full
verslon In the next build cycle.To detennlne tl,e lruportance of the use cases, the project
nw.u.ger or ~ems analyst wlll complete a use-case raiuing and e\o-aluatlon matrix: and
construct a use.case dependency diagram with h1put from the stakeholders and the de,--elopment team. You will Jean1 bow to use these tools in the following sections.
>
use-case ranking aod
priority matti.'\'. a tool used
to evaluate use cases and
determine thei' priority.
Ranking and Evaluating Use Cases
In most software de,--etopment projects the most Important use cases are developed
first:. In order to determine the prJorJty of the use cases, the project: manager uses a
tool called the use.case ranklog and priority matrb:. 11lls matrix is completed
Modoling Systtm Roq<lromonn with Uso Caso,
Use-Case Mame
SUbmlt Sub1atptlon Order
Piece New Order
- c Product Inquiry
Establlsh New Member
SUl>lc._,.lon Prognm
Ga,crotc Delly 1Cl-30-60-Dey
Ddeult .-.cement R - '
Rc-lllcOnler
FIG U RE 7 • 1 4
1
5
Ranklng ~
3
5
5
4
5
a, 1 to 5
1
1
5
5
!2
4
4
2
2
3
chaptor Sow n
26 1
4
s
6
4
4
5
5
5
5
29
27
High
High
2
1
1
1
6
Lo,v
3
3
5
5
27
High
6
Lo,v
3
18
W£d um
2
3
4
4
1
Partial Use-Case Ranking a nd Prio rity Matrix
with input from the stakel10Jders and the development ream. Tilis matrtx, adapted
from Craig Lannan's work,3 evaluates use cases on a scale of l to 5 agaitut six crlterla.
T hey are as follows:
I. Slgnlficant Impact on the archltectural design .
2.
3.
4.
5.
Easy to Implement bltl contains slgnlllcant functionality.
Jndudes rlsl·y, time-critical, or complex ftmctions.
Involves sJgnlflcanr research or new or rlsl')' tedlllology.
Jndudes primary bush1ess functions.
6. WiU Increase r evenue or decrease costs.
Once each category has been scored, the individual scores are tallied, resulting in the
use case's final score. The use cases wJth the high est scores are assigned the h.ighest
priotlty and sho,dd be developed first.
Figure 7- 14 Is a partial use-case ranking and JYlorlty matrix for the Member
Services System. Based on d1e results of the analysis, the use case Submit Subscription
Ordtr sl1ould be developed first. But we can't be sure tmtll we aJ.talyze the use<ase
depende11des.
>
Identifying Use-Case Dependencies
Some use cases may be dependent on other use cases, with one use case lea'\oing the
system ln a state that is a precondition for another use case. For example, a precondition of sending a dub promotion ls tl1at tl1e promotion must first be created. We use
a diagram called the use-case dependency diagram to model such depet1det1des.
T he use-case dependetlC)' diagram pro,ides the following be11ellts:
The graph ical depiction of the system's events and thelr states enhances the
understanding of system fun ctionality.
It helps to Identify missing use cases. A use case with a p recondition ti1at Is
oot satisfied by the execution of any otl1er use case may indicate a mi~ing
u.se case.
It helps facll ltate project manageme11t by deplcth1g which use cases are more
critical (have the most dependet1des) and thus need to ha>-. a high er priority.
Figure 7-15 is the use-case dependency diagram for the use cases listed In Figure 7-14.111e use cases that are dependent on each other are connected with a dashed
use-case depeodeocy
djagram a graphical depiction of the dependencies
among use cases.
262
Part 1wo
Systoms Anclysls Method s
FIGURE 7-IS
Sam ple Use-Case
Dependency
Diagram
Depends on
•
'
.
.
line labeled "Depends on." In Flgure 7-15, the use case Submlt Subscription Ordtr has
a dependency (precondltion) on the use case Establish New Member Subscription
Program. Because of thls dependency the use case Establish New Member SUl>lcrlption Program should be developed first even though Submlt Subscription Order had
a hfgl,er score as reflected ln Figure 7-14.
'
Q_
0
E
v
0
0
CY'.
0)
c
c
1.-
0
11lis chapter provkled an introd.Jctlon to use cases and how they can be used to document functional requirements. Also, you have lean1ed that use<ase modeling based
on object-oriented concepts ls an excellent complementary tool for tradltlonal systems analysis and design tools 9.lch as process modeling and data modeling. Mmy of
you will proceed directly to Oupter 8, • oata Modeling and Analysis." All Information
systems lndude databases, and data modelh1g ls an essential skill for database deve~
opment. Also, It ls easier to ')'nchronlze early data models with later process m>dels
than vice versa. YO\ll' Instructor may prefer that you first study Chapter 9, "Process
Modeling.• Process modeling ls an effective way to analyze and document f,mctlonal
system requirements. Courses that want to follow an object-0rle11ted approach may
elect to jump straight to Chapter 10,•Qbject-Orlented Analysls and Modelk1g Uslng
the UML," whlch teaches emerging object-modeling technlques using the unlfied
modelh1g language.
(])
__J
Summary
rm;
1. The.re are two primary artifacts involved when performh1g use.ease modeling. The first is the use-case
dlagram, which graphlcally depicts tl1e ')'stem as a
collection of use cases, actors (users), and their re.latlonshlps. OetaJls of each business event an d
how the users interact with the $)'Stem are descrlbed ln the second artifact, called the use-case
narrative, which ls the texmal description of the
business event and how the user wUJ lnteract witl1
the system to accompllsh the msk.
2 Use-case mode.ling utilizes two constructs: actors
and use cases. Alt actor represents anytlling tMt
needs to Interact with the system to exchange in formation. An actor is a user, a role, which could
be an extenu.l system as well as a person. A use
case ls a beha\oiorally related sequence of steps (a
Modoling Systtm Roqclromonn with Uso Casos
scenario), both automated and manual, for the purpose of completing a single business task.
3. There are primarily four types of actors:
of measurable or observable '\o-alue (output)
from the use case.
6. TI,e steps requlred to produce a requirements usecase model are the following:
a. Idet1tify bush1ess actors.
b. Idetttify bush1ess requlrements use cases.
4. Temporal events are business events that are perfcf'me-d (or triggered) 3.Utom.'ltlc:illy
c. Cot.lSU'uct use case mode) dhgr.un,
wbe1t lt be
comes a certaln date or time. Because of that, we
sa.y the actor of a temporal event is time.
5. A relationship Is depicted as a line betweei1 two
symbols on the use<ase diagram.
263
b. The relatlonsllip between the extetlSJon use
case and the use case .it ls extendln@ ls called an
extetlCls relationship.
c. The relatlonsJ.lip between the abstract use case
and the use case tl1..1t uses it ls called a uses
reL1tloruhlp.
d. The inheritance reL1tlonshlp occurs whet1 an
actor lnherlts tl1e ability to hlitlate a use case
from anotl1er.
e. Toe depet1ds-on reL1tlonshlp lndlcales a dependet1q• between use cases. ltt otl1er words, the
precondltlon of one use case is dependent on
the postcond.itlon of a11other use case.
a. Prlnlflry busl1iess actor- The scakeholder that
primarily benefits from the execution of the
use case by receiving something of measurable
or observable '\o"alue.
b, Prlnlflry S)Ste,n actor- The stakeJ10Jder that
directly Interfaces with d1e system to inltlate or
trigger the buslness or system evet1t..
c. £'!(ter11al server actor- The stakeholder that
responds to a request from the use case.
d. £'!(ter11al receiver actor- The stakeholder that
ls not the primary actor but receives somethit1g
Chaptor Sovon
d. Oocumei1t bush1ess reqttlrements ltSe<ase
narratt,--es.
7. Tite use<ase ranking and priority matrix and tl1e
use-ease dependei1q• diagram are tools used by
project managers for prioritizing and scheduling
use.ease deveJopment.
a. An association ls a relationsh.ip between an actor and a use case.
\-;·::~s Review Questions
l. What ls user<entered developmet1t and why is tt
crJtlcaJ to the success of the ~'Stem developmet'Jt
process?
2. How ls use<ase modeling related to user-centered
c:-8. What are the different types of relatiooshlps employed in a use<ase diagram, and wh,11 is their
purpose?
9. What Is the objective of constructing the requlre-
rlP\--Plopmpnti
3, h1 addition to encouraging user ln\--oJvement, usecase modeling provides numerous other benefits.
list the benefits tl1at use-case modeling p rovides
4. Use.case modeling uses two primary artlfactsthe use.< ase diagram and the use-case narrative.
How are tl1e.se two artifacts used and what are
their differences?
5, Use case diagrams consist of three components.
What are these tlvee componet1ts, and wl1..1t is
tl1elr putpose?
6. How are use cases used througl.1out tlte entire
,ystem development life cycle?
7. Of the four primary categories of actors, who ls
tl,e primary system actorY
10.
11.
12.
13.
14.
15.
mpntt- 11'-P4':U:P m orlPI :tnrl wh:lt .i.fpp.,:; :u·p to hf>
followed?
Why Is idet1tlfying the actors the first step In usecase modeling?
What should we be aware of when we are looking for business requirements use cases?
What ls a use case's typlcal course of events?
Why Is ranking and evaluating of use cases
essentL1l?
What are the six crfterla In the use.<a.se ranking
and priority matrix?
What Is the use.case dependency diagram, and
why do we use Jt?
264
Part Two
Systoms Analysis Methods
Problems and Exercises
~
1. Accord.log to author Fred Brooks, what is the sh1-
gle most dtftlcult thing to do in systems development? How does use.< ase modelh1g help lo this
area?
2. In use case modeling, wl1at two maln artifacts
does the systems analyst use? Describe each of
these artifacts and explain thelr purpose.
3. Wllat shottld a systems analyst always keep In
mind In identifyh1g and developing use cases reg,1rdh1g their purpose? Since req,tlrements fact.
finding llas been completed previously, is It reall)'
necessary to spend much time with users at this
poh1t? Just what should a use case represet1t? Is a
use case the same as a functional requirement?
4. During what part of the developmetll life cyde
are use cases first defined? When are they used
during the development life cycle, and for what
purpose?
5. Matcll the following stakel1olders and external
users wlth the correct actor. What ls a temporal
event? 'Who or wt1..1t is considered to be the actor
ht a temporal event, and wl1y?
United States Postal
Service
Coavuterized door
lock with key pad
Renral car agent
Sales manager generating regional sales
report
Sale.s manager receJ,~-
actor created spec!Jlcall)' to mlnintlze duplica-
tive system commwlicatio11.
The relationship betwee.n the use case «calcttlate GPA" and the lengthy use case • ereate
Transcript."
The relationship betwee.n the use case ..ShJp
Order" and the
<tse
case "Suhntlt Order.·
7. Y8\J Cookbooks is a fictional small business
owned and operated by a retired couple. Up to
this time, Y8\l Cookbooks has sold Its books by
mall order only. The owners now want to develop
an onllne system to sell rare and out-of-prh1t
cookbooks over the Internet. VisJtors will be able
to browse a variety of cookbooks, but they '"'lll
ha,-e to create a customer accow1t before being
able to make a purcllase. Payments will be ac-
cepted only 011.Jlne wlth a major cred.Jt card, and
the credit card will be verified before the order
can be approved. Based upo11 th.ls lnformatlon,
Identify tile main business actors.
8. In use-case modeling, once you Identify the bus•
ness actors, what perspective and L1nguage
Stakeholders and
exteroa.J users
system to see lf an item is h1 stock, and an
Actor
Primary business
actor
Prlmary system actor
Exten1al server actor
Exten1al receiver
actor
Time
should you use In defining tilem? Use that P"'·
spect:Jve and language to construct ai1 actor glossary using Agure 7-8 as an example.
9. A context diagram can llelp tremet1dously In idet1tify!ng different use cases. Prepare a higll~evel
context diagram for the Y8\l Cookbooks Web site,
using Figure 7-9 as an example.
10. TI1e next step ln requlrements use.< ase modeling
ls to identify the business requirements use cases.
What sl1ould each use case capture? What efJec-
iug 1~iv1.00. :,ale:,;
llv~ l~duti\ju~ 1-.~.u, you u~ lo iUaitify u~ 1-.~.u~:,;?
report
Wllat questions ntlgllt you ask In order to ida1tlfy
use cases? What is tl1e dtfference betweet1 a use
AUtomatlc lawn
sprinkler system
Driver purcllash1g
gasolhle with ATM
card
Bank loan authorizatio11 service
6. Wllat Is the type of relationship for ead1 of tile
following examples?
111e relationship between the use case .. Prh1t
Form,. and se,--er.il other use cases t11at
hwolve printing different types of forms.
111e relationship between a motorcyde offi..
cer and a hand.held citation writing device.
111e relationship between a cttStomer and a
sales derk who can each query the lnventory
case ai1d an essential use case?
11. TI1e third step lo use-case modeling ls to coo.
struct the use-case model diagrams. Based upon
the Y8\l Cookbooks actor glossary and conten
diagram, create a higll~evel use-case model dia-
gram, showlng tl1e lnteractions between tl1e
shopper/customer actor and the system, lndudlng searching and browsing for books, purclus-
lng, and m:u1..1ging the customer account. ,_lake
sure to st1ow tl1e relationships betweet1 the actor
and each of these use cases.
12. TI1e next step ls creatlng use-case narratives 10
document the buslness require.met1ts. Why is
preparatio11 of the narratives generally done In a
two-step process, ai1d wt1..1t are d1e.se two steps?
Based upon the preceding lllgh-Jevel use-case
Modoling Systtm RoqlAromonn with u .. ea...
model diagram, create an expanded narrative, us
ing Figure 7- 13 as an example.
13. What Is the relationship of use<ase modellng to
project management.? Why is this Important? Wl1y
are use cases ranked, and what tool is used to
taken from an artlde by Frederick P. Brooks Jr.,
who is generally considered to be one of the lead,
ing authors and contributors to the field of project
m.'103.gement and software development. Search
the Web for this artlde and for other artldes by
aad/or about Fred Brooks.
a. ln conducting your search, how many references to the author dJd you find?
b, Based upon d1e Information presented In the
prevlous d1apters, explain Brooks's statement
that "the hardest single part of building a software system is deciding precise~· what to
build."
c. W11..1t was the name of the artlde lo whid1
Brooks made the preceding statement, and
what was the artlde's mah1 theme?
d. What is Brooks's best known hook that is still in
print and widely read decades after its original
publication? What was the main theme of this
hook?
e. W11..1t do you consJder to be Brooks's greatest
contribution to date? Why?
2. The Standish Group, which was met1tloned in
Chapter 7. is an independet1t research eroup
that stud.Jes changes and trends in Information
t<ehnology. In 1994, the Standish Group p ublished
its groundbreaking CHAOS Report, which "expose[d] the overwhelming failure of rr application
de1i--elopmet1t projects lo today's ~fIS environment"
Since that time, the Standish Group has published
pe,iodlc updates to ti1elr original report. Go to
their Web sJte at ll!Wlt1.standlsbgroup.con1., and
fellow the links to their public access area, where
you can find a summary of ti1elr latest CHAOS
research report, as well as the original 1994
report Itself.
a. W11..1t crlterL1 does the Standish Group use to
detennlne whether a project succeeded, was
challenged, or fulled?
b, Based upo11 dte latest research report, wl1..1t
percentage of projects succeeded, were challenged, or failed?
26S
rank them? Who provides the input for ranking
them? W11..1t crJterL1 are used for ranking? Explain
why use.case dependencies need to he ldent!Jled,
and provlde an example. W11..1t tool is used to
identify dependencies?
@
I. At the beginning of a,apter 7, there is a quote
Chaptor Sovon
Projects and Research
c. How do these latest rates compare to the project success, d1..1llenge, and failure rates shown
In Figure 7-1 of the textbook? How wo,~d you
describe the overall trends, if any?
d. Based upon your reading and experience, wl1..1t
do you beUe,-e to be the reason(s) for the
changes in project success, challenge, and failure rates?
e. Do you thU.1k that ctln'ent project management
and system deveJopment metltodologles will remain essentially the same but contluue to be re.fined, or do you foresee the emergence of
dramatically different methodologies for managing projects and developing systems over the
next decade?
3. Select an information system used In your organli.atlon or In your scltool. IntervJew a systems analyst or designer who Is farnllL,r with ti1e system.
Based upon the h1formation provided, do the
following:
a. De.scribe the infonnatlon system and orgart.ization you selected.
b. Create a context diagram of the system.
c. Idet1tify the business actors.
d. Create an actor e.lossary.
e. Idet1tify the business requJrements essentL1l use
cases.
f. Create a use case glossary.
4. Based upon the h1formation provided regarding
the system you selected In ti1e precediog question:
a. Construct a use-case modeJ diagram that Includes all major subsystems.
b. Prepare expanded use.< ase narratives for three
of the essential use cases.
c. Prepare a use-case ranking and priority matrix,
then use It to rank and evaluate the use cases.
d. Identify use case dependencies.
e. Prepare a use-case dependency diagram.
266
Part Two
Systoms Analysis Methods
5. Search the Web or professional Journals in your
school library for research artlcles on new and
emergh1g developments in use-case modeJ.i.ng.
Select two artlcles, then do the following:
a. Provide a bibliography for each article. (Use the
format used by your school.)
b. Create an abstract in your own words for each
artlde.
c. Compare and contrast the methodologies de-
scrib<d In each article. Describe which one
you feel is more viable and/or slgnlfkant, and
explain why.
6. Conduct intervJews wJd1 several developers
regarding their views on use.case modeling. If
possible,IC)' to find developers from different organlzations and/or wld1 different lengdu of experience,
as well as clllferent types of experience (i.e., a deve~
oper who h:as experlenoe m06t.ly as a f>)'Stems an:i
lyst, one mostly as a designer, and one as a builder).
a. Desctlbe the developers that you Interviewed
ln terms of their experlence. For example, l1ow
long bave they worked In 11; what Is their area
of expertise, and how familiar are they are with
use.-0.se modeling?
Minicases
b. What Is the nature of their org.,nlzation(s)?
c. What questions dJd you ask?
d. What are the viewpoints of each developet regarding the importance and value of lise<:ase
modeling?
e. Do these developers actually en,ploy use-ase
modeling it1 their current orgart.izatlon? Why or
why llOt?
f. If they were aos of their organization for a
day, would they change their organlzation's rr
architecture regarding use-case modeUng! If
so, how?
g. Using the capability mamtity model, how
wo,~d you rate the maturity level of their organlzation? Why?
h. What conclusions, lf any, can you draw from the
interviews regarding the practical application
of use-case modeling?
i. \Vh:tt were yo\.tt views ttgarding the lmpot
tance and "-a.lue of use.~ ase modelit1g before the
interviews? OJd your views change any as a re.suit of the Interviews? If so, how dld they
dtange and why?
't"j
l. In a mincase for 01..1pter 6, you intervJewed stakeholders for an 01illne class reglst.ratlon system. In
that exercise, you were to develop an w1derstandlng of any issues and needs those stakeholders had
In regards to the systen,. Review your findings
from those lntervlews.
a. VisJt other school registration systems. Is there
any functionality or ease of use differences?
Are there any features that you tllink tl1e stakehold,rs wo,~d particularly Jil(e/dlsllke? Make
notes and create screen dump examples of
otl1er systems.
Team and Individual Exercises
I. Roundtable discussion: Do you thlnk people are always ab..<olutelj• truthful In their responses to lnter-
vJew questions?
2. Watch a silent movJe. Roundtable dlsct~Jo11: What
communication is taklng place other than words?
3, Roundtable discu~Jo11: When you determine reC(ltlrements for a $)'stem througl.1 a method sud1 as
b. Create a follow-up intervJew wlth tl1ose stakeholders you previously spoke to and determine
speclfk functionality and ease-of.use requirements for your school.
2 Create a use-case descrJptlon for at least one of
the fllllctlonallt:y requirements you found in the
previous problem. Follow tl1e example shown lo
Figure 7-10.
3. Identify all of the actors for the school registr.ition
$)'stem. Wllich uses cases wUJ ead1 lnltL1te?
4. Using your answer 10 tl,e previous problem, draw a
use<a.se diagram of the school registration sys1em.
rn
an lntervlew, you assume that the person you are
lntervJewing and collecting Information from
U,'(l1Jts the system to be successful Is th.ls always
the case? How can you handle requirements
gathering if It ls not?
Modoling Systtm Roq<lromonn with Uso Caso,
Chaptor Sown
267
~ Suggested Readings
Amblrt; Scott W. The. Object Pr1111er. New York: Cambridge
Uni,trsity Pttss, 2001. Very good information about doc·
urncnting use cases and their use.
Armout; Frank, and Gran,'lllc Miller. Atlt,.rince. use. case Atoaett11g. Boston: Addi.son·Wcslcy, 200 L This book pttscJXS
C¥cdlcnt co,tragc of the use-case modeling process.
Brooks, Jr., EP., 1987. • No Sih'dilulk-t - F.sscncc and Attidc:tts
of Software Engineering." 0>1np111.er 20(4), April, 10-19.
proc. IFIP Congress, Dublin, I~land 1986
Jacobson, J-,,ar; l\otagnus O\ristcrson; Patrik Jons90n; and Gun·
nar O\trgaard. Object-Ortenled Softtt'tlre. E11gt1Jeerf11gA use. case. Drl.ven Af)proadJ. Woddnghi.m, England:
Addison--~slC)', 1992. This book pttscnts er.tailed co,-cragc of how to idc:nti.f)• and document u.sc cases.
Lannan, Craig. AJ)J)lytng UAIL and Patterns, Upper Saddle
River, NJ: Prentice Hall, 1998. This book providc:s a cobl·
prchcnsh-c- o,tn•tC'u• of a use-case modelin@ process.
Strategio Enterpri se Plan
~
-
-
Strategi c tifonnation S,stems Plan
M l'Nt
f'flOCESSES
STATEMENT OF WORK
P R0 8t.E II S TATEIIENT
-~
.....
.....•
<••••• ••• Pl EC ES h • • •wo, a )
SYSTEII I IIPRO\IEIIENT 08JECTI VES ( • •l• t
~
E
~
II
'•=
1
I
I
t
~
ii
•
)
r
I
!
I
~
-
---....
........ ••
.........
,....,.....,.
..........
_..
......
..
.........
1111•
.,,.........
8USDl£881;8VSTEII
( Of
......
.,,...........
REQ U EST FOR SYSTEM PROP08A t. S )
...........
..,,........
.....
..
•
US&t I; SYSTEM
sa:TWAIIE OEaaM
Sf'IECIFO.'KlfS
F U NCTI ONAt. SYSTEM
SwmcN
•
I
r
.I
I
,
I
I
I
Ii
..
,
A
l •
ii •
I
I
I a.
;
I
lh I
I !
"
Sf'IECIFCATM:lfS
I
i•
I
-
!
~
ii•
TRAI NI NG MATERI A L S
:
~
I
r
OESI ON f'ROlOTYf'ES
l!IOSIIESB MX:€88
I
•
•
~
I
---
~
RECA.lfl:IIENTS
......
; ................
..........
.......
..
......
.......
.
........
'
- .............
..........
..........
........
;
I ...........
'
•
A
APf' t.l CATI ON ARC HITECT U RE
5
I
PI ECES ,, • • • • o , a )
..........
,....,...
SYSTEM PROP08At.
~
CClilM'I.MCATION!I
O U O IM COO ftCG Ul tlCMC H TO OTATCMC H T
' I
•
•
.....
.....•
....
CT]
WOMIATION
A
I
I
.............,
CUST'Clit8A T
~
Of'E RAT I ONA t. SYSTEII
..,.......
.......
......,,.,..
.......
..,.
.......
......,,.,..
f'OS T · A U OI T REVI EW
Strate"c Enterpri se tlfonnation Teeflnology AJdli tecklre
"
I
!
ii
A
I •I
~
1U
-
Data Modeling
and Analysis
Chapter Preview and Objectives
In this chapter you will learn how to use a popular data-modeling tool, entity relationship
diag,ams, to document the data that n1ust be captured at1d stored by a system, independently of showing how that data is or will be nsed- that is, independently of specific
inpu5, outputs, and processing. You will also learn about a data analysis technique called
nomJOliwtion that is used to ensure that a data model is a "good" data model. You will
knO\\' data modeling and data analysis as systems analysis tools and techniques when
you can:
I Define systems modeling and differentiate between logical and physical system
mxlels.
I Define data modeling and explain its benefits.
I Recognize and understand the basic concepts and constructs of a data mcxiel .
I Read and interpret an entity relationship data model.
I Explain when data models are constructed during a p<tject and where the models are
stored.
I CX.scovereotities and relationships.
I Construct an entity relationship context diagram..
I CX.scover or invent keys for entities and construct a key-based diagram .
I Construct a fully attributed entity relationship diagram and describe all data structures
and attrib.ltes to the repository or encyclopedia
I Normalize a logical data model to remove impurities that can make a database
unstable, inflexible, and nonscalable.
I De.scribe a useful tool for mapping data requirements to b.lsiness operating locations.
270
Part 1wo
Systoms Anclysls Methods
As the SoundStage ,_,ember Ser,Jces system project moves from requirements analysis Into logical design, the first ttsk according to their methodology is to analyze the
data requlrements for the new system. Bob ,_lartlnez remembers a favorite professor
h1 college who always sald, •Get the data right and the system will he able to ele11,,ntly
support all your present requJren1ents and evett requirements users don't yet envision~ get the data wrong and it wUI be a paJn lo the neck to meet requirements roday,
tomottow, and forever."
Bob enjoyed his database classes In college and always dld well In them. Of
course, the member servlces system is larger and more detailed than any data project
he did In school. Fortunately, he has the database from the pre>ious version of the sys.
tern to start wfth, plus forms and reports ftonl the pre\oiOllS system, plus notes from
user lntervJews, plus use-case narratives created durlng the requirements aru.lysis
phase. Sandra has asked Bob to take the first shot at p,tlllng It all together Into a logical data model. He's determined to impress her.
~~~\N
~ h_a_t_ls__
D_a_ta~ M
_o_d_e_l_in_g_?~~~~~~~~~~~~~~~~)
daoa modeling a techrique
fa- orgaiilirg M d document·
i'lg a system's data. Some·
tines caled d-ataba.se
modeling.
Systems models pfay an Important role In systems development. 11lis d1aptet wlll
present data modelliig as a tech.nlque for defining busines., requirements for a database. Data modeling is sometimes called database 1nodeling because a data model is
eventually implemented as a database.
Figure 8-1 Is an example of a simple data model called an entity relatlonsbrp
df.agran1, or ERD. This diagram makes the following business assertions:
\X'e need to store. data about
CUSTOMERS, ORDllS,
and
INVENTORY PRODUCTS.
The value of cuSTOMEt NUMBm uniguelv ldentlfles one and only one CUSTO!dER..
The value of ORDER NUMBER unique.Iv identifies one and only one ORDER, The.
value of PRODUCT NUMBllt unlquelv ldentifles one and only one INVENTORY
PRooucr.
Fo r a CUSTOMER '\\'e need to know the CUSTOMER. NAME, stUPPlNG ADDR..E'SS, BCUJNG
ADDRESS, and BAL\NCE DlfE. for an ORDER we need to know ORDER DATE and
ORDER TOTAL COST.
For an
PRODUCT UNIT Of MEASURE,
FIGURE 8 - 1
An Entity
Relationship Data
Model
INVENTORY PRODUCT
CN','E'(J'()RY PRODUCJ'
and
we need to know
PRODUCJ' UNJT PIUCE.
PRODUCT NAME,
Data Modollng and Analysis
dlaptw Eight
271
has placed zero, one, or more ctirrenr or recent ORDERS.
Alt ORDf.R is pL1ced by exactly one CUSTOMER. The value of cusTOMm NUMBf.R (as
A CUSTOMER
recorded In ORDER) Jdet1tifies that CUSTOMER.
sold one or more ORDf.RED PRODUCTS. Thus, an
Alt ORDf.R
least one
ORDf.R
must contaitt at
ORDER.fl) PRODUCT.
Alt CN\'E'ltl"ORY PRooucr may have been sold as zero, one, or more OllDERfD
PRODUCTS,
All ORDfllED PRODUCT idet1tifies a sfr1gle INVENTOR'( PRODUCT on a single ORDf.R.
The
(for an ORDfllED PRODUC'J') ldentltles the ORDER, and the
(for an ORDfllED PRODUCT) ldentlfles the INVENTORY PRODUCT.
Together, they identify one and only one ORDf.R!D PRODUCT.
ORDER NUMBER
PROD-
UCT NUMBf.R
for eadt
ORDfllED PRODUCT
we need to know
QG\NTITY ORDER.fl)
and UNfT PRICE
JJ TIME Of O RDER.
After you study this chapter, you will be able to read data models and construct them.
( System Concepts for Data Modeling
'fhere are several notauons for data modelu1g. 'the acntal model ts frequently called an
entlly relatlonsWp diagram (ERD) because It de('lcts data In terms of the entitles
and relatlonsh.ips descrlbed by the data. There are several notations for F.RDs. lttost are
named after their invetllor (e.g., am1, Martlll, Bachman, Merlse) or after a published
standard (e.g., IDEFJX). These data modeUng•tanguages• generally support the same
funclunental concepts and constructs. We have adopted the ,_lartfn Qnformatlon
engineering) notatio11 because of its widespread use and CASE tool support.
let's explore some basJc concepts that underlie ill data models.
entity relatiotlsb..ip
diagram ( EIW) a dala
modeluti2fngseveral nolab'ls
t> depict dala i"I terms of
the entities aid relationsh.,s
desaibed by !hat data.
> Entities
All Sj'stems contain data- usually lots of data! Data describes "things." Consider a
school ~·stem. A school system indudes data t11..1t dtscribes things such as snromrs,
TEACHERS,COURSES, and CLASSROOMS. For any of d1ese thlng.1, lt is not diffiC'ltlt to imagine
some of the data tl1..1t descrlbes any gtven Instance of the thing. For ex.ample, the data
tl1..1t describes a pardctdar student might lndude NA...t,IE,ADDR.ESS, PHONE NU\.iBER, DATE Of
BtR'Jli, GENDER, RACE, MAJOR, and GR.A.DE POINT AVERAGE, to name a few.
We need a concept to abstractly represent all htstances of a group of slmJlar
thin~. We call this concept an entlry. An entity Is somethin,a about which the business needs to store data. In system modeling, we find ft useful to assign each abstract concept to a shape. In this book, an entlry will be drawn as a rectangle with
rounded corners (see margin). Tilis shape represents all instances of tl1e 11amed
entlt)'. For example, the entity STUDENT represents all students In the system. TI1us,
an entity identlfles spedJlc classes of entitles and Is distinguishable from the other
entitles.
Categories of et1tltles (and examples) Include:
Persons:
AGENCY, CONTRACTOR,CUSTOMER,OEPAR'fME'llr, DMSION, EMPLOYEE,
INSTRucroR,snro~ SUPPUER. Notice d1..1t a person entity class can
represent ind.JvJduals, groups, or org.ut.izatlons.
Places:
Objects:
entity a dass of persons.
i:,aoes, objeC"S, evens, a
ocnceptsabout M'lic:h we
need t> caplJre aid stcre
data.
SALES REGION, BUILDING, ROOM, BRANCH Of'FICE, CAMPUS,
BOOK, MACHINE, PART, PRODUC'I;, RAW MAt'aUA.1., S0fTW,\R£ LICllllSE, SOFTWARE
PACKAGE,TOOL, VDilCI.£ MODEL, VEHICLE.•\n object entity can represent
actual objects (sud, as a speciflc software license) or spedllcatlons
for a type of object (sud, as specllkatlons for dlfferent software
packages).
Events:
APPUCATION,AWARD, CANCEU.ATION, CLASS, PLIGHT, INVOICE, ORDER,
Concepts:
ACCOUN'J;. BLOCK OflTIME, BOND, COURSE, fUND, QUAUfllCATION, STOCK.
REGISTRATION, RENEWAL, REQUISITION, R&RVATION, SA.I.£,TRJP.
An E.nllty
272
Part 1wo
Systoms Analysis Methods
It ls important to distingti sh between an entity and Its inSlances. An etttlty
entity i.osta.OCe a s.'gle
occurence of an entity.
b1Staoce is a single occurret1ce of an et1tlty. For example, the entity STUDENT may ba,-e
multiple Instances: Mary, Joe, ~brk, Susan, Chery~ and so forti1. In data modeling, we
do not concent ourselves with lndtvidual students because we recognize that each
student Is described by slmllar pieces of data.
>
attribute a atsat,iw
property a c:h.wacteristie of
an entity. Syncnyms i'd.Jde
olomM! propiNfY, and fold.
Attributes
If an entity ls something about wtlich we want to store data, then we need to Identify
what specific pieces of dam we want to store about ead1 instance of a gtven entity. We
call these pieces of data attributes. As noted at the beglnnlng of tills section, each to.
stance of the entity STUDENT might be described by the following attributes: NA.'°',
ADDRESS, PHONE NU-.mER, DATE Ofl Jm'Jli, GIN)~. RJ£E, MAJOR, GR.A.DE POINT AVflV.GE, and others.
\X'e can now extend our graphical abstraction of the entity to lndude attributes by
recording those attributes Inside the et1tity shape along with the name (see margin).
Some attributes can be logically grouped Into superattrlbutes called compo,utd
attributes. For ex.ampJe, a student's NA...\ffi ls actually a compound attrlbure that consists of LAST NA...\iE, flCRST NA...\iE, and MIDDLE INtTlAL. In the margin, we demonstrate one
po:s:si!Jlt' uulatiuu fur c.:u1upvunU att.riliutc-.:,, Nolh.:~ l11al <l pt'riOU b pl;u:t'O <ll llu~
beginning of each prlmltlve attribute that Is lnduded In the composite attribute.
Domains When analyzing a S,'Stem, we sholdd define those values for an attribute
thar are Jegltimate or thar make business sense.The "-alues for each attribute are de-
Atult1Jte8 and
Compound AnrlbUtea
compouod 2.ttribute
fined In terms of three properties: data type, domain, and defa,dt.
The data type for an attribute defines what type of data can be stored In tllat attrlbute. Data typing should be iamlllar ro those of you who have wrlttetl computer
programs; dedarlng types for variables is commo11 ro most programming languages.
For purposes of systems ai1..1lysJ:s and busfr1ess requirements definition, ft ls useful ro
declare logical (nontedmlcal) data types for business attributes. For the sake of argt•
met1t, we will use the logical data types shown In Table S. I.
An attrlbure's data type con.,-uains its domain.111e domalo of an attribute defines
what values the attribute can Jegltim.ateJy take 011. Eventually, system designers must
use tedmoJogy to enforce the business domains of all anrlbures. T.'lble 8-2 demonstrates how logical domains mlght be expressed for each data type.
M
allribule that consists of other
allribules. Syncnyms i"I ciffer·
TA a LE
ent data modeing languages
are nl.fflerous: concat9f'lat9d
atribus, compos#e attibut9,
and CMta stuctur9.
Logicol Data Type
a· 1
Nl.MBER
lEJ(T
data type a properiy of an
allribule that identifies What
type of data ca, be stored i"I
MEMO
the attribute.
l);.JE
domain a prq:,erty of M
allribule that oefines What
values the attribute can
legiimatety late en.
TI/,E
>ES/NO
VALUE SET
Representgtive 1.ogicgl Ogtg Types for Attributes
Logical lu1ines1 Meaning
Any l'll.lfflber, real or integer.
A string of characters, inclu$ive of nlN'l'lbers. When number$ are
indudocl in a lEJ(T attribulo, it moans wt> do nol o,q,ect lo peri:,m,
arithmttic or comparisons with tho$e numbers.
SOO'le as 1EXT but of an indeterminate $ize. Some busine$S
n,quiro lho ability to attach p-.tially lengthy nolos o
a given dalabaw rooord.
Arry 0018 in any format.
Arry timo in any format.
An attribul<> that can aswmo only ono ol lho,o two Y<Jlu...
A finito sol ol valuo,. In mo,t ooso,, a cooing sch.mo would be
ostobli,hed (o.g., FR = fr.. lvnan, so = ,ophomore, JR = junior,
SR = senior, etc.),
Any pi:ture or image.
,ystom,
Data Modollng and Analysis
dlaptw Eight
273
,. TABLE 8 - 2 Representative logical Domains for Logical
Data Types
O..ta Type
N""'WI
Domain
For integers, ,pecily the range:
Examples
{10-99}
{minimoo,-maximum}
For real numbers, specily the range and proci~on: {1.000- 799.999}
{miniml.NT'l.preci$1on-moximl.N'n,preci$1on}
1EXT
1EXT (maximum ~ze of attribu19)
Actllal valuo, ore uwolfy irlinil&; how..vo,; "" "'
may specify catoin narrative restriction,.
TEXT (30)
MfJNO
Not opplicobls. Th9reon, no logical n,stri..-ion,
on siz e or comrnt.
Not applicable.
Variation on the 1'NAOOY'YYY form at, To
MMOOYl'YY
O..TE
oc:commodote the yeor
abbrevial<> }'90 r lo VY.
TIME
2000, do not
Formatting charac19r, are rarely slored;
there/ore, do nol include hyphen, or sloshes.
MMYl'YY
\'YYY
For IWI/ FM time,:
or
For military time$:
HHMMT
HHMMT
HHMM
HHMM
>ES/ NO
{YES, NO}
{YES, NO} {ON, Off}
\:ALUE SET
{value#l, value#2, ... value#n}
or
{toble of codes and meanings}
{FRESHMAN, sa>HOMORE, JUNIOR, SENIOR}
{FR = FRESHMAN
SO = SOPHC\l,OORE
.R = JUNIOR
SR = SENOlt}
....a
Not opplicobls; how..vo,; any known
choroctaislic, of the images will eventoolly
prove useful lo doot,119rs.
Not applicable.
"
Finally, every anrlbure should have a logical d efault value thar represents the
value of an attribute If its value ls not specified by the user.T.,ble S.3 shows possible
default "-alues for an anrlbure. Notice thar NOT NUU ls a way ro specify that each
inSlance of the anrlbure must haE. a "-alue, wh.lle NtLL ls a way ro spedfy that some
instances of the attrlbure may be optional, or not have a value .
Identification An entity h ..,s many lnstanc es, perhaps thousands or millions. There
exists a need to uniquely identify ead1 lnstance based on the data value of one or
more attrlbutes.111us, every entity must ha,--e a key. for example, each it1Stance of the
e ntity sruoENr might be uniquely lde11tlfled by the key sruoENr NUMBER attrlbme . No
two students can have the same sruol:NT NU\.iBER.
Sometimes more than one anrlbute ls required to uniquely identify an lnstance of
an entity. A key consisting of a group of attributes ls called a concatenated key. For
example, ead1 DVD entity instance In a >ideo store might be uniquely ldentlfted by the
default value the wlle that
~ be reocrdedif a value is
notspeciSed by the user.
key M altib.Jte, o r a grol.l)
of attributes, that assunes a
uiique valJe tu each entity
i'lstance. ft is sanetmes
caled an id9rtif:9r.
coocateo.ated key a gol.l)
of attibutes that u,~ety ttentiSesan i'lstaice of an entity.
Synonyms inclJde compost•
lrsyand rxmpoondkr,y.
274
Part 1wo
Systoms Analysis Methods
TA a LE 8 - 3 Permissible Default Values for Attributes
Default Value
Interpretation
voos
For an instanoa of the attribute, if
he user does not specify a value,
hen use thi1 value.
For an instanoa of the attribute, if
he user does not specify a value,
hen IOCM1 it blank.
For an instanoa of the attribute,
"'quires lhat ,tu, user enter a legal
volue from the domain. [This is used
when no value in the domain is
common enough lo boa delault
but some "'1iue must bo enl9red.)
from ,tu,
domcrin (m d..aibed
A lsgal
obovs/
NONE or NUll
REQUIRED or NOT NUll
concarenauon of
Trrt.£ NUMBf.R plus COPY NUMBf.R. ' I'm.£ NUMBf.R by
Examples
0
1.00
FR
NOI-E
NlA.L
REQUIRE:)
NOT NJ!
ttself would be tnad-
equate because the store may own many copies of a single title. Copy NUMBER by itself
would also be h1adequate since we presumably have a copy # I for every tlde we ow11.
We need both piec es of data to ide11tlfy a spec lflc tape (e.g., copy #7 of Star Wars:
Reve11ge of the Sith). In this book, we will give a name to the group as weU as tl1e
fr1dl:vidual attrlbutes. For example, the concatenated key for ovo would be recorded as
follows:
°"" ID
.nTLENUMBF.».
.COPY NUMBER
Frequent.I)•, an entity may ha,1! more tlun one key. For ex.ample, the entity E.\IIPLOYEE
may be uniquely Identified by !OC!AL Sf.ClllUTY NU'1llDI, or company4.ssigned
NU\IIBf.R, or &MAIL ADDRESS. Each of these attributes is called a c.a11dtdate ~ A caodld..1.te
key Is a •candldate to become the primary key" of instances of an ei1tlty. It ls sometimes
called a ca1ulfdate fde11..tlft.er. (A candklate key may be a single attrlbute or a concatenated key.) A prim.-u-y key Is that candidate key that will most commonly be used to
uniquely identify a single entity Instance. The defat~t for a primary ker is always Nor
NUU because lf the key has no "-ih1e, it cannot serve lts p urpose to Identify an l.n.&ance
of an entity. Any candidate key that Is not selected to become the primary key Is called
an alternate key. A common eynonym ls secondary key. ln the margh1, we demonstrate our notation for primary and alternate keys. All candidate keys must be either
primary or alternate~therefore, we do not use a separate notation for candidate keys. All
attributes that are not part of the primary key are called nonkey attributes.
Sometimes, it is also necessuy to identify a subset of an entity's lnstances as opposed to a single Instance. For example, we may require a simple way to identify all male
students and all female srudents.Asubsetthig criteria is an attribute (or concatenated
attrlbute) whose flnlte values dJ1iide all entity lnstances loto useful subsets. This ls !ometlmes referred to as an In.v ersion e,1-try In our STUDENT entity, the attrlbute G&l'Df.».
dh-ides the h1Stances of sruomr into two subsets: male srudet1ts and female studenrs.
In general, subsettlng criteria are useful only when an attrlbute has a B..nite (meullng
..lhnitedj number of legitimate mlues. For ex.ample, GRADE POCNT AV'flV.GEwould not be a
good subsetting criteria because there are 999 possible values between 0.00 and 4.00
for that attrlbute. The margin art demonstrates a notation for subsettlog crfterla.
1
caodidate key one of a
nLmber of lt:tys that may
serve as the pli'nary key of an
entity. Also called canddate
identifier.
ptima,y key a CMcldale
key that WI rmstcommorfy
be used to uri=l!Jety ideni fy a
s.'l~e entity irstaice.
alter-oate key a cancidate
key that is not selected to
become !he pm,ary key. A
syncn)ffl is S9COflda.ry kQf.
su bsettiog criteria
M
allribule(s) W'lose irite values
dMde entity irstaices i'lt>
subses. Scmetmes ca.led
in~rsion ertry.
>
=•
Relationships
Conceptually, entitles and attrlbutes do nor exist in isoL1tio11. The things they represent interact with and impact one another to support the business mission. TI1us, we
Data Modollng and Analysis
dlaptw Eight
27S
introduce the concept of a relatlonshJp. A relationship is a natural business association that ex.lsts between one or more entitles. The reL'ltlonshJp may represent an e,--enr
t11..1r links the entities or merely a logical a.fflnlty thar exists between the entitles. ConsJder. for example, the entitles STUDENT and CURRlCUUl\.l. We can make the following
business assertions that link students and courses:
• A
•
current snromr ,s FNJOI JFD IN one or more
A CUllRlCULUM IS BECNG STUDIID BY
CURRJCUL\.
zero, one, or more
STUDENTS.
The underlined verb phrases define bush1ess relationships tl1at exist between the
two entities.
We can graph.ically illustrate tllls assodatlon between STUDENT and cuarucUWM as
shown In Figure 8-2. The connecting line represents a relatlonshJp. Vetb phrases describe tl1e refatlonshlp. Notice that all relationships are lmpllcltly bidirectional, mea,~
Ing they can be Interpreted In both directions (as suggested by the above business
assertions). Data modeling methods may dllfer in their namlng of reL1tlonshlps- some
Include botl1 verb phrases, and otl,ers include a single verb phrase.
Cardinality Agure S.2 also shows the complexity or degree of eacll relationship. For
example, if we know how to read it, Figure 8-2 cnn answer the followlng questions;
?.lust there ex.1st an lnstance of STUDENT for each it1Stance of cuarucUWM? Nol
blust there ex.1st an lnstance of CUJlRlCULU\.t for each lnstance of STUOEN'J'? Yes!
How many instances of CUR.RICUUl\.t can exist for each hmance of sruomt? ,_lany!
How many Instances of STUDENT can exist for etch lnstance of OJRRJCUUl\.t.?
Many!
We call this concept card/11.alf.ty. Carclloallty defines the mJnlmum and maximum
number of occurrences of one entity t11at may be related to a single occurrence of
the other entity. Because all relatlonsh..lps are bJd..lrectlonal, cardinality must be defined h1 both dlrectlons for every relationship. A pop,tlar graphical notatlon for cardinality is shown in Figure 8-3. Sample cardinality symbols were demonstrated In
Figure S.2.
Conceptually, cardinality tells us the following rules about the data e11tities shown
In Figure S.2:
Ke.,. and 9J baet.11 ng
Crltetfa
relationship a natural b.Jsiness association between one
a
more entities.
cardinality tte minim.Jm
M d maXim.Jm rumber of
occurrences of c:ne entity that
may be related IO a M~e
occurrence of tie otler enity.
When we insert a STUDENT instance In the database, we must Unk (associate)
th.at sruol:NT to at least one instance of cuwcmUM. In business terms, «a student cannot be admitted without declaring a major.· (Most scl1ools wottld
Include an inslance of CUllRlCULUM called "tmdeclded" or «undeclared.")
A sruoENT can study more tl1..1n one CURRJCULUM, and we must be able to store
data that indicates all CURJUCULA for a gtven snma,,rr.
We musr insert a cuwcutUM before we can litll: (associate) sruol:NTS to that
CURRJCUWM. TI1..1t is why a CURJUCUWM can h.ave zero students- no students
have yet been admitted to tl1..1t CURJUCUWM.
Once a CURRJCULUM h.as been inserted Into tl1e database, we cut link (associate) many sruomrs with that CUJlRJCULUM.
Degree Another measure of the complexlty of a data relationship is Its degree. Toe
degree of a reL1tlonshlp is the number of entitles !11.11 partlclpate In the relationship.
All the relationshlps we·ve explored so far are binary (degree
2). In other words,
two differe11t entitles participated In the relatlonslllp.
=
degree the nunber of
entities that p.w~ate i'I a
relationsh.,.
r FIGURE 8-2 '
A Relationship
'- (Many-to-Many)
276
Part 1wo
Systoms Analysis Methods
FIGURE 8 - 3
Cardinality
Notations
CARDINALITY
INTERPRET ATIOt
.........
INSTANCES
IIA,a-
GRAPMC
lNSTANCES
Nor Ano.
Ex.acuy one
(one and o,uy one)
-« -
0
21:!roorone
many(>1)
One or more
21:!ro,one,,ormcre
More than one
0
many(>1)
>1
>1
1_1
1
i'lstMcesof tM sane entity.
Relationshlps may also exist between dllferent Instances of d,e same entit)'. ~e call
thls a recursive relatlonsWp (degree I). For example, In your school a course may
be a prerequisite for other cotmes. Slm1L1rly, a course may have se,. eraJ
.
other courses
as Its prerequlslte. Figure 84 demonstr.1tes thls many-to.many recursive relationshlp.
RelatlonshJps can also exisl between more than two different entitles. The.se are
sometimes called N-ary relationships. An example of a J-ar)~ or ter,,ary: relatto·RSbf.p
associative tntity
is shown In Agure 8-5. An 1V-.1ry relationship ls IUustrated wJth a new entity conru-uct
called an associative eutit)i An associative entity is an entity that Inherits its
primary key from more ti1an one other et1tity (called parents). Each part of tha1 coo-
recursiVe reJatiooship a
relatm~., tlat e>fst:s b:ttMen
M
enity
that irtlerils il! ptmary key
from more than one other
enlily.
=
carenated key points to one and only one itutance of each of the connecting entitles.
In Figure 8-5 the as.,odatlve entity ASSIGNMENT (notice the wlique shape) matches
an EMPLOYEE, a J.OCAnoN, and a PROJ-f.CT. For ead1 inSlance of ASstGN.~ the key
' FIGURE 8 - 4 '
.
..
A Recursive
'-
18 a prere(J.lla.lte tor
Relationship
h as as a prerequla.lte
Data Modollng and Analysts
...
277
Chaptor Eight
FIGURE 8·5
--
A Ternary
Relationship
requires
la given
offers
indkates wbidt E.\.'IPLOYEE co, which LOCATION NU\.tBER, and whlcb PROJOCT NU\.tBER are
combined to form tl1.1t assignment.
Also as shown ln Ftgure 8-5, an associative entJty can be described by Its own
nonkey attributes. In addition to the primary key, an ASSIGNMENT Is described by the
attributes BEGIN DATE and END DATE. If you thlnk about it, none of these attributes
describes an EMPLOYEE, LOCATION, or PROJOCT- they descrjbe a single lnstance of the
relationshJp between an instance of each of those entitles.
foreign Keys A relationship Implies that instanc es of one et1tlty are related to Instances of another entity. lX'e should be able to identify those instances for any gt,--en
entity. 11,e ability to identlfy specilk refated entity instances hwolves establishing
forelgu keys. A foreign key Is a primary key of one entity that is contributed to
(duplicated In) another entity to ldentlfy instances of a relationshlp. A foreign key
(alw,ys In a child entity) always matd,es the primuy key (hl a parent entity). In
fjgure 8-6(.a), we demonstrate the concept of foreign keys with our simple data
model. Notice that the maximum cardJ.nallt:y for DD'ARf?JE\IT is"one," whereas the maximum cardinality for CUJUUCUWM is "many." In tllis case, DEPARTMENT ls called the parent
entity and CURRJCUWM Is the child entity. The primary key Is always contributed by the
parent to the child as a foreign key. Thus, an Instance of CURRICUWM now has a forefgn
key DEPAR.TME'tl' NA...>,.iE whose 1t"'alue polnts to the lnsta11ce of DEPAR'l'ME'n' that offers that
currk.."ulum. (ForeJgit keys are never contributed from child to parent.)
foreign key a prmary key
of a, M i ty that is used rl
mother entity t> identify
rlstancesof a relationship.
child e-otity a dala m i ty
that derives one or rroe attributes from aiother entity,
c.aled the pa-art. In a one·tomany relationshi) the c:hld is
the entity on Ile "many" side.
pareot eotiry a data entity
lhatcontributesone a more
attributes to another entity,
c.aledlhe d'll d.ln a one-kl·
many relationshi) the parent
is the entity on he "one" side.
278
Part 1wo
Systoms Analysis Methods
(a)
PARENT
ENTITY
t
( MAXlMUMCAAOINAU1Y • 1)
(MA»MUM CAAOtNAUTY • MANY)
CHILD
ENTITY
"!"'!........
..------,~,1~i
"1 li i i i::~·• a,
1111• cl I I•·
(b)
contaJna
••
...
IOC8ted
In
G
GURE 8 - 6
ForeignKeys
nooidemiJ\,tilg
relationshiJi a refationsh.,
i'I wtich each p.w~tirg
entity has is <1N1l i"ldependent
prim.wykey.
------~)
In our example, the relationship between CUJlRICUWM and DEPARTMfNT is referred
to as a nonldentl.fytng relationship. Nonldeutlfylug relatlousWp.s are tha,e In
wbid1 each of the partldpatlt11 entitles has its own lodepe11de11t primary key. In
other words, none of the prlmary-key attributes is shared. The entitles CU1lRICULU'1 and
DEPARTMEW are also referred to as stro11g or Independent entitles because neither depends 011 any other etttlty for Its identlllcatlon. Sometimes, however, a forelgn key may
partldpate as part of the primary key of the child et1tlty. For example,ln Figure 86(b)
the parent entity BUILDCNG contrlbures its key to the entity ROOM. Thus, BUILDCNG NAME
serves as a foreign key ro reL1t e a ROOM and BUILDING and in conjtmctlon with RO:>M co
Data Modollng and Analysis
AEU110HSHIP
279
STRONG
STRONG
ENTITY
ENTITY
, FIGURE 8 · 7 '
FLIGHT
No tations for Weak
Entity and
No nidentiiying
,_ Relationship
PASSENGER
P•Nf'191J'IO CPm.ry Key)
PMNf'l9(r-Narne
(odw lll.. lbut• of PASSEWGER)
NON II! NnFYING
dlaptw Eight
rlght-~W(PM'llry Key)
right· Dflle·Of·Oe perture
~ett'lbut• of FLIGHT)
ID!NnFYING
1
AEUTlOHSttP
.....
.. •
I
l ....
i
WEAK
ENTITY
to unlquely Identify a given Instance of ROOM. In tho,e situations ti1e relationship between the parent entity and the dilld entity ls referred to as an lde11..tlfyl11g relatto1~
ship. Ide ntifying refatlonsWps are those In whlch the parent entity contributes Its
prltmry key to becom e part of ti1e primary key of the child et1tlty.The dilld entity of
any Identifying relationship is frequently referred to as a weak e11tr.ty because lts ldet~
tificati.011 ls dependent on the parent entity's ex.lstence.
btost popular CASE tools and data modeling methods use different notations to
distinguish between ldentlfylng and nonldet1t!fying relationships and between strong
and weak e ntitles. In Figure 8-7, we use a dashed lt11e notation to represent the non-
identifyuig rdat ionsllip
a relaioosl,.:, i'I W'lich the
parent entity's key is also part
of the prinwy Illy o f tie c:hld
entity.
identJfying relationship between PAS ~f.R and s&.T A$1GN.\.W'llr. Because part of the prJ..
mary k ey of SEAT ASSIGNMENT is the foreign key FUGHr NUMBf.R from the parent e n rtty
ruGHr, the relationship is an ldet1tlfylng relationshlp an d Is represented using a solid
lt11e. Finally, sear assignment ls a weak enrJty because It receJ,--es the primary key of
flight to compose Its own primary key. A weak entity Is represented using a symbol
composed of a rou.,ided rectangle t1Jltbl11 a rou.,uk?<} rectangle.
NOTE: To reinforce the above concepts of Identifying and nonldet1tifying relatlonshJps an d stro11g versus weak entitles and to be consistent with most popular
data modeling methods and most widely used CASE tools, the authors use the
abo,--e modeling notations on all subsequent dau modeling examples presented
In the book.
W11at lf you cannot differentiate between pare11t an d child? For exampJe, In
FJgure 8-S(a) on page 280 we see that a CURRICULUM enrolls zero, one,or more sruofNTS.
Ar the same time, we see thar a sruomr is enrolled in one or more CURRICULA. The maximum cardinality on both sides Is •many.• So, which Is the parent an d whld1 is the child?
You can't tell! 11lis Is called a 11011specijlc re/aN011ship. A n on specific relaUonshlp
(or many-1~111a11y relaff-01,sbtp) ls one lo which many Instances of one entity are
associated with many Instances of another entity. Such relationshlps are sultable only
for preliminary data models and should be resolved as quickly as possible.
o oospecific relatioosbip
a relaioo~ W'lere mr.'tj
i'ls1ancesof M entity .we
associated 'Mth mcW'ly i'I·
stMces of Mother entity.
Nso called tn817f-lo.many
rolationship.
280
Part 1wo
Systoms Anclysls Methods
(a)
Many..to..Many Relationship
........................
.... ........ .... .. ... .-··
.-·..... ......... .
-··
~
,,...·
,..'
,,
,,
,'
'' ,
!'
re placed by
''
''
.
.:''.
..'.
.'
•.
.•
I
(b)
'
declared
......
...
...
.'.
'\
...
replaced by
..
..
..
.....
.•.•
\
~
'
haa
"
FIGURE 8 • 8
•
t .• .
Resolving Nonspecific Relationships with an Associative Entity
Many nonspeclJk relationshlps can be resolved Into a pair of one-to-many relat!onshlps. As Illustrated !11 Figure 8-S(b), each entity becomes a parent. A new, assoc!"'
tlve e11t11y ts Introduced as the dilld of each parent. In Figure 8-S(b), each Instance of
MAJOR represents one STUDENT'S enrollment ln one CUliUUCUlll\.t.. If a student is pursuing
two majors, that student wUJ h..1,;e two lnst:ances of the entity MAJOR.
Stt1dy Figure 8-B(b) carefltl~f. For associative et1tit!es, t!1e card!nalJty from d1ild to
parent ls always one and o nlv one. That makes sense because an instance of MAJOR.
must correspond to one and only one sruomr and one and only one CUR.RICULU\t. The
card!nallty from parent to child depends 011 t!1e business rule. In our example, a
STUDENT must dedare o ne or more MAJORS. Conversely, a CURRlOIWM Is being studied by
zero, one, or more MAJOR.5- perllaps it is new and no one has been admJtted to it yet.
An associative entity can also be described by lts own nonkey attributes (such as DATE
a,,moJLEO and CUR.RENT CANOIDAn FOR DEGREE?). Finally, associative entitles inherit the
prlmary keys of the parents; thus, all assoc.L1tt,--e entitles are weak entitles.
Not all noospec-lflc relatlonshlps can and should be automatically resolved as
described above. Occasionally nonspeclJk relat!onshlps res,tlt from the failure of the
analyst to identify the existence of other entities. For example, exantlne the relationship between cusroMER and ••ooucr In Figure 8-9(a). Recognlze that the relationship
Data Modollng and Analysts
(a)
281
Chaptor Eight
Many-lo-Many Relationshi p
....
-.
~
··===!)
:!i:ii!::il:!l•
1:10- - - - -ordera- - - -<
''
relationshi> oometimes suggests other entities. In this
The wro or wro pl,rase of a many-to-many
exarrl)le the many-to-many is resolved by recognizing
that the verb "orders" adually suggests anwont •ntity
cafledORDER that relates CUSTOMERs to
PRODUCTS. Notice that the new many-to-many
relationshi> between ORDER and PRODUCT would
need to be reoolved.
(b)
•
..
p1a...
..
•
• I
• .
(c)
•
j•
• • •
contains
• -
1·
Gan be reso4wd with an associatiw entity.
paces
•-
.........
F I G U RE 8 • 9
I
Resolving Nonspecific Relationships by Recognizing a Fundamental
Business Entity
j•
·•
282
Part 1wo
Systoms Analysis Methods
(a)
Many-to-Many Relationship
BANK ACCOUNT
-
....,,,,., ID (Pm,e,y Key)
etc.
While the above relationship is a many-to-many, the many
on the BANK ACCOUNT ~ide is a knoYAl maximum of
'2". This suggests that Iha relationship may ac:tually
represent multiple relalionshi>s ... in this case l\'oO
$epttrate r8Jation:;~& .
..
.
(b)
t
from
BANK ACCOUNT
Acoold NLwnbet 10 (PITl'lfllY Key)
ts
de
e<c.
to
F I GU R E 8 • 1 0
Resolving Nonspecific Relationships by Recognizing Separate Relationships
Morders~ between CUSTOMER and PRODUCT suggescs an event abouc wtl.ld1 a user mlghc
want to store data.1bat evenr represents an event entity called ORDER depicted in FJg.
u.re 8-9(b). In reality, cusroMn aod PRODUCT do 11o t have a naturaJ and direct rehtlonship as was depicted h1 Figure 8-9(a). Rather, they are related Indirectly, by way of an
oRD,:a. Thus, our many«>-maoy relationship was replaced by separate relationships between CUSTOMER, ORDER, and PRODUCT. Notice that the reL1tlonshlp between ORDfJl and
PRODUCT ls a many-to-many reladonsllip. 111..1t relationship would need to be re.solved
by replacing it with an assodatlve entity and two one-to -m.my reL1tio11sbips, as is
illustrated In Figure 8-9(c).
Finally, some nonspecific relationships can be resolved by lntroduch1g sepante relationships. Notice the many-to-many reL1tlonsllip between TRANSFER and BANK ACCOUNT
show11 in Figure 8-lO(a) . Wh.lle it is true that a TRANSFER transaction ln,--ol"-es many BANK
ACCOUNTS and a BANK ACCOUNT may be lnvoJved in many TRANSf!Ell transactions, we must
be careful! Data modeling notations can sometimes mlsJead us. Technlcally, a single
'fRANSFEll
transaction lnvoJves two
BANK ACCOUNTS.
When we know the sped.fie maxi-
mum number of occurrences of a many-to-many reL1tlonsllip,lt oftett suggests tlut our
original relationship is weak or coo l!l'neral. Notice In Figure 8-JO(b) tbat our rel,tiooshlp "ln,--olves• was replaced b)• two separate one-to-many relationships that more
accurately describe the business reL1tlonsh.ips between a TRANSFER. and BANK ACCOUNTS.
Data Modollng and Analysis
Generali::tation ~tost people as.,odate the concept of generaUz.ation with modern
object-oriented techniques. In reality, the concepts hive been applied by data mode~
ers for m.u1y years. Generalization is an approad1 tbir seeks ro discover and exploit
the commonalitfes between entities. Genera.Uzation is a technlque whereht the
attrlbutes thar are common to several types of an entity are grouped lnro thelr own
enti~·. Consider, for example, a typical school. A school eivolls SWDENl'S and employs
EMPLOYEES (in a universJty, a person could be botl1).111ere are several attrlbures d1ar are
commo11 ro both entitles~for example, NA...\ffi, GENDm, tACE, MARITAL STAl'US, and posslbly
e,-en a key based on SOCIAL sr.cuarrv NUMBER. \X'e could coosoUdate these common attributes Into an ei1tlty supeitype called PERSON. An entity supertype Is an entity
whose instances store attributes thar are common ro one or more et1tlty subtypes.
The entity superrype will have one or more 01:e-to-01ie relationships to entity
su.btjpes. These relatlonshJps are sometimes called ..is a,. relationsh.ips (or "Was a," or
.. could be a") because each lnslance of the supertype "ls alS2 an,. Instance of one or
more subtypes. An et1tlty subtype is an entity whose instances lnherlt some common
attrlbutes from an entity supertype and thet1 add other anrlbutes tl1at are wlique to
an instance of the subtype. In our example, "a PERSON Is an employee, or a student, or
both~11,e top half of Figure S.J i lllustrates this generJUzation O as a hleiarchy. Notice
tlmr dlc subtypes S'l'UOCN'l' and
C.'lil>'L OYOZ
have lohcrltcd attributes f.rom
PCR30N,
as well
as adding their own.
Extending the metaphor, we see that an entity can be both a superrype and a subtype. Retunling to Figure 8-11, we see that a sruomr (which was a subtype of Pms<>N)
b ..,s its own subtypes. In the dL1gram, we see that a STUDENT ls O either a PROSPECT, w: a
ClfRRi!NT snroa,,rr, m: a FOR..\U:ll sruomr (ha"ing left for any reason other than graduation), and O a sruoENr cot~d be an ALUMNUS. These addltlonal subtypes Inherit all the
attrlbutes from STUOl:NT as well as those from PERSON. Finally, notice that all subtypes
are weak entitles.
Through lnherJtance, the concept of get1eraliz.ation in dam models perm.its us to
reduce the number of attrlbutes througl1 the careful sharing of common attributes.
The subtypes not only Inherit the attributes but also the data types, domains, and
defaults of those attributes.111is can greatly enhance the consistet1C)' wlth wtlich we
treat att:rlbutes that apply to many different entities (e.g., dates, names, addresses,
curttnC')', etc.).
In addition to lnhetltlng attributes, subtypes al,o lnhetlt relationships to othet
entities. For it1Stance, all E.\IIPLOYEES and STUDENTS inherit the relationship O between
PERSCN and ADDRESS. But only EMPLOYEES Inherit the relationship 0 with OONTRACrS. And
only an ALUMNUS can be related to O an AWA.llDED DEGREE.
( The Process of Logical Data Modeling
Now that you w1derstaod the bas.le concepts of data models, we can ex.amine the
process of data modeling. When do you do It? How many data models may be drawn?
What technology exists to support the process?
Data modeling may be performed during various types of projects and In multiple
phases of projects. Dara models are progressive~there is no such thing as tl1e .. flnal,.
data model for a business or application. Instead, a dira model should be considered
a Uving document that will change in response to a changing business. Dara models
shot~d Ideally be stored In a repository so that they can be retrieved, expanded,
and edtt:ed over time. Let's ex.am.Joe how data modeUng may come into play during
systems planning and analysis.
>
Strategic Data Modeling
,_lany organizatio11S select application development projects based on strategic h1formation systems plans. Strategic platmlng ls a separate project.11lls project produces
dlaptw Eight
283
geoeralllatioo a ocncept
Wherei"I the attributes that ae
common t> se'll«al types of
M eni ty are grooped i"lto
their OW'I eni ty.
snpenype an enily
""°"'
i"lstancesstore attibutes that
.we common kl one or more
entity subtypes.
subtype an ertity Whose i"I·
stMces may i"lt'erit common
attri butes from its eni ty
~«type.
284
Systoms Anclysls Methods
Part 1wo
·,;
.
.....
CC!UB cted at
ADDRESS
(attribut11s omt8d)
0
0
....... ......... oy·-,0.
...
0
1---<• •
CURRENT STl.DENT
1 - - -laa
could De a
FORMER STUDENT
' - - -la•- -
al attnbutl!s from PERSON Uld STUDENTplua
Ree:aon fo, Wlltch.war
Plan& to Return?
• 11:i•••
CF I GU R E 8 • l l
AGene ralizatio n Hierarchy
)
~~~~~~~~~~~~~~~~~~~~~---
an infonnation $)'stems strategy pL1n that defines an overall "islon and ardlitecrure for
frlformatlon systems. Almost always, this architecture includes an et1.terprlse data
mode£ Information engineering is a methodology that embnces thls approad1.
An enterprise data model tj'plcally ldentlfies only the most fundame ntal of e ntf.
ties.T he e ntitles are typically defined (as In a dictionary), but they are not described
Data Modollng and Analysis
dlaptw Eight
28S
in terms of keys or attrlbutes. The enterprise data model may or may not Include rela-
tionships (depending on the planning methodology's standards and the level of detail
desired by executive mai1..1gement). If relationships tre lnduded, many of them will
be nonspeclflc (a concept introduced earlier in the chapter).
How does an enterprise data model affect subsequent appUcatlons development?
Part of the information strategy plan identifies application development projects and
prioritizes them accord.fog to wl1atever criteria mai1,1gement deems approprL1te. As
those projects are started, the appropriate subsets of the lnfonnatlon systems archltecture, lndudfng a subset of the enterprise data model, are provided to the applications development team as a point of departure.
The enterprise data model ls usually stored in a corporate repository. When the
app!Jcatlon de,.. lopment project is started, the subset of d,e etllerprlse data model (as
well as the other models) is exported from the corporate repository into a project
reposJtory. Once the project team compJetes systems analysis and de.sign, the
expanded and refined data models are Imported bad into the corporate repository.
>
Data Modeling during Systems Analysis
In Sj>leros analysis and In this chapter, we will focus on /ogf.ca/ data modeling as a
part of systems analysis. The data model for a single information $)'stem ls usually
caUe:I an applicatio11 dat..1 model.
Data models are rarely constructed durlng the scope defitl.itlon phase of systems
analysis. The short duration of that phase makes them Impractical. If an enterprise
data model exists, the subset of that model that is applicable to the project might be
retrleved and rel-iewed as part of the phase requirement to establish context.. Alternatlwly, the project ream co,dd identify a simple list of entitles, the things about
whlch team members think the system wiU ha,.. to capture and store data.
Unfortunately, data modellog is rarely assocL11ed with the problem analysis phase
of sy,teros analysis. Some analysts prefer to draw process models (Chapter 9) to document the curret1t ~tern, but many analysts report that data models are far superior
for the following reasons:
application data model
a data model tu a co~ete,
M~ infcrmaic:n system.
Data models help analysts to qulckly identify business vocabulary more com,
pletely than process models.
Data models are almost always built more q<tlcidy than process models.
A complete data model can fit on a slngle sheet of paper. Process models
often require dozens of sheets of paper.
Process modelers frequently and too easily get hung up on unnecessary
detail.
Data models for ex.lstlog and proposed ~tem.s are far more similar than
process models for existing and proposed systems. Consequently, there ls less
work to throw away as you move into later pb1ses.
We agree! A problem analysis phase model includes only etltltles and refatlonshlps,
but no attributes- it is called a context d..1t..1 model 111e lnrent ls to refine our
unckrSlanding of scope, not to get into details about the entitles and business rules.
Many relationships may be nonspeclflc.
Many automated tools provide the ability to read existing system flies and data,
bases and translate them Into •physical" data models. These physical data models can
ti,en be transformed Into their equlvalent • logical" data model. This translation capability benefits both tl,e probletn analysis and the requlremetlls analysis phases.
Toe requlrements analysis results in a logical data model that ls developed in
stages as follows:
I. \Xe begin by constructing the context data model to establish the project
scope. If a context data model was already developed during problem analysis,
tlt.1t
model may be revised to reflect new reqttlrements and project scope.
context data model a
data model tlat i'lc:lJdes
entities and relaliooslips but
no attributes.
286
Part 1wo
key-based data model a
data model that ird.Jdes eni ·
tiesand relati:nsh'36 'Mth
predse c.wcinalities resd\lW'g
noo..specifie rtlationsh.,s into
associatil.e enlitias, aid also
i'lclJdirg prm&,y aid alternate
keys.
fuJJy a ttribu:ed data
m odel a dala model tlat
i'lclJdesal ertitias, attributes,
relai oost..,s, wbselli"lg criteria, M d predse cacinalities.
Systoms Analysis Methods
2 . Next, a key-based dat.1 model wUI be dtawn.11lls model will eliminate mnspedflc reL1tloosh.ips, add :usoclati,. e. entitles, an d lndude prlmary and alternate
keys. Toe key.based model will also Include precise cardlnaJltles and any generaUzatlon hierardlles.
3. Next, a fully attributed data mod el wlU be constructed. 11,e fully attributed
model includes all remainm;! descriptive attributes and subsettlng criteria. Ead1
attribute ls defined h1 the repository with data types, domains, and defaults (hl
what is sometimes caUed a fr,lly desert/Jed data model).
4. 11,e completed data model is analyzed for adaptability and flexibUi ty through
a process called 11ort11a/t.zatf.0·11. The final analyzed model ls referred to as a
11.or,naltzed data niodeL
11lls dara reqttfrements model requires a ream effort thar lncludes systems analysts,
users and managers, and data analysts. A data administrator often sets standards for
and approves all data models.
Ultimate ly, durh1g ti1e decision analysis phase, the data model will be used to
make implementation decisions- the best way to Implement the requirements with
database tedu1ology. In practice, this dedsJon may ha,-e already been standardized as
part of a database ardlltecture. For example, SoundStage has already standardized on
two database m:u1..1gement sys1ems: ~flcrosoft Access for personal and work-@roup
databases, an d ~Ucrosoft SQL Server for et1terprlse databases.
Finally, data models cuutot be constructed without appropriate facts and information as supplied by the user community. These facts can be collected through a
number of techniques such as sun piing of ex.lstlog fonns and flies, research of simlL1r
systems, surveys of users and management, and Interviews of users and m.u1..1gement.
111e fastest method of collecting facts and Information and simultaneously co1utructh1g and verifying ti,e data modtls is joint requhements plamllng. )RP uses a carefully
faclU tated group meeting to coUect the facts, bulld the models, and ,-er lfy the modelsusually In one or two fldl-day sessions. Fact-finding and lnformatlon-gathering techniques were fully explored In Chapter 6. Tobie 84 summarizes some questions
that may be useful for fact-finding and infonnation gathering as It pertains to data
modelh1g.
>
Looking Ahead to Systems Design
During system design, ti1e logical data mo del will be transformed into a physical
data model (called a database scben1a) for the chosen database managemeru: system. This model will reflect the rec hnlcal c:ip:ibilltl es :md limir:itlo ns o f that d:ir:i
base t echnology, as well as the performance tuning requirements suggested b)• the
database administrator. Any fu rrher disctisslon of database design is deferred wttll
Chapter 14.
>
m etadata d2La a bout data.
Automated Tools for Data Modeling
Data models are stored ht a rep) sitory. ht a sense, the data model Is met.ad..1.ta - that
ls, data about the business's data. Computer-alded systems engineering (CASE) tecl,.
nology, introduced in Chapter ; , pro,-ides the repository for storh1g the data model
and its detailed descriptions. Most CASE products suppor t computer-assisted data
modeling and database design. Some CASE p roducts (sud, as Logic Works' ERw/11)
only support data modeling and database design . CASE takes the drudgery out of
dr1lwlng and malntahllng these models and thelr underlying detaUs.
Using a CASE product, you can easily create professional, readable data models
without the use of paper, pend.I, erasers, and templates. The models cu1 be easily
modllled to reflect corrections and changes suggested by end users- you don't have
to start o,-erl Also, most CASE prod ucts pro,-ide powerful analytical tools that can
check your models for mechanical errors, completeness, and consisten(.')'. Some CASE
Data Modollng and Analysis
r TA II LE 8 • 4
JRP and Interview Questions for Data Modeling
Purpose
Ditcover the sy$lem entitie$
Di,covor entity wbselling
ai'Wia
Di'"""' attributoo and
do,T10ins
Ditcover sectN'ity and rontrol
need,
Di,CXMII' data timing needs
Di,"""" generalization
hi,rarchies
Ditcover relationMlips and
deiJ .....
Ditcover cardinalities
Candidate Questions
What are the wbjects olthe bu,ine55f In olher words,
what types ol person,, o,ganizaliOM, argonizotional
unit$, Places, things, rnatarials, or events are used in or
inl<>rad with this sy,19m about which data must be
capured or rnaintoinedf How many in,tanais ol each
subject exi,t!
What ooique charaderisfic (or charac:taristics)
di'1ingui"1"' an in,tanai ol each subject from olher
instanc"' of the ,ome subjd Are there any plans b
change this identifiootian .theme in the futuref
Are there any characl<>risic, ol a subject that divide
all in,tanai, of the ,ubject into u,elul wbseM Are there
any subset, of the above wbject, for which you haw no
convenient way to group instoncesf
What characl<>risfics de!O'ibe each subjd Far each
ol the,e charactwi'1ics, (I) what type of data i, storedf
(2) who is r"'pomible for defining legifimal<> value, for
the dataf (3) what are the legijima1" value, for the dataf
(4) is a value requiredf end (5) i, there any defoult value
that should beaHigned fyou dan' hpecifyolherwisef
Are there orry restrictions on who can see or use the
datof Who is allowed to crea1" the dataf Who is allOW9d
b upda1" the datof Whc is allowl,d to delete the dataf
How ahen doe, the data changef Over what period ol
time i, the dato of value io the bu,i """f Haw bng "1ould
w,i kaep the datof Do ya, need historicx,I dato or trend,f
fa charactwisfic chang<s, must you know the k>nner
value,f
Me all inslonais ol each wbjecl the samef That is,
are there ,pecial types al each subject that are described
or handled diflorentlyf Can any of the dato be
consolidated for sharing!
What avenb occur that imply aHociation, betwl>en
subjed$f What business activities or transactions involve
hcv,clino or chnnoino dotn obout ~OlfQrnl diff.:i.rant
subjed$ of the ,ome or a different typef
Is each busine,, activity or event handed the ,ome way,
or are there special circummncesJ Can an event occur
w~ only some ol the a"ocia1"d subjecb, or must all the
subjed$ be invalvedf
,
prod.1cts can e,--en heJp you analyze the data modeJ for consistency, compJeteness,
and flexlbillty. The potet1tlal time and quality savings are substantial.
As mentioned earlier, some CASE tools support reverse engineering of existing
file and database structures Into dara models. The resulting data models represent
• ph)>lcal" data models that can be revised and reengineered Into a new Ille or
database, or they may be translated Into their equJvalent• [ogical" model. The logical
data model co,dd then be edited and forward et1glneered Into a revised physical data
model, and subsequently a file or database Implementation.
CASE roots do l1ave their limltatlons. Nor all dara modeling conventions are
supported by all CASE products. And different CASE tools adopt slightly different
dlaptw Eight
287
288
Part 1wo
Systoms Anclysls Methods
O et tot "' ffr¥ ~,..;
_,.:flll jjj ~ i'I>@•
to:ilJ
~V>l'V
s,,t-ou YL't><I"" tt!b
li:.l lH!IM .::rJI ~j e,e,
:t r ~ ~ ! O A CJoli3
11
·-
O-···~·······t
.
........
"
........,, ·--
·-
o.i.-nou
''
....'
".,
~
f7
"..
[i
.,. .."' "..' ..
... , ..... ,._.,
St-AroS'o•"
SIU - ~
$1, 0 , ~
$ t o;!I"~
'Jtco'9"1>·~
~
'
11Ei
Si a~~"" Ii GI
$,.....51,....
.:J .:J
,,
"' '
o ~ "I"' "
a " ""''
o....-...-,w..
r,
"
n i::!
I]
~ n
~
n
m,l!oic
di~~ Ill.I)
OI- 1400
di..,,;~ txtl
-- ~,;
Ol111$C'=< ll'I
~ ..
---:-----,
;ii
i
i
i
'
I
I
I
I
I
I
I
I
F I GU R E 8 • 1 2 Screen Capture of Sy.stem Architect CASE Tool
notations for the same data-modeling methods. Therefore, It Is very likely that any
given CASE product may force a company to adapt Its methodology's data-modellng
symbols or approach so that It ls workable within the limitations of tl,e CASE tool.
All the SoundStage cbta models: in tl1e next section of this: ch.1.pter were c-re.1.ted
wjth Popkin ~·stems and Soft\\•are's CASE tool, Systetn Arcbf.tea 2001. For the case.
study, we provide you with the prlntouts exactly as they came off our prlnters. ~ dld
not add color. 1be only modifkatlons by t11e artist were the bullets that call your
attention to speclflc ltems of interest on the printouts. All of the entitles, attrjbutes,
and relatlonshlps on the Sotu1dStage data models were automatically cataloged into
System Arcbltecfs p roject repository (whld1 It calls an encydopedla). Figure 8-12
illustrates some of S:,,•ste111 Arcbftec.t's screens as used for data modeling.
~~~-H_o_vt
~ t_o_C
_o~n_s_tr_u_c_t_D_a_t_a~Nl_o_d_e_l_s~~~~~~~~~~~~~~~)
)'ou now know e11ough about data models to read and interpret them. But as a systems analyst or knowledgeable end user, you must learn how to construct them. We
will use the SoundStage Entertainment Club p roject to teach you how to construct
data models.
NOTE:111ls example teaches you to draw the data model from scratch. In reallty,
you shottld always look for an existing data model. If such models exist, the data
managen-1ent or data administration group usually maintains them. Alter natively,
you could reverse engineer a data model from an existing database.
Data Modollng and Analysis
>
Entity Discovery
The rlrst task h1 data modeling Is relatively easy. You need to discover tl1e fundametl·
tal entitles h1 the system that are or might be described by data. You shot~d not restrict your thJnklng to entitles about which the end users kt1ow they want to store
data.111ere are several techniques that m.1)' be used t •) identify et1tltfes:
During intervJews or JRP sessions wlth ~·stem owners and users, pay attention to key words in their discussion. For example, during an inteniew with
a11 lndtvidual discussing SoundStage's business en'\oironment and activities, a
u.ser may state, "We have to keep track of all our members and their botmd
agree.m e.n ts." Notice that the key words in this statement are MEMB~s and
AGREEMENTS. Both are entitles!
During interviews or JRP sessions, specl.tlcally ask system owners and users
10 identify thlogs abollt wbid1 they would like to capture, store, and produce
Information. Those things often represent et1tites tl1at should be depicted on
1he data model.
Another tedu,Jque for idet1tifying e ntitles Is to study existing forms, Illes, and
reports. Some fonns identify event entitles. Examples indude ORDERS, R.EQUISI·
TIONs, PAYMENTS, oEPOsrrs, and so forth. But most of these same forms also
contain data t11..1t describes other entities. Consider a registration form used
In your school's course enrollment system. A RIGIS'fRATION is ltself an event
entity. Btn tl1e a,-erage registration form also ca.1talns data that descrlbes
other entities, such as snromr (a person), COURSES (which are concepts),
1NSTRucroRS (other persons), ADVISOR (yet anot11« perso11), 01V1S10Ns (another
concept), and so forth. Studying the computerized registration system's computer fl ies, databases, or outputs could also discover these same entitles.
If use-case narratives ha>.. been written duting the reqt~ments analysis phase,
they can be a source of cbta arulbutes and entitles. Scan each use-case narrath,--e
for nolUlS. Every notut ls a potential data attribute or entity. You wlll 11..1,-e to
massage the resltlting list of 110W1S because not ill of dtem will be attributes or
entities. Some wlll be references to users or other information ~ems. Some
will be references to things that are part of dte user lntetface, not data. Some
wlll be synonyms for od1er attributes or entities elsewhere on the list, and you
wo,dd not want to duplicate tl1em. Otapter IO explalns how to do this, taking
an object-oriented approach to buJJd a list of ob;,cts and tl1elr attributes. You
can use a very slmilar approach to discover data entitles an d their arulbutes.
TecbnolOI!)' may also help you Identify entitles. Some CASE tools can re,-erse
engineer existlng Illes and databases Into p hysical data models. The analyst
must usually dean up the rest~tlng model by repL1dng physical names,
codes, and comments witl1 their logical, business.friendly equlvalents.
While these techniques may prove useful in lden~ing entitles, they occasionally
play tricks on you. A simple, quJck quality check can eliminate false entitles. Ask your
user to spedfy the number of hutances of each entity. A true entity has m ultiple
instances- do zens, htmdreds, tl1ousa11ds, or more! If not, the entity does not ex.1st.
As et1titles are discovered, give tltem simple, meaningful, business-oriented
11..1mes. Entities should be 11..1med wlth nowu that dtscribe the person, event, place,
object, or tlling about wh.ich we want to store data. Try not to abbre"iate or use
acronyms. Names should be singular so as to distingttlsh the logical concept of the etttity from the actual Instances of tl1e entity. Names
indude approprL1te adjectives
or clauses to better describe the entity- for lnstance, an externally generated
CUSTOMER ORDER must be distinguished from an Internally generated STOCK ORDER.
For each entity, define It in business terms. Don't define the entity in technical
terms, and don't define it as•data abom .. . "Try thls:Use an English dictionary to create a draft definition, and tl1et1 customJze it for the bush1ess at l1..1nd.Your entity 11..1mes
and deflnltlons sho,dd establish an lnltlal glossary oi business terminology that will
serve both yo u and future ai1..1lysts ai1d users for yean.
mar
dlaptor Eight
289
290
Part 1wo
Systoms Analysis Methods
TA a LE 8 - S Fundamental Entities for the SoundStage Project
Entity Nome
ACRIEMENT
MEMBER
MEMBER ORDER
PRODUCT
PRCW.OTION
'
Business Definition
A contract whereby a momber agrees to purchaw a airtain
number of product, wilhin a certoin time. Aftw fulfilling that
agreement, lhe momber becomeo eligible for bonus credit, that
are redeomable for free or discounted product,.
An adiv< momber of one or more dubs.
Noto: A brg<>t sy,tom objectiw is lo reenroll inadiw members os
oppo,ed lo deleting them.
An ordergeneratod fora member a, part of a monlhly
promotioo, or an order initiated by a member.
Noto: The current •}"fern only wpports orders genera1"d from
promotioos; howEWer, customer-initiated orders have been given a
high pria'ity as an added option in lhe proposed sy,tom.
A busine,s ""'nt lo which Iha Member SO!Viais System must
, ..pond.
An inven'oried product avoilable for promotion and xale to
members.
Noto: Syrtern impro,,,mMt objectiws indude (1) oompab'bility
with new bar oode •}"fern being developed "' the warehou,e,
ond (2) cdaprobilily lo a rapidy changing mix of producn.
A monlhly or quarterly c,,ent whereby special product offerings
are rnadt a,ailable lo members.
Our So,mdStage management and users Initially ident!Jled the e ntitles listed In
Tobie S.5. Notice how the definitions contribute to establishing the vocabl~at)' of tl,e
system.
>
The Context Data Model
111e next task ln data mode Ung is to construct the context data model. The context
data model should lndude the fw1damet1tal business e ntltJes that were previously
discovered as well as their natural relatlonsllips.
RP.1:arloni;hlpr. r.ho11lrl hP. n:tmM with vP.m phr:alioP.... that, whP.n rom hlnt>ci with thp
entity names, form simple business sentences or assertions. Some CASE tools, such as
System Arcbitec~ let you name the rebtlonshlps in both directions. Otherwise, always
name the rebtlonshlp from parent to dilld.
We have completed this ta<k in Figure S.13. This figure represents a data model
created ln Syste111 Architect Once we begin mapping attributes, new entities and reL1tlonshlps may surface.Toe numbers below refere11ce the same numbers in Figure S.13.
111e ERO communicates the following:
O
e
O
O
An AGREE.\ UNT binds one ot more MJ:MBERS. While relationships may be named
in only one clirectlon (pare11t to cbUd), the otl1er clirectlon is lmpllclt. For
example, ft ls lmplid t that a MEMBf.R is botmd ro one and only one AGREE.',!J:NT.
A ME.\'IBER bas Co0dl1<1fd Zt'tO, one, or more TRANSACTIONS, Imp licitly, a given
nANSACTION was rnod11<1ed l;ij• one and only one ME.\'IBER.
A MfMBf.R ORDf.R is a TRANSACJ'ION. tn fact, a given MfMBf.R ORDER may correspond
to many nANSACTIONS (for exampJe, a new member order, a canceled member
order, a changed member order, etc.), But a given TRANSACTION may or m.1y not
represent a MEMBf.R O RDER.
A PRO MOTION features one or more PRODUCTS. Implicitly, a PRODUCT is featured
In zero, one, or more PROMOTIONS. For exampJe, a CO that appeals to both
--
,.,.
e
..1EMBER ORDER
II
-
6
-- --- --- ------
6
responcts lO
..
:l'N00UCT
•• e
••'"' 0
l
lr ~eER
II
II
ZS
.·o{RANSACTION
)
sz
geoc:r.i..-«
e .
.
""
~;
Oinds
0
C)
0
0
-
~
"''''""'
I G UR E 8 - 1 3
--
IPROMOTI0r4
The Sol.lI1dStage Context Data Model
rGREEMEITT
]
)
292
Part 1wo
Systoms Analysis Method s
country/western and light~ock audle11ces might be featured in the promotion
for both. Since products greatly outnumber promotions, most products are
oe,w featured in a promotion.
0
A PRO MOTION generates many ME.\.UlER ORDERS, Implicitly, a ME.\IIB£R ORDER !!
O
unerated foe zero or one PROMOTION. Why zero? ln the new system, a member will be able to lnltL1re h.Js or her own order.
It is pennlssible for more than one rebtlonshlp to exist betwee11 tbe same
two entities if the separate relationships communicate different business
events or associations. Thus, a MENBER responds ro zero, one, or more MENBER
ORDflt5, 11lis relationsh.ip supports the promotlon.get1erated orders. A MEM3f.R
places zero, one, or more )1£.\.ffiER ORDfltS, This relationship supports mem.>erln.itiated orders. In both cases, a ME.\IIB£R ORDER Is placed by Qs responded ro
m:) exactly one """""'·
Although we didn't need it for this double relationship, some CASE rools
(lncludltlg System Arcbf.te<i) provide a symbol for recording Boolean relationshlps (such as AND, OR). Thus, for any two relationshlps, a Boolean symbol
cotdd be used to establish that lnstances of the relationships must be mutually exclusive(= OR) or mutually contingent ( = AND).
O
A ME.'IIBDl on.oEn sells o n e or more rnooucrs. lmpUcltly, a r nooucr is E:Old on
zero, one, or more MENBm. ORD ERS. Note that this is a nonspecific relatloruh.ip,
whlch w UI bter be resolved.
If you read each of tbe precedltlg items careMly, you probably leamed a great
deal about the SotmdStage system. Data models have become lncreasfogly popular as
a tool for describing tbe business context for system projects.
>
The Key-Based Data Model
11,e next task is to idet1tif)• the keys of each entity. The following gttldelines are suggested for keys: 1
I. 11,e value of a key should oot change over ti,e lifetime of each entity instrnce.
For ex.ample,
NAME
wotdd be a poor key since a person's L1St name could
change by marrL1ge or dJ\--orce.
2. 111e value of a key cannot be null .
3. Controls must be Installed to ensure tbat tbe value of a key Is valid. This can
be accomplished by preclsE!y defining the domain and ush,g the database
m.'UUgemenr system's ""l.Ud:ttion controls: to enforce th.it dom.tln.
iotelligeo t l!ey a business
code 'M'IOse stuctne COR'ITAJ·
nicates data at1out an entity
i"lstaice.
4. Some experts (Bruce) suggest you avoid lnteUJgent keys. An hllelllgetll key is
a business code whose strl"--"ture communicates data abottt an et1tlty it1Staace
(such as its classllkation, size, or other properties). A code is a group of characters and/or dlgiis tbat identifies and describes something in the busines.<
system. Some experts argue that because those cbaracterlstlcs can change, it
vioL1tes rule l above.
\X'e disagree. Business o:>des can return '\<'a lue to the organization because
they can be quJckJy proces!ed by humans witl1out the asslsrance of a
comp uter.
a. There are several types of codes. 111ey can be combined to form effecth,--e
rueailS for entity it1Stance identl.flcatlo11.
(1) Serial codes assign sequentially generated numbers to entity lllSlances.
~tany database management systems can generate and constrain serial
codes to a bush1es.,'s requirements.
IAdaptt d ftoll:I Thoma, A lltlict. Dc,igning Q,utlity D t t ~ ttilb lDEFlX /11fon11ttrion ,~odtk C,oprtight O 1992
byTliolni$ A. Bn.c:e llc-ptiru:ed by pt ttn.sior.ofDolwt Rou:ll' PubJbhi..ns. 353 W. 121h St. , N,:w· Yotlt, NY 10014
(212.62040;5Yt .SOO.OM..DOOKS/'11-ww.dorsnho....,~O!D). AU tigats h ' ~.
Data Modollng and Analysis
(2) Block codes are similar to serial codes except that block numbers are
dtvJded into groups tl1ar have some business meaning. For lnslance, a
satellite television provider mlght assign 100- 199 as PAY PER VIEW channels,
200-299 as CABLE channels, 300-399 as SPCRT channels, 400-499 as ADUCT
PROGR.A..\t~G channels, 500- 599 as MUSIC-Om.¥ channels, 600-699 as
tNTI.Jt.t.CnVE GA...\UNG dwu1els, 700-799 as CNTERNET channels, 800-899 as
PRE.WUM CABLE channels, and 900-999 as PRi!MlUM MOVIE AND EVllltr d1annels.
(3) Alphabetic codes use finite combinations of letters (and possibly numbets)
to de.scribe entity lnslances. For exampJe, each STATE has a unique two-
character alphabetic code. Alph.abetlc codes must usuallj• be combined
with serial or block codes to uniquely ldetltlfy Instances of most entitles.
(4) In stg1tlfica11t position codes, each dlglt or group of dlglts describes a
measurable or ldentltlable characterlstlc of the entity Instance. Signlfkanr
digit codes are frequet1tly used to code 1n,·enrory ftems. The codes you
see on tires and lightbulbs are examples of sJgrlificant position codes.
They tell us about cbaracterlstlcs such as dre sJze and wattage,
respectlvelj'.
(5) Hferarcblcal codes provide a top-<lown Interpretation for an entity
itlStanoe. Every item coded is &ctored into groups, subgrouP6, and so
fortl1. For lnstance, we could code employee positions as follows:
-
First dlglt ldentlftes classllkatlon (clerical, factdty, etc.).
Second and third dlgits lndlcate level within dasslJkatlon.
Fourth and fifth dlglts indlcate calendar of employment.
b. 111e followlng gttldeUnes are suggested when creating a busines., codlng
scheme:
(I) Codes sbould be expandable to accommodate growth.
(2) The full code must res,dt h1 a unique value for each etltlty Instance.
(3) Codes should be mge enougl1 to describe !he dlsth1guJshlng characteristics
but small ei,o,tgh to be hllerpreted by people wf.rhout a compu.ter.
(4) Codes sbould be convenient. A new instance should be easy to create.
5, C)11SJder 1n,-entlng a surrogate key h1Stead to substitute for L1rge concatenated
keys of Independent entitles. Th.is suggestion ls not practical for associative
eatltles because each part of the concatet1.1ted key ls a foreign key that must
predselj• match Its paretll entity's primary key.
Figure 8-14 Is the key-based data model for the 3oundStage project. Notice tl1at
tl,e primary key ls speclfled for each et1tlty.
O Many etltltles have a simple, single-attribute primary key.
O W'e resolved the nonspecltlc relationship between MJ:MBER ORDf.R and
PRODUCT
by lntroduch1g the assoc.L1tfve entity ME.\.UlER OROfllED PRODUCT. Ead1 as.,odatfve
e11tity h1Stance represents one product: on one member order. The parent
e11titles contributed their own primary keys ro comprise the assodatt,--e
e11tity•s concatet1.1ted key. Systen1 Architect places a "PKl,. next to ORDER
NUMBf.R to lndkate tl1.1t Jt is ..pan: one" of the concatenated primary key and
a '1>K2,. besJde PRODUCT NUMBf.R to lndlcate that Jr is ..parr two" of the concate-
nated key. Also notice th.at ead1 attribute in th.ti concatet1.1ted key, by Itself,
Js a foreJgn key tl1.1r polnts bad:: to the correct parent et1tity h1Stance.
Likewise, the 11onspecific relatlonsllip bem·ee.1.1 PRODUCT and PROMOTION
was re.soJved using an assoc.L1tt,--e entity, nTLE PROMOTION, that also h1herits the
l::eys of the parent et1tlties.
When developing this model, Jook out for a couple of things. If you cannot define
keys for an et1tlty, It may be th.at tl,e entity doesn't really exist- th.at ls, m,dtlple
occurrei,ces of tl,e SO<alled et1tlty do not exist. Thus, assigning keys Is a good quality
d,eck before f,dly attributing tl,e data model. Also, If two or more entitles have
Identical keys, they are h1 all llkelll1ood the same etltlty.
dlaptw Eight
293
~
0
EJJBER ORDER
....
I
II t""•><rKey
nn;.-.Numbe<
isa
0
resoond5
.....
e
. -'
1·11 ········ ------·· .
[PKI)
IO
.
"""'""'""
MEMBER
II-.Prim,,y ""'
. ___ . II· Member·Nl.l'lltler
11
lPK1)
...
$Old 85
0
ROOOCT
Prim•!)' Ker----- - - 1
~
generate&
0A
bind$
"I<
0
RANSACTtON
Pnm•ry
Key- - - - -- - - -- -'
-Nt.rnbef (PKI)
y, _._l.('111--~.,.,iu:-N~
[P KI I
0
7'GREEMENT
i$ fe.wturcd a&
PM\&~Key--- - - - i
Al)(~nl·Nvmbcr 1PK1)
0
...............
,.,., fPK1) fFK] ~ I
c
oo
r.RC\tOTION
Pl'imary Key
leistures
II
·--N,....., fPK 1)
FIG U R E 8 • 1 4 The SoundStage Key-Based Data Model
--)
Data Modollng and Analysis
>
Generalized Hierarchies
At this time, it would be useful to Identify any ge11eralizatlon hierarchies In the business domain. The SoundStage project at the beginning of this dtapter identlfled at
least one supertype/subtype structure. Subsequent discussJons dJd tmcover a generalization hierarchy. Thus, our key-based model was revised as shown In Agu.re 8-15.
'\X'e had to lay out the model somewhat differently because of the hierarchy; l1owe,--er,
tl1e relationships and keys that were previously defined have been retained. We call
your attention to the following:
O
O
O
>
11,e Sow1dStage CASE tool amomatlcally draws a dashed box around a generalization hierarchy.
The subtypes Inherit the keys of the supertypes.
W'e disconnected PROMOTION from PRODUCT as ft was shown earlier and reconnected ft to the subtype 11Tl.£. 1b.ls was done to acctuateJy assert the business
t u.le that MEllCHANDISE is ne,--er featured on a PROMOTION- only TITLES.
The Fully Attributed Data Model
It ma.y seem like a tri'\oial task to identify the remaining data attributes~ however, analysts not famlllar with data modeling frequently e11counter problems. To accomplish
tllis 1ask, you must have a thorough understand.fog c,f the data attributes for the system. TI1ese facts can be disco,. ered
.
using top-down approaches (such as brainstorming) or bottom~•p approaches (sud, as form and Ille sampling). If an enterprise data
model exists, some (perhaps many) of the attributes may have already been ldentltled
and recorded lo a reposJtory.
The following guidelines are offered for attribution:
btany organJz.atlons have naming standards and approved abbre'\oiatlons. The
data admlnlstrator usually maintains such standards.
Choose attribute names carefully. ~tany attrlbutes share common base names
sud1 as NAME,ADDRESS, DATE. Unless the attributes can be generalfzed into a
supertype, ft ls best to give each variation a unlque name such as:
ORDER DATE
CUSTOMER NAME
CUSTOMER ADDRESS
SUPPU£R NAME
SUPPUER ADDRESS
CN\OICE DATE
t.\'IPI.OYEE NA...\iE
E.\'IPLOYEEADDRESS
FUGHTDATE
Also, remember t11..1t a project does not U,--e lo isolation from otl1er projects,
past or future. Names must be distlnguisl1..1ble acros., projects.
Some organJz.atlons maintain reusable, glob1I templates for t11ese common
base attributes. 11lis promotes consistent data types, domalns, and defaults
across all applications.
Physical attribute names on existing forms and reports are frequet1tly abbrevi-
ated to save space. Logical attribute names should be dearer- for example,
translate the order form's anrlbute coD into lts loglcal equJYalent, AMOUNT To
COUEcr ON DELJV£RY, translate QTY Into QUANTITY ORDfllED; and so forth.
btany attrlbutes take on only YES or NO Yalues. Try 11..1ming these attributes as
questions. For example, the attribute name CANDIDATE FOR A DEGREE? suggests
the values are YES and NO.
Each attrlbttte should be mapped to only one entity. If an attrlbttte truly
describes different entitles, it is prohab~· several different attrlbtttes. Give
ead1 a unique 11..1me.
Foreign keys are the exception to the nonredundancy rule- they Identify
associated h1Stances of related et1tltfes.
dlaptor Eight
29S
i
....
.
,,..,.,.")'~
jMl'MBER OROl;R
I
Oto,tt.NuMI* fl)KII
p
l'""'l!MUER •
0
T
~·"
~
l'PIQI
t.<mbo!W !PK1)
P
·-ti«
'
(
.....
-
'
'
'
-- -- -- - -·
1..-ROOUCl
Pri'n~Ktf
'
--- -
"
'
P ~Numb91" IPIOJ
.1
...
MER.CMANOIS.E
-Pl'N')'i<ey
PJ'Od~t,ljj( (PKII IFKI
'
T
,m.,
•a
.
j
f)
P~\.1Ct.ffl.ombo:r lf'K1! "'KJ
;,,
-•
-
-
M
[t'R()MOTl()N
---
- 01
,.
Pl-ffl.-yKer
PI-Qrl!Oli:;n-Hi.,moo, IPK 1)
itfiNtl.loec:1-,
·Pr.mary
GAME mu
-P,ffl,ry
Produo:t,,H- 1PK1J (flQ
P fOOuCl,NutYtW {PK II (Fl(J
P r ~ b O r [PK1J
......
f'ROMOTI
~
... l
VlOE;OllTLE
-Pfine,yK
e
.. - . . .. -
-Ptm.wyl<oy
e
l ..
AUOIOTITLE
-.. -
I
~~~ ,~
p
.
tlOt (l'!QI
I
ll"'JC)
I
'
FIG U R E 8 - 1 S The SoundStage Key-Base:! Data Model with a Generalizatioo Hieran:hy
ie111v<e,
dlaptw Eight
Data Modollng and Analysis
_,...,1
_....,_.,
~
-·-·-- _______
297
e-...c.
I()
--··-·-----!
~·~-----~
-··-----. ---Oo----~----<·-~.
.,_ _ l"" 'I
....-c,,..
II .,.,....,...
__
--~c..t,..
--·"·,_
..........
-"""'__
........._
_....·.._
_
--
__
--.:i.,0-P,.._ _
,_,
·-·-C.•
-·-.. ,,.~
-<·w::-11..
K",_........._
_
--··-.... c;_ll>',,..._
<M
...o,T)t<
.,,._ f'CI
,
... (;,....-«,.....
- -·•"'!'IQ
'"
·= ------11
··-··
..__
_,_
·------·
-·
·~-- ,.._.._.,,,...,.
...-~·-----·II
..
...,,__,"""
..··
.- I l e ! :
, . _ . _ Jl'IU) ltllf
..._._u., r-;11 itq
.........,_
e,--·
--~...,-----11
--··------11
..:::.~ , =------11
N.00fl11.(
YOlOM\.f
..._......,..,C""'!l(Jl(I
·-·---~-·--,...,.
.......
_.
-·-....
-
.... ,l>A.....,
_,.,_,._,..
~•-
•<oo,
c..~
_..
.......
c:-.,o.....,._
'-"''"'
...._....._._ l"l!IUII!
~
.(,_
....
11:1.<,...:--
- -·,-- ·-
..-_
--·
o.·--- -.. O,lt.<l(l!l\f:
.......... "-· - -- --n
·--"
.._..
~ W !N ') f'\<I
e.--··11~
......__A,,-
""'-W•C:-
~~-
"""''"~
F I G U R E 8 - 1 6 The SoundStage Fully Attributed Data Model
Alt attribute 's domain st1ould not be based on logic . For ex.ample, in the
SoundStage case we learned tl1..1t the values of MmJA were dependent on the
cy•pe of product. If the product type Is a >ideo, the media co,dd be VHS tape,
8mm tape, Liserdlsc, or DVD. If the product type Is audio, the media cotdd
be cassette tape, CD, or ~ID. 111e besr solution would be to assign separate
attrlbutes to ead1 domain: AUDIO MEDIA and VlDEO MEDIA.
Figure 8-16 provides the mapping of data attributes to etltltles for the deflnltloo
phase of our SotmdStage systems project. While tl1e fully attributed model ldet1tltles all
~QI
=.:_ )01(11
--··-~
_,H,.
--
.,...,1
298
Part 1wo
Systoms Analysis Methods
the attributes to be captured and stored In ottr future database, the descriptions for
those attributes are Incomplete; they require domains. Most CASE tools provide
exte11sive faclllties for describing the data types, domal11s, and defatdts for all attributes
to the repository. Additionally, each attribute sho,dd be defi11ed for future reference.
~~~A_n_a_ly
~zi_n_g_t_h_e_D
~a_ta~M_o_d_e_l~~~~~~~~~~~~~~~)
Willie a data model effectt,--ely communicates database requirements, it does not necessarily represent a good database design. It may contain structural d1arocterlstlcs mat reduce flexibility and expansion or create unnecessary redundancy. Therefore, we must
prepare our fully attributed data model for database design and implementation.
Thls section wlU discuss d,e d,arocteristlcs of a qua/r.ty data model- one that wlU
allow us to develop an ideal database strucrure. We'll also pre.sent the process used to
analyze data model quality and make necessary modlficatlons before database design.
>
What Is a Good Data Model?
Wh.at makes a d.:it:i model go odl We suggest the following crJteri.'l:
A good data model Is stmple. As a gei1eral nde, the data attributes that
describe any given entity should describe only that entity. Consider, for example, the following entity dellnltlon:
COURSE REGISTRATION
=
COURSE 11.EGISTR.ATION NUMBm (PRIMA.llY Kff)
+
COURSE 11.EGISTR.ATION DATE +
STUDENT CO NU\.IBER (A fOREGN KEY)
+
+
STUDENT MAJOR +
STUDENT NAME
One or more COURSE NUMBERS
Do snromr NAME and sruoENT MAJOR really de.scribe an it1Stance of course registratio11? Or do they describe a dJfferent entity, say, STUDENT? TI1e same argument cotdd be applied to :mromT JD NUWlfR, but on further Inspection, that
anrlbute is needed to ..point" to the corresponding lnslance of the snro~rr
etltlty. Another aspect of simplicity Is stated as follows: Each attribute of
an entity instance can have only one '\o-:tlue. Looking again at the previous
ex.ample, we see tl1.1t COURSE NUMBER can 11.1,--e as many '\o-:tlues for one COURSE
REGISTRATION as the student elects.
A good data niodel Is esse11..tlalty 11-0·11redu11dant. This means that each data
anrlbute, other than foreign keys, descrlbes at most one entity. In tl1e prior
ex.ample, it is not difficult to imagine that sruoa,,rr NAME and STUDENT MAJOl
might also describe a STUD""T entity. We sho,dd choose. Based on the pwrlous bullet, the logical d1olre would be the STUDmT entity. There may also
ex.1st subtle redundancies in a data model. For example, the same attribule
mlght be recorded more than once tmder different 11.1mes (synonyms).
A good data model shou.ld be jkxlble and adaptable to Jutu.re needs. In
t11e absence of tills criterion, we would rend to design databases to fulflli
only today's busines., requi'ements. 111en, when a new requirement becomes
known, we can't easily change the databases witl1ou t rewriting many or ill of
tl1e programs tl1.1t used those databases. WhUe we can't change tl1e reality
tl1.1t most projects are applicatloo-drivei.1, we can make our data models as
appllcacion-independei1t as possible to encourage database structures tha1 can
be extended or modified witl1our lmpact to cttrrenr programs.
So how do we adlleve the above goals? How can you design a database tl1at
can adapt to future requirements that you cannot predict? TI1e answer lies In data
analysis.
Data Modollng and Analysis
>
299
Data Analysis
The tedmlque used to Improve a data model In preparation for database design Is
caUOO data analysts. Data a1ulysis ls a process thar prepares a data model for lmplementatlon as a slmple, nonredtmdant, flexible, and adaptable database.The speclflc
tedln.ique is called 11ort11alt.zn.tf.0·11. Non:n..1.Uzatioo is a data analysis technlque tl1..1t
organizes data attributes such that they are grouped to form nonredundant, scable,
flexible, and adaptl,.. entitles. NonnaUzatlon Is a three-step tedmlque that places the
data model into first normal form, second nonnal form, and third normaJ form:2 Don't
get hung up on the terminology- it's easier than ft sounds. For now, Jet's establish an
inltlal understaodlng of these three formats:
Simply stated, an entity Is In first oonn.~J form (lNF) If tl1ere are no attributes that can have more than one value for a single it1Stance of the et1tlty.
Any attrlbutes tl1at can have multiple '\<-:th1es acrually describe a separate
entity, possibly an entity and relatlonshlp.
Alt entity ls in second normal form (2NF) If tr is already in I NF and if the
r.ilues of aU non-primary-key attributes are depende11t on the fuU primary
tey- not just part of It. Any nonkey attributes that are dependetll on only
part of the primary key sl1otdd be moved to any entity where that partial key
Is actually tl,e full key. This may require creatlt11 a new entity and relatlooshJp on the model.
All entity Is In third normal form (3NF) If It Is alreadv In 2NF and If the
Talues of its non-primary-key attributes are not dependent on any other nonprlmary-key attrlbures. Any nonkey attributes that are dependent on other
oonkey attrlbures must be moved or deleted. Agait1, new entitles and relatloo,hlps may llave to be added to the data model.
>
dlaptw Eight
Normalization Example
There are numerotis approaches to normalizatlo11. We have chosen to present a nontheoretlcal and 11onmathematlcal approach. '\X'e'll leave the theory, relational algebra,
and detailed Implications to the database cotuses and textbooks.
As usual, we'll use the SoundStage case study to demonstrate the steps. Let's
begin by referring to the ftdly attributed data model that was developed earlier (see
Figure 8-16). Is lt a normalized data model? No . let's Identify the problems and
walk through the steps of nonnalizing our data model
First Normal Form The first step In data analysis Is to place each entity Into INF. In
Flgtue 8-16, which etltltles are not In INF?
You should find two- ME.\.UlER ORDf.R and PROMOTION. Each contains a repeating
gro·up, that is, a group of attributes d1at can ha,-e multiple values for a single instance
of the ei1tlty {denoted by the brackets/. These attrtbutes repeat mmy tlmes •as a
group ." Consider, for example, the entity MENBf.R oRDm. A sfngle ME.\iBER ORDER may
contain many products; therefore, the artrlbutes OFDERm PRODUCT NUWlER, 011.0m.m
PROOT
JCT DESOUPTION, ORDER.fl> PRODUCT Tm.£, QUANTITY ORDER.ED, QUANTITY SHJPPED, QUANTITY
BACKORDER.FD, PURCHASED UNIT PRICE, and o.'TI.NDm PR.ICE may (and probably do) repeat for
each instance of ME.\1BER ORDER.
SlmlL1rly, since a PROMOTION may feature more than one PROoucrnTLE, the PRODUCT
NUMBf.R and TITLE OF WORK anrlbures may repeat.. How do we fix these anomaUes ln our
model?
Figures 8-17 and 8-18 demonstrate how ro place these two entitles into JNF. The
original entity Is depicted on the left side of the page.The INF entitles are on the right
to..latuc a-pen, bi"' identif,ed ildditiobLI tiottn.d fottn,. Thi.Jd nor-tnLI bnn ~ tDOSt cbt11L110tnaliC'11. w·c- Je:,"' 11.
di$c..-ion oflld'r.lbocd nor-tnLI fbr-n. to dattl»llc- ttttboob arid oour--.
data aaal}'Sis a tec:hrique
used to inp-ow a data model
br ~lement.ati>n as a
database.
oor-malizatioo a dala
Maly§s tech'liQ.Je that orga.
rims dala i'lto ~rol.l)s to fcrm
nor'l'edu"ldant, ,1atM, ne,-tM,
M d adaptive ertmes.
first normal lorm ('INF)
eni ty W'lose attributes
haw no mae ttan one value
bra M~e i"lst.ance of tlat
M
antity.
secood ooNml form
(2NF) an enlil)' 1'11clS<>
non.p-ma,y-ke)' altibutes .we
dependent on tte ft.I pmuwy
ksy
tbi.td normal form
(3NF) an e~· Whose non·
i:rma,y."9y attib.Jtes .we not
dependent on arr; other non·
i:rma,y."9y attib.Jtes.
300
Part 1wo
Systoms Anclysls Methods
MEMBER ORDER (1NF)
0-de< .... mbe< (Prma,y Key)
Oder-0-eation-Oate
Order·AulOl'1'\.91c-F•·Oate
Member--Nl.l'llber (Fori91gnKey)
Member--Nl.l'llber·2 ~ore9l Key)
Member--Narne
Member·Ad:i'ess
&IIR)ng·Adctess
~ n g lns-trucllC>ns
Promobon-Nl.l'llber (Fore9l Key)
Order.SUb·Total-Cos-t
Oder.S-S-Tax
Ship.Via-Method
sn,,png Charge
Order.sta1us
Prepaicf.Amomt
Prepaic:J.tAethod
a ells
.....
••
PRODUCT (1NF)
Product-N""""' (Pm,a,y Key)
Urwet'Sa-Produci-Code (Aftemate Key)
Ouanltty-1'\-St>ck
Product-Type
Suggeslecf.Relai-Pnce
Oe1al.At·Uut.Pnce
CL1Tent-Spectaf-Untt.Pnc,e
Cooent ,IJonth-Unlts--Sold
CLITent·Year-UMs·Sold
TOlaH.lfe11 me -Uuts-Sokt
( FIGURE 8 • l 7 First Normal Form (INF)
)
Data Modollng and Analysts
Chaptor Eight
301
PROMCITIO" (1NF)
generated for
genera&
~G U R E
8-18
First Normal Form (JNF)
_ _ _ _ _)
side of the page. Each figure shows how normallzatk>n changed the data model and
attrlbute assJgnments. For your convetlience, the attrlbutes that are affected are In
boldface type and In small capital letters.
In Ffgure 8-17, we B.rst removed the attributes tlut can h.ave more than one value
for an instance of the MD.lBf.R O RDER entity.n1.at alone places MEMB f.R O RDf.R ht t NF. But
wl1..1l do we do with the remove.d attrlbutes? We can't remove them entireJy from the
model- they are part of the business requirements! Therefore, we moved the entire
group of attrlbutes to a new e11tlty, MEMBER O RDER.ED PRDDUCJ'. Each instance of these attributes describes one PRooucr on a single ME.\.fB£R ORDER, Thus, lf a specific order contains five PR.o oucrs, there will be flve Instances of the MEMBf.R ORDER.fl> PRODUCT entlry.
Ead1 entity instance has only one value for eadt attribute~ therefore, the new e ntity ls
also in firs t normal form.
302
Part 1wo
Systoms Analysis Method s
Another example of INF Is shown In Agure 8-18 for the PROMOTION e ntity. As
before, we moved the repeating attributes to a different entity, TITLE PRO MOTION.
All other entitles are already in t NF because they do not contain any repeating
groups.
Second Normal Form TI1e next step of data analysis ls to pL1ce the e ntities into
2NE Recall that it is required that you have already placed all e ntities Into INF Also
recall that 2NF looks for an atttibute whose value is determined by only part of the
primary key- not the entire concatenated key. Accordfngly, entitles that l11ve a
single-attribute primary key are already In 2NF. That takes care of PRODUCT (and its
subtypes). Mfl\lBf.R O RDER, MENBf.R, PRO MOTION,AGREfMENT, and nANSACl10N. Thus. we need
to d1eck only those entitles tl1..1t h.ave a concatenated key- MENBm. OllDER.fD PRODUCT
and TITLE PRO MOTION,
First, let's check the
MEMBm. OJI.Of.RED PRO D UCT
entity. ,_lost of the attributes are
dependent on the ful l primary key. For example, QUANTITY ORDERED makes 110 set1Se
unless you have both an o aof.R NUMBEll and a PRooucr NUMBER. Tilink about it! By itself, ORDER NUMBf.R ls inadequate sinc e the order could have as many quantities ordered as there are products on the order. SlmJlarJy, by ltself, PRODUCT NUMJIEll is
inadequ:ite since the same product co uld appear o n many orders. Thus, qu.-._,rnn
ORDERED requires both parts of the key and is depet1dent on the fltll key. The same
could be said of QUANTrTY SHIPPED, QUANTrTY BACKORDEJlED, PURCHASE UNIT PRICE, and
EXTE'IDED PRICE,
But wt1..1t about ORDER.ED PRODUCJ' DESCJUPn ONand OllDERfD PRODUCTnTJ.£? Do we really need ORDf.R NUMBf.R to detennlne a value for either? Nol Instead, the values of these
attributes are dependet1t only on the value of PRODUCT NUMBEll. Thus, the attributes are
1101 dependent on the full key; "" have tmcovered a partial depe1ule11cy anomaly that
must be fixed. How do we Bx this type of normalization error?
Refer to Agure 8-19 on the next page. To fix the problem, we simply move the
nonkey attrlbutes, ORDfllED PRODUCJ' DESCRJP'J'ION and ORDERED PRODUCT11Tl.J:, to an e11tity
that has only PRODUCT NUMBER as its key. If necessary, we woldd ha,-e to create tlll.s entity, but the PRooucr entity with that key already exists. But we have to be careful because PRooucr ls a supertype. Upon inspection of the subtypes, we discover tltat th e
anrlbutes are already in the MaCHANDISE and nTLE entitles, albeit tmder a sy11onym.
111us, we didn't actually l1..1ve to move tl1e attrlbutes from the MENBf.R ORDER.fl> PRODUCT
entity; we just deleted th em as redtmdant attrlbutes.
Next, let's examine the TITLE PROMOTION entity. The concatenated key is the combination of PROMOTION NU-.mER and PRODUCT NUMBf.R. Tm.£ OflWOR.K ls dependent on tl1e
PRODUCT NUMBER portJon of the concatenaced key. lbus, Tm.£ OP WORK lS removed from
m1.< PROMOTION (see Agure 8-20). Notice that TITLE OP WORK already existed in tl1e
entity rrrt.E, wlllch has a product number as its primary key.
derived attribu te an
allribule WhoM value can be
cab.fated Iran otler attribules a derived frcm the
vafuesofother attributes.
Third Normal Form We can further simplify our etltlties by placing them Into 3NF.
Entltles are required to be in 2NF before beginning ,NF analvsls.Third nonnal fonn
analysis looks for two types of problems, derf.v ed data and tmnsltf.ve depe,ufellCies.
In botl1 cases, t11e ftmdamental error ls that 11oru::ey attrlbutes are dependent on other
nonkey attrlbutes.
T he first type of 3NF analysis Is easy- examine each entity for derived anributes.
Derived attributes are those whose values can be either calculated from otl1er attribu tes or derived through logic from the values of other attributes. If you thlnk
about lt, storing a derJved attribute makes Utt.le sense. First, it wastes disk storage
space. Secon d, it complicates what should be simple updates. Why? Every time you
change the base attrlbutes, you must remember to reperform the calculation and also
change Its result.
For ex.ampJe, look at tl1e ME.\'IBm ORDERED PROOUCJ' et1tiry in Figure 8-21 . T he attrlbute O.'TJN)ED PRICEls calctdated by mldtlp.lying Qlll.NTITY ORDER.fl> by PURCHASED UNfT
PRICE. Thus, o.'TJN)m PJUCE (a 11ankey anrlbute) ls 11ot dependent on d1e primary key
Data Modollng and Analysts
( F IG U R E 8 • 1 9
Second Normal Form (2NF)
Chaptor Eight
303
)
----------
..._.
as much as it is de.pendent on the nonkey anrlbutes,Qw.NnTY oaomm and PURCHASED
UNJT ?RICE. Thus,
we correct the entity by deleth1g EX'TE'mED PRICE.
Sounds simple, right? ~'el~ not always! There ls disagreement on how far you take
this rule. Some experts argue tl1at tl,e rule sho,tld be applied only wlthln a single entlty.111us, these experts would not delete a derJved attribute lf the attributes required
for the dertvatlon '\\"'ere assigned to different entitles. We agree based on the argt.101ent
tl1at 1 derived attribute that involves multiple entitles presents a greater danger for
304
Part 1wo
Systoms Anclysls Method s
ge nerates
_________
CF I GU R E 8 • 2 0
----
t:rausiti\•e depeocleocy
'Mien Ile value of a nonkey
allribule is dependent on
the wlle of a-otler ncnkey
allributo othorthan ty
derivation.
_ . ,)
Second Normal Form (2NF)
data lnconslste11q• caused by updarJng an attrlbute in one entity and forgettlag to
subsequently update the derived attribute in another entity.
Another form of 3NF analysis checks for transitive dependencies. A transit ive
dependency exists when a nonkey attrJbute is dependent on another nonkey attribute (other than by dertvation).Th.ls error llSltally indicates that an u ndiscoTered
entity is still embedded within the problem entity. Such a condition, lf no, corrected, can cause future flexibility and adaptabUity problems lf a new requirement
eventually requires that we lmplement tl1at lUldiscovered entity as a separate database table .
..
S
\....__
t, ..._,U
RE 8_
• 2 1 Third
_
Normal
_
Fo rm (3NF)
_
_ _ _ __ . ,)
Data Modollng and Analysis
!
p .._
!
MEMBER ORDER (2NF)
°'"""""""
dlaptw Eight
30S
!
f'91pollcil t o
!
MEM3ER ORDER (~F)
(Pm,a,y Key)
Order.Creedon-Oaie
Order-F•-Oate
Member NLmber (Foreql Key)
Member--Ni.mber-2 (foreql Key)
MDIDm.NAM(
MDIDm.AODA!eSI
~g-Adci'ess
~ g IR!:11UC1ons
-~,ge
Promodon N""be< (Rl<eq, Key)
Order-Sub-Tow.Cost
0rder-S8'es·Tex
~-VMl-Method
()-,1,:,,r ,q,_.. IA.
Prepaid-Amount
Prepaid-Method
( F I G U R E 8 • 2 2 Third Normal Form (3NF)
TransJtive analysis ls performed only on entitles that do nor ba,-e a concatenated
key. h1 Ot tr ex.ample , tllis indu des PRODUCl', ME.\.UlER OR.Df.R, PROMO'OON,AG Rf.E.>,.{E'll(, MEMBf.R,
and TR.ANSACno N. For the entity PRo oucr, all the noru:ey attributes are dependent on
the primary key and only the primary key.11,us, ••ooucr is already h1 third normal
fonn. A sim1L1r ai1..1lysls of PROMOTION, AGREEMENT, and i'RANSACTION reveals tl1..1r they are
also in third 11ormal for m .
Btn look at the enrJty ME.\ IIBm ORDf.R lo Figure S.22. ln particular, examine the attributes ME.\.IBER NAME and MENBf.R ADD RESS. Are these attributes dependent 0 11 the primary key, ORDf.R NU\.iBER.? No1111e prlmary key ORDER NUMBER ln no way detennlnes the
value of ME.\IIBf.R NA...\ffi and ME.\IIBf.R ADDRESS, On the oth et han d, the values of MENBF.». NA...\ffi
)
306
Part 1wo
Systoms Analysis Method s
and MENBf.R ADDRESS are dependent on the value of another no11-prt111ary key lo the
entity, MENBf.R NU\.iBER.
How do we fix this problem? ftlEMa f.R NAME and MENBER ADDRESS need to be moved
from the MEMB>ll ooom entity to an etltity whose primary key Is just MEMBER"""""· If
necessary, we would create tl1..1r entity, bur in our case we already have a MENBF.». entity
wlth the required primary key. As ft turns ou t, we don't need to really move the prob-
Jem attributes because they are already assigned ro the ME.\IIBER entity. We dJd, 110\\·ever,
notice thar MEMBER ADDRESS was a synonym for ME.\.UlER sTR.EET ADDRESS. We elected ro
keep the latter term ln MfMBER.
Several nonnal forms beyond 3NF exist.. Each successive normal form makts the
data model simpler, less redw1dant, and more flexible. However, systen,s analysts(and
most database experts) rarely tlke data models beyond 3NF. Consequently, we w JU
Jeave further discussion of normalization to dambase textbooks .
The first few times you normalize a data model, the process will appear slow and
tedious. Howe,--er, with time and practice, ir becomes quJck and routine. ,_lany experienced modelers signlJlcantly reduce the modeling time and effort by doing normalization during anrlbution (they are able to do normalization at the time they
are developing the fully attribuled data model). It may help to always rememb<r the
following dJtty (sou.roe unknown), whlch nlceJy stunmarlzes first, second, and third
nonnal forms:
An e ntity is said to be In third normal form ff every non-primary-key attribute
is depet1detll on the primary key, tl1e whole primary key, and notlllng but tl1e
primary key.
Simplification by Inspection Normalization is a fairly medl..1nlcal process. But it is
dependent on naming consistencies in the original data model (before normalization).
When several analysts work on a. common application, It is not w1usltal to create probJems that won't be taken care of by 11ormalizatlon. These problems are best solved
througl1 slmpliJlcatlon by Inspection, a process wherein a data entity In 3NF Is ftrther
slmpliJled by such efforts as addressing subtle data redundancy.
The final, nonnaUzed data model ls presetlled In Figure 8-23 on the next page.
CASE Support for Normalization ~tany CASE tools claim to support norimUzatlon concepts. They read the data model and attempt to Isolate posslble nonnallntlon
errors. On dose examination, most CASE tools can normalize only to first normal
form.They accomplish this In one of two ways.They look for many4o-many rebtlooshlps and resolve those reL1tlooshlps lnto assodatlve entitles. Or they look for attrlbtttes spec!Jlcally described as ha,,ing m ultiple values for a sh,gle entity instance. (One
could argue that the analyst sholdd have recognJzed tl1at as a 1 NF error and nor
described the attributes as such.)
It ls exceedingly dlfflctdt for a CASE tool to Identify second and third normal form
errors.111ar would require that the CASE tool h.ave the intelligence to recognize par·
tial and transitive dependencies. In reality, such dependencies can be dlsco,-.red only
through less-tl1an-routlne ex.amhatio11 by the systems analysts or database experts.
Mapping Data Requirements to Locations
Whlle a logical data model ls effective for describing what data Is to be stored for
a new system, lt does nor corumwlicate the requirements on a business operating
location basis. We need to identify what data and access rights are needed at which
locations. Spec!Jlcally, we mlght ask tl,e followh1g business questions:
Which subsets of the entities and attrlbutes are needed to perform the "·ork
ar each locatio11?
What level of access Is required?
...
..
~--••+++•
?
•+M•+++
!
c-
!
!iihl
t(ill
[
l
...
...
.
.
!..
..
,.
...
I' .
:
l .:
.
..
...
..
.
;
...
'' :
t·
f
• 1
01
H!jfl!
!!
Q j , , - t ..
'' 'I
a;
e
-..
.£
ll
!. '
~
z
""
·"
I=
.$
1
•
j
~ I f lis
~·
uli •l•ll• •
HHHhlli
••
;
'
I:.
Ij
rHii
•
ti
ii
I
z
!1 1
i
!ii !};11
f til
HHUiHHli I
I l
I ....
I "§0
I .5·.;,
I ..~
"~
I
I "'"~
I "'
I <»•
I ...a,:
I 0
I ...
N
•;;"
•1
fI
uh J.!f' 11•f
HHillhl
·-··
-
.
::)
307
308
Part 1wo
Systoms Analysis Methods
c:
..
_g
~
~
NOV
•
RU
RU
x
•
...,
...,
...,
ALL
NOV
•
•
•
ALL
•
• ALL
ALL
•
•
•
•
CRJI)
ALL
CRJI)
CRJI)
CRJI)
RU
CRJI)
CRJI)
l:~t
•
•
ALL
•
CRJI)
ALL
CRJI)
SS
CRJI)
SLI)
CRJI)
•
•
CRJI)
SLI)
CRJI)
SS
CRJI)
NOY
•
•
•
•
•x
ALL
•
•
•
~=-~!ALL: t -
••
•
•
RU
ALL
•
•
•
SS
CRJI)
CRJI)
CRJI)
•
•
RU
RU
SS
•
•
•
ALL
•
ALL •
•
•
•
•
•
•
CRJI)
CRJI)
CRJI)
CRJI)
CRJI)
CRJI)
SS
CRJI)
CRJI)
CRJI)
CRJI)
ALL
•
•
•
•
•
•
::; !:::+ I
SS
SS
•
•
•
SS
•
•
•
CALI)
CALI)
CALI)
•
•
SS
SS
•
•
•
SS
SS
•
•
•
CALI)
CALI)
CALI)
SS
SS
CALI)
CALI)
ALL
ALL
ALL
•
•
•
•
•
•
•
•
•
•
•
RU
•
•
•
•
•
RU
! I I I
)
( FIGURE 8 - 24 Data-to-Location~RUD Matrix
Can the
Can the
Can the
Can the
location create inslances of the entity?
location read lnsttnces of the entity?
location delete instances of the entity?
location ·update e:dstlng lnstances of the entity?
Systems analysts h.ave found it useful to define these logical requirements in
d:lt:i-to-locadoo.CRUD
the form of 2 dnto .to.Jocntlon.CRUD ,nntrl."t'.
m at rix amalrix thatisused
to map data rEQliremen~ to
a table In which the rows Indicate e ntitles (and possible attributes); the columns
in dicate locations; and the cells (the intersection of rows and columns) document
Jevel of access w here C create, R read, U update or modify, and D delete
or deactivate. Figure 8-24 illustrates a typical data-to-location-CRUD matrix. 111e
decision to indude or not include attributes is based on whether locations need to
be restricted as to which attributes they can access. Figure S.24 also demonstrates the
abUity to document that a location requires access only to a subset (designated SS) of
entity instances. For example, ead1 sales office might need access only to those
customers In Its region.
In some methodologies and CASE tools, you can define views of the data model
for each location. A view lndure.5 only the et1tltfes and attrlbutes to be accessible for
a single location. If views are defined, tJ,ey must also be kept in sync with the master
data model. (Most CASE tools do this au tomatically.)
locations.
=
=
i\
d a t :1.t0-loettlo o..·CR UD aut rix is:
=
=
/
Mosl of you will proceed directly 10 Chapter 9, "Process Modeling.• Whereas data
modellng was coocerned with data independently from how that data is captured and
used ( data at rest), process modeling shows how the data will be captured and used
(data in motioo). To take an object-oriented approach, you may Jump to a,apter I 0,
•object-Oriented Analysis and Modeling with UML" Object modeUng has many para~
lels with data modeUng. An object lndudes attributes, but it also ind,ldes aU the
processes that can act on and use those methods.
If you want to immediately learn how to implemtot data models as databases, you
should skim or read Chapter 14, "Designing Databases.• In that chapter, the logical
data models are transformed into physical database schemas. With CASE tools, the
code for creating the database can be generated automatically.
~ Summary
I. Data modeling is a technique for organizing and
documenth1g a system's DATA. Data modeling is
sometimes called database modeling because a
data model Is usually Implemented as a database
2. There are several 11otatlons for data modeling. The
3.
4.
5,
acnta.l model is frequently called an enuty reta1ionship diagram (ERD) because 11 depicts data in
1erms of the entities and relationships described
by the data.
.\n etltity Is somethh1g about whid1 the bushless
needs to store data. Oasses of entitles lndude
persons, places, objects, events, and concepts.
.\n entity lnstance ls a slngJe occtttrence of an
<'tltity dass.
Pieces of data we want to store about each instance of a givet1 entity are called attributes. An
attribute ls a descrlptl,-e property or characterls1ic of the ei1tity. Some attributes can be logically
grouped Into superanrlbmes caUed compound
attributes.
When analyzing a sys1em, we should define those
values for an attribute that are legitimate or that
1
6.
make business sense .111e "-alues for each attribute
are defined in terms of three properties- data
type, domain, and defu,tlt:
a. The data type defines wl1..1t class of data can
be stored in the attrlbu1e.
b. The domaln of an attribute defines what '\<'alues an attribute can Jegltim.ateJy take on.
c. TI1e default "-a.Jue for an attribute is the value
tha1 wlll be recorded If not spedJled by the
user.
7. Every entity must have an idet1titler or key. A key
is an attribute, or a group of attributes, tl1..1t assumes a unique value for each entity instance.
a. A group of attrlbmes tha1 wllquely ldentllles
an lnstance of an entity ls called a concatena1ed ke)'.
b. A candidate key is a •candidate to become
the primary ldentlfler• of Instance, of an
entity.
309
310
Part 1wo
Systoms Analysis Methods
c . A primary key ls the candidate key that will
most commonly he used to uniquely ldentif)• a
slngte entity instance.
d. Any candidate key that ls nor selected to
become the primary key Is called an alternate key.
e. Sometimes, ft is also necessary to Jdentify a
subset of entity h1Stances as opposed to a single IDStance. A subsettlng criteria is an attribute (or concatenated attribute) whose
flnlte values dJvJde all entity lnstances into
useful subsets.
8. A relatlonshJp ls a natural business assoc.L1tlon
that eusts between one or more entitles. The reL1tlonshlp may represent an event that litlks the entitles or merely a loglcal affinity that exists
between tl,e entitles. All relatlonsblps are Implicitly bldlrectlonal, meaning tl,ey can he interpreted In both directions.
9. Cardinality defines the minimum and maximum
number of occurrences of one entity for a single
occurrroce of the related entity. Because all relatlonshlps are bldlrectlona~ cardlnallry must be de-
10.
11.
12.
13.
fined in both directions for every relatlonshlp.
111e degree of a relatlonshlp is the number of entity c!as,es that participate in the relatlonsblp.
Not all relationshlps are binary. Some reL1tionshlps may he recursive relationships, wherelt1 the
relatlonshlp exists between different instances of
the same entity. Relationships can also exist betwee.n more than two different entitles, as ln the
case of a 34rj•, or remary, relationshlp.
An associative entity ls an entity that Inherits l!s
primary key from more than one other et1ticy•
(parents). Each part of that concatenated key
poh1ts to one and only one h1Stance of each of
the connectin.e: et1titles.
A foreign key ls a primary key of one entity that is
contrlbmed 10 (duplicated in) anod1er entity 10
ldet1tlfy instances of a relatlonshlp. A foreign key
(always In a child entity) always matd,es the
primary key (ln a paretll entity).
Nonldentlfying refationshlps are those in whld1
each of the partlclpatlng entitles has lts own Independent primary key, of whlch none of the
primary-key attributes is shared. The entitles In a
nonldentlfying refationshlp are referred to as
stro11g or lndependent et1titles because neither
depet1ds on any other ei1tl1y for Its ldentlflcatlon.
ldentif)ing reL1tionshlps are those In whld1 the
paretll entity contrlbmes Its primary key 10
become part of the primary key of the chlld
entit)'. The dilld entity of any ldentlfying reL1tlonshlp ls referred to as a 11..ieak entity because lls
ldentiflcation is dependent on the existence of
the parent entity's ex..l.st:ence.
t 4. A nonspecUlc refationshlp ( or many-to-many relatlonshlp) is one lo whJch many instances of one
entity are assoc.L1ted wlth many instances of 10other entity. Such relatlonshlps are sttltable only
for preliminary data models and shot~d be re
solved as quickly as possible.
15. GeneraUzation is an approach that seeks to d.lscover and exploit the commonalJtles between
entltles. It is a technJque wherein the attributes
are grouped to form ei1ti1y supertypes and
subtypes.
a. An entity supertype is an entity whose ln·
stances store attributes tl1..1t are common to
one or more et1ticy• subtypes.
b. An entity subtype ls an entity whose Instances
lnherlt some common attributes from an entity supertype and then add otl,er attributes
that are unlque to an lnstance of the subtype.
16. A logical data model ls developed In the followlng stages:
a. Entitles are disco,--ered and defined.
b. A context data modeJ ls bullt. A context data
model contains only business entitles and relationships ldet1tllled by the system owners and
users.
c. A key-based data model ls built.The key-0,1sed
model ellmlnares nonspecUlc refationshlp,
and adds associative entities. All entitles in the
model are given keys.
d. A fully attrlbmed model is built. This model
shows all the attributes to be stored h1 the
system.
e. A fully described model ls built E.1d1 attribute ls
defined lt1 the dlctlonary and described In terms
of properties such as domain and security.
f. The completed data model ls then analyzed
for adaprablllty and flexlblllty through a
process called normaUzatio11. The final anllyzed model ls referred 10 as a thlrd normd
form data model.
17. A logical data model does not comm,u,lcate dita requirements on a business operating location basis.
S)'stems analysts hm, fow1d It useful to define
these requirements in the fonn of a data-to.locitionCRUD matrix.
Data Modollng and Analysis
dlaptw Eight
311
\';::?; Review Questions
c>
I. What Is the difference between logical and physi-
cal models?
2. Why ls it lmponant to create an implementatlonlndependetll model of a S)'Stetn?
3, Why ls it necessary to create an lmplementatlondepet1dent model of a systetn?
4. What Is an entity? What are entity instances?
5. A re/aH011sbtp Is a natural business association between entitles. W11at is the relationship between
student and teacher? Does ft depend ou how many
classes a student can take, or how O:Wl'/ classes a
teacher can teach?
6. What is cardlnallty? Gh-. an example.
@:
l. What ls a reasonable domaln for the data anribu1e
for a student's last name?
2. What def.nut value would you choose for a
student's last name?
3. What def.nut value would you choose for gender?
4. The student table you are working with contalns
the attrlbutes: sruomr m ,NAME, PHONE NUMBf.ll,and
NormaUze to 3NF.
MAJOR.
5, What attributes would you ha,--e in a table to
descrlbe a movie?
6 . .\ many4o-many reL1tionship (also called a nonspeclflc relatlonslllp) can and generally should he
re.solved into a pair of one.-to-many relatlonstl.ips
with an associative et1tlty. When is th.ls not the
case?
Problems and Exercises
7. Gfve an example of a many-to-many reL1tlonshJp.
Re.solve using an entity or an as.,odattve entity.
Which dld you use? Why?
8. Describe each of the first three normu forms.
Gfve an example of each.
9. A customer goes to a shoe store and purchases
several palts of shoes. Diagram this relationship.
10. Give an example each of ternary, ldent!fyh1g, and
nonidentlfylng reL1tionships.
11. On the surface, data modeling appears not to re.qtdre much creatlvtty. Why is this incorrect?
12. Can a well-desJgned database give a buslness a
strategic advantage? How?
~ Projects and Research
I. Go to the school library. Ask the librarian at the clr-
cuL1tlon desk to prlnt out a copy of the information they keep on you. What types of data are
belng stored? ls there anything that surprises you
or seems irrelevant to checking out books? If so,
ask why the lnformatlon ls collected.
2. Create a list of attributes for the srudet1t entity
from the h1fonnatlon you found h1 the prevloltS
problem. Normallze to third normal form.
3. Go to a grocery store and make a purdiase. What
type of data would a good Information system
maintain on a traosactlo11? What does a good h1foFmatlon system do for a business?
4. Compare your at1SWer from the above question
(grocery store) to tl1.1t of at least one other
student How were your at1SWers dtfferent?
5. What legal and privacy Issues are related to databases used by grocery stores? Go to http://www.
ff.ndla1v.co111 and research some recent court
cases on the topJc. Pre.sent your work in a short
(tlve-page) paper to your class.
6. How can databases, and the information kept In
databases, be used by businesses for a !trategi.c ad'\o-antage? In a small group, go to a b ush1es., of yolU'
choosing. Bralnst:onn to create a database that offers that company either a solution to an existing
problem, or exploits an exlstlng opponurtlty in
business. Reme.mbe.r to be creatt,--e.
312
Part 1wo
Minicases
Systoms Analysis Methods
{:]J
I. Consider a lktitlous 01illne grocery store called
Step 6.
Wow ,_funchJes.11lis ls a national frandlise,complete wllh marl<etlng, accounting, slllpplng, and
customer service departments. The CIO has decided to update the database correspondlng to the
Web stote so that lt collects pertinent transaction
and shopping information for the different departments. She ls undecided what software or hardware will support this database.
Step I.
Step 2.
How wlll you determlne what data ls
important to collect and malntaln in
the new database? Be specific.
Create surveys, questionnaires, and the
llke, and admJnlster them to approprl3.te personnel in the affected depnrt
Step 3.
Step 4.
Step 5.
ments. Review the fonns that each
department uses.
What kind of responses did you get?
Go to an 01illne grocery store, and see
what data ls belng collected by"rlval"
companles. Old you miss anything? Did
any of the responses you get requlre a
secondary meeting with department
personnel? If so, revise your sur,--e}'S
and questions and reh1tervJew.
Utilize the methods you outlined h1
the above question, and ascert.ai.n the
entitles and attributes you will need to
lndude in your data.
Draft the relationships and cardinality
between the e11tltles. What kind of data
model are you using? lmplemet1tatlon
specific or nonspeciJlc? Why?
Revise your data model so that t!,ere
are no many-to-many relatlonsh1ps,
and the model ls normalized to third
normal form.
Step 7.
Subntlt all questionnaires, surveys,
forms, and responses to your professor,
along with your final data model draft.
Include a short explanation as to how
you derfved your entitles and attributes
and the relationships and any assumptions or llmJtatlons your data model
may ha,--e.
2 Research a car rental agency and create a data
model for its database for car rentals. What departments are :affected by the ttntal of a Cl.t? Re
view any forms publiclj• available and create
surveys and interviews as necessary to help you
detennlne wl1..1t your database should contaln. Be
sure to normalize to third normal fonn and to resolve any many-to-many relationshlps. SUbmlt your
data model and all supporting documents to yottr
professor.
3. Consider t!,e Mafia. Assumh,g that organlzed crime
groups maintaln databases to e\o-ade capture and to
rw1 their businesses, what lnformatlon would they
keep?Why?
4. What legal, etlllcal, and privacy Issues are associated with databases used h1 crime fighting? Research and present a short paper {tett pages 01
less) to your clas.,.
Team and Individual Exercises
I. Project managemetll In a geographically and cui
rurally dispersed team is dlflkttlt. For each team
member, assJgn the member to a country wJth a
different time zone and dJfferent languages. Assume all members share one common language,
although that language will not be a first language
for all members. Ex.ample countries: USA, l11d11,
Israel, Chlna, Pakistan, Iran, France, Peru, and
Japan.
2 . lndlvldlltl exercise: It is sald that the bow1daries of
our own creativity are ourselves, and our experiences. That is, the very thlngs that make us wl10
we are also constrain. us. Wh.at does it mean to be
creative? How do you become creative and to
think freely?
3, lndtvJduaJ or team exercise: Reet1glneer a common life process. If the "sky was rhe limlt," how
would you dtange this process? Identify each of
the steps In the old process and then each step in
the new process (e.g., putting on makeup, deaning the h.ouse, going to the grocery store, golllg to
class) . Bring your notes to class for a row1dtabJe
dlscussJon.
Data Modollng and Analysis
dlaptw Eight
313
r) Suggested Readings
Bruce, Thomas A. [}(!Sfgntng Quattty Databases uJl.rb
/DEFIX ltifortnatton Alodefs. New York: Dorset Ho use
Publishjng, 1992. We actually USC' this book as a textbook
in our database analysis and design coul'SC'. IDEFlX is a
rich, standardi.'1.C'd syntax for data modeling (vvhich Bruce
caUs infonnation modeling). The gtl.phkal language looks
cUifc.1t:nt, but it cornmunkatcs the same system concepts
pn-scntcd in our book. The language is supported by a.t
lc,st tv.•o CASE tools: Logk Works' ERtlJIIJ and Popki.n's
S)1Sle11J Arc!Jtt.ecl. The book includes t\\'O case studies.
Hay, Da,'ld c Data Alo<lel Rltter11S: C0111,1tu1tto11s ofTbougl•t,
N~ York: Dorsct House Publishing, I 996. What a nm.'t':I
book! This boo k starts v.•ith the prcrnisc that blOSt busi·
llC$S data models arc ckth'llth-c-s of some bask, l'C'pcatablc
pattc.rns. CASE ,,:odors, how about induding these
pattcms in CASE tools as reusable templatcsl
Mw.1.i1i, fti.uK'.!>, a.uJ Cli ,·c fi.ulr.cblcih. J11for111arton E11g1ueer·
t1Jg. 3 ,o ls. New York: Sa,':Ult Institute, 198 1. Informat.ktl
cnginttri.n.g is a fo rma~ database, and fourth-gdlel'.ttktl
language-oriented methodology. The gtl.phic d data model·
ing language of info rmation engineering is ;•irtually idc:n·
tical to ours. OJ.ta modeling is co,'C'.tcd i.n Volumes I and D.
Reingrubc,; l'itichael, and William Gtcgoty. The Data Alodeltng
Hanaboo'1. New Yotk:JolU\ Wiley & Sons, 1994. This is an
cxcc:llcnt book on data modeling and is partini.larly heJpful
in ensuring the quality and accuracy of data models.
Schlae,; Sally, and Stephen). Mellor. Objec.t-Ortnlted sysre1ns
A11af)1ru· Atoaett11g tbe Wf.Jrld tn Data. Englewood Cliffs,
N):Yourdon Press, 1988. Forget the title! •obi«t-oricnted"
means soblC'thing different today than it did. in 1988, but
the book is still one o f the easiest-t~ ttad books on the
subj«t of data modeling.
Tcorey, Toby J. Database Alodeftng & Destg,,· Tbe F1111a~
11ie11tal P,•flu:..fples, 2nd ed. San fl'.Ulci.sco: .\fo rpn Kataf·
man Publishers, 1994. This book is somewhat more
-.:v lll.:OCJJUa.J ll~, l.11,c v l11c1·l> iu tJ.1c li:>1., Uul il vruviJc~
uscfti.l insights into the practice o f data modeling.
Slrablgle 1nn:inna11on S)'Stelr6 Plan
strategic £rterp11Se Pian
-
STR"EMENT OF WOFt<
-
PA081.EW SUJEt.EN'f (uf1'9UIP Pl:CESIIWII-")
.....
.....•
f.lFO,-.RlON
SCOPE
-
... )
2'°
•
V U$10N
w~
~w
>.
"0
..
"
..
....
.....•
FI.IICl'IOW.L
COMWl.tllCATlONS
SCOPE
SYSTEM 1...FIOiEMENT 08JEC11VES (ulrg O. PIECES IIWll-'C)
I!
8USf.lE:'SS FEOJIFIEt.ENTS ST.UEt.EN'f
>
c
z
c
-
•)
2
I!!
>
r
..
• ..
,
.. ..
..
....
8U61NESS
AEOUIFEWEHTS
EIJSINUS
8USIIES8 & 6't'STEM
"""°'"'
llftt:FFAOE
AEOUAEMENTS
........
'°"'...
'"""'°'
FEQJIFEIENTS
LOGICAL
u>GOC...
ORA
WOOELS
MOOEl.8
•ODEl.8
v
c
~
SY.S TE• PFIOPO& AL (or
w
2
w
~
tlJ
c
~
>
cz
2
~
"w
~
0
A FICHITECTUIJA L •OOEL
-
0
l?
ffi
",
0
•
!
s•
-
-
-
ti
H
H
.II ~
~
•
i!
-
~
REQUES T F <J R .SY.STE• PROPO SALS )
H
;
"~
OE&IGN PAOTOTY~E&
A
8USHas PFIOCE89
.........
"'""
""'80CM.
INTERFACE
DESIGN
PHY61CAL
80FTWNIE OESIOII
SPECFICATIOKS
"'""
SPECIFICATION$
FUNCTION AL .SY&TEM
w
I
•
0
'
OPER A TION A L 8Y8 TE•
6PECIFIOOIONS
•FIAIHIHG M ATERI A L S
so,,_.,
eot,MCfle.lH.
.........
.......°"
PHYSICM.
U6&1 & SYSTEM
"""
,-Q<AOES
•
0
0
SOWTIONS
CUSTOM.8un
APPUC.UION
I
m
SOWTIONS
so,,_.,
INTERFACE
SYSTEM
INTERFACE
POST- AUDIT RE V IEW
........
.........
APPFIOiEO
TECl+IOLOGfES
strategic eiterprtse 1nn:irma11on TectnclOgy AfChnecture
•
-
-
":D
em
;
0
i0
Q
~
,•"
~
0
"a
~
.m
..a
0
m
"'"'
I
•"'z
"•m
1
I
"'z
i
m
"
i
•
I
!
f
t
~
•la
I
I
I'
I
f
•
f
I
~! ! ••
L...:!_
A
i"":"&
~
IA
I~
I
J!_
u
i
-
-
Process Modeling
Chapter Preview and Objectives
In this chapter you will learn bow to draw data flow diagrams, a popular process model
that documents a system's processes and their data flows. You will know process
modeling as a systems analysis tool when you can:
I Define systems modeling and differentiate between logical and physical system
mxlels.
I Define process modeling and explain its benefits.
I Recognize and understand the basic concepts and constructs of a process model.
I Read and interpret a data flow diagram .
I Explain when to construct process models and where to store them .
I Construct a context diagram to illustrate a system•s interfaces with its environment
I Identify use cases and external and temporal busine.s~events for a system.
I
PiF,rfnrn, event p~rtitinnine :1nrl nrz~ni7e event~ in
:1
f11nctinn~I rlP.r:nn1pN.itinn rli~zr~m.
I Draw e\o'ellt diagrams and then merge those event diagrams into system diagrams.
I Draw primitive data flow diagrams and describe the elementary data flows and
processes in terms of data structures and procedural logic (Structured English and
decision tables), respectively.
I Document the distribution of processes to locations.
I Synchronii.e data and process models using a CRUD matrix..
316
Part 1wo
Systoms Analysis Method s
Bob ,_lartloez has beett working on the SoundStage ,_lember Sen-ices ~tern for several weeks. He w1derscands the system pretty wel~ but It is still easy to get confused
and to forget details.
•n,e problem; Bob said to his boss, Sandra Shepherd, •is that the system ls too
big to keep It all In your h ead ai one time.·
.. I'm glad you said tl1at," Sandra answered, ...because your next assignment is to
break the system down into parts that you can get your h ead arow1d. Each part ls
called a process, and you'll need to define the lnputs and outputs to tl1at process plus
who or what ead1 input and output comes from or goes to . And, by the way, ~·ou'U
need to specify the logic for the process.•
• 1 thought the use cases did all that; Bob replied.
..They aren't specific enol~h." Sandra stated. "Would you like to runt a project
over to a programmer located across the cotmtry wlth no more specifics than '\\11..1t a
use case has? Who kt1ows what you'd end up witlt? \X'elcome to the world of process
modeling, Bob. Get to work.'
~~~A_n~ln_t_ro_d~u_c_ti_o_n_t_o~P_ro_c_e_s_s~Nl_o_d_e_l_in_g~ ~~~~~~~~~~~~)
In Chapter 5 you were introduced to systems analysis activities that called for drawing system models. System models play an lmponant role In system development. As
m odel a picbrial represen.
tation of reality.
logica.J m odel a nontechni.
cal pictorial re.,resentation
that depicts what a system
is or does. Synonyms are
sssent aJ mo~~ conceplJaJ
mode~ and busin9SS model.
p h }'Sical model a technical
pictorial representation that
depicts what a system is or
does and how the system is
implemented. 3ynonyms are
impl9frt9ntatio.r, rnod91 and
techriC81 mod>I.
a systems analyst or user, you wlUconstantly deal wJth unstructured problems, One
way to structure such problems is to draw models. A m od e l is a representation of
reality. Just as a plcture ls worth a thousan d words, most ~·stem models are plctorlal
represetllations of reality. Models can be built for existing systems as a way to better
underSland tl1ose systems or for proposed $)'stems as a way to document business
requirements or technical desf@tlS. An important concept ls the distinctlon between
logical and physical models.
Logical models show wbat a system is or does. They are impJementatloo/ndependet1t; that Is, ti,ey depict ti,e system lndepet1dent of any tedmlcal lmpleme0,
tatlon. As such, logical models Illustrate the essence of the system. Popular synonyms
indude essential n1.odel, co11.ceptu.al tnode4 and b·ust11ess ,node£. Physical m odels
show not only tlJbat a system Is or does but also botlJ the system ls physlcaU-y and
techn.ically lmplemented.111ey are implementation-dependent because they ttflect
technology choices and the timltatlons of those technology choices. Synonyms
indude i111ple1ne11tatton n1.odel and teclnif.cal tnodeL
Systems analysts ha,--e Jong recognJzed the '\o-a.lue of separating business and technical concerns. 1bat is why they use logical system models to depict business requirements and physical system models to depict technlcal designs. Systems anllysis
activities tend to focus on the logical system models for the following reasons:
Logical models remove biases that are the res,dt of the way the current system is lmp lemetlled or the way that any one person thinks the system mlght
be lmplemented.111us, we overcome the "'\ve"ve always done It tl1at way"
syndrome. Consequently, logical models etlCOtll':tge creativity.
LoglcaJ models reduce the risk of missing business requirements because we
are too preoccupied with tedulical details. SUd1 errors can be costly to correct after the system is Implemented. By sepanting what the system must do
from l1ow the system will do it, we can better analyze the requirements for
comp leteness, accuracy, aOO consistency.
LoglcaJ models allow us to communicate with end users ln nontechnical or
Jess technical languages. T hus, we don't Jose requirements in the technlctl
jargon of the computing discipline.
Procoss Modollng
In this chapter we will focus exduslvely on logf.cal process modeling dnrlng systemsan~ysls. Process modeling Is a technlque for organizing and documenting the
structure and flow of data tlvough a ~·stem's PROCESSES and/or the logic, policies, and
procedures to be Implemented by a ~tern's PROCESSIS. ln the context of Information
system bttlldlng blocks (see the home page at the beginning of the chapter), logical
process models are used ro document an information system's PROCESS focus from the
system owners' and users• perspective (the intersection of the PROCESS column with
the system owner and system user rows). Also notice thar one special type of process
model, called a co1,te."l(t diagra·,n, illustrates the coMMUNla.nON focus from the system
owners• and users• perspective.
Process modeling originated in classical software engineering metl1ods~ therefore, you may have encountered various types of process models such as program
structure d1arts, logic flowd1arts, or decision tables in an application programmJng course. In this chapter, we'll focus on a systems analysis p rocess model, data
d,aptw N lno
317
process modeling a
technique used to organize
and document a system's
processes.
flow diagrams.
A data Oow dfagram (DFD) Is a tool that depicts the flow of data through a system ,nd the work or processing performed by that system. Synonyms Include bubble
chart, rra11sformatlo11graph, and process modeL We'll also introduce a DFD pL1ll1llng
tool cnlle-d dcco111podtio,1. dlagra,11&. Fln:illy, we'll 11.ro study
CO"lllA"<t
diagran,s, a
p rocessllke model t11at actually illustrates a system's Interfaces ro the business and
outskle world, induding other information ~·stems. 1
A simple data flow diagram Is Illustrated h1 Figure 9-1. In the design phase, some
of these business p rocesses might be implemented as computer software (either
built lo-hottSe or purchased from a software vendor). If you examine this dara flow
diagram, you should find Jr easy ro read, even before you complete this chapterthat has always been the advantage of DFOs. There are only three symbols and one
connection:
data Oow diagram (DFD)
a process mod~ used to
depict the flow cf data through
a system and th9 work or
processing perrormea riy tne
system. Synony.ns are bubb/9
chaf! tl1lf1Sb,-ion gap,,
and procoss mcdol.
The rotmded rectangles represent processes or work ro be done. Notice
th.at they are illustrared it1 the PROCESS color from your lnformatlon system
Cramework.
The squares represent extern.al age11.ts- the OOlmdary of the system. Notice
th.at they are illustrated it1 the INTERFACE color from your lnformatlon system
Cramework.
The opefl-(>nded boxes represent data stores, sometimes caUed files or databases. If you h.ave already read Chapter 8, these dara stores correspond ro all
Instances of a sh1gle entity ln a data model. Accordingly, they ltave been illus.
trared wJth the DATA color from yottr Information systems framework.
The arrows represent data flotlJS, or Inputs and ourpurs, ro and from the
processes.
There is sometimes a rendet1q• to confuse data flow dtagrams with flowcharts because program design frequently Involves tl1e use of flowd1arts. However, data flow
dL1giams are very different . Let's stunmarlze the differences.
Processes on a data flow dL1gram can operate In parallel. Thus, several
processes mlghr be executing or working simultaneously. This ls consistent
with the way businesses work. On tl1e other hand, processes on flowcharts
can execute only one ar a time.
Data flow diagrams show the flow of data tlvough tlte system. Their arrows
represent paths down whlch data can flow. Looping and branching are not
typically sJ1own. On the other hand, flowcharts !how d1e sequence of proc~es
or operations in an algorfthm or program, Their urows represent pointers ro
the next process or operation. This may h1dude looping and branching.
1lb c:bui.c structured il.llldy,i$,contut diliSfll--lnJIIN' ooblidd"l'd to bC' 11bothd-type ofptoc:e,ts tnodr.L But it! object.
oric:bt«I il..llll..tyu, they illu,ltllte ,oope ILlld in.tttf.aoes. lb tbi$ editiotl. • ·c: hll\~ ch:»ctl the btm dc:6bitiob.
Author's Note: there are
several competir1g symbol
sets for OFDs. Throughout
this chapter, theauthors have
ohooen to U3e the Cane and
Sarson notation because of
its wide popu larty.
318
Part 1wo
Systoms Analysis Methods
Monthly Account
stalffllenb
New or ~odified
Monthly Statement
Bank
.
Reconcile
Account
Balances
i
Bill
Credtor
'
Monthly
Statement
'
Pay
Payment
a
Bill
Transaction
I
Account
Balance
.
~
.
I
Prior Monttlly
Statement
Current
Balance
Account
Tran,actiots
Bat* Atcounts
..
Credit
Payment
..
Debit
••
.
Atcount
Tra11SaCtion s
-
-
Deposit
Withdraw
Funds hm
an Areoont
•
Withdraw or Transfer
Employer
Pay
OeposHFmds
into an
Account
Bat*
• Data store duplicated only to prevent crossing lines
Other
Income
Source
Reimbursement
C ---------F I GU R E 9 • 1 A Simple Data Flow Diagram
.._.
)
Procoss Modollng
d,aptor Nino
319
Data flow dL1grams can show processes thar Juve dramatically different timing. For example, a single DFD might indude processes that happen hourly,
daUy, weekly, yearly, and on demand. Tills doesn't happen In flowcharts.
Data flow dL1grams have been popuL1r for more d1an 20 years, bur the Interest In
DFDs has been recently renewed because of thelr applicablllry In busl11ess process
redesign (BPR). As businesses h.a,--e come ro realize thar most data processh1g systems
have merely auromared outdated, inefficient, and bureaucratic business processes,
there ls ret1ewed Interest in streamlining the business processes. Th.ls ls accomplished
by fust modeling the business processes for the purpose of analyzing, redesigning,
and/or improving tl1em. Subsequently, lnformation t<cbnology can be applied to the
improved busfr1ess processes In creath,--e ways that m.axlmfze the '\<'alue returned to the
business. We'll re\oisJt this trend at the end of the chapter.
( System Concepts for Process Modeling
>
External Agents
All information systems respond ro events and condJtlons in the $)'stem's ettvlronment. The en"ironmenr of an infonnatlon ~tern indudes extern.al agents that form
the l:otmdary of the system and define places where the system interfaces wJth its etlvironment An external agent defines a person, an org.ul.ization unit, another ~·stem,
or another orgail.izatlon thar Ues outsJde the scope of the project bur that interacts
with the system being studied. External agents provide the ner lnputs lnro a ~·stem
and receive ner outputs from a system. A common ~·nonym is extern.al e1J.ff.ty (not to
be confused witl1 data entity as introduced In Chapter 8).
The term external means ..external ro the system being analyzed or designed." In
practice, an external agenr may actually be outside of the business (sud1 as gover11men1agencies, customers. suppliers, and contractors). or It may be Inside the business
but outside the project and system scope (such as other departments, other business
functions, and other internal information systems). An external agent ls represented
by a square on the data flow diagram. The De.lttarco/'iOurdon equJ:valenr ls a rectangle
(see margin).
It ls Important to recognize thar work and acth·ities are occurrlng insJde the
extemaJ aget1t, but t11..1r work and t11ose activities are said ro be ..our of scope" and 11or
subject ro d1..1nge. Thus, t11e dara flows between your system and these bow1darles
should not cause substantive cban,ae to the work or actlvJUes performed by the
extemaJ agents.
The external agents of an information system are rarely fixed. As project scope
and goals change, dte scope of ai1 infonnatlon system can eid1er grow or shritlk. If the
system scope grows, it can consume some of the original exten1..1I agents- in other
words, what was once considered outsJde tlte system ls now considered inside the
system (as new processes).
SlmlL1rly, lf tJ,e system scope shrinks (because of l>udget or schedule constraints),
processes thar were once considered ro be ittsJde the system may become external
agents.
External agents on a logical data flow dlagram may lndude people, business uolts,
other Internal ~tems with which a system must interact, and external organJzatlons.
Their indusion on the loglc:tl DFD means that your system interacts with these
agents. They are almost always one of the following:
Alt office, departmet1t, di,ision, or ittdtvldual widt.itt your company rl1..1r pro'rldes net lnputs ro d1..1r system, receives net outputs from that system, or both.
Alt organization, agency, or lndtvidual t11..1r is outside your company bur t11..1r
provides net lnputs to, or receives net outputs from, yottr ~·stem. Examples
Include CUSTOMERS, SUPPLIERS, CONTRACTORS, BANKS, and GOVf.RNMf.NT AGENOES.
exter-oal ageot an outside
person, organization unit, SfStem, or organization that inter.
acts with a system. Also called
external Mt;fy.
External
Agent
G,ne and Sen~on • hape
External
Agent
OeM areo/You:rdon • hape
External Agent
Symbols
320
Part 1wo
Systoms Analysis Methods
Another business or infon:natlon ~·stem- posslbty, though not nece~arUy,
computer-based- tl1..1t is separate from your system but wlth which your
system must interface. It is becoming common to interface infonnatlon SJ'Stem.s with those of other businesses.
A ~tern's end users or minagers. ln this case, the user or manager ls either
a net soucce of data to be input to a ~tern ancVor a net destlnatlon of outputs to be produced by a system.
External agents should be named with descriptive, sfoguL1r nouns, such as R.F.GJS. or RNANCI.AL INflOR.-\tATION SYSTE."1.. External agents
represent fixed, physical systems; therefore, they can have physical names or
acronyms- even on a logical DFO. For exampJe, an external agent representing our
school's financial management Information system wot~d be called FNJS. If an external
TRAR, SUPPUER, M.ANUFACTUIUNG ~
agenr describes an indhidual, we recommend job titles or role names Instead of
proper names (for ex.ample, use ACCOUNT CLERK, not ,llaryJacobs).
To avoid crossing data flow Uoes on a DFD, It ls permissible to duplicate external
agents on DFOs. But as a general rule, external agents should be located on the
perimeters of the page, consistent with thelr dellnltlon as a system boundary.
,. Data Stores
data store s:ored data
intended for later use.
Synonyms are file and
dBi.abase.
,_lost information systems capture data for later use. TI1e data ls kept in a data store,
the last symbol on a data flow diagram. It ls represented by the open-et1d box (see
margin). A data store Is an •inventor)'" of data. Synonyms lndude file and database
(although those terms are too lmplemet1tatlon-oriented for essential process modeling). If data flows are data 111 ,notion, tllink of data stores as data at fr!St.
Ideally, essential data stores should describe • things· about whlch the business
wants to store data. These tlllngs indude:
Persons: AGENCY, CONTAACTOII., CUSTOMER, DEPART~ DMSION, fl\lPLOYEE, INSTRUC'i'OR,
omcE, STUOENT,sUPPum.. Notice that a person entity cut represent either
lodtvJduals, groups, or org.·ulfzatlons.
II
PL1ces:SALES REGION, BUILDING, ROOM,BRANCH OFFICE, CAMPUS,
Objects: BOOK, MJ.CKCNE, PAR~PRODUCT,
Data Store
Gane tnd s,reon • h•pe
R.AW MATERlA.L, SOPTWAR.E LICENSE, SOPTWAR.E
object entity can represent actual
objects (such as SOl'l'WARJe LICENSE) or speclflcatlons for a type of object (sud1
as SOFTWA.11.E PACKAGE),
Events: APPUO.nON, AWA.llD, Q.NCEU.ATION, CLASS, FLIGHT, IN\OICE, ORDER, REGISTR.ATJON,
PACKAGE,TOOL, VEHICLE MOD!L, VEHICLE. An
RE'IBWA.L, REQUISmON, R.ESER'IATION, SALE, 'JlUP.
Concepts: ACCOUNT, BLOCK Of TL>,.tE, BOND, COURSE, flllND, QU\UFla.noN, STOCK.
Data Store
NOTE: If the above list looks famUL,r, it should: A data store represents aU occu.rrences of a data et1tlty~fined In Chapter 8 as sometlling about which we want
OeMarco/Yo~don •Nipe
to store data. As such, tl1e data store represet1ts the $)'nchronlzatlon of a system's
process model with Its data model.
( Data Store Symbols)
If data modellng ls done before process modeling, ldentlllcatlon of most data
stores ls slmpllfled by the following rule:
There should be one data s:ore for each data entity on an entity relationsh.ip dL1gram. (We even lndude associative and weak entlt:y data stores on our models.)
If, on the other hand, process modeUog Is done before data modeling, data store
dlsco,-ery tet1cls to be more arbitrary. In that case, our best recommendation is to identify existing implementations of tlles or data stores (e.g., computer tlles and databases,
file cabinets, record books, catalogs) and tl,en rename them to reflect the logical
.. things• about wll.ich they store data. Consistent with Information engineering suategies, we recommet1d tl1at data models precede the process models.
Get1erally, data stores should be named as the pJural of t11e corresponding data
model entity. Thus, If the data model lndudes an entity named cusroMEt, the process
Procoss Modollng
d,aptor Nino
321
models will include a data store named CUSTOMERS. 11is makes sense because the data
store, by definition, stores all instances of ti1e entity. Avoid physical terms such asjlle,
datal:>ase,fl/e cablne~ JUe folder, and the like.
As was the case with boundarles, It ls perm.lsslble to duplicate data stores on a
DFD to avoid crossing data flow lines. Duplication sbotdd be mlnlmized.
>
Process Concepts
RecaU from Chapter 2 that a f<u1Clametllal bulldh,g block of infonnatlon >)'Siems is
PROCESSES. All lnformation systems indude processes-- uslally many of d1em. lnfonnation
system processes respond to business e,--ents and conditions and transfonn D.\TA (another
building block) Into useful lnfurmation. Modelh,g ptocesses helps us to understand
inten.ruons with the ~em·s environment, od1er systems, and other processes.
A System 11 a Process We have used the word S)~e,n throughout this book to describe almost any orderly arrangement of Jdeas or constructs. People speak of educational systems, computer systems, management ~·stems, business systems, and, of
course, information systems. In the oldest and simplest of all system models, a system
Process name
G,ne & Sarton •Npe;
used throughout
this book
Is <l ptVi.:~:,.
In systems analysis, models are used to view or pre.sent a system. As shown In
Figcue 9-2, the simplest process model of a system is based on Inputs, outputs, and the
system itself- viewed as a process. The process symbol defines the boundary of the
system.11,e system is Inside the bow1dary; the en,iroometll Is outside that boundary.
The system exchanges lnputs and otnpurs wJth its en"ironmenr. Because the en"i·
ronrnenr is always d1anging, well-designed ~tem.s have a feedback and control loop
to allow the ~·srem to adapt Jrself to changing con ditions.
Consider a business as a ~·stem. Ir operates wJthln an environment thar indudes
customers, suppliers, competlrors, other Industries, and the government. Jrs lnputs
include materials, sen-ices, new employees, new equipment, facilities, money, and
orders (to name but a few), Its outputs lndude products ancVor senices, wasre
r FIGURE 9 - 2 '
The Classic Process
Model of a System
The
System as
a Process
Feedback and
Control loop
The Syslem's Environment
(constantly changing)
322
Part 1wo
Systoms Analysis Methods
process wor:< performed
by a system in response to
incoming data flows or condi·
tions. A synonym is tan.dorm.
materials, retired equlpment, fonner employees, and mon ey (payments). It monitors
its en'\oironment to make nece.ssary changes ro its product Une, services, operatfrlg
procedures, competitors, and the economy.
A rounded rectangle (the Gane and Sarson nomtlon) ls used tbrougl1our tllis clupter ro represent a process (see margin). A process ls work performed on, or in response to, incoming data flo"''S or condJtlons. A synonym ls tra11sfort11. Dlfferent
process modeling notations use a circle (the Oe,.larco/Yourdon n o tatio11) or a ttctangle (the SSADM/IDEFO notation). The d1oice is often dependent on your metl1odology
and CASE tool features.
Although processes can be performed by people, departments, robots, machh1es,
or computers, we once again want to focus on t1Jbat work or action ls being performed (the logical process), not on who or what ls doing tl1at worl< or activity (tl1e
pbysrca/ process). For instance, in Figure 9-1 we included the logical process WITHDRAW FUNDS FROM AN ACCOUNT. \X'e did not indJcate how dlis would be don e. lntuiti,-ely,
we can tbitlk of several physkal Implementations sud1 as using an AT~t, uslng a
bank's drive.through senice, or actually going Inside the bank.
Process Decomposition A complex system ls usually too difficult to fully underst:ind when "i ewed as a who le ( mean.Ing as a d,iglo proc<!$$), 11,erefore, in s~tems
decomposition the act of
breaking a syEtem into sub·
components.
,,
analysis we separate a system into lts component sub~tems, which are decomposed
into smaller subsystems, until we have Identified manageable subsets of the overall
system (see Figure 9-3). We call this technlque decomposition. Decompositio n ls tl1e
act of breaking a system Into Its component su~ ·stems, proce~es, and subprocesses.
Each level of abstraction reveals more or less detail (as desired) about the overall system or a subset of that system. )'ou have already applied decomposJtion In various
ways. ,_lost of you ha,--e outll1iet:' a term paper- this ls a form of decomposition. )lany
of you have partition ed a medium- to larguJze computer program Into subprograms
that cot~d be developed and tested Independently before they are h1tegrated.This is
also decomposition.
ht ~·stems analysis, decomposition allows you to partltio11 a ~·stem lnto lc,glcal
subsystems of processes for Improved communication, analysis, and de.sign, A diagram similar to Figure 9-3 can be a little difficult to construct when dealing with all
~
0
FIGURE 9 - 3
A System Consis ts
o t Many
S ubsystetnS and
Processes
The System
/
,,
1.1
[
[
\.
) [
Taak1.1.1
Taak1.1.2
Tuk t ,f .S
-
I
)
'
1.2
Ad vity ol lte f11co11
',,
'
1
A Fmctton of the ~e11
Activily ol Utt Fmction
Taak 1,2,f
)
)
\.
I
Taak 1.2 .2
)
2
Another Fm dfon ol the ~lem
'
2.1
Aclivily ol U.. floctiln
[
Taak2..1.1
)[
Task t ,f .2.
)
(
Tuk 2 .t ,S
)
[
Taak1.1.•
)
I
~
'
2.2
-
Activity ol ttis F11clion
r , •2..2.,
I
)
[
Tuk 2 .2,S
Taak 2..2.2
)
)
Procoss Modollng
d,aptw Nlno
323
0
The System
I
I
I
1
A Functloo
2
Another
Funcaon
I
I
1.1
ACIIYIIY or the
Function
1.2
Another Aet1¥1IY
of the Function
Task 1.1.1
-
Task 1.2.1
-
-
Task 1.1.3
-
22
Another AcUwlly
of This Function
Task 2.1.1
-
Task 1.2.2
Task 1.1.2
-
2.1
ACIIYlty Of This
Function
Task 2.2.1
Task 2.1.2
-
Task 2.2.2
-
Task 2.1.3
-
Task 2.2.3
-
Task 2.1.4
-
C _ _ _ _ _ _ _ _ ______,
F I GU RE 9 • 4
~·
A Decomposition Diagram (fo r Figure 9-3)
but the smallest of systems. Figure 9-4 demonstrates an alternatfve layout that ls
supi:orted by many CASE tools and developmen1 methodologies. It is called a
deco1npositio11 diagratn. We'll use ft extensively In this d1apter. A d ecompositio 11
diagram , also called a hierarchy chart, shows the top-down ftu1ctlo11al dec omposJtion and structure of a system. A decomposition d.agram is essentially a planning
)
derom J>ositioo diagram
a tool used to depict the
decomposition of a system.
Also called hiorarctff cm.rt.
324
Part 1wo
Systoms Analysis Methods
tool for more detailed p rocess models, namely, data flow diagrams. The following
ntles apply:
Ead1 process ht a decomposition diagram is either a pare11..t process, a cbl.ld
process ( of a parent), or both.
A parent tnust have two or more cbUdren- a single child does not make
setlSe because that would nor reveal any addJtional detail about the ~tem.
In most decomposition diagramming standards, a child may
ha,-. ortly one
parent
Flnally, a child of one parent may be the parent of Its own children.
The upper and lower halves of the decomposition diagram In Figure 94 demoostrare two styles for L1ylng out the processes and connections. You may use either or
both as nec essary ro present an uncluttered model Some models may require multiple pages for maximum clarity.
The connections on a decomposltio11 diagram do 11ot contain arrowheads be-
cause d1e diagram ls meanr ro show srruct1,re, not flotl.J. Also, the connections are nor
named. Implicitly they aU have the same name-cONsISTS OF- since the sum of the
chlld p rocesses for a parent process equals the parent process.
Logical Processes and Conventions Logical processes are work or actions that
must be performed no matter how you implement the system. Each l ogical process
is ( or will be) Implemented as one or more physJcal processes that may include
work performed by people, work performed by robots or madllnes, or work performed by computer software. It doesn't matter which Implementation ls nsed,
however, because logical processes should only indJcate that there is w ork that
must be done.
Namit1g convet1tions for logical proce.s.,es depend on where the process ls in the
decomposltlon diagram/data flow diagram and the type of p rocess depleted. There
fuoctioo a set of related
and ongoing a::tivities of a
business.
eveot a 1og1cru unit or work
that must by completed as a
'M'lole. Sometines called a
transac1m.
are tlvee types of logical processes: functions, even.ts, and elenientary processe;.
A fu11ctioo is a set of reL1ted and ongoing activities of the business. A function
has no start or et1d; Jt just continuously perfonns Jts work as needed. For example, a
manufacturing system may include the following functions (subsystems) : PRooucr10N
PLANNING, PRODUCTION SCHEDUUNG, MATERlAlS MANAGEMENT, PRODUCTION CONTI.OL, QU,UJTY
MANAGE.>,.{E'II(, and CN\'E'ltl"ORY CONlROL Each of these ftmctlons may consist of doza15 or
htmdreds of more discrete processes to support spedflc activities and tasks. Ftmctlon
names are nouns that descrlbe the entire function. Additional examples are ORDER
ENTRY, ORD£R MANAGE.>,.{E'II(, SA.LES REPORTCNG, CUSTOMER REI.A'OONS, and R£1'URNS AND REFUNDS.
An event iS a logical untr otwork tbac muse be completed as a whole. An event is
triggered by a discrete Input and is completed when the process has responded with
appropriate outputs. Evet1ts are sometimes called tra1JSacttons. Fttnctlons consist of
proces.,es that respond to events. For example, the M.ATERlAts MANAGE.\U.NT fw1ctlon m.1)'
respond co tl1e following events: TEST MATIJUAL QUWTY, STOCK NEW MATIJU.Ats, DISPOSE Ofl
DAMAGED MATERJ.Ats, DISPOSE Ofl SPOILED M.ATERlAlS, REQUISITION M.ATERlAlS FOR PRODUCTION,
RETURN UNUSED MATilUAJ.S PROM PRODUCTION, ORD[R NEW MATERI.Ats, and SO on. Ead1 of these
events has a trigger and response that can be defined by lts Inputs and outputs.
Using ,nodern structured ai1..1lysis techniques such as those advocated by
McMe11amln, Palmer, Yourdon, and tl,e Robertsons (see the suggested Readings at tl,e
end of tl1e chapter), analysts decompose system ft1nctions into business events. Each
business e,--ent ls represented by a single process that will respond to that evet1t.
Event process names tet1d to be very general. We wlU adopt tl1e convention of naming event p rocesses as follows: PROCESS
, RESPOND To
, or
GEN'f.RATE
• where the blank would be the name of the event (or lts corresponding Input). Sample event process names are PROCESS CUSTOMER ORD£R, PRXESS
CUSTOMER ORDER CHANGE, PROCESS CUSTOMER CHANGE Of ADDRESS, RESPOND TO CUSTOMER
c o ~ RESPOND TO ORDER CNQUtllY, RESPOND TO PRODUCT PRICE CHB:K, G~E BACK-ORO[R
RD'ORT, G ~ CUSTOMER ACCOUNT STATEMENT, and GllllERATE INVOICE.
Procoss Modollng
All event process can be further decomposed Into elementary proces.,es tl1..1t
illustrate In detail how the system must respond to an event. Elementary processes
are dscrete, detailed activities or tasks required to complete the response to an event
In other words, they are the lowest level of detail depicted In a process model. A common synonym ls prlnJltlve process. FJementary processes should be named wfth
a strong action verb followed by an object clause that de.scribes what the work ls
perfonned on (or for). Examples of elementary process names are VAUOATE CUSTOMER
d,aptw N lno
32S
elemeotary process
discrete, detaile:t activity or
task required to complete the
response to an event. Also
calledpritmive pff'X9ss.
IDll'mFICATION, VAllOATE ORDER.ED PRO OUcr NUMBER, CHECK PRODUCT AVAll..ABIUTY, C..UCUL\TE
OROEl
cosr, CHECK
CUSTOMER
CR.EDrr,
SORT BACK OllDEllS, GET CUSTOMER ADDRESS, UPDATE
CUSl"OMERADDR.ESS,ADD NEW CUSTOMER, and DELETE CUSl'Oill:R..
Logtcal process models omit any processes that do nothing more than move or
route data, thus lea"ing the data unchanged. Thus, you should omit any process tl1..1t
corresponds to a secretary or clerk receiving and simply forwarding a variety of
documents to the next processing location. In the end, you should be left only wfth
logical processes that:
Perfortn co111pu.tarto11s (calculate grade point a1..-erage).
Make decfslo11s (determine a>-.Jlablllty of ordered products).
Sort, filter, or otberulise s1,1u111arlze data (Identify o,--erdue lnvolces).
Orga,if..ze data 111.to usefu.l tnfor-»1.aff-011 (gener.i.te a report or aJ.lSWer a
questio11).
Trigger other processes (turn on the furnace or hlStruct a robot).
Use stored data (create, read, update, or delete a record).
Be careful to avoid three common mechanical errors wlth processes (illustrated
In Figure 9-S):
Process 3, 1.2 h ..,s inpurs bur no outputs. '\X'e caU this a black hole because
data enters the process and thet1 disappears. In mosr cases, the modeler
simply forgot the output.
Process 3, 1.3 h ..,s outputs bur no Input.. In this case, the Input flows were
Rkely forgotten.
ht Process 3.1.1 dte Inputs are lnsulllcie11t to produce the output. We call this a
groy bole. 11tere are several possible causes, lnducling (I) a misnamed process,
a) misnamed Inputs and/or outputs, or (3) incomplete facts. Gray holes are the
most common errors-and d1e mosr embarrassing. Once handed ro a programmer, the lnput data flows ro a process (to be lmplemenred as a program) mltSt
be sufficient to produce rhe ourput data flows.
>
Data Flows
Processes respond to loputs and generate outputs. Thus, ar a mlnlmum, all processes
have at least one Input and one ourpur data flo'tl.J, Data flows are the commwlicatlons
bet\,,.een processes and the system's en"ironment. ler•s examine some of the basic
concepts aJ.1d conventions of data flows.
Data in Motion A data flow Is data t11 n1otio11.. The flow of data between a system
and Its environmet1t or between two processes lnslde a ~tern Is co1u1uu.11icaff-011.
Let's study this form of comnmnlcatlon.
A data flow represents an h1put of dara ro a process or the ourpur of data (or h1fonnatlon) from a proces.,. Adara flow is also used to represent the creation, reading,
deletion, or updating of data In a file or database (c,Jled a data store on the DFD).
Think of a data flow as a highway down whldt packets of known composition travel.
The name implies what type of data may travel do"u that hlghway.1llis highway ls
depleted as a solid line with arrow (see margin).
Toe packet concept ls critical. Data that should tr»-.l together sho,dd be shown
as a Sngle dara flow, 110 matter how many pb):rf.cal dOC\truents mlghr be lncluded. The
data Oow data that is input
or output to or ftom a process.
Data flow nane
( Data Flow Symbol )
326
Part 1wo
Systoms Anclysls Methods
Membership
application
E1111loyee
Sank statement
Existing accot11t
3.1.1
Generate an
employee bank
statement
3.1.2
Create a new 1•<11------~
member accot11t
Employ,1e
sta1us
Employee address
I
__.._..
Memler Accounts
New accOlllt status
Accounts
3.1.3
. c ~ccun"'
.c t-'nc..cocctifi"-cc.cacctio.c.nc.. .__ _.1 Receivable
Freeze member 1--'F-'-roc..cz.c.en=a,cccc.
lleparlment
accollll number
RE 9 • S Common Errors on Data Flow Diagrams
)
CF I GU
-----------..._.
composite data flow a
data flow that :onsis1s of other
data flows.
FIGURE 9 - 6
The Data Flow
Pac ket Concept
packet concept is IUustrated In Figure 9,-6, which shows the. correct and lncarrect
ways to show a JogicaJ data flow packet.
T he knou,11 cottiposltf-011 concept is equally lmportant. A data flow ls composed
of either actual data attributes (also called data structu.res- more about t hem later)
or other data flows. A composle d..1.ta Oow is a data flow that consists of other data
flows. They are used to combitle-similar data flows on hlgh-level data flow diagrams
Telephone
Service
Provider
ttemlzed
calls
and
Invoice
Poy
phone
~---Invoice- - ~
bill
327
d,aptwNlno
Procoss Modollng
(a) High-Le vel OFD
Customer
Order
Process
order
Accepted ___. ...
Order
-
( b ) More Detailed DFD
Standing
Order
Customer >-- Order
Rush
Order
Slandard
Order
~G U R E
9 •7
Co mposite and Elementary Data Flows
Accepted
Standing ___. ...
Order
.
-
Process
standing
order
-
Process
rush
order
-
.
Process
standard
order
>-- Standard ___. ...
~
-
-
Accepted
Rush
Order
•··
Accepted
Order
_ _ _ _)
to make those diagrams easier to read. For example, In Figure 9·7(a), a high-level
OFD consolidates all types of orders into a composJte data flow called 0 11.0m. In
Figu re 9-7(b), a more detailed data flow diagram shows specific types of orders:
STANDING O llDEll, RUSH O RDER, and sTANDAAO ORDER. These different orders requ i r e somewba1different processing. (Ille small, black clrcle ls called aju.,iction. It Indicates tl1at
any given ORDER ls an Instance of only one of the order types.)
Altother commo11 use of composJte data flows is to consolidate all reports and
inquiry responses int o one or two composite flows, T here are two reasons for tllis.
First, these outpu ts can be qulte numerous. Second, many modem systems pro'\oide
exten.sJve user-defined reports and inquiries tl1..1t cannot be predicted before the
system's impJementatlon and use.
Some data flow dtagramming methods also recogrtize tJ.o·n daui flows called co1~
trot flozvs. A control flow represents a cood.l:rion or noodata event that trfggers a
process.Th.Jnk of ft as a condition robe mon.irored wh.lle the system works. When the
system realizes that the condition meets some predetennJned stare, the process to
control flow a condition or
nondata event that triggers a
pro~
.
328
Part 1wo
l'lllm$
- - Control
- -'bw- - t>
Control n ow
Sym bol
Systoms Analysis Method s
wbid1 ft ls input is started. The classic Information system example ls tltne. For
ex.ample, a report generation process may be triggered by the temporal event ~m-OP.
MONTH.. ln real-time ~·stems, control flows often represent real-time conditions such
as TE."1PfltATUR.E and All1TUOE. In most methodologies tl1..1r dlstlngulsh between dau and
control flows, the control flow ls depleted as a dashed line with arrow (see margin).
Typically, information systems analysts have dealt mostly with data flows; however, as infonnation systems become more Integrated with real-time ~tem.s (str:h as
manufacturing processes and compurer-inregrated manufacturing), the need ro
distlnguisl1 the concept of control flows becomes necessary.
Logh:ol Data Flows and Conventions
WbUe we recognJze that data flows can be
Implemented a number of ways (e.g., telephone calls, business forms, bar 0xles,
memos, reports, computer screens, and computer.to-computer communlcatloru), we
are interested only in logical data flows.TI1us, we are only interested thar the flow is
needed (not how we wlU lmplanetll that flow). Data flow names should dlscourage
premature commitment to any possible implementation.
Dara flow names should be descriptive notm.s and noun phrases that are slngu.lar,
as opposed to pluraJ (ORDER- not ORDERS). '\X'e do 11ot want to imply that occurrences
of the flow= be Implemented as a pbysfcal batch.
Data flow names also should be wllque. Use adJectl.-es and ad,-.rbs to help 10 descrlbe how processing h.as d1anged a data flow. For example, if an lnput to a process
is named oRDm, the ourput should not be named ORDER.. It might be named VAllD
ORDER.,APPROVED ORDER, ORDER WlfH VAUO PRODUC'fS,ORDm WITH APPROVED CREDIT, or any
other more descriptive name that reflects wh.at the process dJd ro the orfgit1..1l order.
l.oglcaJ data flows to and from data stores require special 11..1mit1g coosfdentlons
(see Figure 9,-8). (Data store 11..1mes are plural, and the numbered bullets matd.l the
note to the figure.)
Only the 11et data flow is show11. Jntultively, you may reaUze tl1.1t you 11.1,·e to
get a record to update It a delete it. But unless data is needed for some
other purpose (e.g., a calculation or decision), the "read• action is not shown.
This keeps the dL1gram uncluttered.
O
A data flow from a data store to a process l.ndlcates that data ls to be .. rtad"
for some specific purpose. TI1e data flow 11..1me should dearly Indicate w hat
data is to be read. 11lls ls shown in Figure 9-8.
'=) A data flow from a process to a data store lndlcates that data ls to be created,
deleted. or updated In/from that data store. ~,In. as shown lo Ftaure 9-8. these
data flows should be dearly named to reflect the specific action performed
(sud1 as NEW CUSTOMER, CUSJ'OMER TO BE DELE'JlD, or UPOA'J'ED ORDER ADDRESS).
Notice that the 11..1mes suggest the classic actions that can be perfonned on 1 fl.le,
namely, CIUATE, READ, UPDATE, and DEIErE (CRUD). In a real DFD, we wotdd not actually
record these action names on the diagram .
No data flow should ne,...- go unnamed. Unnamed data flows are frequently the res,dt of flowchart thlnklng (step l, step 2, etc.). If you can't gl.-e the data flow a reasonable name, It probably does not exist. Consistent with our goal of logfcal mod.Ung, data
flow names sho,dd describe the data flow without describing how d,e flow ls or co,dd
be Implemented. Suppose, for example, that etld users explain their system as foDows:
"WeffU out lbrm 23111 trlplfcate andse11d ft to .. .'The logical name for d,e• form 23•
data flow mlglll be OOURSE REQUESt.11lls logical name ellmlnates physical, lmplemei11at1on
blases--d1e Jdea that '\\"'e must use a paper fort>l and the notion that we must use catbon
copies. Ultimately, dlls wlUfree us to consider other physical altematl,-es such asTouchTone phone responses, onUne registration screens, or even e-Ouslnes., Internet pages.
Finally, all data flows must begin an<Vor end at a process because data flo"·s are
the Inputs and ou tputs of a process. Consequently, all tl1e data flows on the left side
of Figure 9-9 are Ulegal. The corrected dL1grams are shown on the rlglll side.
Procoss Modollng
d,aptwNlno
329
, FIGURE 9 - 8 '
Order
Canceled Order
Process
Order
Cancel
Order
Data Flo,vs to and
from Data Sto res
Order
f) toBe
Deleted
9 New
Order
" delete"
•
'"create'" ....
-
Orders
••
" update"
O
New
Order
Address
'"read"
O
Unfilled
Order
..
Change
Order
Address
Summarize
Unfilled
Orders
Change of Address
Summary of
Unfilled Orders
I
I
•
Data Flow Conservation For many years we have tried to lmprove business
processes by automating them. It hasn't always worted or worked well because the
business processes were desJgned to process data flows in a precomputlog era. ConsJder the average business form. It iS common to see the form dJ'\o1ded Into sections
that ue designed for different au dle11ces.1l1e first redplrot completes bls part of the
fonn, the next recipient completes her part, and so focth. At certain points In thJs proc~Jng sequence, a copy of the form might evett be detached and sent to another recipient w ho lnltiaUzes a new multiple-part form tl1at requires trailScriblng mud1 of
the sime data from the itlitial form. In our own un.ivetsJty, we've seen examples w here
poor form design requlres that the same data be typed a dozen times.
Now, if the flow of cttrrent data ls computerized based 011 the cttrrent business
fonns and proce.s.,es, the resulting computer programs will merely automate these ineftlclencles.Thls Is preclsel)• what has happroed In most businesses! Today, a new emp h.asis on b·ust11ess process redestgn encourages rnanagemet1t, users, and ~·stems
analysts to ide11tify and ellmlnate these lneflldrodesbdll.a! deslgnlng any new information systetll. We can support thls trend In logical data flow dL1grams by practicing
data conservation. Data co.-1servatioo, sometimes called "starvlog the p rocesses,"
requires tl1at a data flow contaitt only the data that ls truly needed by the receiving
p rocess. By ensuring that p rocesses receive only as rnud1 data as they really need, we
simplify tl1e interface between those processes. To practice data conservation, we
must precisely define tl1e data composition of ead1 (noncomposlte) data flow. Data
composition ls expressed ln the fonn of data structures.
data coo.servatioo the
practice of ensuring that a
data flow contair1s onty data
needed by the receiving
process.
330
Systoms Anclysls Methods
Part 1wo
Corrected
data
flows
Illegal
data
flows
r
81
a process Is '
needed to
exchange data
flows between
external
agents
.
81
'
0 $1
81
a process Is
needed to
update (or
use) a data
store
81
r
11
11
o s1
a process Is
needed to
present data
lrom a data
store
o s1
'
I
I
OSI
'
.
81
,
r
11
11
o s1
o s1
a process Is
needed to
move data
from one data
store to
another
I
I---+!',
052
_________
CF I G U R E 9 • 9
'-·
Illegal L>ata flows
data attribt11e the smallest
piece of data that has meaning
to the users ard the business.
data structure a specific
arrangement of data attributes
that define a single ins1a.Jlce
of a data flow.
_ . ,)
Data Structures Ultimately, a data flow contains data items called attrlbu.tes. A da ta
attribute is the smallest piece of data that h.as meanlng to the end users and the bllSi-
ness. (lllls definition also app lies to attributes as they were presented ln Chapter 8.)
Sample attributes for the data flow ORDER mJght in d ude ORDEll NUMB.m, ORDllt DATE,
CUSTOMER NUMBllt, StUPPlNG ADORE$ (which consists of attrlbutes such as STRJ:E'J' ADDRESS,
CITY, an d ZCP CODE) , ORDf.RED PRODUCT NUMBERS, QUANTrrY(les) ORDERED, and so o n. Notice
that some attrlbutes occur once. for ead1 instance of ORDER, while others may occur
se,--e.ral times for a single instance of ORDF»..
T he data attributes that comprise a data flow are organJzed Into data s tn1ct1.1res.
Data flows can be descrlbed In terms of the following types of data structures:
A sequence or group of data attributes that ocntr one after aitother.
T he select/011 of one or more attrlbutes from a set of attributes.
The repetr.tlo11 of one or more atlributes.
T he most common data structure notatio11 ls a Boolean algebraic notation that is
required by many CASE tools. Other CASE tools and methodologies s upport proprietary,
Procoss Modollng
r
F IG U R E 9 - 1 0
A Data Structure for a Oa1a Flow
Data Strudure
OWER=
ORDER NI..MBER
ORDER DATE+
+
(PERSONAL CUSTCMER Nl..MBER,
OORPOIWE AOCOUNT N....IER)
Engli,h lnterpretatiAA inslance of ORDER consists of:
OWER """BER and
OWEROOE and
Either PERSONAL CUSTCMER Nl..MBER
or O::QPORAlE AOCOUNT NI.MER
+
(e!WNG AODQESS = ADORESS) +
1 {PRODUCT N....IER +
PRODUCT DESCRIPTION +
GlUANTITY ORDERED +
PRODUCT PRICE +
PRODUCT PRICE SOURCE +
EXTENDED P~CE) N +
51...M Of EXlEt-DED PRICES +
and SH"'NG ADORESS (which i, equMJiont
SHIPPING ADDRESS = ADDRESS
lo AO)RESS)
and op,ionaly: ~WNC ADORESS (which i,
equi.alent lo ADDRESS)
and one or more in s1an c»s of:
PRODUCT NI..MBER and
PRODUCT DESCRPllON and
QUAf',~TY ORDERED and
PROOVCT PRICC
PREA&.10 AMOUNT
(CREDIT CARO -WI
(QUOTE N""'eER)
EXTENlED PRICE
+ EJ<PIRATION DATE)
and SU< C* EXTENDED PRICESand
PREPAID AMOUNT and
op~and ly: both CREDIT CARO NU"'8ER and
AOORESS =
(ll06T OFFICE BOX NU"'8ER)
STREET ADDRESS
+
OPIRATION DATE
+
and op,ionaly: QUOTE N....IER
Orv+
(STATE MUNIOl!t,JJTYI +
(OOUNTRY) +
POSTAL OOOE
ond
PRODUCT PRICE SOURCE and
AA
instanceof ADDRESS ronsists of:
op~onolly. ll06T OFFICE BOX NU"'8ER and
STREET A)DQESS and
cnv and
Eifher STATE OR MUNClllWTY
and op,ionaly: COUNTl!Y
and P06TAl OODE
but tssentlally eqttl\<-:tlent, 11otatlons. A sample data stn1crure for the data flow oROm. ls
presented In Figure 9-10,1bls algebraic notation uses the following symbols:
=
Means "conslsts of" or"ls composed of"
ltteaiu ..and .. and designates sequence.
f,, ,) Means "only one of the attributes within the br.tckets may be present"deslgnates selection. The attrlbutes ht the brackets are separated by
commas.
i, .. } ~feaits that the attributes in the braces may occur many times for one
Instance of the data flow- desJgiures repttition. The anrlbutes Inside the
braces are separated by commas.
(, , ,) Means the attrlbute(s) in the paret1tl1eses are optional- no value- for
some ittstances of the data flow.
+
In our experience, all data flows can be descrlbed in terms of these fundamental
co1tstructs. Agure 9-11 demo1tstrates each of the fundamental co1tstructs using examp les. Returning to Figure 9-10, 11otlce that the constn1cts are combin ed to descrlbe the
data content of the data flow.
d,aptw Nlno
331
....
' FIGURE 9 • 1 1 Data Structure Constructs
Format by Example
(relevant portion i, boldfoced)
0 - Structure
S.quen.. of Altributes-The sequenai dab
structure indioot-E& one or rrore attrib..itE& hat may
(or mu,t) be indudod in a data flow.
WAGE ANO TAX STATEMENT=
TA>IPAl!R DINTIICAJION NJMIIR
+
W<M'IR NAMI +
TAXMJIR AOOMSS +
WAOIS, TIPS, AND COMPIINSAJION
PIDIIW W< WITl*ill!> + •••
Selection of Altribute....lhe,election data structu ..
albw, )OU lo show ,ituations where different ,eb of
attribute, do,cribe di/went in.ianai, ol the dab Row.
'\.
+
OIIOER =
(PIRSONAL CUSTOMIR NUMIRR,
ClOIIPORATI ACCOUNT NUMHR) +
OCDER O.&JE
+ ,, ,
RopeHon of Attribute....lhe 19petiion dota m,c1J19
i, u,ed lo"" off a data attribul9 or group of data attributo,
that may (or mu,t) repeat tbem,ei,,,, a 'f'Ocified number of
tim .. for a ,ingle i1'61ance of tho data flow.
lhe minl'num number of rE1PQi tion, i, usually mro
or one.
The maximum nunber of repeiliom may be ,pacified
a, •n• meaning "mony" where the actual number ol
il'61ona&Y<Jri"' for each in,tanai ol hedol:J Row.
CLAIM=
Optional Altributes-The optional notation indiooto,
that on attrib..ite, or group of atrib..ites in a sequence or
selecion dala stn..cture may rot be included in all instooces
ol a data ffow.
Not>:
repetiim data strvcftK9, a mininvm of "zsrd'
is the same m malci'll tn9ertin, ,.,_;Ill grrup "option:,/. •
CLAM=
POUCY M.l#l&R +
Reusable Attribute..-For group, of attribut.. that on,
OJJE =
For,..
English Interpretation
(relevant portion i, beldfa..d)
POUCY M..MIIER +
POUC'YHOIDER NAME +
POUC'tHOI.OER AOOSESS +
0 {DIPINDINT NAM! +
DIPINDINr'S RILAIIONSHP) N +
1 {lllPINSI D!SCRtPflON +
SIIIVICI PRCN1DIR +
lllPINSI AMOUNT) N
POUCVHOIDER NiWE +
POUC'YHOIDER ADDRESS +
(SPOUSINAMI+
DlTI o, earH) + •••
c.ont:Jined in manydat:J ffowJ, it is deMrable to creae a
separate data struck.Ire tlat can be reused in other data
MONTH+
O..Y +
stroctores.
YW
An in,tanai o/ W..CE AND W< sttJE1'ENT 001ui,t, o/:
TAllPAYIR IDINIIPICAIION NU. .lll and
TAXMYIR NAMI and
TAllPAYIR ADOR!SS and
WAOfS, TPS, AND 00-NSATION and
PIOIRAL TAX WITHHILO and •••
An instonai o/ CRDER c:on,i.i. o/:
Either PIRSONAL CUSTCIMIR NUMIIR or
OORPORAI! ACOOUNT NU-; ond
Ol<l~R l"'1E and ...
An instonaiol a.w "'"'"" ol:
PQICY N1..MllER 00 d
PO.ICtHOlacR N- ond
PQ.IC1HOIDER ADDRESS and
z:«o or more inltances of1
DIPINDINT N.IMI and
OIPINDl!Nr'S MLATIIC>NSHIP and
one or more instances ofs
IXJIINSI DISCRtPftON and
SIRVICI PROVIDIR and
IXJIINSI ACOOUNT
An in$1'0r'lal of <l.AIM 0011$i$IJ of:
PO.ICY Nl.M&ER and
PQ.IC1HOIDER NAME and
PO.ICtHOlacR .Oa<ESS ond
option ally, SPOUSI NAM! and
OATI 0, IIISH and •••
Thon, the reu,c,ble ,tructur.. can be induded in other data
RaN $1'ructures as folbwJ:
ORDER = ORDER Nl.MIIER , , , + DATE
IN\OICE = INVOICE NUM&ER , , • + 00£
PAYHENT = CUSTOMR NlMER , , , + DAlE
J
Procoss Modollng
-
data flow
data flow A
0
data flow - - - + I
U+ V+W
- data flow H
-
data flow I
data flow J
data flow E
w-.
data flow R ___.
-.o
data flow S
data flow T __..
Process
data flow X_.
- data flow O
-
data flow V__..
data flow
data flow C
0 -
u_.
diverging
converging
~ - - - data flow
A+B+C
-
333
d,aptwNlno
converging
data flow
diverging
data flow
O orE orF
X orYor Z
data flow V ...
data flow z+
dataflowF
F I G U R E 9 • 1 2 Diverging and Converging Data Flows
The Importance of defhling the data structures for every data flow should be
apparent- you are detlning the business data requirements for each Input and outputl
These requlremet1ts must be determlned before any process could be Implemented as
a computer program.1bls Slandard notation provides a simple bur effective meaJ.15 for
communJcating between end users and programmers.
Domains An attribute is a piece of data. In ai1..1lyzillg a ~·stem, ft makes sense tl1..1r
we should define tl1ose values for an attribute tl1ar are Jegltimate, or tl1at make sense.
The v:ilues for e.ich attrlbute ue de.6.ned in tenns: of two properties: d:tt:l type and do.
main. The data type for an attribute defines what d1ss of data can be stored in tl1..1r
attrlbure, whereas the domalo of an attrlbure defines what values an attribute can legltlmately take on.11,e concepts of data type and domain were introduced in Chapter
8. See tl1at discussion and Tables 8-1 and 8-2 for a m«e complete descrJptlon of data
type and domain.
data tfJ>e a class of data
that can be stored in an
attribute.
domain the legitimate vaJ.
ues for an attrib.Ite.
Divergent and Convergent flows It ls sometimes useful to depict dJverglog or
co11,--erging data flows on a data flow diagram. A divergio.g data flow ls one tl1..1t
splits into m,tltlple data flows. Diverging data flows Indicate that all or parts of a sh,
gle data flow are routed to different destinatlons.2 A converging data Oow is the
merger of multfpJe data flows Into a sh1gle data flow. Convergh1g data flows indicate
tl1..1t data flows from different sowces can (must) come together as a single packet for
subsequent proces.,ing.
Diverging and converging data flows are depicted as shown In Figure 9-12. Notice
tl1..1t we do not include a proces., to ..,oute" the flom. The flows simply dJverge from
1Sotnc- a-pen,~ that di~rig data fbwJ .itould be u:11".d Oll1y wheh 1..11 dlltil ifl the flO'fl· ~ routed to 11..11 de.rtinu.
tiotiJ. ~ ptdl'.r the- <'.Li.de OcNarooddi..ni.dob
that 111lowJ Id! orp,tu of W Row to be touted
to diffetctat proco-.
dj\•ergiog data flow a
data flow that splits into multi·
pie data flows.
coovergitlg data Oow the
merger of multi~le data flows
intoasingle datl flow.
334
Part 1wo
Systoms Analysis Methods
or converge to a common flow. The followlng notations, nor supported by all CASE
tools, are used In this book:
O
0
O
The small square }·u nction means «and." 11lis means that each time the process
Is performed, It must lnpul ( or output) all the diverging or converging dam
flows. (.l'ome DFD 11otatio11s simply place a + berwee11 the data flows.)
TI1e small black ju.1JCtlon means "exdusl,. e. or." Th.ls me:ulS that ead1 time the
process is performed, It must input (or output) only one of the diverging or
converging data flows. (Sotne DFD 11otatto·11s sl1nply place an * bettiieen the
data flows.)
In the absence of one diverging or converging data flow, the reader should
a~ume an .. lnclustve or;" This means that each time the process is performed,
It may Input any.!!!: all of tl1e depleted data flows.
With the above rules, the most complex of business process and data flow combit1..1tions can be depleted.
The Process of Logical Process Modeling
Now that you understand the basJc concepts of process models, we can examine
b,uldlng a process model. Whtt1 do you do It? How many process models nuy be
draw11? What technology ex..lsts to support the development of process models?
>
Strategic Systems Planning
Many organizations select application development projects based on strategic information system plans. Strategic plannlng Is a separate project that produces an
information systems strategy plan tl1at defines ait overall vision and archltectute for
information ~·stems. This architecture frequently includes an enterprise process
niodeL (fbe plan usually h ..,s other archltectural components tl1..1t are not Important
to this discussion.)
An enterprise process modtl typically ldentlJles only business areas and functlons.
Events and detailed processes are rarely examined. Business areas and functions are
ldentilled and mapped to other etllerprlse models such as the enterprise data model
(Q1apter 8). Business areas and ltmctlons are subsequently prioritized Into appllcitlon
development projects. Priorltles are usually based on which busines., areas, ftmctlons,
.uu.l supvurtiug ;q,plic..M
4tivu:,; \ViD t~turu lit~ 111~l value lo llut l,ush1c-.s:, as <l whule.
An et1terprlse process modeJ ls stored in a corporate reposJtory. Subsequently, as
application de,-etopment projects are started, subsets of the enterprise process model
are exported to the project teams to serve as a starting point for building more
detailed process models (lndudlng data flow dL1grams). Once the project team
completes systems ai1..1lysls and desJgn, the expanded and refined process models are
returned to the corporate repository.
>
Process Modeling for Business Process Redesign
Bush1ess p rocess redesign (BPR) has been discussed several times In this boot and
chapter. Recall tl1at BPR projects analyze business processes and then redesign tl1ern
to elimlnate Inefficiencies and bureaucracies before any (re)appllcatlon of information technology. To redesign OOsh1ess processes, we must first study the existing
processes. Process models play an Integral role In BPR.
Ead1 BPR methodology recommends its own process model notations and documentatio11. ~fost of the models are a cross between data flow diagrams and flowcharts.111e dL1grnms tend to be Yery physical because the BPR
Download