Wednesday Afternoon

1:30 pm - 3:00 pm
Convention Center — Ballroom B-C
Session A
Invited Talk: Software Transparency and Object Technologies
L. Peter Deutsch, Aladdin Enterprises

We define software as transparent to the extent that it is conceived, developed, documented, licensed, distributed, and cared for to intentionally facilitate reading, understanding, analysis, validation, confidence; repair, adaptation, extension, evolution; interoperation, integration, incorporation; sharing; and use. Software transparency, in all its aspects, is a key to the usefulness of software over its lifetime.

The Open Source Definition codifies an important set of rules that address the licensing (legal) aspect of transparency; the other aspects are either considered business issues, or issues of technological “best practice." Transparency is rarely considered as a gestalt.

When objects are used well as a software engineering technology for analysis and design within a program, the technology naturally encourages many aspects of transparency. On the other hand, objects can also be used to create opaque boundaries around functionality and data. We will do our best to refute the arguments of security, long-term evolvability, and business advantage often used to justify such boundaries.

Dr. L. Peter Deutsch received the Ph.D. in Computer Science from U.C. Berkeley in 1973. Subsequently at Xerox PARC, he helped develop the Interlisp-D, Cedar Mesa, and Smalltalk-80 programming systems, and was the principal creator of PS, the first high-performance implementation of the Smalltalk language and programming environment on microprocessor-based hardware. From 1986 to 1991, as Chief Scientist at ParcPlace Systems, he was a principal designer of a highly portable successor to PS. Since 1986, he has been an independent consultant (dba Aladdin Enterprises), best known as the creator of Ghostscript, a highly-portable, high-quality, Open Source implementation of the PostScript language. In 1993, he was co-recipient of the ACM Software System Award and was also named a Distinguished Alumnus of the U.C. Berkeley Computer Science program. In 1999-2000, he served on the board of the Open Source Initiative. He is a member of ACM, IEEE, CPSR, EFF, and the League for Programming Freedom.


Convention Center — Ballroom A
Session B
Papers: Modules
Chair: Krzysztof Czarnecki, DaimlerChrysler Research and Technology

Objects are the programming model of choice for implementing components. Yet there’s always room for improvement in modularity and encapsulation, especially for component-based development. The session’s opening paper describes a rich model and attendant language for building components that goes beyond the simple class-as-a-component paradigm while allowing easy integration into an object-oriented language such as Java. Packaging classes and class fragments into mixin modules is the thrust of the second paper, which presents a type-safe approach to programming using such modules. The last paper relates a static analysis technique for improving encapsulation by detecting objects that escape from packages.

Jiazzi: New-Age Components for Old-Fashioned Java
Sean McDirmid, University of Utah
Matthew Flatt, University of Utah
Wilson C. Hsieh, University of Utah

Modular Mixin-Based Inheritance for Application Frameworks
Dominic Duggan, Stevens Institute of Technology
Ching-Ching Techaubol, Stevens Institute of Technology

Encapsulating Objects with Confined Types
Christian Grothoff, Purdue University
Jens Palsberg, Purdue University
Jan Vitek, Purdue University


Convention Center — Ballroom D
Session C
Practitioner Reports: Applied Techniques
Chair: Granville Miller, TogetherSoft

A lot of ideas and approaches get discussed at an OOPSLA conference, but do they really work in the real world? The three reports in this session share insights and advice gained from actual application of a variety of OOPSLA topics: UML-based analysis and design, test-first design, and software frameworks.

Closing the Software Development Gaps with UML
Brian Berenbach, Siemens Corporate Research, Inc.

This paper presents an approach that has been used successfully on large projects, leveraging UML to successfully bridge the analysis-design and design-implementation gaps in the Software Development Lifecycle (SDLC). In addition, a set of guidelines for determining the “completeness” of the analysis model is introduced.

Evolution of Test and Code via Test-First Design
Jeff Langr, Object Mentor, Inc.

