| |
| |
| |
Foundations for Object-Oriented Systems Development | |
| |
| |
| |
The Object-Oriented Systems Development Environment | |
| |
| |
What Is Information Systems Analysis and Design? | |
| |
| |
Systems Analysis and Design: Core Concepts | |
| |
| |
Systems | |
| |
| |
Definitions of a System and Its Parts | |
| |
| |
Important Systems Concepts | |
| |
| |
Information Systems Analysis and Design | |
| |
| |
| |
Project Management and Planning | |
| |
| |
| |
Systems Analysis | |
| |
| |
| |
Systems Design | |
| |
| |
| |
Systems Implementation and Operation | |
| |
| |
Types of Information Systems and Systems Development | |
| |
| |
Transaction Processing Systems | |
| |
| |
Management Information Systems | |
| |
| |
Decision Support Systems | |
| |
| |
The Analyst's Role in Systems Development | |
| |
| |
Systems Analysts in the Systems Development Process | |
| |
| |
The Evolution of Systems Development Methodologies | |
| |
| |
Systems Development Life Cycle (SDLC) | |
| |
| |
Structured Analysis and Design | |
| |
| |
Data-Oriented Methodologies | |
| |
| |
The Object-Oriented Methodology | |
| |
| |
Agile Methodologies | |
| |
| |
Why Should We Use Object-Oriented Systems Analysis and Design (OOSAD)? | |
| |
| |
Iterative and Incremental Development | |
| |
| |
RUP's Iterative, Incremental Approach to OOSAD | |
| |
| |
Our Approach to Object-Oriented Systems Analysis and Design | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
| |
Introduction to Object Orientation | |
| |
| |
Object Orientation | |
| |
| |
What Is an Object? | |
| |
| |
Class | |
| |
| |
Operation | |
| |
| |
Attribute | |
| |
| |
Encapsulation | |
| |
| |
Object Identity | |
| |
| |
Generalization | |
| |
| |
Polymorphism | |
| |
| |
Interface | |
| |
| |
Component | |
| |
| |
Package | |
| |
| |
Association | |
| |
| |
Systems Modeling | |
| |
| |
What Is Modeling? | |
| |
| |
What Is Unified Modeling Language (UML)? | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Company Background | |
| |
| |
| |
Project Management and Planning | |
| |
| |
| |
Managing the Object-Oriented Information Systems Project | |
| |
| |
Managing an OOSAD Project | |
| |
| |
Characteristics of the OOSAD Project | |
| |
| |
Initiating the Project | |
| |
| |
Planning the Project | |
| |
| |
Executing the Project | |
| |
| |
Closing Down the Project | |
| |
| |
Representing and Scheduling Project Plans | |
| |
| |
Understanding the Critical Path of a Network Diagram | |
| |
| |
Defining the Work Breakdown Structure for OOSAD Projects | |
| |
| |
Calculating Expected Time Durations Using the Program Evaluation Review Technique (PERT) | |
| |
| |
Constructing a Gantt Chart and Network Diagram for an OOSAD Project in Microsoft Project | |
| |
| |
Establishing a Project Starting Date | |
| |
| |
Entering Tasks and Assigning Task Relationships | |
| |
| |
Selecting a Scheduling Method to Review Project Reports | |
| |
| |
Key Points Review | |
| |
| |
Review Questions | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Managing an Object-Oriented Information Systems Project | |
| |
| |
| |
Selecting and Planning Projects | |
| |
| |
Identifying and Selecting OOSAD Projects | |
| |
| |
The Process of Identifying and Selecting OOSAD Projects | |
| |
| |
Deliverables and Outcomes | |
| |
| |
Initiating, Planning, and Executing OOSAD Projects | |
| |
| |
The Process of Initiating, Planning, and Executing OOSAD Projects | |
| |
| |
Deliverables and Outcomes | |
| |
| |
Pine Valley Furniture Company Background | |
| |
| |
Identification and Selection of the WebStore | |
| |
| |
Initiating and Planning the WebStore | |
| |
| |
Assessing Project Feasibility | |
| |
| |
Assessing Economic Feasibility | |
| |
| |
Assessing Technical Feasibility | |
| |
| |
Assessing Other Feasibility Concerns | |
| |
| |
Building and Reviewing the Baseline Project Plan | |
| |
| |
Building the Baseline Project Plan | |
| |
| |
Introduction Section of the Baseline Project Plan | |
| |
| |
Reviewing the Baseline Project Plan | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Case Problems | |
| |
| |
Discussion Questions | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Initiating and Planning a Web-Based Customer Relationship Management System | |
| |
| |
| |
System Analysis | |
| |
| |
| |
Determining Object-Oriented Systems Requirements | |
| |
| |
Performing Requirements Determination | |
| |
| |
What Is a Requirement? | |
| |
| |
The Process of Determining Requirements | |
| |
| |
Deliverables and Outcomes | |
| |
| |
Requirements Structuring | |
| |
| |
Traditional Methods for Determining Requirements | |
| |
| |
Interviewing and Listening | |
| |
| |
Directly Observing Users | |
| |
| |
Analyzing Procedures and Other Documents | |
| |
| |
Modern Methods for Determining System Requirements | |
| |
| |
Joint Application Design | |
| |
| |
Using Prototyping during Requirements Determination | |
| |
| |
Using Agile Methodologies during Requirements Determination | |
| |
| |
Agile Usage-Centered Design | |
| |
| |
The Planning Game from eXtreme Programming | |
| |
| |
PVF Webstore: Determining System Requirements | |
| |
| |
Determining System Requirements for Pine Valley Furniture's WebStore | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Determining Requirements for the Web-Based Customer Relationship Management System | |
| |
| |
| |
Structuring System Requirements: Use-Case Description and Diagrams | |
| |
| |
Use Cases | |
| |
| |
What Is a Use Case? | |
| |
| |
Deliverables and Outcomes | |
| |
| |
Use-Case Diagrams | |
| |
| |
Definitions and Symbols | |
| |
| |
Developing Use-Case Diagrams: Three Examples | |
| |
| |
Developing Use Cases for Pine Valley Furniture's WebStore | |
| |
| |
Written Use Cases | |
| |
| |
Level | |
| |
| |
The Rest of the Template | |
| |
| |
Writing Use Cases for Pine Valley Furniture's WebStore | |
| |
| |
Developing Use Cases | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Use-Case Modeling for the Web-Based Customer Relationship Management System | |
| |
| |
| |
Conceptual Data Modeling | |
| |
| |
Conceptual Data Modeling | |
| |
| |
The Process of Conceptual Data Modeling | |
| |
| |
Gathering Information for Conceptual Data Modeling | |
| |
| |
Introduction to UML Data Modeling | |
| |
| |
Class | |
| |
| |
Object | |
| |
| |
Attributes | |
| |
| |
Identifiers | |
| |
| |
Important Considerations for Selecting Primary Keys (Identifiers) | |
| |
| |
Multivalued Attributes | |
| |
| |
Composite Attributes | |
| |
| |
Relationships | |
| |
| |
Association | |
| |
| |
Aggregation Relationship | |
| |
| |
Composite Structure Diagram | |
| |
| |
An Example of Conceptual Data Modeling for PVF WebStore | |
| |
| |
Generalization Relationship | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Conceptual Data Modeling for the Web-Based Customer Relationship Management System | |
| |
| |
| |
Object-Relational Modeling | |
| |
| |
Object-Relational Data Modeling | |
| |
| |
Relational Data Model (RDM) | |
| |
| |
Well-Structured Relations | |
| |
| |
Normalization | |
| |
| |
Object Extensions to Relational Data Model | |
| |
| |
Generalization/Specialization | |
| |
| |
Multivalued Attributes | |
| |
| |
Mechanisms to Support Aggregation | |
| |
| |
Object Identifiers | |
| |
| |
Relationship by References | |
| |
| |
Incorporation of Methods in an Object Relation | |
| |
| |
Richer Set of Types | |
| |
| |
Translating Conceptual Data Models into Object Relations | |
| |
| |
Translating Classes | |
| |
| |
Translating Relationships | |
| |
| |
Merging Object Relations | |
| |
| |
Logical Design of PVF WebStore | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Designing the Object-Relational Data Model for the Customer Relationship Management System | |
| |
| |
| |
Analysis Classes | |
| |
| |
Analysis Classes | |
| |
| |
Stereotyping Classes | |
| |
| |
Entity Class | |
| |
| |
Boundary Class | |
| |
| |
Control Class | |
| |
| |
Drawing Sequence Diagrams | |
| |
| |
Sequence Diagram for the Place Order Use Case | |
| |
| |
Sequence Diagram for the Make Reservation Use Case | |
| |
| |
Robustness Analysis of Sequence Diagrams | |
| |
| |
Drawing Communication Diagrams | |
| |
| |
Analysis Class Diagram | |
| |
| |
Activity Diagram | |
| |
| |
When to Use an Activity Diagram | |
| |
| |
When Not to Use an Activity Diagram | |
| |
| |
State (or Statechart) Diagram | |
| |
| |
When to Use State Diagrams | |
| |
| |
Modeling Business Rules in Analysis Classes | |
| |
| |
Constraints | |
| |
| |
Calculations | |
| |
| |
Value Inferences | |
| |
| |
Action Enablers | |
| |
| |
The Object Constraint Language (OCL) | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Broadway Entertainment Company, Inc. | |
| |
| |
Designing the Analysis Classes for the Customer Relationship Management System | |
| |
| |
| |
Selecting the Best Alternative Design Strategy | |
| |
| |
Selecting the Best Alternative Design Strategy | |
| |
| |
The Process of Selecting the Best Alternative Design Strategy | |
| |
| |
Deliverables and Outcomes | |
| |
| |
Generating Alternative Design Strategies | |
| |
| |
Issues to Consider in Generating Alternatives | |
| |
| |
Outsourcing | |
| |
| |
Sources of Software | |
| |
| |
Choosing Off-the-Shelf Software | |
| |
| |
Hardware and System Software Issues | |
| |
| |
Implementation Issues | |
| |
| |
Selecting the Best Alternative Design Strategy for Pine Valley Furniture's WebStore | |
| |
| |
Selecting the Most Likely Alternative | |
| |
| |
A Description of the Chosen Alternative | |
| |
| |
Updating the Baseline Project Plan | |
| |
| |
Before and After Baseline Project Plans for PVF's WebStore | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Formulating a Design Strategy for the Web-Based Customer Relationship Management System | |
| |
| |
| |
Systems Design | |
| |
| |
| |
Physical Database Design | |
| |
| |
Physical Database Design | |
| |
| |
Structured Query Language (SQL) | |
| |
| |
Designing Fields | |
| |
| |
Choosing Data Types | |
| |
| |
Controlling Data Integrity | |
| |
| |
Designing Physical Tables and Denormalization | |
| |
| |
File Organization | |
| |
| |
Secondary Storage Concepts | |
| |
| |
Hashed File Organizations | |
| |
| |
Indexed File Organizations | |
| |
| |
Design of Object-Relational Features | |
| |
| |
Generalization | |
| |
| |
Aggregation | |
| |
| |
Multivalued Attributes | |
| |
| |
Object Identifier | |
| |
| |
Relationship by Reference | |
| |
| |
Physical Database Design of PVF WebStore | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Designing the Physical Database for the Customer Relationship Management System | |
| |
| |
| |
Design Elements | |
| |
| |
Design Elements | |
| |
| |
Design Architecture | |
| |
| |
Tiered Architecture | |
| |
| |
Two-Tier Architecture | |
| |
| |
Three-Tier Architecture | |
| |
| |
N-Tier Architecture | |
| |
| |
Mapping from Analysis Classes to Design Elements | |
| |
| |
Components | |
| |
| |
Component Standards | |
| |
| |
COM, COM1, and Distributed COM (DOOM) | |
| |
| |
Common Object Request Broker Architecture (CORBA) | |
| |
| |
Enterprise Java Beans (EJB) | |
| |
| |
COM, CORBA, and EJB: Comparisons and Problems | |
| |
| |
XML/SOAP: An Integration Solution | |
| |
| |
Frameworks | |
| |
| |
.NET Framework and Visual Studio .NET | |
| |
| |
Java 2 Enterprise Edition (J2EE) | |
| |
| |
Logic at the Browser: Scripting Languages | |
| |
| |
Encapsulation at the Database End | |
| |
| |
Packages | |
| |
| |
Design Class Diagrams | |
| |
| |
Verifying Responsibility Allocation | |
| |
| |
Visibility | |
| |
| |
Attribute Types | |
| |
| |
PVF Example | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Developing Design Elements for the Customer Relationship Management System | |
| |
| |
| |
Designing the Human Interface | |
| |
| |
Designing Forms and Reports | |
| |
| |
The Process of Designing Forms and Reports | |
| |
| |
Deliverables and Outcomes | |
| |
| |
Formatting Forms and Reports | |
| |
| |
General Formatting Guidelines | |
| |
| |
Highlighting Information | |
| |
| |
Displaying Text | |
| |
| |
Designing Tables and Lists | |
| |
| |
Paper Versus Electronic Reports | |
| |
| |
Designing Web Layouts | |
| |
| |
Designing Interfaces and Dialogues | |
| |
| |
The Process of Designing Interfaces and Dialogues | |
| |
| |
Deliverables and Outcomes | |
| |
| |
Designing Interfaces | |
| |
| |
Designing Layouts | |
| |
| |
Structuring Data Entry | |
| |
| |
Controlling Data Input | |
| |
| |
Providing Feedback | |
| |
| |
Errors and Warning Messages | |
| |
| |
Providing Help | |
| |
| |
Designing Web Interfaces | |
| |
| |
Designing Dialogues | |
| |
| |
Designing the Dialogue Sequence | |
| |
| |
Building Prototypes and Assessing Usability | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertainment Company, Inc. | |
| |
| |
Designing the Human Interface for the Customer Relationship Management System | |
| |
| |
| |
Systems Implementation and Operation | |
| |
| |
| |
OOSAD Implementation and Operation | |
| |
| |
Systems Implementation and Operation | |
| |
| |
The Processes of Program Coding, Testing, and Installation | |
| |
| |
Deliverables and Outcomes from Program Development, Testing, and Installation | |
| |
| |
The Processes of Documenting the System, Training Users, and Supporting Users | |
| |
| |
Deliverables and Outcomes from Documenting the System, Training Users, and Supporting Users | |
| |
| |
The Process of Maintaining Information Systems | |
| |
| |
Deliverables and Outcomes from Maintaining Information Systems | |
| |
| |
Coding | |
| |
| |
Combining Coding and Testing | |
| |
| |
Reuse | |
| |
| |
Object Frameworks | |
| |
| |
Software Application Testing | |
| |
| |
Seven Different Types of Tests | |
| |
| |
The Testing Process | |
| |
| |
Acceptance Testing by Users | |
| |
| |
Installation | |
| |
| |
Planning Installation | |
| |
| |
Documenting the System | |
| |
| |
User Documentation | |
| |
| |
Preparing User Documentation | |
| |
| |
Training and Supporting Users | |
| |
| |
Training Information System Users | |
| |
| |
Supporting Information System Users | |
| |
| |
Why Implementation Sometimes Fails | |
| |
| |
Project Closedown | |
| |
| |
Conducting Systems Maintenance | |
| |
| |
Types of Maintenance | |
| |
| |
The Cost of Maintenance | |
| |
| |
Measuring Maintenance Effectiveness | |
| |
| |
Controlling Maintenance Requests | |
| |
| |
Role of Case and Automated Development Tools in Maintenance | |
| |
| |
Systems Implementation and Operation for Pine Valley Furniture's WebStore | |
| |
| |
Developing Test Cases for WebStore | |
| |
| |
Bug Tracking and System Evolution | |
| |
| |
Alpha and Beta Testing the WebStore | |
| |
| |
WebStore Installation | |
| |
| |
Key Points Review | |
| |
| |
Key Terms Checkpoint | |
| |
| |
Review Questions | |
| |
| |
Problems and Exercises | |
| |
| |
Discussion Questions | |
| |
| |
Case Problems | |
| |
| |
Case: Broadway Entertairmient Company, Inc. | |
| |
| |
Designing a Testing Plan for the Customer Relationship Management System | |
| |
| |
References | |
| |
| |
Acronymn Glossary | |
| |
| |
Glossary | |
| |
| |
Index | |