Object-oriented analysis and design with applications (2nd ed.)

I. CONCEPTS. 1. Complexity. The Inherent Complexity of Software. The Structure of Complex Systems. Bringing Order to Chaos. On Designing Complex Systems. Sidebar: Categories of Analysis and Design Methods. 2. The Object Model. The Evolution of the Object Model. Elements of the Object Model. Applying the Object Model. Sidebar: Foundations of the Object Model. 3. Classes and Objects. The Nature of an Object. Relationships Among Objects. The Nature of a Class. Relationships Among Classes. The Interplay of Classes and Objects. On Building Quality Classes and Objects. Sidebar: Invoking a Method. 4. Classification. The Importance of Proper Classification. Identifying Classes and Objects. Key Abstractions and Mechanisms. Sidebar: A Problem of Classification. II. THE METHOD. 5 .The Notation. Elements of the Notation. Class Diagrams. State Transition Diagrams. Object Diagrams. Interaction Diagrams. Module Diagrams. Process Diagrams. Applying the Notation. 6 .The Process. First Principles. The Micro Development Process. The Macro Development Process. 7. Pragmatics. Management and Planning. Staffing. Release Management. Reuse. Quality Assurance and Metrics. Documentation. Tools. Special Topics. The Benefits and Risks of Object-Oriented Development. III. APPLICATIONS. 8. Data Acquisition: Weather Monitoring Station. Analysis. Design. Evolution. Maintenance. Sidebar: Weather Monitorint Station Requirements. 9. Frameworks: Foundation Class Library. Analysis. Design. Evolution. Maintenance. Sidebar: Foundation Class Library Requirements. 10. Client/Server Computing: Inventory Tracking. Analysis. Design. Evolution. Maintenance. Sidebar: Inventory Tracking System Requirements. 11. Artificial Intelligence Cryptanalysis. Analysis. Design. Evolution. Maintenance. Sidebar: Cryptanalysis Requirements. 12. Command and Control Traffic Management. Analysis. Design. Evolution. Maintenance. Sidebar: Traffic Management System Requirements. Afterword. Appendix: Object-Oriented Programming Languages. A.1 Concepts. A.2 Smalltalk. A.3 Object Pascal. A.4 C++. A.5 Common Lisp Object System. A.6 Ada. A.7 Eiffel. A.8 Other Object-Oriented Programming Languages. Notes. Glossary. Classified Bibliography. A. Classification. B. Object-Oriented Analysis. C. Object-Oriented Applications. D. Object-Oriented Architectures. E. Object Oriented Databases. F. Object-Oriented Design. G. Object-Oriented Programming. H. Software Engineering. I. Special References. J. Theory. K. Tools and Environments. Index. 0805353402T04062001