
Understanding UML
1st Edition
The Developer's Guide
Secure Checkout
Personal information is secured with SSL technology.Free Shipping
Free global shippingNo minimum order.
Table of Contents
1 Introduction 1.1 Development of UML 1.2 Using UML to Develop Applications 1.3 How This Book is Organized
2 The Vocabulary of Object Technology 2.1 What Are Objects? 2.2 Objects, Classes, and Instances 2.3 Message Passing and Associations 2.4 Class Hierarchies and Class Inheritance 2.5 Public, Private, and Protected 2.6 Interface Inheritance 2.7 Polymorphism 2.8 Beyond the Basics
3 A Simple Object-Oriented Methodology 3.1 An Iterative Approach to Object-Oriented Development 3.2 The Phases of a Development Cycle 3.2.1 Requirements Analysis 3.2.2 The Analysis Phase 3.2.3 The Design Phase 3.2.4 The Coding Phase 3.2.5 The Testing Phase
4 The Unified Modeling Language 4.1 UML Diagrams 4.1.1 Use Case Diagrams 4.1.2 Static Structure Diagrams 4.1.3 Interaction Diagrams 4.1.4 State Diagrams 4.1.5 Implementation Diagrams 4.1.6 The Diagramming Process 4.2 Additional Diagrams and Notations 4.3 A Generic Approach to Object-Oriented Development 4.4 A UML Notation Job Aid
5 Coding Applications in Java 5.1 Java As an Object-Oriented Language 5.1.1 Java Language Basics 5.2 The Java Development Kit 5.3 The Java Platform 5.4 Compiling and Interpreting Java 5.4.1 Applets versus Applications 5.4.2 JavaBeans
6 Java Development with an Object-Oriented Modeling Tool 6.1 Object-Oriented Modeling Tools 6.2 Popkin Software's SA/Object Architect 6.2.2 Putting It All Together
7 Business Process Reengineering 7.1 What is Business Process Reengineering 7.1.2 The Redesign Process 7.2 IBM's Line of Vision Enterprise Methodology Diagrams and Notation 7.3 Watson's Existing Sales Process 7.4 Watson's Reengineered Sales Process 7.5 Automating the BPR Process
8 Use Case Diagrams and Ideal Object Models 8.1 Use Case Diagrams 8.2 Use Cases and Business Process Reengineering 8.3 A Use Case Diagram of the Watson's SalesWeb System 8.3.1 Clarifying Our Vocabulary Regarding the Watson's Application 8.4 Use Case Descriptions 8.5 Instances of Use Cases As Test Cases 8.6 From Use Cases to Ideal Object Models 8.7 The OOSE Ideal Object Model 8.7.1 Interface Classes 8.7.2 Entity Classes 8.7.3 Control Classes 8.7.4 Identifying Classes in Use Cases 8.8 An Ideal Object Model for the Report Sales Use Case 8.9 Creating Use Case Models with an Object-Oriented Modeling Tool
9 CRC Cards 9.1 The Layout of a CRC Card 9.2 The Steps in a CRC Session 9.2.1 Step 1: Assemble a Group 9.2.2 Step 2: Review Requirements 9.2.3 Step 3: Brainstorm a List of Classes 9.2.4 Step 4: Review the List of Classes 9.2.5 Step 5: Prepare CRC Cards 9.2.6 Step 6: Develop a Description of Each Class 9.2.7 Step 7: Brainstorm Responsibilities and Collaborators 9.2.8 Step 8: Generate Specific Scenarios 9.2.9 Step 9: Talk Through Several Scenarios 9.3 CRC Cards and Object-Oriented Thinking 9.4 Terms versus UML Terms 9.5 Automating the CRC Process
10 UML Class and Object Diagrams 10.1 Class Diagramming Basics 10.1.1 Attributes (Variables) 10.1.2 Operations (Methods) 10.1.3 More on Attributes and Operations 10.1.4 Associations 10.1.5 Class Inheritance 10.1.6 Interfaces 10.1.7 Identifying Aggregations 10.1.8 Constraints and Notes 10.2 Diagramming Objects 10.3 Creating a Class Diagram 10.3.1 An Object Diagram 10.3.2 A More Elaborate Class Diagram 10.4 Creating UML Class Diagrams with and Object-Oriented Modeling Tool
11 UML Sequence and Collaboration Diagrams 11.2 Sequence Diagrams 11.2.1 Sequence Notation 11.2.2 Creating a Sequence Diagram 11.3 Collaboration Diagrams 11.3.1 Collaboration Notation 11.3.2 Creating a Collaboration Diagram 11.3.3 Collaboration Diagrams and Patterns 11.4 Creating Sequence and Collaboration Diagrams with an Object-Oriented Modeling Tool
12 UML State and Activity Diagrams 12.1 State Diagrams 12.1.1 State Diagram Notation 12.1.2 Creating a State Diagram 12.2 Activity Diagrams 12.3 Creating State and Activity Diagrams with an Object-Oriented Modeling CASE Tool
13 Designing an Object-Oriented System 13.1 Moving from Analysis to Design
14 Choosing an Object-Oriented Architecture 14.1 Dividing an Application into Tiers 14.1.1 A Two-Tiered Design 14.1.2 A Three-Tiered Design 14.2 Assigning Packages to Tiers and Platforms 14.2.1 Two- and Three-Tiered Class Diagrams 14.3 UML Implementation Diagrams 14.4 Linking the Tiers 14.4.1 Object Request Brokers 14.5 Summing Up 14.6 The Architecture of the SalesWeb System 14.7 Capturing a Design in an Object-Oriented Modeling Tool
15 Expanding Your Design 15.1 Expanding Your Object Model 15.1.1 Extending Your Analysis Diagrams 15.1.2 Getting Concrete About Operations 15.1.3 Patterns 15.1.4 Using Classes, Interfaces, and Components 15.2 Developing User Screens or Web Pages 15.3 Arranging to Access Data 15.3.1 The Java DataBase Connectivity Package 15.3.2 Object-Oriented and Object-Relational Databases 15.4 The SalesWeb Design 15.5 Coding and Testing 15.5.1 Bottom-Up Testing Starts with Classes 15.5.2 Top-Down Testing Starts with Use Cases 15.6 Expanding Your Design in an Object-Oriented Modeling Tool
Appendix A Code for the SalesWeb Example Appendix B A Comparison of UML, Booch, and MOT Notations Appendix C Products Mentioned in the Book
Bibliography, Notes, and Web Sites Index
Description
The Unified Modeling Language (UML) is a third generation method for specifying, visualizing, and documenting an object-oriented system under development. It unifies the three leading object-oriented methods and others to serve as the basis for a common, stable, and expressive object-oriented development notation. As the complexity of software applications increases, so does the developer's need to design and analyze applications before developing them. This practical introduction to UML provides software developers with an overview of this powerful new design notation, and teaches Java programmers to analyse and design object-oriented applications using the UML notation.
Key Features
- Apply the basics of UML to your applications immediately, without having to wade through voluminous documentation
- Use the simple Internet example as a prototype for developing object-oriented applications of your own
- Follow a real example of an Intranet sales reporting system written in Java that is used to drive explanations throughout the book
- Learn from an example application modeled both by hand and with the use of Popkin Software's SA/Object Architect O-O visual modeling tool.
Details
- No. of pages:
- 367
- Language:
- English
- Copyright:
- © Morgan Kaufmann 1997
- Published:
- 9th December 1997
- Imprint:
- Morgan Kaufmann
- Paperback ISBN:
- 9781558604650
- eBook ISBN:
- 9780080520070
Reviews
"...(an) exceptionally balanced and informative text." -—Rich Dragan
Ratings and Reviews
About the Author
Mark Watson
Mark Watson is an independent software developer with extensive software engineering experience. He has worked at Angel Studios as a game programmer for Nintendo and Windows 95 games, with SAIC on the development of tools for expert systems, and on natural language processing and neural network systems. He is the developer of a real-time distributed expert system used by regional telephone systems to detect fraud, and is the author of eight books.
Request Quote
Tax Exemption
Elsevier.com visitor survey
We are always looking for ways to improve customer experience on Elsevier.com.
We would like to ask you for a moment of your time to fill in a short questionnaire, at the end of your visit.
If you decide to participate, a new browser tab will open so you can complete the survey after you have completed your visit to this website.
Thanks in advance for your time.