This paper demonstrates how test coverage and code quality is improved through the use of test-first design, starting with an example of code written without the use of automated tests, then iterating through the exercise of completely rebuilding the code, test by test, and comparing the results of the two approaches.

Object-Based Frameworks For Mobile Robots
Jeffrey Will, Dept. of Electrical and Computer Engineering, Valparaiso University
Donald Roberts, The Refactory, Inc.
John Reid, Deere & Company Technical Center, John Deere
Noboru Noguchi, School of Agriculture, Hokkaido University
Eric Benson, Bioresource Engineering, University of Delaware

This paper describes the underlying software framework used to develop several outdoor autonomous robots. This framework was shown to exhibit great amounts of reuse, supported parallel platforms and parallel applications, reduced training times for new contributors, and was successfully implemented in a wide variety of applications.

3:30 pm - 5:00 pm
Convention Center — Ballroom B-C
Session A
Panel: The OO Survivor Game
Moderator: Laura Hill, Sun Microsystems, Inc.

Help Big Brother determine the fate of the stalwart contestants on “OO Survivor” as they compete to avoid the garbage collector on its merciless search to cull the weakest link after each round of play. Competitors will match wits and strain eyesight as they peer into the future to describe what they see in the areas of architecture, project management, language design, methodology, and distributed computing. Let the games begin!

Panelists:
Stephen J. Mellor, Project Technology, Inc.
John Daniels, Syntropy Limited, UK
Martine Devos, Independent Consultant
Brian Foote, The Refactory, Inc.
Joaquin Miller, Financial Systems Architects
Kevin Tyson, Ocean Power Corporation


Convention Center — Ballroom A
Session B
Papers: Languages II
Chair: Clemens Szyperski, Microsoft Research

At its core, object-orientation appeals to simplicity—a simplicity that doesn’t necessarily cater to every problem in systems, languages, and applications. Refined language-level abstractions are one way to resolve the mismatch. This session presents three such abstractions. “On Objects and Events” introduces language-integrated support for object-oriented event-based systems. “Visitor Combination and Traversal Control” proposes abstractions for the flexible combination and factoring of visitors. In “Object-Oriented Composition Untangled,” the authors posit compound references as a mechanism for expressing and unifying conventional composition approaches such as inheritance, aggregation, and delegation.

On Objects and Events
Patrick T. Eugster, Swiss Federal Institute of Technology
Rachid Guerraoui, Swiss Federal Institute of Technology
Christian H. Damm, University of Aarhus

Visitor Combination and Traversal Control
Joost Visser, CWI

Object-Oriented Composition Untangled
Klaus Ostermann, Siemens AG
Mira Mezini, Darmstadt University of Technology


Convention Center — Ballroom D
Session C
Intriguing Technology Papers: TACO and SALSA
Chair:
Brent Hailpern, IBM T.J. Watson Research Center

TACO is a template-based object platform for cluster architectures that provides the flavor of distributed data-parallel programming based on distributed object groups. TACO supports polymorphism, genericity, functional programming, and concurrency control in the context of distributed parallel computing.

SALSA is an Actor-based programming language built atop of Java, supporting mobility and dynamically reconfigurable distributed object systems. SALSA’s programming features include asynchronous communication, universal naming, migration, and token-passing continuations.

TACO – Prototyping High-Level Object-Oriented Programming Constructs by Means of Template-Based Programming Techniques
Joerg Nolte, Real World Computing Partnership
Yutaka Ishikawa, Real World Computing Partnership
Mitsuhisa Sata, Real World Computing Partnership

Programming Dynamically Reconfigurable Open Systems with SALSA
Carlos Varela, IBM T.J. Watson Research Center
Gul Agha,
University of Illinois at Urbana-Champaign


Jump to: Tuesday morning || afternoon Wednesday morning || afternoon Thursday morning || afternoon
Full descriptions of entire Technical Program

Back To Final Program