Technical Program Complete Technical Program

Tuesday 8:30 am -10:00 am
Convention Ctr – Ballroom
Welcome and Introduction

Conference Chair:
Mary Beth Rosson, Virginia Tech
Program Chair:
Doug Lea, SUNY Oswego

Convention Ctr – Ballroom
Keynote Address

Object Species Evolution
Dennis Tsichritzis, German National Research Center for Information Technology, and University of Geneva

Object concepts, prototypes, and products have evolved over the years, from their origins in passive stupid objects to today's increasingly active and intelligent agents. Considering the analogies to biological species evolution, we find that we still have a long way to go – in terms of complexity, mobility, security, and independence – to match nature.

Dennis Tsichritzis is Chairman of the Board of GMD, the German National Research Center for Information Technology, with institutes based in St. Augustin near Bonn, Darmstadt, and Berlin. He received his degrees in Electrical Engineering and Computer Science from the Universities of Athens (diploma, 1965) and Princeton (Ph.D., 1968). From 1968 to 1985 he was Professor of Computer Science at the University of Toronto. He was also a Professor at the University of Crete and Director of the Institute of Computer Science. Since 1985 he has been Professor of Informatics at the University of Geneva.

Tsichritzis pioneered many of the foundations of object-oriented enterprise systems. Over the past thirty years, his work has spanned database management, computational complexity, operating systems, office automation, object-oriented systems, and multimedia. Perhaps his most influential contributions came in a series of papers and anthologies written by Tsichritzis and his group at Geneva during the late 1980s and early 1990s, work that set the stage for much that has happened since in object-oriented systems. The Geneva group explored scripting, concurrency, databases, distribution, multimedia, development environments, and visual languages at a time when most researchers and practitioners were just beginning to understand the basics of object-oriented programming. More recently in his position as GMD Chairman, Tsichritzis has focused on coordinating technical innovation with public policy.

Tuesday 10:30 am -12:00 pm
Convention Ctr – Ballroom
Session A

Panel: Cracking the Software Paradox
John Daniels, Syntropy Limited (Co-moderator)
Rebecca Wirfs-Brock, Wirfs-Brock Associates (Co-moderator)
Jim Amsden, IBM
Larry Constantine, Constantine & Lockwood
David DeLano, AG Communication Systems
Martin Griss, Hewlett-Packard
Ivar Jacobson, Rational
Else-Marie Östling, Icon Medialab

Can we develop software faster, cheaper, while remaining in control of quality? The advent of the Web and the e-business phenomenon mandate that scaleable, highly reliable, user friendly software be developed in a very short time. In this new world, consumers won’t accept clunky, clueless, brittle software. We've got to get it right the first time and then be able to rapidly change it to meet new market demands. This panel explores how development processes and tools need to be tuned, tamed, or reframed in order to crack this development paradox and deliver quality software in e-time.

Convention Ctr – 101, A, B, I, J
Session B

Papers: Concurrency
Chair: William Pugh, University of Maryland

As concurrency becomes an increasingly central aspect of OO programming, new research helps guide the semantics, support, and usage of concurrent OO language features. The first paper in this session presents a new model for describing the semantics of shared memory in concurrent programs. The model enables both safe usage and efficient implementation, especially on multiprocessors. The second paper describes a simple, useful design notation for mapping out the use of locks in concurrent programs. The third discusses the design options for supporting real-time concurrent OO programming, and their realization in an extension of C++.

Improving the Java Memory Model Using CRF
Jan-Willem Maessen, MIT Lab for Computer Science
Arvind, MIT Lab for Computer Science
Xiaowei Shen, IBM T. J. Watson Research Center

Exclusion for Composite Objects
James Noble, Victoria University of Wellington
David Holmes, DSTC Pty Ltd.
John Potter, University of New South Wales, Sydney

Object-Oriented Real-Time Concurrency
Peter Buhr, University of Waterloo
Ashif Harji, University of Waterloo
Philipp Lim, University of Waterloo
Jiongxiong Chen, University of Waterloo

Convention Ctr – 101, C thru H
Session C

