Object-Oriented Analysis and Design for Information Systems

by Raul Sidnei Wazlawick

Software Development

Book Details

Book Title

Object-Oriented Analysis and Design for Information Systems

Author

Raul Sidnei Wazlawick

Publisher

Morgan Kaufmann

Publication Date

2024

ISBN

9780443137396

Number of Pages

937

Language

English

Format

PDF

File Size

12.6MB

Subject

object‑oriented‑analysis‑design

Table of Contents

  • 1. Introduction
  • Abstract
  • Key topics in this chapter
  • 1.1 This book
  • 1.2 Object-oriented systems development
  • 1.3 Agile software development
  • 1.4 Discussion
  • Questions
  • 2. General view of the system
  • Abstract
  • Key topics in this chapter
  • 2.1 Introduction to general view of the system
  • 2.2 Early effort estimation
  • 2.3 Acceptance criteria
  • 2.4 Completing the general view of the system
  • 2.5 Product backlog
  • 2.6 Business use cases
  • 2.7 Discussion
  • Questions
  • 3. Business modeling
  • Abstract
  • Key topics in this chapter
  • 3.1 Introduction to business modeling
  • 3.2 Business Process Modeling and Notation
  • 3.3 State-dependent aspects of a business
  • 3.4 Discussion
  • Questions
  • 4. High-level requirements
  • Abstract
  • Key topics in this chapter
  • 4.1 Introduction to high-level requirements
  • 4.2 System actors
  • 4.3 System use cases
  • 4.4 How to find system use cases in the business use case model?
  • 4.5 How to find system use cases in BPMN diagrams?
  • 4.6 How to find system use cases in machine state diagrams?
  • 4.7 Requirements
  • 4.8 Preliminary conceptual model
  • 4.9 Discussion
  • Questions
  • 5. Use case-based project planning
  • Abstract
  • Key topics in this chapter
  • 5.1 Introduction to effort estimation
  • 5.2 Ad hoc techniques
  • 5.3 Parametric techniques
  • 5.4 User story points
  • 5.5 Linear time
  • 5.6 Estimating the duration of the sprints
  • 5.7 Defining use case priority
  • 5.8 Monitoring a project
  • Questions
  • 6. Expanded use cases
  • Abstract
  • Key topics in this chapter
  • 6.1 Introduction to expanded use cases
  • 6.2 Main flow
  • 6.3 Alternate flows
  • 6.4 Writing recommendations
  • 6.5 Included use cases and fragments
  • 6.6 Other sections of an expanded use case
  • 6.7 Expansion of stereotyped use cases
  • Questions
  • 7. System operations
  • Abstract
  • Key topics in this chapter
  • 7.1 Introduction to system operations
  • 7.2 Elements of a sequence diagram
  • 7.3 Expanded use cases as system sequence diagrams
  • 7.4 Connecting the interface to the façade controller
  • 7.5 Stateful and stateless
  • 7.6 Alternate flows in system sequence diagrams
  • 7.7 Discussion
  • Questions
  • 8. Conceptual modeling: fundamentals
  • Abstract
  • Key topics in this chapter
  • 8.1 Introduction to conceptual modeling
  • 8.2 Attributes
  • 8.3 Concepts
  • 8.4 Associations
  • Questions
  • 9. Conceptual modeling: data structures and organization
  • Abstract
  • Key topics in this chapter
  • 9.1 Collections
  • 9.2 Organization of the conceptual model
  • 9.3 Modal classes
  • 9.4 Invariants
  • Questions
  • 10. From use cases to conceptual model
  • Abstract
  • Key topics in this chapter
  • 10.1 Iterative construction of the conceptual model
  • 10.2 How to find concepts and attributes
  • 10.3 Dependent and independent concepts
  • 10.4 How to find associations
  • 10.5 Example of iterative construction of the conceptual model
  • Questions
  • 11. Conceptual modeling: patterns
  • Abstract
  • Key topics in this chapter
  • 11.1 Introduction to conceptual model patterns
  • 11.2 High cohesion
  • 11.3 Specification classes
  • 11.4 Quantity
  • 11.5 Measure
  • 11.6 Strategy
  • 11.7 Composite
  • 11.8 Organizational hierarchy
  • 11.9 Object joining
  • 11.10 Account/transaction
  • 11.11 Range or interval
  • 11.12 Temporal patterns
  • 11.13 Discussion
  • Questions
  • 12. Functional modeling with object constraint language contracts
  • Abstract
  • Key topics in this chapter
  • 12.1 Introduction to functional modeling
  • 12.2 Preconditions
  • 12.3 Exceptions
  • 12.4 Preconditions and exceptions versus invariants
  • 12.5 Query return
  • 12.6 Postconditions
  • 12.7 Pattern contracts for CRUDL
  • 12.8 Discussion
  • Questions
  • 13. Domain tier design
  • Abstract
  • Key topics in this chapter
  • 13.1 Introduction to domain tier design
  • 13.2 Object responsibility distribution
  • 13.3 Visibility
  • 13.4 Dynamic modeling based on postconditions
  • 13.5 Delegation and low coupling
  • 13.6 Design class diagram
  • Questions
  • 14. Code generation
  • Abstract
  • Key topics in this chapter
  • 14.1 Introduction to code generation
  • 14.2 Unidirectional associations
  • 14.3 Bidirectional associations
  • 14.4 Delegated methods and system operations
  • Questions
  • 15. Testing
  • Abstract
  • Key topics in this chapter
  • 15.1 Introduction to testing
  • 15.2 Functional testing
  • 15.3 Stubs
  • 15.4 Drivers
  • 15.5 Test-driven development
  • 15.6 Unit testing with TDD
  • 15.7 Use case testing
  • Questions
  • 16. Interface tier design
  • Abstract
  • Key topics in this chapter
  • 16.1 Introduction to interface tier design
  • 16.2 View containers
  • 16.3 View components
  • 16.4 Flows
  • 16.5 Web interface patterns
  • 16.6 Connecting the IFML model with system operations
  • Questions
  • 17. Data persistence
  • Abstract
  • Key topics in this chapter
  • 17.1 Introduction to data persistence
  • 17.2 Object-relational mapping
  • 17.3 Saving and loading objects
  • Questions
  • Bibliography
  • Index