Monday, May 3, 1999
Full Day Tutorial Session (9:00 am - 5:00 pm): M1 PATTERNS AT WORK Frank Buschmann, Siemens AG Who should attend: People with solid knowledge of OO design and programming, and basic knowledge of patterns and UML notation, who are interested in seeing how patterns and framework components can be applied to develop object-oriented communication software systems. Developing complex communication software is a challenging task. This tutorial demonstrates how a real-world OO distributed warehouse management system was designed using patterns and framework components. We replay the software construction process step-by-step, outlining the design problems that occurred, presenting patterns that could potentially help solve these problems, discussing design alternatives, and showing how we actually applied the patterns we selected. Through this process we illustrate the evolution of the communication system to its final architecture. The patterns explained and used in this tutorial include Reactor, Acceptor-Connector, Active Object, Abstract Factory, Facade, Strategy, Broker, Forwarder-Receiver, Layers, Proxy, and Publish/Subscribe, which are available in the book "Pattern-Oriented Software Architecture" (John Wiley & Sons), "Design Patterns: Elements of Reusable Software Architecture" (Addison-Wesley) and in the various volumes of the "Pattern Languages of Programming Design" series (Addison-Wesley). We will generalize from the specifics of the case study in the tutorial to derive guidelines for applying patterns and discuss how patterns can help in building high-quality software with predictable properties and qualities. The tutorial concludes with a summary of our experiences from several distributed object computing system projects in which we applied patterns, (i.e., what worked, what could be improved, and how to leverage this experience in your projects). By using real-world examples, we will show how patterns help to guide the process of building high-quality software. Moreover, we show that applying patterns is a task that requires creative and innovative developers, and is not a rote, mechanical task. Frank Buschmann is software engineer at Siemens Corporate Technology in Munich, Germany. His research interests include Object Technology, Application Frameworks and specifically Patterns. Frank has been involved in several concrete industrial software development projects. Frank is co-author of Pattern-Oriented Software Architecture - A System of Patterns. |
| |||||
|
Conference Index Events Calendar USENIX home |