Object-oriented Systems Analysis and Design Using UML
Publisher: McGraw Hill Higher Education
Published: July 4, 2007
Language: eng
Number of pages: 624
ISBN-13: 9780077110000
First sentence: Information systems have played an important part in human affairs since our most distant ancestors first became capable of organized collective action.
Table of contents: title: About the Authors
pagenum: x; title: Preface
pagenum: xi; title: Background to the Book
pagenum: xi; title: Who Should Read this Book?
pagenum: xi; title: Case Studies
pagenum: xii; title: Exercises for Readers
pagenum: xiii; title: Structure of the Book
pagenum: xiii; title: Pathways through the Book
pagenum: xiv; title: Transferable Skills
pagenum: xv; title: Web Site and Support Materials
pagenum: xv; title: Latest Version of UML
pagenum: xv; title: Changes in the Third Edition
pagenum: xvi; title: Acknowledgments
pagenum: xvii; title: Guided Tour
pagenum: xix; label: 1
title: Information Systems-What Are They?
pagenum: 1; label: 1.1
title: Introduction
pagenum: 1; label: 1.2
title: Information Systems in Practice
pagenum: 4; label: 1.3
title: General Systems Theory
pagenum: 5; label: 1.4
title: Information and Information Systems
pagenum: 15; label: 1.5
title: Strategies for Success
pagenum: 19; label: 1.6
title: Summary
pagenum: 23; label: 2
title: Problems in Information Systems Development
pagenum: 26; label: 2.1
title: Introduction
pagenum: 26; label: 2.2
title: What Are the Problems?
pagenum: 27; label: 2.3
title: Why Things Go Wrong
pagenum: 35; label: 2.4
title: The Ethical Dimension
pagenum: 40; label: 2.5
title: Costs of Failure
pagenum: 43; label: 2.6
title: Summary
pagenum: 44; label: 3
title: Avoiding the Problems
pagenum: 47; label: 3.1
title: Introduction
pagenum: 47; label: 3.2
title: Project Lifecycles
pagenum: 49; label: 3.3
title: Managing Information Systems Development
pagenum: 58; label: 3.4
title: User Involvement
pagenum: 59; label: 3.5
title: Methodological Approaches
pagenum: 60; label: 3.6
title: Agile Approaches
pagenum: 61; label: 3.7
title: CASE
pagenum: 62; label: 3.8
title: Summary
pagenum: 65; label: 4
title: What Is Object-Orientation?
pagenum: 68; label: 4.1
title: Introduction
pagenum: 68; label: 4.2
title: Basic Concepts
pagenum: 69; label: 4.3
title: The Origins of Object-Orientation
pagenum: 83; label: 4.4
title: Object-Oriented Languages Today
pagenum: 87; label: 4.5
title: Summary
pagenum: 88; label: A1
title: Agate Ltd Case Study - Introduction
pagenum: 91; label: A1.1
title: Introduction to Agate
pagenum: 91; label: A1.2
title: Existing Computer Systems
pagenum: 92; label: A1.3
title: Business Activities in the Current System
pagenum: 93; label: A1.4
title: Summary of Requirements
pagenum: 94; label: B1
title: FoodCo Ltd Case Study - Introduction
pagenum: 95; label: B1.1
title: Introduction to FoodCo
pagenum: 95; label: B1.2
title: FoodCo Today
pagenum: 98; label: B1.3
title: The Proposal
pagenum: 102; label: 5
title: Modelling Concepts
pagenum: 103; label: 5.1
title: Introduction
pagenum: 103; label: 5.2
title: Models and Diagrams
pagenum: 104; label: 5.3
title: Drawing Activity Diagrams
pagenum: 113; label: 5.4
title: A Development Process
pagenum: 119; label: 5.5
title: Summary
pagenum: 126; label: 6
title: Requirements Capture
pagenum: 128; label: 6.1
title: Introduction
pagenum: 128; label: 6.2
title: User Requirements
pagenum: 128; label: 6.3
title: Fact-Finding Techniques
pagenum: 132; label: 6.4
title: User Involvement
pagenum: 141; label: 6.5
title: Documenting Requirements
pagenum: 143; label: 6.6
title: Use Cases
pagenum: 145; label: 6.7
title: Requirements Capture and Modelling
pagenum: 154; label: 6.8
title: Summary
pagenum: 155; label: A2
title: Agate Ltd Case Study - Requirements Model
pagenum: 160; label: A2.1
title: Introduction
pagenum: 160; label: A2.2
title: Requirements List
pagenum: 160; label: A2.3
title: Actors and Use Cases
pagenum: 161; label: A2.4
title: Glossary
pagenum: 167; label: A2.5
title: Initial Architecture
pagenum: 168; label: A2.6
title: Activities of Requirements Modelling
pagenum: 169; label: 7
title: Requirements Analysis
pagenum: 171; label: 7.1
title: Introduction
pagenum: 171; label: 7.2
title: What Must a Requirements Model Do?
pagenum: 172; label: 7.3
title: Use Case Realization
pagenum: 173; label: 7.4
title: The Class Diagram
pagenum: 179; label: 7.5
title: Drawing a Class Diagram
pagenum: 188; label: 7.6
title: CRC (Class Responsibility Collaboration) Cards
pagenum: 204; label: 7.7
title: Assembling the Analysis Class Diagram
pagenum: 207; label: 7.8
title: Summary
pagenum: 208; label: A3
title: Agate Ltd Case Study - Requirements Analysis
pagenum: 213; label: A3.1
title: Introduction
pagenum: 213; label: A3.2
title: Use Case Realizations
pagenum: 213; label: A3.3
title: Assembling the Analysis Class Diagram
pagenum: 219; label: A3.4
title: Activities of Requirements Analysis
pagenum: 220; label: 8
title: Refining the Requirements Model
pagenum: 222; label: 8.1
title: Introduction
pagenum: 222; label: 8.2
title: Software and Specification Reuse
pagenum: 223; label: 8.3
title: Adding Further Structure
pagenum: 230; label: 8.4
title: UML Support for Modelling Components
pagenum: 239; label: 8.5
title: Software Development Patterns
pagenum: 244; label: 8.6
title: Summary
pagenum: 246; label: 9
title: Object Interaction
pagenum: 249; label: 9.1
title: Introduction
pagenum: 249; label: 9.2
title: Object Interaction and Collaboration
pagenum: 250; label: 9.3
title: Interaction Sequence Diagrams
pagenum: 252; label: 9.4
title: Communication Diagrams
pagenum: 271; label: 9.5
title: Interaction Overview Diagrams
pagenum: 275; label: 9.6
title: Timing Diagrams
pagenum: 278; label: 9.7
title: Model Consistency
pagenum: 279; label: 9.8
title: Summary
pagenum: 280; label: 10
title: Specifying Operations
pagenum: 282; label: 10.1
title: Introduction
pagenum: 282; label: 10.2
title: The Role of Operation Specifications
pagenum: 283; label: 10.3
title: Contracts
pagenum: 284; label: 10.4
title: Describing Operation Logic
pagenum: 286; label: 10.5
title: Object Constraint Language
pagenum: 295; label: 10.6
title: Creating an Operation Specification
pagenum: 299; label: 10.7
title: Summary
pagenum: 301; label: 11
title: Specifying Control
pagenum: 303; label: 11.1
title: Introduction
pagenum: 303; label: 11.2
title: States and Events
pagenum: 304; label: 11.3
title: Basic Notation
pagenum: 306; label: 11.4
title: Further Notation
pagenum: 311; label: 11.5
title: Preparing a State Machine
pagenum: 318; label: 11.6
title: Protocol and Behavioural State Machines
pagenum: 324; label: 11.7
title: Consistency Checking
pagenum: 325; label: 11.8
title: Quality Guidelines
pagenum: 325; label: 11.9
title: Summary
pagenum: 326; label: A4
title: Agate Ltd Case Study - Further Analysis
pagenum: 328; label: A4.1
title: Introduction
pagenum: 328; label: A4.2
title: Sequence Diagrams
pagenum: 329; label: A4.3
title: State Machines
pagenum: 330; label: A4.4
title: Operation Specifications
pagenum: 330; label: A4.5
title: Further Refinement of the Class Diagram
pagenum: 336; label: A4.6
title: Further Activities of Requirements Analysis
pagenum: 336; label: 12
title: System Architecture
pagenum: 338; label: 12.1
title: Introduction
pagenum: 338; label: 12.2
title: What Do We Mean by Architecture?
pagenum: 339; label: 12.3
title: Why Produce Architectural Models?
pagenum: 342; label: 12.4
title: Influences on System Architecture
pagenum: 344; label: 12.5
title: Architectural Styles
pagenum: 348; label: 12.6
title: Concurrency
pagenum: 363; label: 12.7
title: Processor Allocation
pagenum: 365; label: 12.8
title: Agate Software Architecture
pagenum: 366; label: 12.9
title: Summary
pagenum: 368; label: 13
title: Systems Design
pagenum: 371; label: 13.1
title: Introduction
pagenum: 371; label: 13.2
title: How is Design Different from Analysis?
pagenum: 372; label: 13.3
title: Logical and Physical Design
pagenum: 374; label: 13.4
title: System Design
pagenum: 376; label: 13.5
title: Qualities and Objectives of Analysis and Design
pagenum: 377; label: 13.6
title: Measurable Objectives in Design
pagenum: 386; label: 13.7
title: Data Management Issues
pagenum: 387; label: 13.8
title: Development Standards
pagenum: 388; label: 13.9
title: Prioritizing Design Trade-offs
pagenum: 389; label: 13.10
title: Design for Implementation
pagenum: 391; label: 13.11
title: Summary
pagenum: 391; label: 14
title: Detailed Design
pagenum: 394; label: 14.1
title: Introduction
pagenum: 394; label: 14.2
title: What Do We Add in O-O Detailed Design?
pagenum: 395; label: 14.3
title: Class Specification
pagenum: 397; label: 14.4
title: Interfaces
pagenum: 402; label: 14.5
title: Designing Associations
pagenum: 404; label: 14.6
title: Integrity Constraints
pagenum: 409; label: 14.7
title: Designing Operations
pagenum: 412; label: 14.8
title: Summary
pagenum: 413; label: 15
title: Design Patterns
pagenum: 415; label: 15.1
title: Introduction
pagenum: 415; label: 15.2
title: Software Development Patterns
pagenum: 416; label: 15.3
title: Documenting Patterns - Pattern Templates
pagenum: 418; label: 15.4
title: Design Patterns
pagenum: 419; label: 15.5
title: How to Use Design Patterns
pagenum: 435; label: 15.6
title: Benefits and Dangers of Using Patterns
pagenum: 436; label: 15.7
title: Summary
pagenum: 437; label: 16
title: Human-Computer Interaction
pagenum: 440; label: 16.1
title: Introduction
pagenum: 440; label: 16.2
title: The User Interface
pagenum: 441; label: 16.3
title: Approaches to User Interface Design
pagenum: 450; label: 16.4
title: Standards and Legal Requirements
pagenum: 458; label: 16.5
title: Summary
pagenum: 461; label: 17
title: Designing Boundary Classes
pagenum: 463; label: 17.1
title: Introduction
pagenum: 463; label: 17.2
title: The Architecture of the Presentation Layer
pagenum: 464; label: 17.3
title: Prototyping the User Interface
pagenum: 466; label: 17.4
title: Designing Classes
pagenum: 469; label: 17.5
title: Designing Interaction with Sequence Diagrams
pagenum: 473; label: 17.6
title: The Class Diagram Revisited
pagenum: 481; label: 17.7
title: User Interface Design Patterns
pagenum: 482; label: 17.8
title: Modelling the Interface Using State Machines
pagenum: 483; label: 17.9
title: Summary
pagenum: 491; label: 18
title: Data Management Design
pagenum: 494; label: 18.1
title: Introduction
pagenum: 494; label: 18.2
title: Persistence
pagenum: 495; label: 18.3
title: File Systems
pagenum: 498; label: 18.4
title: Database Management Systems
pagenum: 505; label: 18.5
title: Designing for Relational Database Management Systems
pagenum: 511; label: 18.6
title: Designing for Object Database Management Systems
pagenum: 519; label: 18.7
title: Distributed Databases
pagenum: 521; label: 18.8
title: Designing Data Management Classes
pagenum: 523; label: 18.9
title: Summary
pagenum: 533; label: A5
title: Agate Ltd Case Study - Design
pagenum: 536; label: A5.1
title: Introduction
pagenum: 536; label: A5.2
title: Architecture
pagenum: 536; label: A5.3
title: Sample Use Case
pagenum: 538; label: A5.4
title: Class Diagrams
pagenum: 538; label: A5.5
title: Sequence Diagrams
pagenum: 544; label: A5.6
title: Database Design
pagenum: 547; label: A5.7
title: State Machines
pagenum: 547; label: A5.8
title: Activities of Design
pagenum: 547; label: 19
title: Implementation
pagenum: 551; label: 19.1
title: Introduction
pagenum: 551; label: 19.2
title: Software Implementation
pagenum: 552; label: 19.3
title: Component Diagrams
pagenum: 557; label: 19.4
title: Deployment Diagrams
pagenum: 558; label: 19.5
title: Software Testing
pagenum: 561; label: 19.6
title: Data Conversion
pagenum: 565; label: 19.7
title: User Documentation and Training
pagenum: 567; label: 19.8
title: Implementation Strategies
pagenum: 568; label: 19.9
title: Review and Maintenance
pagenum: 570; label: 19.10
title: Summary
pagenum: 574; label: 20
title: Reusable Components
pagenum: 577; label: 20.1
title: Introduction
pagenum: 577; label: 20.2
title: Why Reuse?
pagenum: 578; label: 20.3
title: Planning a Strategy for Reuse
pagenum: 586; label: 20.4
title: Commercially Available Componentware
pagenum: 589; label: 20.5
title: Case Study Example
pagenum: 591; label: 20.6
title: Summary
pagenum: 599; label: 21
title: Software Development Processes
pagenum: 602; label: 21.1
title: Introduction
pagenum: 602; label: 21.2
title: Process, Method and Methodology
pagenum: 603; label: 21.3
title: The Unified Software Development Process
pagenum: 607; label: 21.4
title: Participatory Design
pagenum: 611; label: 21.5
title: Dynamic Systems Development Method
pagenum: 613; label: 21.6
title: extreme Programming
pagenum: 618; label: 21.7
title: Issues in Choosing a Methodology
pagenum: 619; label: 21.8
title: Hard versus Soft Methodologies
pagenum: 621; label: 21.9
title: Summary
pagenum: 624; title: Appendix A - Notation Summary
pagenum: 626; title: Appendix B - Selected Solutions and Answer Pointers
pagenum: 635; title: Glossary
pagenum: 648; title: Bibliography
pagenum: 659; title: Index
pagenum: 667