Practitioner Reports: Development Processes
Chair: Laura Hill, Sun Microsystems

Delivering high quality, working software is hard, especially delivering it on time and within budget. This session reports on the development process used by three projects. The first paper reports on using low-fi prototyping and a spiral lifecycle to successfully move from a vague vision statement to a commercial system. The second paper is about a commercial project with changing scope and two tough questions: how to bid and how to tell when the project is finished. The third report discusses principles of eXtreme Programming that worked well on a Web development project, and those that can be improved. Technologies used in these projects include JINI, RMI, servlets, and Smalltalk.

Remote Access to Clinical Data
Andy Schneider, BJSS Ltd.

    This project delivered a reliable, WAN based, distributed system. In common with most projects it had a vague vision statement and short timescales.We show how the application of lo-fi prototyping and a spiral lifecycle allowed us to deliver a commercial system on-time, even in these turbulent e-times.

Modeling Infection Scenarios: A Fixed-Price eXtreme Programming Success Story
Joseph Pelrine, Daedalos Consulting

    Is it possible to do fixed-price eXtreme Programming projects? How does one bid on a project with changing scope? When is the project finished? These questions and others will be addressed in the context of a successful project implemented in VisualAge Smalltalk which models infection and vaccination scenarios.

eXtreme Programming in Practice
James Newkirk, Object Mentor Inc.
Robert C. Martin, Object Mentor Inc.

    Follow along the implementation of a actual web-based application developed using XP. The application implements a user area for a commercial web site, using Java Servlets and JDBC. This report highlights the practices of XP that worked well on the project as well as those that could be improved.

Tuesday 1:30 pm - 3:00 pm
Convention Ctr – Ballroom
Session A
Invited Talk:

Adaptive Software Development

Jim Highsmith, Information Architects, Inc.

Heavy methods are out. Thin methods are in. The Internet, e-business, and e-commerce are all changing the conduct of business. As business models change and turbulent markets create uncertainty, software project management practices are making a major transition also. eXtreme Programming, Lean Development, SCRUM, Crystal Methods, Adaptive Software Development, DSDM and others are showing organizations how to navigate the waters between the monolithic, prescriptive, process-centric methods and ad hoc, anything goes RAD methods. Thin, lean, adaptive, or light–these emerging approaches are thin on process, thick on skills, and focus on collaboration, communication, and excitement.

While traditional projects were complicated, many Internet-era projects are complex, dominated by turbulence–high-speed, high-change, and high-uncertainty. Traditional software engineering processes are rooted in a deterministic, industrial, Newtonian view of the world where predictability, continuous optimization, and control promise success. This talk discusses a different approach, Adaptive Software Development (ASD), which has a fundamentally different conceptual base, rooted in a non-linear, non-deterministic, complex adaptive systems view of the world; a world where planning is tenuous and control impossible, where balancing at the edge of chaos is a requisite skill—it is a world of adaptation, not optimization.

Jim Highsmith is President of Information Architects, Inc., author of “Adaptive Software Development: A Collaborative Approach to Managing Complex Systems,” and editor of “e-business Application Delivery” published by Cutter Information Corp. He has 30 years experience as a consultant, software developer, manager, and writer. Jim has published dozens of articles in major industry publications and his ideas about project management in the Internet era were featured in a recent issue of ComputerWorld. In the last ten years, he has worked with both IT organizations and software companies in the US, Europe, Canada, South Africa, and New Zealand to help them adapt to the accelerated pace of development in increasingly complex, uncertain environments.

Convention Ctr – 101, A, B, I, J
Session B
Papers: Java Optimization
Chair: Sherman Alpert, IBM T.J. Watson Research Center

Making good on the potential of Java programs to execute efficiently requires solutions for a number of research questions. The papers in this session explore issues surrounding what code to optimize, when to optimize it, and how to avoid excessive start-up costs. The first paper presents an approach for discovering code that would benefit from time-consuming optimized compilation, and then doing so. The second describes a technique for reusing the results of optimized compilation while still allowing for dynamic loading. The third presents algorithms for optimizing compilation of archived packages.

