Systems Analysis and Design: An Object-Oriented Approach with UML, 6/e (Paperback)

Alan Dennis , Barbara Wixom , David Tegarden

  • 出版商: Wiley
  • 出版日期: 2020-10-01
  • 售價: $1,480
  • 貴賓價: 9.8$1,450
  • 語言: 英文
  • 頁數: 544
  • ISBN: 111955991X
  • ISBN-13: 9781119559917
  • 相關分類: UMLObject-oriented 物件導向
  • 立即出貨 (庫存=1)

商品描述

DESCRIPTION

Systems Analysis and Design: An Object-Oriented Approach with UML, Sixth Edition helps students develop the core skills required to plan, design, analyze, and implement information systems. Offering a practical hands-on approach to the subject, this textbook is designed to keep students focused on doing SAD, rather than simply reading about it. Each chapter describes a specific part of the SAD process, providing clear instructions, a detailed example, and practice exercises. Students are guided through the topics in the same order as professional analysts working on a typical real-world project.

Now in its sixth edition, this edition has been carefully updated to reflect current methods and practices in SAD and prepare students for their future roles as systems analysts. Every essential area of systems analysis and design is clearly and thoroughly covered, from project management, to analysis and design modeling, to construction, installation, and operations. The textbook includes access to a range of teaching and learning resources, and a running case study of a fictitious healthcare company that shows students how SAD concepts are applied in real-life scenarios.

FEATURES

Wiley Advantage:

  • Focuses on real-world application by guiding students through practice problems and using the technique in a project
  • Presents a contemporary, object-oriented approach using UML
  • Integrates stories, feedback, and advice from a diverse industry advisory board of IS professionals and consultants
  • Provides chapters that each cover a different step in the Systems Development Life Cycle (SDLC) process
  • Presents a contemporary, object-oriented approach using UML

NEW TO THIS EDITION

New to this Edition:

  • Increased focus on software quality and user stories
  • New sections on DevOps methodologies, meeting management, fishbone diagrams, givens-means-ends analysis, and using activity diagrams with swimlanes

目錄大綱

TABLE OF CONTENTS

CHAPTER 1: INTRODUCTION TO SYSTEMS ANALYSIS AND DESIGN

OBJECTIVES

INTRODUCTION

TYPICAL SYSTEMS ANALYST ROLES AND SKILLS

Business Analyst

Systems Analyst

Infrastructure Analyst

Change Management Analyst

Project Manager

THE SYSTEMS DEVELOPMENT LIFE CYCLE

Planning

Analysis

Design

Implementation

SYSTEMS DEVELOPMENT METHODOLOGIES

Structured Design

Waterfall Development

Parallel Development

Rapid Application Development (RAD)

Phased Development

Prototyping

Throwaway Prototyping

Object-Oriented Systems Analysis and Design (OOSAD)

Use-Case Driven

Architecture-Centric

Iterative and Incremental

Benefits of Object-Oriented Systems Analysis and Design

Agile Development

Extreme Programming

Scrum

DevOps

Custom Methodologies

THE UNIFIED PROCESS

Phases

Inception

Elaboration

Construction

Transition

Workflows

Engineering Workflows

Business Modeling Workflow

Requirements Workflow

Analysis Workflow

Design Workflow

Implementation Workflow

Testing Workflow

Deployment Workflow

Supporting Workflows

Project Management Workflow

Configuration and Change Management Workflow

Environment Workflow

Extensions to the Unified Process

Production Phase

Operations and Support Workflow

Infrastructure Management Workflow

Existing Workflow Modifications and Extensions

Test Workflow

Deployment Workflow

Environment Workflow

Project Management Workflow

Configuration and Change Management Workflow

THE UNIFIED MODELING LANGUAGE

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

APPENDIX: BASIC CHARACTERISTICS OF OBJECT-ORIENTED SYSTEMS

Classes and Objects

Methods and Messages

Encapsulation and Information Hiding

Polymorphism and Dynamic Binding

Inheritance

APPENDIX REVIEW

KEY TERMS

QUESTIONS

EXERCISES

CHAPTER 2: PROJECT MANAGEMENT

OBJECTIVES

INTRODUCTION

PROJECT IDENTIFICATION

System Request

FEASIBILITY ANALYSIS

Technical Feasibility

Economic Feasibility

Identifying Costs and Benefits

Assigning Values to Costs and Benefits

Determining Cash Flow

Determining Net Present Value and Return on Investment

Determining the Break-Even Point

Organizational Feasibility

PROJECT SELECTION

Ethical Considerations

TRADITIONAL PROJECT MANAGEMENT TOOLS

Work Breakdown Structures

Gantt Chart

Network Diagram

PROJECT EFFORT ESTIMATION

CREATING AND MANAGING THE WORKPLAN

Evolutionary Work Breakdown Structures and Iterative Workplans

