Home > Store > Programming > General Programming/Other Languages

Object-Oriented Analysis and Design with Applications, 3rd Edition

Register your product to gain access to bonus material or receive a coupon.

Object-Oriented Analysis and Design with Applications, 3rd Edition

Best Value Purchase

Book + eBook Bundle

  • Your Price: $80.99
  • List Price: $134.98
  • About Watermarked eBooks
  • This PDF will be accessible from your Account page after purchase and requires the free Adobe® Reader® software to read it.

    The eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.

    Watermarked eBook FAQ

More Purchase Options

Book

  • Your Price: $59.99
  • List Price: $74.99
  • Usually ships in 24 hours.

eBook (Watermarked)

  • Your Price: $47.99
  • List Price: $59.99
  • About Watermarked eBooks
  • This PDF will be accessible from your Account page after purchase and requires the free Adobe® Reader® software to read it.

    The eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.

    Watermarked eBook FAQ

Description

  • Copyright 2007
  • Dimensions: 7x9-1/4
  • Pages: 720
  • Edition: 3rd
  • Book
  • ISBN-10: 0-201-89551-X
  • ISBN-13: 978-0-201-89551-3
  • eBook (Watermarked)
  • ISBN-10: 0-321-50937-4
  • ISBN-13: 978-0-321-50937-6

Object-Oriented Design with Applications has long been the essential reference to object-oriented technology, which, in turn, has evolved to join the mainstream of industrial-strength software development. In this third edition--the first revision in 13 years--readers can learn to apply object-oriented methods using new paradigms such as Java, the Unified Modeling Language (UML) 2.0, and .NET.

The authors draw upon their rich and varied experience to offer improved methods for object development and numerous examples that tackle the complex problems faced by software engineers, including systems architecture, data acquisition, cryptoanalysis, control systems, and Web development. They illustrate essential concepts, explain the method, and show successful applications in a variety of fields. You'll also find pragmatic advice on a host of issues, including classification, implementation strategies, and cost-effective project management.

New to this new edition are

  • An introduction to the new UML 2.0, from the notation's most fundamental and advanced elements with an emphasis on key changes
  • New domains and contexts
  • A greatly enhanced focus on modeling--as eagerly requested by readers--with five chapters that each delve into one phase of the overall development lifecycle.
  • Fresh approaches to reasoning about complex systems
  • An examination of the conceptual foundation of the widely misunderstood fundamental elements of the object model, such as abstraction, encapsulation, modularity, and hierarchy
  • How to allocate the resources of a team of developers and mange the risks associated with developing complex software systems
  • An appendix on object-oriented programming languages

This is the seminal text for anyone who wishes to use object-oriented technology to manage the complexity inherent in many kinds of systems.


Sidebars  
Preface 
Acknowledgments   
About the Authors   

Section I: Concepts  
Chapter 1: Complexity   
Chapter 2: The Object Model   
Chapter 3: Classes and Objects   
Chapter 4: Classification   
Section II: Method  
Chapter 5: Notation   
Chapter 6: Process
Chapter 7: Pragmatics   
Chapter 8: System Architecture: Satellite-Based Navigation   
Chapter 9: Control System: Traffic Management   
Chapter 10: Artificial Intelligence: Cryptanalysis   
Chapter 11: Data Acquisition: Weather Monitoring Station  
Chapter 12: Web Application: Vacation Tracking System    
Appendix A: Object-Oriented Programming Languages 
Appendix B: Further Reading   
Notes   
Glossary   
Classified Bibliography   
Index   

Sample Content

Online Sample Chapter

Software Complexity: How Do We Bring Order to Chaos?

Downloadable Sample Chapter

Download Chapter 1

Table of Contents

Sidebars   xi
Preface    xiii
Acknowledgments    xix
About the Authors    xxi

Section I: Concepts   1

Chapter 1: Complexity   3

1.1      The Structure of Complex Systems    4
1.2      The Inherent Complexity of Software    7
1.3      The Five Attributes of a Complex System    12
1.4      Organized and Disorganized Complexity    14
1.5      Bringing Order to Chaos    18
1.6      On Designing Complex Systems    24

Chapter 2: The Object Model    29

2.1      The Evolution of the Object Model    29
2.2      Foundations of the Object Model    37
2.3      Elements of the Object Model    43
2.4      Applying the Object Model    71

Chapter 3: Classes and Objects    75

3.1      The Nature of an Object    75
3.2      Relationships among Objects    88
3.3      The Nature of a Class    92
3.4      Relationships among Classes    96
3.5      The Interplay of Classes and Objects    111
3.6      On Building Quality Classes and Objects    112

Chapter 4: Classification    121

4.1      The Importance of Proper Classification    121
4.2      Identifying Classes and Objects    126
4.3      Key Abstractions and Mechanisms    138

Section II: Method    145

Chapter 5: Notation    147

5.1      The Unified Modeling Language    147
5.2      Package Diagrams    155
5.3      Component Diagrams    163
5.4      Deployment Diagrams    171
5.5      Use Case Diagrams    175
5.6      Activity Diagrams    185
5.7      Class Diagrams    192
5.8      Sequence Diagrams    206
5.9      Interaction Overview Diagrams    213
5.10    Composite Structure Diagrams    215
5.11    State Machine Diagrams    218
5.12    Timing Diagrams    231
5.13    Object Diagrams    235
5.14    Communication Diagrams    238

Chapter 6: Process 247

6.1        First Principles    248
6.2        The Macro Process: The Software Development Lifecycle    256
6.3        The Micro Process: The Analysis and Design Process    272

Chapter 7: Pragmatics    303

7.1      Management and Planning    304
7.2      Staffing    308
7.3      Release Management    312
7.4      Reuse    314
7.5      Quality Assurance and Metrics    316
7.6      Documentation    320
7.7      Tools    322
7.8      Special Topics    324
7.9      The Benefits and Risks of Object-Oriented Development    326

Section III: Applications    331

Chapter 8: System Architecture: Satellite-Based Navigation    333

8.1      Inception    334
8.2      Elaboration    347
8.3      Construction    370
8.4      Post-Transition 371

Chapter 9: Control System: Traffic Management    375

9.1      Inception    376
9.2      Elaboration    385
9.3      Construction    396
9.4      Post-Transition 411

Chapter 10: Artificial Intelligence: Cryptanalysis    413

10.1      Inception    414
10.2      Elaboration    421
10.3      Construction    427
10.4      Post-Transition 446

Chapter 11: Data Acquisition: Weather Monitoring Station    449

11.1      Inception    450
11.2      Elaboration    463
11.3      Construction    474
11.4      Post-Transition    487

Chapter 12: Web Application: Vacation Tracking System    489

12.1      Inception    490
12.2      Elaboration    494
12.3      Construction    506
12.4      Transition and Post-Transition    534

Appendix A: Object-Oriented Programming Languages    537

A.1      Language Evolution    537
A.2      Smalltalk    541
A.3      C++    546
A.4      Java    551

Appendix B: Further Reading    557

Notes    567
Glossary    591
Classified Bibliography    603
Index    677

Preface

Download the Preface

Index

Download the Index

Updates

Submit Errata

More Information

ONE MONTH ACCESS!

WITH PURCHASE


Get unlimited 30-day access to thousands of Books & Training Videos about technology, professional development and digital media If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months.