Adaptive Optimization in the Jalapeño JVM
Matthew Arnold, Rutgers University & IBM T. J. Watson Research Center
Stephen Fink, IBM T. J. Watson Research Center
Michael Hind, IBM T. J. Watson Research Center
David Grove, IBM T. J. Watson Research Center
Peter F. Sweeney, IBM T. J. Watson Research Center

Quicksilver: A Quasi-Static Compiler for Java
Mauricio Serrano, IBM T. J. Watson Research Center
Rajesh Bordawekar, IBM T. J. Watson Research Center
Sam Midkiff, IBM T. J. Watson Research Center
Manish Gupta, IBM T. J. Watson Research Center

Sealed Calls in Java Packages
Ayal Zaks, IBM Haifa Research Lab, Israel
Vitaly Feldman, IBM Haifa Research Lab, Israel
Nava Aizikowitz, IBM Haifa Research Lab, Israel

Convention Ctr – 101, C thru H
Session C
Papers: Systems and Middleware
Chair: Toby Bloom, Domain Pharma Corporation

Many OO systems, both large and small, rely on infrastructure for supporting messages, events, and database connections. The first paper in this session focuses on the architecture of real-time simulation systems. The second demonstrates how the formal specification of middleware services uncovers incompatibilities across implementations. The third paper shows how to improve performance of OO middleware services that connect to databases.

A Real World Object Modeling Method for Creating Simulation Environment of Real-time Systems
Ji Y. Lee, Pohang University of Science and Technology
Hye J. Kim, Pohang University of Science and Technology
Kyo C. Kang, Pohang University of Science and Technology

Formal Specification of CORBA Services: Experience and Lessons Learned
Rémi Bastide, University of Toulouse
Philippe Palanque, University of Toulouse
Ousmane Sy, University of Toulouse
David Navarre, University of Toulouse

Middleware Object Query Processing with Deferred Updates and Autonomous Sources
Jerry Kiernan, IBM Almaden Research Center
Michael Carey, IBM Almaden Research Center

Tuesday 3:30 am - 5:00 pm
Convention Ctr – Ballroom
Session A
Panel: Hacker or Hero? eXtreme Programming Today
Steven Fraser, Nortel Networks (Moderator)
Kent Beck, First Class Software
Ron Crocker, Motorola
Ward Cunningham, Cunningham & Cunningham
Martin Fowler, ThoughtWorks
Linda Rising, Consultant
Laurie Williams, North Carolina State University

eXtreme Programming is the latest rage - everyone is talking extreme - but is anyone doing it? eXtreme programming is, in the words of one proponent, a "lightweight, efficient, low-risk, predictable, scientific, and fun way to develop software." Who could argue with this? Join us for an intriguing debate where panelists will share their opinions and experiences.

Convention Ctr – 101, A, B, I, J
Session B
Papers: Java Extensions
Chair: Philip Wadler, Bell Labs, Lucent Technologies

Both multimethods (in which methods may be dispatched according to the run-time types of multiple arguments) and genericity (in which types may be parameterized with respect to other types) are found in several OO languages. But new challenges arise when attempting to integrate them into Java. The first paper in this session presents a well-reasoned design for incorporating multimethods into Java. The second paper presents a new approach to adding generics in Java. It combines the old idea of using objects to represent types with some new ideas to minimize the cost of doing so.

MultiJava: Modular Open Classes and Symmetric Multiple Dispatch for Java
Curtis Clifton, Iowa State University
Gary Leavens, Iowa State University
Craig Chambers, University of Washington
Todd Millstein, University of Washington

Parametric Polymorphism in Java: An Approach to Translation Based on Reflective Features
Mirko Viroli, University of Bologna
Antonio Natali, University of Bologna

Convention Ctr – 101, C thru H
Session C
Practitioner Reports: Internet Applications
Chair: Joaquin Miller, Financial Systems Architects

A large share of software development projects today build applications for use over the Internet. The reports in this session look at Internet application development from three different viewpoints. One describes the conversion of an application from one Web technology to another while it is being used. Another paper in this session reports on a Web development project with a hard deployment deadline. The third presents a model of a generic Internet applications, then discusses the architectural decisions that were made in choosing specific technologies.