Managing Scope

Timeboxing

Refining Estimates

Managing Risk

AGILE ALTERNATIVES TO ITERATIVE WORKPLANS

STAFFING THE PROJECT

Tuckman’s Stages of Small Group Development

Characteristics of a Jelled Team

Staffing Plan

Motivation

Handling Conflict

MEETING MANAGEMENT

ENVIRONMENT AND INFRASTRUCTURE MANAGEMENT

CASE Tools

Standards

Documentation

CONFIGURATION AND CHANGE MANAGEMENT

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 3: REQUIREMENTS DETERMINATION

OBJECTIVES

INTRODUCTION

REQUIREMENTS DETERMINATION

Defining a Requirement

Real-World Problems with Requirements Determination

REQUIREMENTS ANALYSIS APPROACHES

Problem Analysis

Root Cause Analysis

Duration Analysis

Activity-Based Costing

Informal Benchmarking

Outcome Analysis

Technology Analysis

Activity Elimination

REQUIREMENTS-GATHERING TECHNIQUES

Interviews

1. Select Interviewees

2. Design Interview Questions

3. Prepare for the Interview

4. Conduct the Interview

5. Post-Interview Follow-up

Questionnaires

1. Select Participants

2. Designing a Questionnaire

3. Administering the Questionnaire

4. Questionnaire Follow-up

Observation

Document Analysis

Selecting the Appropriate Techniques

Type of Information

Depth of Information

Breadth of Information

Integration of Information

User Involvement

Cost

Combining Techniques

TEXT ANALYSIS

REQUIREMENTS DEFINITION

Creating a Requirements Definition

User Stories

THE SYSTEM PROPOSAL

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 4: BUSINESS PROCESS AND FUNCTIONAL MODELING

OBJECTIVES

INTRODUCTION

BUSINESS PROCESS IDENTIFICATION WITH USE CASES AND USE-CASE DIAGRAMS

Types of Use Cases

Elements of Use-Case Diagrams

Actors

Association

Use Case

Subject Boundary

Identifying the Major Use Cases

1. Review Requirements Definition

2. Identify Subject’s Boundaries

3. Identify Primary Actors & Goals

4. Identify Business Processes & Major Use Cases

5. Review Current Set of Use Cases

Creating a Use-Case Diagram

1. Place & Draw Use Cases

2. Place & Draw Actors

3. Draw Subject Boundary

4. Add Associations

Campus Housing Example

Library Example

BUSINESS PROCESS MODELING WITH ACTIVITY DIAGRAMS

Elements of an Activity Diagram

Actions and Activities

Object Nodes

Control Flows and Object Flows

Control Nodes

Swimlanes

Guidelines for Creating Activity Diagrams

Creating Activity Diagrams

1. Choose a Business Process

2. Identify Activities

3. Identify Control Flows & Nodes

4. Identify Object Flows & Nodes

5. Lay Out & Draw Diagram

Campus Housing Example

Library Example

BUSINESS PROCESS DOCUMENTATION WITH USE-CASE DESCRIPTIONS

Elements of a Use-Case Description

Overview Use Case Section

Detail Use Case Section

Optional Characteristics

Guidelines for Creating Use-Case Descriptions

Creating Use Case Descriptions

1. Choose a Use Case

2. Create Overview Description

3. Describe the Normal Flow of Events

4. Check the Normal Flow of Events

5. Identify Alternative or Exceptional Flows

6. Review the Use-Case Description

7. Repeat Until Done

Campus Housing Example

Library Example

VERIFYING AND VALIDATING THE BUSINESS PROCESSES AND FUNCTIONAL MODELS

Verification and Validation through Walkthroughs

Functional Model Verification and Validation

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

 

 

CHAPTER 5: STRUCTURAL MODELING

OBJECTIVES

INTRODUCTION

STRUCTURAL MODELS

Classes, Attributes, and Operations

Relationships

Generalization Relationships

Aggregation Relationships

Association Relationships

OBJECT IDENTIFICATION

Textual Analysis

Brainstorming

Patterns

CRC CARDS

Responsibilities and Collaborations

Elements of a CRC Card

Role-Playing CRC Cards with Use Cases

1. Review Use Cases

2. Identify Relevant Actors and Objects

3. Role-Play Scenarios

4. Repeat Steps 1 through 3

CLASS DIAGRAMS

Elements of a Class Diagram

Class

Relationships

Generalization and Aggregation Associations

Simplifying Class Diagrams

Object Diagrams

CREATING STRUCTURAL MODELS USING CRC CARDS AND CLASS DIAGRAMS

1. Create CRC Cards

2. Review CRC Cards

3. Role-Play the CRC Cards

4. Create Class Diagram

5. Review Class Diagram

6. Incorporate Patterns

7. Review the Model

