National Technology University 1 day course, April 11, 1996 Adaptive Object-Oriented Software Development: The Demeter Method The course package includes selected chapters of the authors textbook on Adaptive Software and selected architectural and design patterns related to Adaptive Software. 2. Course description This course introduces a new approach to software development which creates inherently more flexible software using patterns. Loose coupling between software artifacts and separation of concerns is a theme used throughout the course. Specifically, you will learn about loose coupling between structure and behavior which leads to adaptiveness. 3. Benefits After completing this course, you will be able to: - Develop more flexible and simpler object-oriented designs. - Describe your software in terms of executable patterns. - Write structure-shy programs which adapt automatically to many different class structures. - Properly apply the Law of Demeter. - Apply a pattern language to develop your applications. 4. Prerequisites Experience in an object-oriented language like C++, Smalltalk, Java etc. 5. Intended audience The tutorial is aimed at software professionals wanting to write more concise and more reusable object-oriented designs and programs. 6. Breakdown 11.00 - 12.00 Session 1: Introduction Thinking Adaptively Polya's Inventor's Paradox Experiences with adaptive programming 12.30 - 1.25 Session 2: Adaptive programming Adaptive programming by example Class dictionary graphs and objects 1.35 - 2.30 Session 3: Patterns Propagation directives Propagation patterns and the Law of Demeter Transportation patterns 3.00 - 3.55 Session 4: Pattern customizers Class dictionaries Style rules for class dictionaries 4.05 - 5.00 Session 4: Case study and conclusions Case study Design patterns for adaptive object-oriented software Conclusions For more information and registration, call NTU at (970) 495 6422 or send email to gail@mail.ntu.edu.