Porting a CGI Workflow System onto a Web Application Server Platform While It Is Being Used and Extended to Support the Enterprise
David J. Arnone, PaineWebber

    This paper describes our experiences with evolving a system infrastructure while continuing to support new functionality. In it we explore the architecture, technology decisions made, and difficulties encountered in porting a core business application while it is being used and extended to support the enterprise.

Virtual Yacht Racing On The Web
Martin Goldberg, Quokka Sports

    The Whitbread ‘Round the World virtual race enabled World Wide Web spectators to pilot a virtual yacht and race along with the Whitbread fleet while competing against other virtual sailors. This experience report will cover the design and creation of the application which featured visualizations including panning and zooming nautical charts, weather overlays, and a sailing performance predictor.

Building a Flexible Services-based Architecture for Internet Applications
Mohan Tavorath, KPMG Consulting
Richard Walker, KPMG Consulting
Vijay Mehra, KPMG Consulting
Jeffery Brashear, KPMG Consulting

    Describes a flexible architecture for developing services-based business applications that use component-based architectural services. The use of eXtensible Markup Language (XML) created the opportunity to deploy quickly and interoperate with a wide variety of business systems, providing the speed and flexibility needed to embrace new product ideas, channels and markets.

Wednesday 8:30 am -10:00 am
Convention Ctr – Ballroom
Invited Talk:
Agent-Oriented Software Engineering
Nicholas R. Jennings, University of Southampton

Multi-agent system techniques represent an exciting new means of analyzing, designing and building complex software systems. They have the potential to significantly improve current practice in software engineering and to extend the range of applications that can feasibly be tackled. Yet, to date, there has been no systematic analysis of what makes agents effective as a solution technology. In seeking to rectify this omission, it will be argued that: (i) adopting an agent-oriented approach affords a number of significant advantages over contemporary methods and (ii) the adoption of an agent-oriented approach can become widespread comparatively quickly because the paradigm shift is evolutionary rather than revolutionary.

Nick Jennings is a Professor in the Department of Electronics and Computer Science at Southampton University where he carries out basic and applied research in agent-based computing. He helped pioneer the use of agent-based techniques for real-world applications and has developed systems for the following domains: process control, business process management (agent-enabled workflow), e-commerce, digital libraries, telecommunications network management and scientific data interpretation. The early systems he developed represent some of the first real-world applications of multi-agent technology. This experience with real world applications has highlighted the need to focus research attention on the field of agent-based software engineering. In terms of theoretical work, he was one of the first people to implement a cooperating agent system based upon models of joint intentions. He has also made contributions in the areas of decision making in social systems and negotiation and argumentation.