Campus Housing Example

Library Example

VERIFYING AND VALIDATING THE STRUCTURAL MODEL

Balancing Functional and Structural Models

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 6: BEHAVIORAL MODELING

OBJECTIVES

INTRODUCTION

BEHAVIORAL MODELS

INTERACTION DIAGRAMS

Objects, Operations, and Messages

Activity Diagrams

Sequence Diagrams

Elements of a Sequence Diagram

Guidelines for Creating Sequence Diagrams

Creating a Sequence Diagram

1. Set Context

2. Identify Actors and Objects

3. Set Lifeline

4. Add Messages

5. Place Execution Occurrence

6. Validate

Campus Housing Example

Library Example

CRUDE ANALYSIS

Campus Housing Example

Library Example

BEHAVIORAL STATE MACHINES

States, Events, Transitions, Actions, and Activities

Elements of a Behavioral State Machine

Guidelines for Creating Behavioral State Machines

Creating a Behavioral State Machine

1. Set Context

2. Identify Object States

3. Lay Out Diagram

4. Add Transitions

5. Validate

Campus Housing Example

Library Example

VERIFYING AND VALIDATING THE BEHAVIORAL MODEL

Balancing Functional and Behavioral Models

Balancing Structural and Behavioral Models

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 7: MOVING ON TO DESIGN

OBJECTIVES

INTRODUCTION

VERIFYING AND VALIDATING THE ANALYSIS MODELS

EVOLVING THE ANALYSIS MODELS INTO DESIGN MODELS

Factoring

Partitions and Collaborations

Layers

Foundation

Problem Domain

Data Management

Human–Computer Interaction

Physical Architecture

PACKAGES AND PACKAGE DIAGRAMS

Guidelines for Creating Package Diagrams

Creating Package Diagrams

1. Set Context

2. Cluster Classes

3. Create Packages

4. Identify Dependencies

5. Lay Out and Draw Diagram

Verifying and Validating Package Diagrams

DESIGN CRITERIA

Coupling

Cohesion

Connascence

DESIGN STRATEGIES

Custom Development

Packaged Software

Outsourcing

Selecting a Design Strategy

Business Need

In-house Experience

Project Skills

Project Management

Time Frame

SELECTING AN ACQUISITION STRATEGY

Alternative Matrix

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

 

 

CHAPTER 8: CLASS AND METHOD DESIGN

OBJECTIVES

INTRODUCTION

OBJECT DESIGN ACTIVITIES

Adding Specifications

Identifying Opportunities for Reuse

Restructuring the Design

Optimizing the Design

Mapping Problem-Domain Classes to Implementation Languages

Implementing Problem Domain Classes in a Single-Inheritance Language

Implementing Problem Domain Objects in an Object-Based Language

Implementing Problem-Domain Objects in a Traditional Language

CONSTRAINTS AND CONTRACTS

Types of Constraints

Elements of a Contract

Example

METHOD SPECIFICATION

General Information

Events

Message Passing

Algorithm Specifications

Example

VERIFYING AND VALIDATING CLASS AND METHOD DESIGN

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 9: DATA MANAGEMENT LAYER DESIGN

OBJECTIVES

INTRODUCTION

OBJECT PERSISTENCE FORMATS

Sequential and Random-Access Files

Relational Databases

Object-Relational Databases

Object-Oriented Databases

NoSQL Data Stores

Selecting an Object Persistence Format

Major Strengths and Weaknesses

Data Types Supported

Type of Application System

Existing Storage Formats

Future Needs

Other Miscellaneous Criteria

MAPPING PROBLEM DOMAIN OBJECTS TO OBJECT PERSISTENCE FORMATS

Mapping Problem Domain Objects to an OODBMS Format

Mapping Problem Domain Objects to an ORDBMS Format

Mapping Problem Domain Objects to a RDBMS Format

DESIGNING DATA ACCESS AND MANIPULATION CLASSES

NONFUNCTIONAL REQUIREMENTS AND DATA MANAGEMENT LAYER DESIGN

VERIFYING AND VALIDATING THE DATA MANAGEMENT LAYER

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

 

APPENDIX 9-1: OPTIMIZING RDBMS-BASED OBJECT STORAGE

Optimizing Storage Efficiency

Optimizing Data Access Speed

Denormalization

Clustering

Indexing

Estimating Data Storage Size

APPENDIX 9-2: CONVERTING CLASS DIAGRAMS TO ENTITY-RELATIONSHIP DIAGRAMS

APPENDIX REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

 

 

CHAPTER 10: HUMAN–COMPUTER INTERACTION LAYER DESIGN

OBJECTIVES

INTRODUCTION

PRINCIPLES FOR USER INTERFACE DESIGN

Layout

Content Awareness

Aesthetics

User Experience

Consistency

Minimizing User Effort

