O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Object-Oriented Construction Handbook

Book Description

Successful businesses and organizations are continually looking for ways to improve service and customer satisfaction in order to achieve long-term customer loyalty. In light of these goals, software developers must ask the question: how does customer orientation influence traditional approaches, methods, and principles of software development? In this book, a leading software architect and his team of software engineers describe how the idea of customer orientation in an organization leads to the creation of application-oriented software. This book describes what application-oriented software development is and how it can be conceptually and constructively designed with object-oriented techniques. It goes further to describe how to best fit together the many different methodologies and techniques that have been created for object-orientation (such as frameworks, platforms, components, UML, Unified Process, design patterns, and eXtreme Programming) to design and build software for real projects. This book brings together the best of research, development, and day-to-day project work to the task of building large software systems.

*Written by and for developers of large, interactive, and long-lived software systems
*Includes patterns of proven analysis, design, and documentation techniques
*Shows how to develop an appropriate design approach and concrete software development techniques

Table of Contents

  1. Cover image
  2. Title page
  3. Table of Contents
  4. Copyright
  5. PREFACE
  6. Chapter 1: Introduction
    1. 1.1 APPLICATION ORIENTATION — THE SUBJECT OF THIS BOOK
    2. 1.2 THE TOOLS & MATERIALS APPROACH (T&M)
    3. 1.3 PROJECTS BEHIND THIS BOOK
    4. 1.4 THE EQUIPMENT MANAGEMENT SYSTEM EXAMPLE
  7. Chapter 2: The T&M Object Metamodel
    1. 2.1 THE OBJECT METAMODEL
    2. 2.2 MODULARIZATION
    3. 2.3 THE CONTRACT MODEL
    4. 2.4 TYPES
    5. 2.5 CLASSES AND TYPES
    6. 2.6 VALUES AND OBJECTS
    7. 2.7 METAOBJECT PROTOCOLS
  8. Chapter 3: Guiding Metaphors and Design Metaphors
    1. 3.1 INTRODUCTION
    2. 3.2 DESIGNING APPLICATION SOFTWARE
    3. 3.3 GUIDING METAPHORS FOR APPLICATION SOFTWARE
    4. 3.4 DESIGN METAPHORS
    5. 3.5 T&M GUIDING METAPHORS AND DESIGN METAPHORS
    6. 3.6 WORKPLACE TYPES
  9. Chapter 4: Patterns, Frameworks, and Components
    1. 4.1 INTRODUCTION
    2. 4.2 BACKGROUND: PATTERNS, FRAMEWORKS, AND COMPONENTS
    3. 4.3 PATTERNS
    4. 4.4 FRAMEWORKS
    5. 4.5 COMPONENTS
  10. Chapter 5: Application-Oriented Software Development
    1. 5.1 INTRODUCTION
    2. 5.2 APPLICATION-ORIENTED SOFTWARE
    3. 5.3 THE DEVELOPMENT PROCESS
  11. Chapter 6: Software Development as a Modeling Process
    1. 6.1 INTRODUCTION
    2. 6.2 A SIMPLIFIED SOFTWARE DEVELOPMENT MODEL
    3. 6.3 THE APPLICATION DOMAIN
    4. 6.4 THE DOMAIN MODEL
    5. 6.5 THE APPLICATION SYSTEM MODEL
    6. 6.6 THE APPLICATION SYSTEM
    7. 6.7 SOFTWARE DEVELOPMENT CONTEXTS
    8. 6.8 CONTEXTS INFLUENCING THE SOFTWARE ARCHITECTURE
  12. Chapter 7: T&M Conceptual Patterns
    1. 7.1 CONCEPTUAL PATTERNS
    2. 7.2 A GUIDED TOUR OF THE T&M CONCEPTUAL PATTERNS
    3. 7.3 THE INTERRELATION OF TOOLS AND MATERIALS PATTERN
    4. 7.4 THE MATERIAL DESIGN PATTERN
    5. 7.5 THE TOOL DESIGN PATTERN
    6. 7.6 THE WORK ENVIRONMENT PATTERN
    7. 7.7 THE CONTAINER PATTERN
    8. 7.8 THE FORM PATTERN
    9. 7.9 THE AUTOMATON PATTERN
    10. 7.10 THE DOMAIN SERVICE PROVIDER PATTERN
    11. 7.11 THE TECHNICAL AUTOMATON PATTERN
    12. 7.12 THE PROBE PATTERN
    13. 7.13 THE ADJUSTING TOOL PATTERN
  13. Chapter 8: T&M Design Patterns
    1. 8.1 INTRODUCTION
    2. 8.2 A GUIDED TOUR OF THE T&M DESIGN PATTERNS
    3. 8.3 THE ASPECT PATTERN
    4. 8.4 THE SEPARATING FUNCTION AND INTERACTION PATTERN
    5. 8.5 THE TOOLS COMPOSITION PATTERN
    6. 8.6 THE FEEDBACK BETWEEN TOOL PARTS PATTERN
    7. 8.7 THE SEPARATING FP AND IP PATTERN
    8. 8.8 THE SEPARATING HANDLING AND PRESENTATION PATTERN
    9. 8.9 THE FEEDBACK BETWEEN INTERACTION FORMS AND IP PATTERN
    10. 8.10 THE DOMAIN VALUES PATTERN
    11. 8.11 THE DOMAIN CONTAINER PATTERN
    12. 8.12 THE FORM SYSTEM PATTERN
    13. 8.13 THE AUTOMATONS IN TECHNICALLY EMBEDDED SYSTEMS PATTERN
    14. 8.14 THE DOMAIN SERVICES PATTERN
    15. 8.15 THE ENVIRONMENT PATTERN
    16. 8.16 USING THE T&M DESIGN PATTERNS FOR THE JWAM FRAMEWORK
  14. Chapter 9: T&M Model Architecture
    1. 9.1 THE T&M MODEL ARCHITECTURE
    2. 9.2 THE DOMAIN CORE OF A SOFTWARE ARCHITECTURE
    3. 9.3 CONCEPTS AND ELEMENTS OF A T&M MODEL ARCHITECTURE
    4. 9.4 DESIGN PATTERNS FOR THE T&M MODEL ARCHITECTURE
  15. Chapter 10: Supporting Cooperative Work
    1. 10.1 BACKGROUND: COMPUTER-SUPPORTED COOPERATIVE WORK
    2. 10.2 IMPLICIT COOPERATION
    3. 10.3 EXPLICIT COOPERATION BY EXCHANGING MATERIALS
    4. 10.4 EXPLICIT COOPERATION MODEL: TRANSACTION PROCESSING SUPPORT
  16. Chapter 11: Interactive Application Systems and Persistence
    1. 11.1 BACKGROUND: INTERACTIVE APPLICATION SYSTEMS
    2. 11.2 PERSISTENCE SERVICES
    3. 11.3 DESIGN CRITERIA TO IMPLEMENT PERSISTENCE
    4. 11.4 REAL-WORLD EXAMPLES
  17. Chapter 12: The Development Process
    1. 12.1 BACKGROUND: EVOLUTIONARY AND TRADITIONAL PROCESS MODELS
    2. 12.2 TOPICS FOR A DEVELOPMENT STRATEGY
    3. 12.3 QUALITY ASSURANCE IN THE DEVELOPMENT PROCESS
    4. 12.4 QUALITY ASSURANCE IN CONSTRUCTION
    5. 12.5 PROJECT MANAGEMENT
    6. 12.6 PROJECT PLANNING CONCEPTS AND TECHNIQUES
    7. 12.7 STRUCTURING A PROJECT BY SYSTEM DECOMPOSITION
    8. 12.8 SCHEDULING AND TASK PLANNING
    9. 12.9 DISCUSSING T&M, UNIFIED
  18. Chapter 13: T&M Document Types
    1. 13.1 SCENARIOS
    2. 13.2 INTERVIEWS
    3. 13.3 THE CONCEPT MODEL
    4. 13.4 GLOSSARIES
    5. 13.5 SYSTEM VISIONS
    6. 13.6 PROTOTYPES
    7. 13.7 COOPERATION PICTURES
    8. 13.8 PURPOSE TABLES
    9. 13.9 TECHNICAL DOCUMENT TYPES IN UML
  19. INDEX