Check out the new USENIX Web site. Conference on Object-Oriented Technologies and Systems
 
Click underlined text to go directly to that area COOTS'97 Table of Contents
M6PM   Using Design Patterns and Frameworks to Develop Object-Oriented Communication Systems
Douglas C. Schmidt, Washington University

Who should attend: Software developers familiar with general object-oriented design and programming techniques, fundamental O­O programming language features, basic systems programming concepts, and networking terminology.

What you will learn: How to apply O-O design patterns and frameworks to alleviate the complexity of developing concurrent and distributed communication software.

Developing extensible communication software that effectively utilizes concurrency over high-speed, low-speed, and mobile networks is a complex task. Patterns and framework components have been used successfully by the speaker on production communication software projects for telecommunication switch management applications, network management for large-scale global personal communication systems, electronic medical imaging systems, and real-time avionics. This course illustrates by example how to significantly simplify and enhance the development of communication software that effectively utilizes concurrency and distribution via the use of:

  • Object-oriented design techniques such as design patterns, layered modularity, and information hiding
  • Object-oriented language features such as abstract classes, inheritance, dynamic binding, and parameterized types
  • Tools such as object-oriented communication frameworks and object request brokers (ORBs) like OMG CORBA, Microsoft DCOM, and ACE
  • Advanced operating system mechanisms such as asynchronous event handling, multi-threading, multi-processing, and explicit dynamic linking

This course examines patterns and framework code abstracted from production telecommunication systems to illustrate key points in the examples.

Doug Schmidt is an assistant professor of computer science at Washington University in St. Louis. His research focuses on design patterns, implementation, and experimental analysis of object-oriented techniques that facilitate the development of high-performance, real-time distributed object computing systems on parallel processing platforms running over high-speed networks. He is a co-editor on Pattern Languages of Program Design and editor-in-chief of the C++ Report.

Back to Tutorial Overview

 


Conference & Hotel InfoProgram at a GlanceTutorialsRegistration Advanced Topics WorkshopTechnical SessionsKeynote AddressCOOTS 97