Professor Jennings has been an invited lecturer at numerous national and international conferences, he initiated and co-chaired two major international conferences (The Practical Application of Agents and Multi-Agent Systems (PAAM) and Autonomous Agents), and initiated and co-chaired the Agent Theories, Architectures and Languages Workshop series. He is also the founding Editor-in-Chief of the International Journal of Autonomous Agents and Multi-Agent Systems and is a director of the International Foundation for Multi-Agent Systems. He has published some 130 articles on various facets of agent-based computing, written one monograph, and co-edited five books. He was the recipient of the Computers and Thought award (the premier award for a young AI scientist) in 1999 for his contribution to practical agent architectures and applications of multi-agent systems (this is the first time in the award's 30 year history that it has been awarded to someone based in Europe).

Wednesday 10:30 am -12:00 pm
Convention Ctr – Ballroom
Session A

Panel: B2B E-Commerce Integration – A Tower of Babel?
Lougie Anderson, GemStone Systems (Moderator)
Chris Beall, Requisite Technology
Thomas Joseph, Tibco Software
Mary Loomis, Commerce One
Stewert Allen, webMethods

New standards and new standard bodies are popping up like mushrooms in the area of Business-to-Business (B2B) E-Commerce Integration (e.g. Rosetta Net, ebXML, tpaML). Standards in this area define data sharing/integration within industry verticals and between companies, enabling new e-commerce business applications that streamline everything from supply chain management to customer support. This panel will discuss the “state-of-the-state” in all this frenetic B2B e-commerce standards activity.

Convention Ctr – 101, A, B, I, J
Session B
Papers: Development Tools
Chair: Peri Tarr, IBM T. J. Watson Research Center

OO tools and methods become more useful when they can help developers identify, decompose, manage, and ultimately integrate multiple, evolving concerns in software. For example, while OO addresses object concerns, developers may also have concerns like business rules, roles, features, and performance and distribution requirements, which cross-cut objects. The three papers in this session provide mechanisms for identifying, managing, and integrating different kinds of concerns in OO systems. The first paper describes techniques for rapidly identifying refactorings that reflect design changes. The second paper defines a means of modeling separate, potentially overlapping concerns in UML-based designs and then automatically translating those concerns into a composed implementation. The third paper focuses on facilitating the representation and dynamic integration of different code concerns.

Finding Refactorings via Change Metrics
Serge Demeyer, University of Antwerp
Stéphane Ducasse, University of Berne
Oscar Nierstrasz, University of Berne

Mapping UML Designs to Java
William Harrison, IBM T. J. Watson Research Center
Charles Barton, IBM T. J. Watson Research Center
Mukund Raghavachari, IBM T. J. Watson Research Center

PIROL: A Case-Study for Multidimensional Separation of Concerns in Software Engineering Environments
Stephan Herrmann, Technical University Berlin
Mira Mezini, Technical University Darmstadt

Convention Ctr – 101, C thru H
Session C
Practitioner Reports: Building Object Models
Chair: Rebecca Wirfs-Brock, Wirfs-Brock Associates

Object models are a critical part of any project developing object-oriented software. (Even when separate models are not used, there is always an object model there in the code.) Models can help or hinder understanding of requirements and can guide or mislead software design. The first report presents lessons learned while building a series of models in finance. The second describes how architecture can feed back into business process design. The third tells how a generic object model was built following a published comprehensive ontology.

A Decade of Modeling Financial Vehicles
William Frank, Financial Systems Architects
Anil Karunaratne, Citigroup

    Building nine object-oriented financial systems in eleven years, we evolved techniques for "financial vehicles" (bonds, contracts, real estate, racehorses). We specify each particular financial vehicle by combining objects that implement the fundamental ideas behind financial vehicles. These techniques produce designs that enable installed systems to accommodate new kinds of objects.

How Conceptual Systems Architecture Leads to Business Processes
Hernan Astudillo, Soluciones S.A.

    While designing a global bank's Cash-Link, our clustering of non-functional properties suggested two "lobes." (1) "transactional": enabling payments among partners, with high availability, security, and geographical distribution. (2) "analytic": traditional database requirements. These purely architectural components coincided with business processes separately identified by business analysts. Architecture provided problem domain insight.

Building a Large-Scale Generic Object Model: Applying the CYC Upper Ontology to Object Database Development
Stephen Strom, FGM, Inc.

    The CYC upper ontology is a publicly-available, AI-derived "model of everything", expressed in predicate logic. We have attempted to transform it into standard object model form (UML and Java), resulting in a flexible generic object model and insight into the creation of object models in general.

Wednesday 1:30 pm - 3:00 pm
Convention Ctr – Ballroom
Session A
Invited Talk:
Information Technology and Business in the Post .COM World
Kevin Tyson, Netfolio, Inc.

The impact of the World Wide Web on the world of business has been dramatic. No commercial venture is taken seriously if it does not have a URL prominently displayed in its advertisement or .com in its name. This might lead one to believe that the relationship between technology and business is one in which technology drives business evolution. The situation is a good deal more complex. Examples of the artifacts created by the complex feedback loop between technology and business range from the development of clay tablets for the durable storage of tax records in the Assyrian empire, to the birth of electronic commerce over 100 years ago supported by stock tickers and telegraphy. In this talk, Mr. Tyson will explore the relationship between a variety of business and information technology artifacts of more recent vintage, including the development of the Middle Office in financial services and the concomitant rise of n-tier distributed computing, and explore how current developments in the business environment may impact the development of software architectures in the near term future.

Kevin Tyson is currently Chief Information Officer at Netfolio Inc. He has more than 25 years of experience building mission-critical information systems for financial services organizations. He has designed and programmed systems for funds transfer, equities, fixed-income and derivatives trading, settlement, clearance, and compliance operations. Mr. Tyson has been an active participant in the Financial Domain Task Force and Architecture Board of the Object Management Group. He is also a member of the Association for Computing Machinery and participated in several Program Committees for the OOPSLA and EDOC conferences.

Convention Ctr – 101, A, B, I, J
Session B
Papers: Frameworks and Subclassing
Chair: Ralph Johnson, University of Illinois

Much of OO development consists of the design and refactoring of frameworks and other sets of classes linked via inheritance. The three papers in this session contribute to both the theory and practice of framework development. The first presents a set of design rules ensuring that subclasses provide all of the guarantees required by superclasses. The second paper discusses design issues encountered in the construction of linear algebra frameworks. The third paper describes a tool offering assistance to programmers using OO frameworks to build applications.

Safely Creating Correct Subclasses without Seeing Superclass Code
Clyde Ruby, Iowa State University
Gary Leavens, Iowa State University

OOLALA: An Object Oriented Analysis and Design of Numerical Linear Algebra
Mikel Lujan, University of Manchester
John R. Gurd, University of Manchester
T. L. Freeman, University of Manchester

Towards Agent-Oriented Assistance for Framework Instantiation
Alvaro Ortigosa, ISISTAN Research Institute, Argentina
Marcelo Campo, ISISTAN Research Institute, Argentina
Roberto Moriyon Salomon, ISISTAN Research Institute, Argentina

Convention Ctr – 101, C thru H
Session C
Panel: How Difficult is the Transition from OOA to OOD?
Hermann Kaindl, Siemens AG Österreich (Co-moderator)
Laura Hill, Sun Microsystems (Co-moderator)
Desmond D'Souza,
Joaquin Miller, Financial Systems Architects
Ivar Jacobson, Rational
Steve Mellor, Project Technology Inc.

One of the advantages claimed for object-oriented development is that developers can use objects uniformly throughout analysis and design. Some therefore claim that the transition from analysis to design is smooth and easy. Others claim it is difficult. Some even assert there is no such thing.
The panel will illuminate these contradictory views, and provide a forum for a badly needed audience-directed discussion of them.

Wednesday 3:30 am - 5:00 pm
Convention Ctr – Ballroom
Session A
Panel: Patterns Beyond the Hype: Sequel to the Trial of the Gang of Four
Neil Harrison, Avaya Communication (Moderator)
Frank Buschmann, Siemens AG, Corporate Technology
James Coplien, Lucent Technologies
David Ungar, Sun Microsystems
John Vlissides, IBM T. J. Watson Research Center

You all saw it last year. Behind an all-star cast of witnesses, attorneys, and judiciary, the notorious “Gang of Four” was convicted of Crimes Against Computer Science. For many, it was the entertainment highlight of OOPSLA‘99. But the substantive questions remain unanswered. Do patterns really work? Do they live up to their promise? The jury is still out. This panel will attempt to critically examine these and other questions about patterns, and objectively judge their value.

Convention Ctr – 101, A, B, I, J
Session B
Papers: Optimizing Method Calls
Chair: Gerald Baumgartner, Ohio State University

One of the key compilation techniques for achieving good performance in OO languages is discovering and exploiting polymorphic method calls that have only one or a few possible targets. Each of the papers in this session analytically and empirically describe and compare several different approaches to this problem, differing in cost, analytic power, and appropriateness for use in just-in-time versus ahead-of-time compilation.

Practical Virtual Method Call Resolution for Java
Vijay Sundaresan, McGill University
Laurie Hendren, McGill University
Chrislain Razafimahefa, McGill University
Raja Vallee-Rai, McGill University
Patrick Lam, McGill University
Etienne Gagnon, McGill University
Charles Godin, McGill University

Scalable Propagation-Based Call Graph Construction Algorithms
Frank Tip, IBM T. J. Watson Research Center
Jens Palsberg, Purdue University

A Study of Devirtualization Techniques for a Java Just-In-Time Compiler
Kazuaki Ishizaki, IBM Tokyo Research Laboratory
Motohiro Kawahito, IBM Tokyo Research Laboratory
Toshiaki Yasue, IBM Tokyo Research Laboratory
Hideaki Komatsu, IBM Tokyo Research Laboratory
Toshio Nakatani, IBM Tokyo Research Laboratory

Thursday 8:30 am -10:00 am
Convention Ctr – Ballroom
Invited Talk:
Mob Software—The Erotic Life of Code
Richard P. Gabriel, Sun Microsystems and Stanford University

The software crisis that plagued us since the 1960’s just might have a solution. But it’s neither a technological nor a methodological one, it’s an organizational solution: Building massive software takes a mob — a mob with charm. Experience shows it is essentially impossible to plan a massive software project, one that requires more than a dozen or two developers, and there is therefore little point in trying to do it. Mob Software is known by other names: Open Source and Free Software, to name two. These names, though, put the emphasis on how source code is handled rather than how development is organized. Other names that hint at the right way to look at development include autocatalytic sets and Chaords™. By creating suitable business models and organizational behaviors it is possible for even the most conservative and avaricious company to use the Mob Software approach.

Richard P. Gabriel lives in California.

Thursday 10:30 am -12:00 pm
Convention Ctr – Ballroom
Session A
Panel: Processes: The Roles of Ceremony and Adaptation
Norm Kerth, Elite Systems (Moderator)
Alistair Cockburn, Humans and Technology
Don Firesmith, Lante Corporation
Brian Henderson-Sellers, University of Technology, Sydney
Steve Mellor, Project Technology Inc.

As industry begins to invest in OO/CBD (Component Based Development) processes, and the OMG considers whether/how to standardize on process, many issues arise. Those to be debated include process framework versus process, high ceremony versus low ceremony, the need for flexibility and tailorability, and the role of automation.

Convention Ctr – 101, A, B, I, J
Session B
Papers: Theory and Semantics
Chair: Benjamin C. Pierce, University of Pennsylvania

The papers in this session demonstrate the range of both conceptual and practical value of theoretical approaches to OO. The first shows how a new treatment of formal type issues enables a promising technique for expressing OO programs in terms of more primitive constructs. The second provides a formal analysis of the properties of one of the most novel, yet complex, aspects of Java, class loading. The third paper stems from a vastly different theoretical basis – the authors analyze OO modeling and language features from the perspective of philosophical logic.

An Efficient Class and Object Encoding
Neal Glew, Cornell University

A Formal Specification of Java Class Loading
Zhenyu Qian, Kestrel Institute
Allen Goldberg, Kestrel Institute
Alessandro Coglio, Kestrel Institute

An Aristotelian Understanding of Object-Oriented Programming
Derek Rayside, University of Waterloo
Gerard Campbell, St. Jerome's University

Convention Ctr – 101, C thru H
Session C
Practitioner Reports: Architecture
Chair: Kevin Tyson, Netfolio, Inc.

Software architecture can play a central role in the success of any project. This session reports on software architectures in three quite different projects. The first report describes the experience of a very large integration project using CORBA technology. The second is about integration of a mixture of devices and applications for automobile traffic control at intersections. The third discusses the value of defining the application architecture before infrastructure design.

Application Integration Framework for a Large Business Process Redesign Project
Jon Sholberg, The Boeing Company

    Boeing has nearly completed a major program for business process redesign. Given the scale of this project and the large number of existing, heterogeneous systems, it has been essential that a standards-based architecture be implemented. The CORBA standard has worked well as the application integration baseline for this new system.

ESCORT: Lessons from an Integration Project
Andrea Savigni, DISCO - Universita' di Milano-Bicocca
Filippo Cunsolo, Project Automation S.p.A.
Francesco Tisato, DISCO - Universita' di Milano-Bicocca

    The ESCORT project has the goal of integrating diverse devices and applications for traffic control at intersection level. The presentation focuses on the difficulty of "breaking" vertical products and of building a common integration platform, and on the management problems encountered when working with partners with very diverse backgrounds.

Application Frameworks before System Frameworks
Jon Hancock, patternWare, Inc.

    Application development with an end-to-end declaritive Application Framework has shown the following significant benefits: 80% error reduction, 40-80% code reduction, and predictable development cycles by first time object/Java developers. These Application Frameworks may at any point in the development/deployment process sit on top of System Frameworks such as CORBA or EJB.

Thursday 1:30 pm - 3:00 pm
Convention Ctr – Ballroom
Session A
Panel (Goldfish Bowl): Back to the Future: Is Worse (Still) Better?
Martine Devos, EDS EMEA (Moderator)
James Coplien, Lucent Technologies
Theo D'Hondt, Free University of Brussels
Jutta Eckstein, Objects in Action
Brian Foote, The Refactory, Inc.
Richard Gabriel, Sun Microsystems and Stanford University
Kevlin Henney, Cubralan Limited
Alan O'Callaghan, De Montfort University

Functional programming, AI, patterns, OO, structured programming – they were promising, and yet they seem to have failed to deliver. Did we lose interest too soon? Is the best too good for our industry? Is there “a” best for our industry or is our endless search for the silver bullet driving us? Do we want the “best” to (again) be a popular goal? How? Pioneers, practitioners, and teachers in our industry confronted with the past, confront us with the future.

Convention Ctr – 101, A, B, I, J
Session B
Papers: Controlling Shared Access
Chair: Jan Vitek, Purdue University

The Java Virtual Machine allows multiple applications, as well as multiple threads within applications, to coexist, communicate, and share resources. This raises new challenges for security of Java programs as well as for their correctness. The papers in this session provide solutions to different aspects of shared access control. The first proposes a mechanism for safely running multiple separate applications within one JVM. The second paper describes a scheme for confining the accessibility of objects within programmer-defined groups. The third paper extends the Java programming language to rule out unsynchronized access across threads.

Application Isolation in the Java Virtual Machine
Grzegorz Czajkowski, Sun Microsystems Laboratories

An Approach to Safe Object Sharing
Ciaran Bryce, University of Geneva
Chrislain Razafimahefa, University of Geneva

Guava: A Dialect of Java Without Data Races
David Bacon, IBM T. J. Watson Research Center
Robert Strom, IBM T. J. Watson Research Center
Ashis Tarafdar, University of Texas, Austin

Convention Ctr – 101, C thru H
Session C
DesignFest Wrap-Up

Throughout the week, teams of software designers have taken part in the DesignFest sessions. In addition, a small number of student teams (known as CodeFest) have implemented some of these designs. This wrap-up panel is a chance for OOPSLA participants, whether or not they participated in DesignFest, to see the designs produced during the earlier sessions, as well as to view demos of the final software. Various panelists will discuss their experiences (both good and bad) of working in their design team, and the CodeFest teams will describe the problems they encountered while implementing the designs.

Thursday 3:30 am - 5:00 pm
Convention Ctr – Ballroom
Session A
OOPSLA 2001 Kick-off (Ice Cream Social)

Convention Ctr – 101, A, B, I, J
Session B
Educators’ Symposium Wrap-Up
Goldfish Bowl: How Should Software Development be Learned: As Science, Engineering, or Craft?
Moderator: Jutta Eckstein, Objects in Action, Educators’ Symposium Chair

As a follow-up to the Educators' Symposium, this session will provide a forum for both industry and academia to discuss how to teach and learn software development. Software development has many facets - it could be regarded as science, like physics; as engineering, like mechanical engineering; or as craft, like cabinet making. What should be the focus for education? There are different approaches, each of which has its pros and cons. Presented in “Goldfish Bowl” style, everybody is invited to actively participate in the discussion.

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

Back To Final Program

 OOPSLA'98 Home