PART 1 The Modern Systems Analyst 2
CHAPTER 1 The World of the Modern Systems Analyst 2
CONTENTS 2
A Systems Analystat Rutherford Manufacturing 3
The Analystas a Business Problem Solver 4
Systems That Solve Busihess Problems 6
Information Systems 6
Types of Information Systems 8
Required Skills of the Systems Analyst 10
Technical Knowledgeand Skills 10
Business Knowiedge and Skills 11
People Knowledge and Skills 11
The Environment Surrounding the Analyst 12
Types of Technology Encountered 12
A Few Words about Integrity and Ethics 12
Typical Job Titles and Places of Employment 13
The Analyst's Role in Strategic Planning 14
Special Projects 14
Strategic Planning Processes 14
Information Systems Strategic Planning 14
Enterprise Resource Planning(ERP) 15
Strategic Systems Plan for Rocky Mountain Outfitters 16
Overview of Rocky Mountain Outfitters 16
Organization and Locations 17
Information Systems Department Organization 18
Existing Systems 19
The Information Systems Strategic Plan 20
Two Major New Systems 21
The Analyst as a System Developer(The Heart of the Course) 22
Part 1:The Modem Systems Analyst 22
Part 2:Systems Analysis Tasks 23
Part 3:System Design Tasks 24
Part 4:System Implementation and Support 24
Summary 25
Key Terms 25
Review Questions 25
Thinking Critically 26
Experiential Exercises 26
Case Study 27
Association for Information Technology Professionals Meeting 27
Further Resources 27
CHAPTER 2 The Analyst as a Project Manager 28
BlueS Sky Family of Mutual Funds:Managing the IRA Project 29
Systems Development Projects and the SDLC 30
The Systems Development Life Cycle 30
The First Four Phases of the Systems Development Life Cycle 31
Scheduling of Project Phases 35
The Project Team 36
Project Management 38
Planning and Organizing 39
Directing—Executing,Monitoring,and Controlling 39
Project Initiation 40
Project Initiation for Rocky Mountain Outfitters 41
The Project Planning Phase 41
Defining the Problem 42
Confirming Project Peasibility 45
Developing the Project Schedule 52
Staffing the Project 56
Launching the Project 57
Summary 57
Key Terms 57
Thinking Critically 58
Review Questions 58
Experiential Exercises 59
Case Study 60
Custom Load Trucking 60
Further Resources 60
CHAPTER 3 Approaches to System Development 62
Development Approaches at Ajax Corporation,Consolidated Concepts,and Pinnacle Manufacturing 63
Methodologies,Models,Tools,and Techniques 64
Methodologies 64
Model……………………………………s 64
Tools 65
Techniques 66
Three Approaches to System Development 67
The Structured Approach 67
The Information Engineering Approach 72
The Object-Oriented Approach 73
System Development Life Cycle Variations 75
Variations of the Phases(Waterfall Models) 76
Variations Based on Iteration 77
Variations Based on an Emphasis on People 78
Variations Based on Speed of Development 79
Computer-Aided System Engineering(CASE)Tools 80
Analysis and Design Phases in More Detail 83
The Analysis Phase 83
The Design Phase 87
Summary 90
Key Terms 91
Review Questions 91
Thinking Critically 91
Case Study 92
Factory System Development Project 92
Experiential Exercises 92
Further Resources 93
PART 2 Systems Analysis Tasks 96
CHAPTER 4 Investigating System Requirements 96
Providing Customer Service—and Gasoline—at Convenience America 97
Functional and Technical Requirements 98
Stakeholders—the Source of System Requirements 99
User Stakeholders 100
Client Stakeholders 101
Technical Stakeholders 102
The Stakeholders for Rocky Mountain Outfitters 102
Identifying System Requirements 104
Distribute and Collect Questionnaires 106
Review Existing Reports,Forms,and Procedure Descriptions 107
Conduct Interviews and Discussions with Users 108
Observe Business Processes and Workflows 112
Building Prototypes 113
Conduct Joint Application Design Sessions 113
Structured Walkthroughs 116
What and When 117
Who 117
How 118
Business Process Reengineering 119
Summary 120
Key Terms 121
Review Questions 122
Thinking Critically 122
Experiential Exercises 122
Case Study 123
John and Jacob,Inc.On-Line Trading System 123
Further Resources 124
CHAPTER 5 Modeling System Requirements:Events and Things 126
Waiters on Wheels:Computerized Delivery Tracking 127
Models and Modeling 128
The Purpose of Models 128
Types of Models 130
Overview of Models used in Analysis and Design 132
Events and System Requirements 133
The Background of the Event Concept 134
Types of Events 135
Identifying Events 136
Events in the Rocky Mountain Outfitters Case 139
Looking at Each Event 140
Things and System Requirements 142
Types of Things 143
Relationships among Things 144
Attributes of Things 145
Data Entities and Objects 146
The Entity-Relationship Diagram 147
Examples of ERD Notation 147
The Rocky Mountain Outfitters Case ERD 151
The Class Diagram 153
More Complex Issues about Classes of Objects 153
Examples of Class Diagram Notation 154
The Rocky Mountain Outfitters Case Class Diagram 157
Where You Are Headed 158
Summary 160
Key Terms 161
Review Questions 161
Thinking Critically 162
Experiential Exercises 163
The Spring Breaks 'R' Us Travel Service Booking System 164
The Real Estate Multiple Listing Service System 164
Case Studies 164
The State Patrol Ticket Processing System 165
Further Resources 166
CHAPTER 6 The Traditional Approach to Requirements 168
Performance Auto Electric:Following the Data Flow 169
Traditional and Object-Oriented Views of Activities 170
Data Flow Diagrams 170
Data Flow Diagrams and Levels of Abstraction 172
Context Diagrams 173
DFD Fragments 174
The Event-Partitioned System Model 175
Decomposing Processes to See Detail of One Activity 182
Physical and Logical DFDs 184
Evaluating DFD Quality 186
Process Descriptions 190
Documenting DFD Components 190
Data Flow Definitions 195
Data Element Definitions 196
Data Store Definitions 197
DFD Summary 197
Information Engineering Models 198
The IE System Development Life Cycle 198
IE and Structured Development Compared 199
Process Decomposition and Dependency Models 200
Considering Locations and Communication through Networks 204
Workflow Modeling 208
Summary 211
Key Terms 211
Review Questions 212
Thinking Critically 212
The Reliable Pharmaceutical Service 213
The State Patrol Ticket Processing System 213
The Real Estate Multiple Listing Service System 213
Case Studies 213
Experiential Exercises 213
Further Resources 215
CHAPTER 7 The Object-Oriented Approach to Requirements 216
Northwoods Kayaks:Identifying the Methods within the Objects 217
The Unified Modeling Language and the Object Management Group 218
Object-Oriented Requirements 218
The Class Diagram 220
The System Activities:An Object-Oriented Use Case/Scenario View 221
Use Cases and Actors 221
Scenarios 221
The Use Case Diagram 223
Object Interactions:Collaboration and Sequence Diagrams 227
Sequence Diagrams 228
Collaboration Diagrams 236
Object Behavion States,State Transitions,and Statechart Diagrams 238
Object States 239
Object Transitions 241
Messages,Transitions,and Actions 243
Statechart Diagrams 244
Concurrent Behavior 247
Statechart Development 250
Summary 252
Key Terms 253
Review Questions 253
Thinking Critically 254
Experiential Exercises 256
Case Studies 256
The Real Estate Multiple Listing Service System 256
The State Patrol Ticket Processing System 256
Further Resources 257
The Down Town Videos Rental System 257
CHAPTER 8 Environments,Alternatives,and Decisions 258
Tropic Fish Tales:Netting the Right System 259
Assessing the Target Processing Environment 260
Centralized Systems 261
Distributed Computing 263
The Internet and Intranets 266
Development and System Software Environments 269
The Environment at Rocky Mountain Outfitters 270
Deciding on Scope and Level of Automation 273
Determining Scope 273
Defining the Level of Automation 275
Selecting Alternatives 278
Generating Alternatives for Implementation 282
Packaged and Turnkey Software Systems 283
Facilities Management 283
Custom Software Development 284
In-House Development 285
Choosing an Alternative for Implementation 285
Identifying Criteria for Selection 286
Making the Selection 289
Considering Outsourced Solutions 290
Genefating a Request for Proposal 290
Benchmarking and Choosing a Vendor 291
Presenting the Results and Making the Decisions 292
Summary 293
Key Terms 293
Review Questions 294
Thinking Critically 294
Experiential Exercises 295
Further Resources 296
Tropic Fish Tales'RFPs 296
Case Study 296
PART 3 System Design Tasks 298
CHAPTER 9 Moving to Design 298
New Capital Bank:Object-Oriented Development of a Payroll System 299
Understanding the Elements of Design 300
Inputs:Moving from Analysis to Design 300
Major Components and Levels of Design 300
Output:Structrued Models and Object-Oriented Models 303
Designing the Application Architecture:The Structured Approach 305
The Automation System Boundary 306
The System Flow Chart 308
The Structure Chart 311
Module Algorithm Design:Pseudocode 323
Designing the Application Architecture:The Object-Oriented Approach 325
Integration of the Structured Application Design with User-Interface Design,Database Design,and Network Design 325
Object-Oriented Programs 326
Object-Oriented Models 329
Package Diagrams 329
Design Class Diagrams 331
Design Class Diagram Development 335
Method Development and Pseudocode 339
Inheritance,Overriding,and Polymorphism 340
Integrating the Object-oriented Application Design with User Interface Design,Database Design,and Network Design 340
Coordinating the Project 341
Coordinating Project Teams 342
Coordinating Information 342
Summary 344
Key Terms 344
Review Questions 344
Thinking Critically 345
Experiential Exercises 351
Case Studies 351
The Real Estate Multiple Listing Service System(Structured) 351
The Reliable Pharmaceutical Service System 351
The Real Estate Multiple Listing System(Object-Oriented) 351
The Down Town Video Rental System 351
Further Resources 352
CHAPTER 10 Designing Databases 354
Nationwide Books:Designing a New Database 355
Databases and Database Management Systems 356
Database Models 357
Relational Databases 358
Designing Relational Databases 360
Representing Entities 361
Representing Relationships 363
Enforcing Referential Integrity 365
Evaluating Schema Quality 365
Object-Oriented Databases 372
Designing Object Databases 372
Representing Classes 372
Representing Relationships 373
Hybrid Object-Relational Database Design 378
Classes and Attributes 379
Relationships 381
Data Types 382
Relational DBMS Data Types 383
Object DBMS Data Types 383
Distributed Databases 384
Distributed Database Architectures 385
TheRMO Distributed Database Architecture 390
Key Terms 393
Summary 393
Review Questions 394
Thinking Critically 395
Experiential Exercises 395
Case Studies 396
The Real Estate Multiple Listing Service System 396
The State Patrol Ticket Processing System 396
The Reliable Pharmaceutical Service 396
Further Resources 396
CHAPTER 11 Designing Inputs,Outputs,and Controls 398
Customized Cars Clearinghouse:Moving into Electronic Commerce 399
Integrity Controls 400
Objectives of Integrity Controls 400
System Access Controls 401
Input Integrity Controls 404
Output Integrity Controls 405
Design of System Inputs 406
Identifying Devices and Mechanisms 407
Developing the List of Inputs and Data Requirements of Each 409
Designing and Prototyping Input Forms 417
Design of System Outputs 418
Determining the Type of Output 419
Making a List of Specific Reports Based on the Application Design 424
Designing and Prototyping Reports 426
Summary 427
Key Terms 427
Review Questions 428
Thinking Critically 428
Experiential Exercises 429
Case Study 429
All-Shop Superstores 429
Further Resources 431
CHAPTER 12 Human-Computer Interaction 432
Interface Design at Aviation Electronics 433
The User Interface 434
Physical Aspects of the User Interface 434
Perceptual Aspects of the User Interface 435
Conceptual Aspects of the User Interface 435
User-Centered Design 435
Human-Computer Interaction as a Field of Study 436
Metaphors for Human-Computer Interaction 438
Interface Design Guidelines 444
Visibility and Affordance 444
Eight Golden Rules 444
Documenting Dialog Designs 448
Events,Subsystems,and Menu Hierarchy 448
Dialogs and Storyboards 449
Dialog Documentation with UML Diagrams 452
Guidelines for Designing Windows Forms 455
Form Layout and Formatting 456
Data Keying and Entry for Standard Windows 458
Navigation and Support Controls 459
Data Keying and Entry for the Browser Interface 459
Help Support 459
Dialog Design for Rocky Mountain Outfitters 459
Dialog Design for Web Sites 466
Summary 468
Key Terms 469
Review Questions 469
Thinking Critically 470
Experiential Exercises 470
Case Studies 471
The 21st Century University System 471
The Waiters on Wheels System 472
The Down Town Videos Rental System 472
The State Patrol Ticket Processing System 473
Another Alternative for Mountain Outfitters 473
Further Resources 473
PART 4 Implementation and Support 476
CHAPTER 13 Rapid Application Development and Component Based Development 476
CDs Direct 2U:Speeding Development of a Customer Support System 477
Rapid Application Development 478
Reasons for Slow Development 478
What Is RAD? 480
Rapid Development Approaches 480
The Prototyping Approach to Development 482
The Spiral Approach to Development 487
Risk Management 490
Rapid Development Techniques 490
Joint Application Design 494
Tool-Based Development 495
Software Reuse 497
Object Frameworks 498
A Sample Object Framework 498
Object Framework Types 500
The Impact of Object Frameworks on Design and Implementation Tasks 501
Pitfalls to Consider for Object Frameworks 502
Components 503
Component Standards and Infrastructure 504
Components and the Development Life Cycle 506
Summary 509
Key Terms 509
Review Questions 510
Thinking Critically 510
Case Study 512
Experiential Exercises 512
Further Resources 515
CHAPTER 14 Packaged Software and Enterprise Resource Planning 516
Pizza Amore:Revamping Systems to Manage More Information 517
Packaged Software 519
The Trend toward Packaged Software 520
Implementation and Support of Packaged Software 520
Enterprise Resource Planning 523
What Is ERP? 523
Why Consider ERP? 526
Implementing ERP 528
An ERP System Development Methodology 531
Special Topics on ERP Development 533
The Future of ERP 536
What Is SAP? 537
A Closer Look at One ERP Package:SAP R/3 537
Implementing SAP R/3 540
Using SAP R/3 541
Summary 544
Key Terms 544
Review Questions 545
Thinking Critically 545
Experiential Exercises 545
Rayco Products Corporation 546
Case Study 546
Further Resources 547
CHAPTER 15 Making the System Operational(Implementation,Conversion and Support) 548
Tri-State Heating Oil:Juggling Priorities to Begin Operation 549
Program Development 550
Order of Implementation 551
Framework Development 556
Team-Based Program Development 556
Source Code Control 558
Versioning 559
Quality Assurance 562
Technical Reviews 563
Testing 564
Installation 570
Direct Installation 571
Parallel Installation 571
Phased Installation 573
Personnel Issues 574
Documentation 575
System Documentation 575
User Documentation 577
Training and User Support 579
Ongoing Training and User Support 581
Submitting Change Requests and Error Reports 582
Maintenance 582
Implementing a Change 584
Upgrading Computing Infrastructure 585
Summary 586
Key Terms 586
Review Questions 587
Thinking Critically 587
Experiential Exercises 588
Case Studies 588
The Hudson Banc Billing System Upgrade 588
The Down Town Videos Rental System 589
The Reliable Pharmaceutical Service System 589
Further Resources 589
APPENDICES 591
APPENDIX A The Responsibilities of a Project Manager 591
Providing Leadership and Vision 591
Planning and Organizing the Project 592
Organizing and Managing the Project Team 593
Estimating Costs and Developing the Project Budget 594
Monitoring and Controlling the Project Schedule 595
Ensuring the Quality of the Final Result 596
Key Terms 597
Review Questions 597
Application Questions 597
APPENDIX B Calculating Net Present Value,Payback Period,and Return on Investment 598
Net Present Value Calculations 598
Payback Period Calculations 600
Return on Investment 601
Key Terms 601
Review Questions 602
Thinking Critically 602
Building PERT/CPM Charts 603
APPENDIX C Developing a Project Schedule with PERT/CPM Charts 603
Creating the RMO Project Schedule with Microsoft Project 610
Building Gantt Charts 611
Key Terms 612
Review Questions 612
Thinking Critically 612
APPENDIX D Presenting the Results to Management 613
Preparing the Presentation 614
The Opening 614
The Agenda 614
The Body 614
The Closing 615
Giving the Presentation 615
Use of Visual Aids 616
Questions and Answers 617
INDEX 619