USER INTERFACE DESIGN PROCESS

Use Scenario Development

Navigation Structure Design

Interface Standards Design

Interface Metaphor

Interface Templates

Interface Objects

Interface Actions

Interface Icons

Interface Design Prototyping

Wireframe Diagram

Storyboard

User Interface Prototypes

Selecting the Appropriate Techniques

Common Sense Approach to User Interface Design

NAVIGATION DESIGN

Basic Principles

Prevent Mistakes

Simplify Recovery from Mistakes

Use Consistent Grammar Order

Types of Navigation Controls

Languages

Menus

Direct Manipulation

Messages

Navigation Design Documentation

INPUT DESIGN

Basic Principles

Online versus Batch Processing

Capture Data at the Source

Minimize Keystrokes

Types of Inputs

Text

Numbers

Selection Box

Input Validation

OUTPUT DESIGN

Basic Principles

Understand Report Usage

Manage Information Load

Minimize Bias

Types of Outputs

Media

MOBILE COMPUTING AND USER INTERFACE DESIGN

SOCIAL MEDIA AND USER INTERFACE DESIGN

GAMES, MULTIDIMENSIONAL INFORMATION VISUALIZATIONS, AND IMMERSIVE ENVIRONMENTS

Games, Gamification, and User Interface Design

Multidimensional Information Visualization Design

User Interface Design and Immersive Environments

INTERNATIONAL AND CULTURAL ISSUES AND USER INTERFACE DESIGN

Multilingual Requirements

Color

Cultural Differences

NONFUNCTIONAL REQUIREMENTS AND HUMAN–COMPUTER INTERACTION LAYER DESIGN

VERIFYING AND VALIDATING THE HUMAN-COMPUTER INTERACTION LAYER APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 11: PHYSICAL ARCHITECTURE LAYER DESIGN

OBJECTIVES

INTRODUCTION

ELEMENTS OF THE PHYSICAL ARCHITECTURE LAYER

Architectural Components

Server-Based Architectures

Client-Based Architectures

Client–Server Architectures

Client–Server Tiers

Selecting a Physical Architecture

Cost of Infrastructure

Cost of Development

Ease of Development

Interface Capabilities

Control and Security

Scalability

CLOUD COMPUTING

UBIQUITOUS COMPUTING AND THE INTERNET OF THINGS

GREEN IT

INFRASTRUCTURE DESIGN

Deployment Diagram

Network Model

HARDWARE AND SYSTEM SOFTWARE SPECIFICATIONS

NONFUNCTIONAL REQUIREMENTS AND PHYSICAL ARCHITECTURE LAYER DESIGN

Operational Requirements

Technical Environment Requirements

System Integration Requirements

Portability Requirements

Maintainability Requirements

Performance Requirements

Speed Requirements

Capacity Requirements

Availability and Reliability Requirements

Security Requirements

System Value

Access Control Requirements

Encryption and Authentication Requirements

Virus Control Requirements

Cultural and Political Requirements

Customization Requirements

Legal Requirements

Synopsis

VERIFYING AND VALIDATING THE PHYSICAL ARCHITECTURE LAYER

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 12: CONSTRUCTION

OBJECTIVES

INTRODUCTION

MANAGING PROGRAMMING

Assigning Programmers

Coordinating Activities

Managing the Schedule

Cultural Issues

DEVELOPING DOCUMENTATION

Types of Documentation

Designing Documentation Structure

Writing Documentation Topics

Identifying Navigation Terms

DESIGNING TESTS

Testing and Object Orientation

Encapsulation and Information Hiding

Polymorphism and Dynamic Binding

Inheritance

Reuse

Object-Oriented Development Process and Products

Test Planning

Unit Tests

Integration Tests

System Tests

Acceptance Tests

Testing and Security Considerations

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES

CHAPTER 13: INSTALLATION AND OPERATIONS

OBJECTIVES

INTRODUCTION

CULTURAL ISSUES AND INFORMATION TECHNOLOGY ADOPTION

CONVERSION

Conversion Style

Direct Conversion

Parallel Conversion

Conversion Location

Pilot Conversion

Phased Conversion

Simultaneous Conversion

Conversion Modules

Whole-System Conversion

Modular Conversion

Selecting the Appropriate Conversion Strategy

Risk

Cost

Time

DevOps and Continuous Delivery

CHANGE MANAGEMENT

Understanding Resistance to Change

Revising Management Policies

Assessing Costs and Benefits

Motivating Adoption

Enabling Adoption: Training

What to Train

How to Train

POST-IMPLEMENTATION ACTIVITIES

System Support

System Maintenance

Project Assessment

Project Team Review

System Review

APPLYING THE CONCEPTS AT PATTERSON SUPERSTORE

CHAPTER REVIEW

KEY TERMS

QUESTIONS

EXERCISES

MINICASES