Monday

1 Rags to Riches:
Product Success @ Net Speed
(Techniques and Tools for OO Project Management)
Adam's Mark Hotel
Plaza Court 1
 
Software design organizations use a variety of project management practices to deliver software products to the market-place with varying degrees of success. The purpose of this workshop is to understand successes and challenges the application of project management tools and techniques in:
  • minimizing time-to-market
  • optimizing time-to-profit
  • conducting portfolio rationalization

The result of the workshop will be a greater understanding of the commonalities and differences in the way that various organizations manage OO projects. Participants should leave with new ideas for improving the way they manage OO projects.

Organizers:
Steven Fraser, Ph.D., Nortel Networks
Email: sdfraser@nortelnetworks.com

Priya Marsonia, Nortel Networks

Bill Opdyke, Lucent Technologies


2 Quest for Effective Classroom Examples Adam's Mark Hotel
Plaza Court 2
 
The successful usage of object oriented technology requires a thorough understanding of basic OO concepts. It is during the introductory stage of learning where most of this "hard work" must be done. During this stage, examples and metaphors are powerful tools to abstract from technicalities and focus on the underlying fundamental ideas. We have not done our best job at this point. Many textbooks, courses, and teachers still use the same old examples (like ATMs, library systems, and the "hello world" program). But object technology has evolved; educators and students feel the need of better and more interesting examples. This workshop will be a starting point for further work into this direction. A lot of work has already been done in related areas. The Pedagogical Patterns community for example deals with general pedagogical ideas that can be adapted to concrete teaching situations. The Non-Software Examples of Software Design Patterns on the other hand present concrete metaphors to abstract from the technicalities of design patterns.

This workshop will bring together people from industry and academia to share experiences on the usage of concrete examples and metaphors to teach basic concepts of object technology. Participants will furthermore reflect upon the learning process to identify key requirements for the understanding of the basic concepts and propose feasible orderings of the teaching material.

The workshop participants will develop a clearly laid out and uniform presentation format for examples and metaphors. All examples, analogies and metaphors will be collected in an initial library and made available after the workshop.

Organizers:
Jürgen Börstler, Umeå University
Email: jubo@cs.umu.se

Alejandro Fernández, Universidad Nacional de La Plata


3 Object Technology and Product Lines Adam's Mark Hotel
Plaza Court 3
 
How can object-oriented technical practices support a product line analysis (i.e., an exploration of the problem space associated with the particular product line)? A product -line analysis includes:
  • Product-line scoping
  • Requirements elicitation, analysis, and management
  • Architectural style exploration
  • Exploration of the production plan

A product line is a group of products sharing a common, managed set of features that satisfy specific needs of a selected market. The potential costs and benefits associated with a product line are substantial. For software-intensive systems, a product line approach involves a sizable initial investment plus continuing maintenance costs. However, the potential benefits include reduced time to market, improved schedule and cost predictability, and improved product quality.

The proposed workshop is the combination of two successful OOPSLA workshops from last year: the "Object Technology, Architectures, and Domain Analysis" workshop and the "Object Technology and Product Lines" workshop. Over the past two years these workshops have addressed issues such as:

  • The impact of the Unified Modeling Language on product line development.
  • Techniques for the evolution of a product line.
  • The types of knowledge representation used for a product line.
  • Domain modeling and its mapping to a software architecture.
  • The potential impact of subject and aspect-oriented programming on product line development.
  • Tool-kit and architecture based development.
  • The costs and benefits associated with active artifacts.

Although we recognize that the organizational, business, and market factors are vital to the success of a product line, the focus of the workshop is technical. Further, we are primarily interested in the experiences of the participants in the application of object technologies to a software product line analysis. The problems to be addressed include:

  • What object technologies are being used to support a product line analysis?
  • What are the associated costs and benefits?
  • What results and measures have been collected? Have these results been validated?
  • What were the technical risks? How were they mitigated?
  • What technical issues remain open?

Organizers:
Gary Chastek, Software Engineering Institute
Email: gjc@sei.cmu.edu

Sholom Cohen, Software Engineering Institute

Felix Bachmann, Carnegie Bosch Institute


5 Objects, Components, and
the Virtual Enterprise (OCVE)
Adam's Mark Hotel
Plaza Court 5
 
We are currently witnessing a convergence of several threads of technology and business imperatives. The idea of a virtual enterprise - a business built from both organisationally and geographically distributed units - is becoming an area of increasing interest to both computer scientists and business people.

The idea that network based Virtual enterprises are becoming feasible is primarily based on several emerging technologies including CORBA, the World Wide Web, Java and component-based software; they are becoming attractive because of business trends such as corporate downsizing and business outsourcing. In realising such co-operative (mutually reliant) networked organisations of the future, significant challenges need to be satisfied. These include runtime negotiation of services to be delivered between the organisation (called service level agreements or contracts); service level agreement monitoring and enforcement; co-operative (inter-organisational) components; brokerage services; business process specification, communication and outsourcing management, trust and security management.

However, in order to realise software infrastructures which can tackle these high level enterprise issues, current object oriented software technologies and concepts such as business object frameworks and facilities, workflow, policy based software systems and object component framework need to be enhanced. Such approaches tend to be applied piecemeal to address one more of the business imperatives, resulting in "creeping" virtual enterprises.

Organizer:

Dr. Paddy Nixon, Trinity College
Email: Paddy.Nixon@cs.tcd.ie


6 Object-Oriented Reflection
and Software Engineering
Adam's Mark Hotel
Plaza Court 6
 
Object-Oriented Reflection and software engineering are two research areas in continuous evolution, and offering stimulating challenges for both academic and industrial researchers. Often, the undeniable usefulness of software engineering techniques and methodologies is obscured by the difficulty of making them effective for existing and bad designed systems.

Features of reflection such as transparency, separation of concerns, and extensibility are perfect tools to aid the designer/implementer in several phases of software production. For example, by using reflective methodologies, software reusability can be improved, reducing the problems caused during integration of modules in existing systems. Reflection transparency allows to integrate a new feature (i.e., reuse a module implementing that feature) in a system without changing the existing code.

We feel the necessity to investigate the benefits brought by reflective techniques on design and development of object-oriented software. In particular we would determine how object-oriented reflection impacted, impact, and will impact in the software engineering methodologies, and outlining a novel reflective software engineering research area.

Particularly interesting for this workshop are works on object-oriented reflection applied to the following branches of software engineering but related topics will also be considered:

  • software architecture
  • software evolution
  • software reuse, maintenance, and extension
  • component based programming
  • software analysis and development

More information: http://www.disi.unige.it/person/CazzolaW/OORaSE99.html

Organizers:

Walter Cazzola, University of Genova
Email: cazzola@disi.unige.it

Robert J. Stroud, University of Newcastle upon Tyne

Francesco Tisato, University of Milano `la Bicocca'


7 Accomplishing Software Stability Adam's Mark Hotel
Plaza Court 7
 
There is little doubt that software engineering, like all other engineering fields, has helped to make life what it is today. With software controlling more equipment and becoming an integral part of more of our lives, the field of software engineering is quickly becoming more and more important. Unlike many other engineering fields, however, the products produced through software engineering are largely intangible. Also, unlike the products of other engineering fields, software products are unlikely to remain stable over a long period of time.

In hardware areas, the failure rates of products often start high, then drop low, and then go high again. Early in a hardware product's lifecycle, there are some problems with the system. As these problems are fixed, the failure rate of the hardware products drops. However, as hardware gets old, physical deterioration causes the hardware to fail. In other words, the hardware wears out and the failure rate rises again.

Software, on the other hand, is not subject to the same wear and tear that hardware is. There are no environmental factors that cause software to break. Software is a set of instructions, or a recipe, for a piece of hardware to follow. There are no moving parts in software. There is nothing that can physically deteriorate. Software should not wear out. Unfortunately, it does. Countless authors in the field of software engineering have identified this problem. However, the software engineering techniques outlined by many software-engineering authors have not achieved a good amount of stability in software projects.

This problem is more than just an inconvenience for software engineers and software users. The reengineering that is required for these software products does not come without a price. It is not uncommon to hear of these reengineering projects costing hundreds of thousands to millions of dollars. This does not take into account the time that is wasted by this continual reengineering process. Software defects and "deterioration" are caused by changes in software. Many of these changes cannot be avoided. These changes can be minimized, however. Currently, when a change must be made to a software program, most of the time the entire program is reengineered. It does not matter if the change required is due to new technology or a change in clientele. This reengineering process is ridiculous. The core purpose of the software product has not changed. Why, then, must the entire project be reengineered to incorporate a change?

This workshop will examine software stability with respect to three central themes: "How can we engineer software systems that are stable overtime?," "What are the approaches of making software systems stable over time?" and "What is the role of object-oriented technology in the issue of software stability over time?."

We want researchers, framework developers, and application developers to answer the following questions:

  1. How can we achieve software stability over time and extend the life span of software products?
  2. What are the relationships between software architecture and software that been stable over time?
  3. What are the relationships between software that been stable over time and management workflow?
  4. What are the relationships between software that been stable over time and business objects?
  5. What is the role of object-oriented techniques and technologies of making software stable over time?
  6. What are the approaches of making software stable over time?

Organizers:

Mohamed E. Fayad, Ph.d, University of Nebraska, Lincoln
Email: fayadm@acm.org and m.fayad@computer.org

Mauri Laitinen, Laitinen Consulting


8 Design for Maintenance Adam's Mark Hotel
Plaza Court 8
 
We often claim that Object Technology makes systems more maintainable, but what does that really mean? What is it about objects that makes it easy to maintain a system? Identifying maintenance as a design priority is especially important with the moves to create a "standard" development process for object technology, since all too often the developers in the field forget to report back on what actually works. As an example think about the number of project teams who are always having to apologize for not having enough documentation. Who gets to define enough? Is a track record of 4 years of increasing sales an indicator that the team has enough documentation, or a sign that they are soon going to fail unless they stop and document what they have got? The concept behind design for maintenance has analogues in other engineering fields such as "Design for Manufacture". The workshop will seek to identify other priorities for OO development such as "design for testability" and the effects that these priorities would have on the economics of the delivered system.

One of the interesting aspects about the Y2K fiasco is that it has focused attention on the question of "What is the economic life of a system?" Maybe there is no such thing as a legacy system, maybe there are just systems that have been well maintained and systems that have fallen into disrepair.

This workshop will bring together practitioners who have been actively involved in the development and enhancement of a system over several years. The challenge is to identify common development processes and practices that support and enable software maintenance.

The main goal of this workshop is to challenge individuals who are involved in software development to design for maintenance, and to challenge assumptions about software development methodologies. In order to achieve this goal, we will be developing several anecdotal models of what has enabled teams to be successful in shipping and supporting systems.

As a group, we will strive to identify essential elements that must be recognized and addressed in any software development process together with any training or team issues that arise from that.

Organizers:

Pete McBreen, McBreen.Consulting
Email: petemcbreen@acm.org

Jens Coldewey, Coldewey Consulting

Russel Bryant, Ebo Consulting


9 Innovations in OO Processes,
Strategies and Development
Technologies for the 21st Century
Adam's Mark Hotel
Governor's Square 9
 
The 70's and 80's saw significant innovation in the object community. New technologies and software development approaches promised much. Smalltalk, modern UI's, highly incremental development and use cases are just some of the major innovations of this period. Whilst early proponents of OT such as Brad Cox, promised much for OO, it would appear Fred Brooks was closer to the mark in his paper "No Silver Bullet". More recently it could be argued that the object community has entered the period of time that science philosopher Thomas Kuhn characterized as "normal science". Modest incremental improvements within the current paradigm, but nothing revolutionary.

The new millennia provides a good reminder that we need to get the thinking cap back on.

The goal of this workshop is to explore how software development will be undertaken in the next century. What processes, technologies management strategies and support environments will evolve to deliver an order of magnitude improvement in development outcomes?

The workshop will characterize the processes, management strategies and technologies for advanced development and provide a road map for getting there.

Organizers:

Mr. Philip Haynes, Object Oriented Pty. Ltd.
Email: p.haynes@oopl.com.au

Dr. Julian Edwards, Object Oriented Pty. Ltd.

Dr. Ian Gorton, CSIRO


10 Systems Envisioning Adam's Mark Hotel
Governor's Square 10
 
Software systems are conceived out of an understanding and conceptualizing of a problem space. System Envisioning is a creative process for establishing the viability of innovative system concepts and technologies, by, first reaching a shared understanding of a problem situation, opportunities and desired futures and then nominating solution concepts and architectures.

In the Object community, Use Cases are a popular way of specifying the expected behavior of a system. They explore how different users achieve their goals through interactions at the system boundary. But how do we agree the boundary of a system and how is the nature of the system decided?

Business modeling is not enough. Brainstorming sessions about the "system to-be" are often too short and lack methodological support. Pre-occupation with the constraints of the "current business logic" will deny new ideas. There needs to be a place for creative thinking and generating new possibilities. System envisioning is about defining a space upstream from Use Cases where users, business analysts, technologists and system architects can detach from the logic of the current systems. New systems ideas emerge when we freely perceive and define organizations and systems.

The first System Envisioning Workshop, held at OOPSLA '96, focused on establishing the "terrain" of system envisioning and what governs the possibilities for what a software system might and should do. The second workshop, at OOPSLA'97, was on the role of metaphors in systems envisioning. The third workshop explored "creativity" and techniques for creative dialogue such as the "ConceptCafe". This fourth workshop returns to the theme of metaphors and creative thinking but in the context of what we are calling "Idea Schemes".

"Idea Schemes" are a way of capturing powerful ideas about what a system should be. They facilitate discussion about the nature of the system to be built by anchoring key ideas. Concepts are represented in a "context of applicability" with the forces and benefits described in a pattern-like language. Like a pattern an Idea Scheme has a name which has a meaning in a context. Whereas Use Cases center the dialogue on what a system will do, Idea Schemes support a dialogue for what a system should be. They serve as patterns for promoting ideas in different situations and for inviting discussion about how key ideas interplay.

System envisioning occupies a space in the development life cycle where we foster creativity in conceptualizing solutions to problems by allowing new ways of speaking about and seeing the world. Often creative thinking about systems is born out of metaphors and imagery.

In this workshop we want to share experiences on how system envisioning has happened and can happen in system development projects. We want to share stories on "leaving behind" an "as-is" system to re-conceptualize the possibilities of a software system. We will identify interventions and techniques that are important for imagining and sharing the possibilities for a "could-be" or "to-be" system. We will explore the role of metaphors and analogies in system conceptualization.

We wish to share experiences on requirements elicitation and generation techniques that help us think "out-of-the-box". Through techniques such as fantasizing, scenario generation/enactment and future search, we attempt to experience what a new system will be like, and what was important to its creation.

Organizers:

Ralph Hodgson, IBM Consulting Group, North America
Email: rhodgson@us.ibm.com

Martine Devos, EDS Electronic Data Systems

Brian Foote, University of Illinois at Urbana-Champaign


12 Modeling Reliability and Maintainability
of Large-Scale Object-Oriented
Software Systems
Adam's Mark Hotel
Governor's Square 11
 
Reliability and maintainability are two of the most important but not necessarily orthogonal qualities of software. It is assumed that the use of Object-Oriented Design (OOD) and Object-Oriented Programming (OOP) improves both reliability and maintainability. However, in practice this is yet to be proven; there are some counter examples that exist from real-world examples where OO programs are difficult to maintain and are of dubious reliability. The purpose of this workshop is to bring together modelers who study reliability and maintainability both in industry and academia to address various modeling issues especially regarding OO systems.

Two types of models namely, the causal type and the data analysis type are complimentary. The data analysis models (which commonly relate measures of software metrics to fault-proneness) are becoming common today while much work needs to be done regarding the causal models. Causal models can be divided into models of faults and fault detection while the other type directly models the probabilities of state-space. The strength of data analysis models is its ease of use and availability of case study applications. However, there is still need for more data analysis model applications for large scale OO systems. This situation is in the case of causal type models even worse. On the other hand, the issue of maintainability is hardly jointly studied with reliability and this works hopes to unite our modeling efforts for both of these software qualities. We briefly note that causal models are based on both topologicalinformation, and hence on modern partitioning techniques, and the information on independent components. Data analysis models consider these indirectly through metrics.

We will invite position papers on the following topics with emphasis on OO and component based systems.

  • What is new in causal based models for reliability and maintainability
  • What is new in data analysis models
  • What are the relationships between the two types of models and how can we use these jointly
  • What are the relationships between reliability and maintainability
  • Any others

Co-Chairs:

Prof. K. Ponnambalam
Department of Systems Design Engineering
University of Waterloo
ponnu@uwaterloo.ca

Dr. Brian Stacey
Nortel Networks
bstacey@nortelnetworks.com


13 Evaluating Object-Oriented Design Adam's Mark Hotel
Governor's Square 12
 
This workshop will focus on design evaluation for educators. We also welcome participation by people from industry. Our 1998 workshop resulted in a valuable conceptual model for understanding design evaluation. We now seek to further develop our understanding by using the model to structure advice for educators on how best to evaluate design in a variety of situations. Design evaluation is an important subject both from the perspective of software engineering, and the perspective of pedagogy. Any design has consequences, and designers must learn how to determine good and bad consequences that may flow from design decisions. Educators must lead students through this process and provide critical guidance for the future.

Our work on design evaluation stems from our earlier work exploring and promoting the early emphasis on design as an important step forward in OO education. A 1996 workshop resulted in general agreement about the advantages of the approach, but also identified difficulties concerning evaluation of design. The model we developed in 1998 clarifies the role of evaluation within the overall development process, with summative evaluation useful to implementors who need to assess designs, and formative evaluation useful to designers who wish to improve designs. We also outlined how evaluation must be done with respect to particular values, and we identified several alternatives, then enumerated various design representations, design evaluation mechanisms, and feedback methods.

We have already made an excellent start, but there is much yet to be done. The alternatives for representation, evaluation and feedback all need to be better related to appropriate design values. And while the feedback loop makes formative evaluation attractive, summative evaluation should not be ignored. Better understanding of summative evaluation would lead to better advice for people choosing between designs, and would also help to assess the performance of designers. For educators, it would also address the issue of student assessment. Finally, we need to determine how to test and verify our findings.

Prospective 1999 workshop participants are invited to submit a position paper with a contribution on this topic. The workshop will consist of presentations of these papers in the morning session, followed by an afternoon session of discussion and collaboration. As before, we will prepare a report summarizing the workshop and results for the OOPSLA addendum, and make workshop papers and related resources available via our web repository. We will again present an immediate report to the OOPSLA Educators Symposium.

For more details, see our workshop web site:

http://www.mcs.vuw.ac.nz/research/design1/

Primary Workshop Themes:

  • Object technology and computer science education
  • Support for educators involved in early teaching of OO design
  • Emphasis on design and evaluation, rather than implementation
  • Avoidance of programming language wars
  • Involvement of industry and educators working together

Organizers:

Robert Biddle, Victoria University of Wellington
Email: robert@mcs.vuw.ac.nz

Rick Mercer, University of Arizona

Eugene Wallingford, University of Northern Iowa


14 Behavior Semantics Adam's Mark Hotel
Governor's Square 14
 
The purpose of the Eighth OOPSLA Workshop on behavioral semantics is to bring together theoreticians and practitioners to report on their research and experience with making semantics precise and explicit in various OO specifications. The proposed Workshop continues the tradition of the seven successful OOPSLA workshops and two equally successful ECOOP workshops on behavioral semantics, Contributions based upon the first four OOPSLA workshops were the basis of the book "Object-Oriented Behavioral Specifications", and the later workshops form the foundation of the book "Behavioral semantics of businesses and system" to be published by Kluwer Academic Publishers in summer of 1999. These books have been coedited by the organizers of the proposed Workshop. Both the existing book and the proceedings of the previous OOPSLA workshops are widely cited in industry including various Object Management Group (OMG) activities. Results of the earlier workshops were also reflected in relevant national and international (ISO) standards (e.g., in Open Distributed Processing) and in various OMG documents.

Business specifications are used to understand and describe businesses independently of any systems - computing or otherwise - (to be) used for their possible automation. This understanding has to be expressed in a simple, clear, precise, and explicit way, in order to provide the essential common ground for business domain experts, software developers, or any other type of an implementor (e.g., HR, sales strategists, etc.). In order for any specifications to be understandable, they have to suppress irrelevant details (i.e., be abstract) and should not be presented in terms of possible or existing solutions. It follows that, for example, business specifications do not have to provide an owner for system state or behavior (as in message passing): such owners are required by legacy OO approaches to system development which have nothing to do with business specifications. The generalized object model solves this problem by providing explicit facilities to specify and realize collective state and behavior and is becoming recognized to a substantially greater extent in theory and in practice including international standards and OMG developments.

Explicit and precise specification of semantics provides the basis for reuse of concepts and constructs (patterns) common to all, or a large number of, business or system components, and in doing so save intellectual effort, time and money. They introduce precision much earlier than in coding, so that (for example) business people-and not the developers-can define all business rules.

Adequate specification approaches substantially ease the discovery of business requirements in discussion with business customers. They also support the clear separation of concerns-between problem specification and solution design-known since Adam Smith as division of labor. Different audiences are interested in different aspects of "common business components" and so require different kinds of specifications. Precise specification of semantics - as opposed to just signatures - is essential not only for business specifications, but also for business designs and system specifications. In particular, it is needed for appropriate handling of viewpoints which are essential for understanding large and even moderately sized systems, both business and computer ones. (Huge unstructured narratives presented as specifications are neither used nor read by anyone.) In order to handle the complexity of a (new or existing) large system or component, it must be considered, on the one hand, as a composition of separate viewpoints, and on the other hand, as an integrated whole, probably at different abstraction levels. Many concepts and constructs used for all kinds of behavioral specifications -from business to systems - have common semantics and thus are good candidates for standardization and industry-wide usage. Various international standardization activities-such as the ISO Reference Model of Open Distributed Processing (RM-ODP), ISO General Relationship Model, OMG activities around the semantics of UML and other OMG submissions, (common) business objects, as well as the OMG semantics and reference model working group-are at different stages of addressing these issues. The current extensive activities by International Standards Organization to create a new international standard for the Enterprise Viewpoint of RM-ODP, together with numerous recent OMG submissions related both to enterprise component architectures (such as the first three Business Object Initiative RFPs) and to using RM-ODP for specifications in Domain Task Forces (e.g. in the Financial Domain Task Force), exemplify the widely acknowledged industrial requirements for more adequate specification of semantics in business and other specifications of enterprise components. In addition, many recent interesting contributions in the business process reengineering area also explicitly recognize these needs.

Therefore this OOPSLA workshop is supposed to be a focal point (as the previous seven were) of bringing together theoreticians and practitioners to report their experience with making semantics precise (perhaps even formal), clear, concise and explicit in OO business specifications, business designs, and system specifications. Papers varying from research (where category theory is starting to be used successfully) through academic (transferring theory into practice) and industrial "war stories" are all welcome. Experience in the usage of various (object-oriented) modeling approaches for these purposes is of special interest, as is experience in explicit traceability of semantics between a business specification, business design, and a system specification.

The topics of the workshop include but are not limited to:

  • business specifications
  • business architectures
  • precise specification of semantics
  • semantics of OO modeling approaches
  • semantics of object process modeling
  • semantics-preserving refinement strategies
  • viewpoint modeling and integration
  • standards
  • semantics of business patterns (reusable fragments of specification)
  • related tool support

Organizers:

Haim Kilov, Genesis Development Corporation
Email: haimk@acm.org

Kenneth Baclawski, Northeastern University

Angelo E. Thalassinidis, A.T.Evans

Kevin P. Tyson, Credit Suisse


15 Implementation and Application
of Object-Oriented Workflow
Management Systems II
Adam's Mark Hotel
Governor's Square 15
 
Object-oriented technology is driving changes in development methods, databases, operating systems, integration standards, and application capabilities. At the same time, other aspects of computing technology are evolving to create new application opportunities and expose new challenges.

With Web/Internet/Intranet accessibility, emerging industry standards, and increased demand for inter-enterprise integration, current workflow management systems must undergo major changes to respond to a changing market, provide flexible, scaleable implementations, support multinational organizations and achieve competitive advantage. Automation of business processes will also enable new management tools. Using object-oriented technology is a viable way to address these demands and certainly will affect the extent to which new opportunities are realized.

Below are a number of specific areas that could benefit from applying object-oriented technology to workflow management:

  • Distributed workflow management standards
  • Workflow management application requirements
  • Limitations of existing workflow management tools and systems
  • Enablers for large-scale enterprise workflow management tools
  • Application of workflow management systems in healthcare, electronic commerce, manufacturing, etc.
  • Conceptual models for workflow management systems
  • Workflow management frameworks
  • Beyond workflow management
  • Visualization and specification of workflow management systems
  • Security

The primary expectation of this workshop is to identify critical issues related to workflow management and areas within workflow management that can benefit most from object-oriented technology. Other goals are to share ideas and experiences, reach consensus on approaches for resolving issues and strategies, and establish a communication mechanism.

Organizers:

Fred Cummins, EDS Leading Technologies & Methods
Email: fred.cummins@eds.com

Christoph Bussler, Boeing Research & Technology

Mamdouh Ibrahim, EDS Leading Technologies and Methods

Steve Marney, EDS Intelligent & Object Systems

Santanu Paul, TerraVision, Inc.


16 Multi-Dimensional Separation
of Concerns in Object-Oriented Systems
Adam's Mark Hotel
Governor's Square 16
 
Separation of concerns is at the core of object-oriented software development. It can provide a host of well-known and crucial benefits, but only if one has the right modularization at the right time: the concerns that are separated must match the concerns one needs to deal with. Unfortunately, different development activities often involve concerns of dramatically different kinds. For example, changing a data representation in an object-oriented system is typically well localized because of modularization by class, whereas adding a new feature to a system typically involves invasive changes to many classes: the feature code is scattered across multiple classes, and tangled with other code within those classes. One therefore needs different modularizations for different purposes: sometimes by class, sometimes by feature, sometimes by aspect (e.g., distribution or persistence), role , variant or other criterion.

We use the term multi-dimensional separation of concerns to denote separation of concerns involving:

  1. Multiple, arbitrary kinds (dimensions) of concerns.
  2. Separation according to these concerns simultaneously ; i.e., a developer is not forced to choose a small number (usually one) of "dominant" dimensions of concern at the expense of others.
  3. Overlapping or interacting concerns. It is appealing to think of many concerns as being independent or "orthogonal," but this is rarely the case in practice. It is essential to be able to support interacting concerns, while still achieving useful separation.

This workshop is intended to bring together researchers in this burgeoning area, and practitioners who have experienced problems that can help to guide the research. Specific areas of interest include:

  1. Development scenarios illustrating the need for multi-dimensional separation of concerns.
  2. Illustrations of concern overlap or interaction.
  3. Flexible, concern-based modularization and remodularization.
  4. Multi-dimensional separation of concerns throughout the software lifecycle, especially handling of concerns that span lifecycle phases and software artifacts.
  5. Adaptive programming, aspect-oriented programming, composition filters, conceptual modules, role-modeling, subject-oriented programming, views, viewpoints and other related approaches.
  6. Theoretical foundations.
  7. Language support.
  8. Environment support.

Organizers:

Harold Ossher, IBM Thomas J. Watson Research Center
Email: ossher@watson.ibm.com

Peri Tarr, IBM Thomas J. Watson Research Center

Gail Murphy, University of British Columbia




Tuesday

11 Making the Transition to Component-Based
Enterprise Software
Adam's Mark Hotel
Governor's Square 14
 
All major IT market research firms have identified component-based enterprise software development (CBESD) as the rapidly emerging trend in the software engineering. Component-based software development is based on the concept of developing software systems by selecting reusable software components and assembling them within appropriate software architectures. By promoting the use of object-oriented software components built by commercial vendors or in-house developers, the component-based software development approach delivers the promise of large-scale software reuse. Component-based enterprise software development has the potential to: (1) reduce significantly the cost and time-to-market of enterprise software systems, (2) enhance the reliability of enterprise software systems, (3) improve the maintainability of enterprise software systems, and (4) enhance the quality of enterprise software systems.

Over the past few years, IT and business organizations have been engaged in an informal kind of reuse through code sharing, design patterns, etc. However, the systematic reuse of software components across multiple applications and projects is in its infancy. The reason is that a wide variety of obstacles are faced in making the transition from the traditional software development approach to component-based enterprise software development. To overcome those obstacles, several engineering, process-related, organizational, and business-oriented issues should be addressed. The following obstacles are typically cited:

  • Business-oriented issues concerning how component development and support should be funded, lack of funding for education, training, access to vendor-supplied components, lack of a convincing business case and economic model for long term investment, unclear definition of product-line model and features, etc.
  • Process-related issues due to low process maturity of the organization, ill-defined or unfamiliar reuse-oriented methods and processes, new inter-group coordination and management needs, and well tested and documented methods and models to relate features to component sets and variability, etc.
  • Organizational issues due to the lack of a systematic practice for reuse activities and enterprise component development, lack of management expertise and support, etc.
  • Engineering issues mainly due to the lack of adequate techniques and tools for identifying, designing, documenting, testing, packaging, categorizing, and integration of reusable software components, too few and poorly understood standard patterns and architectures, COTS integration, etc.
  • Infrastructure issues due to the lack of widespread use of a standardized design notation such as the UML, common tools, base components, different programming languages and environments, support for multi-group configuration management, etc.

Organizers:

Martin Griss, Ph.D., Hewlett-Packard Laboratories
Email: griss@hpl.hp.com

Gilda Pour, Ph.D., San Jose State University

John Favaro, Intecs Sistemi


17 "None of us is as smart as all of us" -
towards an organization pattern language
Adam's Mark Hotel
Plaza Court 1
 
"None of us is as smart as all of us" - Gerald Weinberg

Some software organizations serve their customers well, they deliver on time, deliver a profit to the stockholders and build a supporting workplace for the team. And some don't. Quality of the result of our efforts depends on the quality of communication between users, customers and developers, designers.

Many people believe that the processes of OO software development are fundamentally different from those used in developing software in other paradigms. We will explore how some organizational and process patterns apply - or don't apply in OO development. Our findings may validate or repudiate the above belief.

Patterns help us understand existing organizations. Patterns have everything to do with transferring knowledge. They are often associated with reuse. They provide transfer of concept, insights, and information. Although there is nothing intrinsically object-oriented about process patterns, families of patterns that help shape the day to day life of our software projects have been collected within the OO-community. Our software projects don't span generations. So we need short cuts, getting teams together that are able of learning and sharing a common language in a short time.

A good pattern language for organization should give us both the means of expression and the freedom to tailor the solution to the particular environment and context of application of the patterns.

Goal of the workshop:

  • We will explore how some organizational and process patterns apply - or don't apply in OO development.
  • In a highly interactive workshop we diverge and converge on what a core organization and process pattern language could and should be.
  • We test our findings, using scenarios from real life situations.
  • We suggest that a poster be presented later during the conference.

Workshop participants: OO-project managers and technical leads. Both pattern writers and users of process patterns (beginners and experienced).

Organizers:

Martine Devos, EDS Electronic Data Systems
Email: martine.devos@eds.com

Michael Beedle, Framework Technologies Inc.

Stephen Berczuk, NetSuite Development Corporation

Neil Harrison, Lucent Technologies


18 Patterns in Software Architecture:
The Development Process
Adam's Mark Hotel
Plaza Court 2
 
Software architects create systems using many different methods. Some architects insist that the system structure be mapped out in detail before development work begins, while other architects provide a skeletal plan and then make their decisions as the implementation unfolds. Some architectural approaches provide a checklist of decisions to make before you begin allocating tasks to developers, while other approaches focus on solving problems by writing code, and refactoring to develop a coherent system structure. Still other approaches exist involving the generation of a system through the selection and application of patterns. Individuals new to the software development community often ask the question, "Which development approach should I select?". Rather than trying to reach agreement on the one true path, this workshop seeks to identify the forces that make one development approach more appropriate than another for a particular problem.

In this workshop we will examine different approaches to implementing software architecture, by looking at the processes by which real software systems have evolved. Interested participants should submit a 3-5 page position paper describing the approach used to develop a software system, and the impact of that approach on producing a coherent architecture. The ideal position paper will contain a story of personal involvement in the development of a system, concluding with a description of the lessons learned. Researchers interested in participating should contact the organizers with proposals describing how they can contribute to advancing the state of the art, possibly through education.

As with past Patterns in Software Architecture workshops, the morning session will focus on working in small teams to mine the position papers for insights and potential patterns. After a group lunch and an energy restoring activity, the teams will present their findings and collect feedback from the group that will strengthen the patterns. Finally, the group will attempt to weave the patterns into a whole, and identify gaps where additional patterns might exist. This workshop seeks to continue the work started during previous Patterns in Software Architecture workshops. This year's workshop will look at the approaches used to develop systems, and what forces play on the selection of an approach. By examining the implementation of real systems it is hoped to identify the patterns that drive decisions about development methods. Ultimately it is hoped to refine and compile these patterns so that they could contribute further to a Software Architecture Handbook.

Organizers:

Tom O'Rourke, PaineWebber
Email: tom_orourke@acm.org

Peter Long, PriceWaterhouseCoopers


19 Genetic Programming with Smalltalk Adam's Mark Hotel
Plaza Court 3
 
This workshop is intended to provide a forum for detailed discussions on the issues of using Smalltalk to develop Evolutionary systems using Genetic Algorithms. Significant focus will be given towards the development and use of Genetic Algorithms in Decision Support systems in Financial and Defense problem domains. All participants are expected to contribute at minimum one information report (no more than two pages) describing either a Fitness function or Crossover mechanism of personal interest. The Workshop organizers will coordinate the distribution of reports to achieve as broad of diversity as possible. Participants are also expected to have at extensive experience in systems development using one or more OO languages.

Specific Issues to be Addressed:

  • Overview of the present state of GA usage in public and private sector research.
  • Presentation of reports (based on actual experience) detailing the archetypes of fitness functions for several different problem domains. After presentation, these archetypes will be discussed by the workshop group and their similarities and contrasts reviewed.
  • Presentation of reports (based on actual participant experience) discussing the crossover mechanisms used for the previously discussed fitness functions. After presentation, particular emphasis will be given to discussing not only the differences of the crossovers but the detailed mechanics of their implementation.

Organizers:

Mr. William Cole, JumpStart Systems Inc.
Email: bcole@jmpstart.com

Mr. Art Long, GRC International


20 Achieving Bottom-line Improvements
with Application and Enterprise Frameworks
Adam's Mark Hotel
Plaza Court 4
 
Frameworks are specialized for a narrow range of applications, because each model of interaction is domain specific, e.g., designed to solve a narrow set of problems. A framework is more than a class hierarchy. A framework is a reusable, "semi-complete" application that can be specialized to produce custom applications. Frameworks like MacApp, ET++, Interviews, ACE, Microsoft's MFC and DCOM, and implementations of OMG's CORBA play an increasingly important role in contemporary software development. This topic has captured a great deal of attention in recent years since frameworks leverage, in practical terms, capital-intensive software investment through reuse, and higher-level application programming interfaces, so that applications can be developed ten times faster. The emerging focus on object-oriented application frameworks (OOAFs) offers software developers both a new vehicle for reuse and a way for capturing the essence of successful architectures, components, policies, services, and programming mechanisms. OOAFs are a very important issue for the software industry and academia at this time when software systems are becoming increasingly complex. We believe that the OO application frameworks will be at the core of the technology of the twenty-first century. This workshop will examine the OOAFs with respect to three central themes: "How to achieve bottom-line improvements with enterprise and application frameworks", "What are the economical impacts of OOAFs nationally and globally?," and "What is the strategic analysis of application framework investments?

The workshop will debate the strategic budgetary, Marketing, technical, and managerial advantages of OOAFs which impact an organization's bottom-line and its ability to support and adapt to changes in the marketplace. Finally, we will debate the broader economic impact of the enterprise and application frameworks on the organization, national, and international levels. Hamu & Fayad, in Fayad-CACM Thinking O Objectively column, made several claims related to strategic budgetary, marketing, technical, managerial advantages and economical impacts of OOAFs (David S. Hamu and Mohamed E. Fayad. "Achieving Bottom-Line Improvements with Enterprise Frameworks, The Communications of ACM, Vol. 41, No. 8, August 1998, pp. 110-113.)

We want researchers, framework developers, and application developers to answer the following questions:

  1. Are the various claims related to budgetary advantages [in CACM's column] true?
  2. Are the various claims related to marketing advantages [in CACM's column] true?
  3. Are the various claims related to technical advantages [in CACM's column] true?
  4. Are the various claims related to managerial advantages [in CACM's column] true?
  5. How can an organization use enterprise frameworks to reduce the lifecycle cost of producing information systems?
  6. What is the strategic planning process for investments in application framework technology? And what are best reuse investment analysis approaches for OOAFs?
  7. What are of best reuse economic models for OOAFs?
  8. What are the impacts of enterprise frameworks on the national and global economy?

Organizers:

Mohamed E. Fayad, Ph.d, University of Nebraska, Lincoln
Email: fayadm@acm.org, m.fayad@computer.org

Wolfgang Pree, Ph.d, University of Constance

David S. Hamu, TRW, Inc.


21 Metadata and Active Object-Model
Pattern Mining Workshop
Adam's Mark Hotel
Plaza Court 5
 
The unrelenting pace of change that confronts contemporary software developers compels them to make their applications more configurable, flexible, and adaptable. The era where business rules are buried in Cobol code is coming to an end. Today, users themselves may seek to dynamically change their business rules. Customers require systems that more easily adapt to changing business needs, meet their unique requirements, and scale to large and small installations. Multi-tiered systems often demand that data that move through them carry with them their own descriptions. There have been a number of successful frameworks and applications implemented and delivered in different areas of industry that use domain specific languages, metadata, and flexible implementation of business rules to address these sorts of needs.

Today, businesses want to buy applications rather than build them. As a consequence, the IT environment of large corporations frequently resembles a wild and vast collection of different off-the-shelf products as well as home-grown applications that all need to be integrated. Metadata-driven application and business model integration can play a major role in making these systems evolve smoothly.

A system with an active object-model has an explicit object model that it interprets at run-time. If you change the object model, the system changes its behavior. For example, a lot of workflow systems have an active object-model. Objects have states and respond to events by changing state. The active object-model (a.k.a. knowledge level) defines the objects, their states, the events, and the conditions under which an object changes state. Suitably privileged people can change this object model "without programming". Or are they programming after all? Business rules can be stored in an active object model that makes it easy to evolve the way a company does their business.

Researchers working with reflection and meta-level architectures have been looking at how to make systems highly configurable for quite some time as well. We hope to encourage such researchers to compare notes with practitioners who have been building highly configurable systems in industry.

Our goal is to document the techniques and principles that make these systems work. We hope to "mine" these systems and produce a preliminary collection of metadata and active object-system patterns, and help establish a shared vocabulary.

For further information:

http://www.uiuc.edu/ph/www/j-yoder/Research/metadata/OOPSLA99/

Organizers:

Joseph W. Yoder, The Refactory, Inc.
Email: j-yoder@uiuc.edu

Michel Tilman, Unisys

Dirk Riehle, Ubilab, Union Bank of Switzerland

Martin Fowler, Independent Consultant

Brian Foote, The Refactory, Inc.


22 Refining the Practices of
Extreme Programming
Adam's Mark Hotel
Plaza Court 6
 
Although Extreme Programming can't possibly work, there are people successfully putting it into practice.

Extreme Programming has been building some notoriety over the last couple years. Although it is still an enigma to many who have heard about it, there are others who are actively doing it.

This workshop will be a place where those practitioners who are using it can come together to challenge and encourage each other as they share what they've been doing and where they are going and work together to refine their art. Rather than introduce or defend XP, we will be working together to examine what works and doesn't work and determine how to improve the practice and enlarge the applicable domain.

Those who have adopted XP have typically had to overcome many obstacles. Although we may have been inspired and encouraged by how XP worked on the Chrysler C3 payroll project we have each had our own context(s) in which we've had to introduce and execute XP. As interesting as it would be to hear all of those stories, we will not just present our experiences here.

We will be applying some of the XP practices throughout the day to produce a living Best Practices hypertext manual. We will start with an initial exploration phase based on position papers. We will then identify desirable outcomes (stories) and, based on what we have learned, suggest criteria (tests) by which practices should be judged. Then, working in pairs and using networked laptop computers, and with our position papers available online, we will author/edit the hypertext (custom wiki) of principles, practices, contexts, and criteria that will serve the participants needs in the coming year. We will extract from this hypertext a workshop report that will appear in the conference addendum. More importantly, the editable hypertext will remain a private resource for attendees of this and potential future workshops.

Organizers:

Ken Auer, RoleModel Software, Inc.
Email: kauer@rolemodelsoft.com

Ward Cunningham, Cunningham & Cunningham, Inc.


23 Rigorous Modeling and Analysis
with the UML: Challenges and Limitations
Adam's Mark Hotel
Plaza Court 7
 
The UML is a standard object notation that is targeted at large complex systems. The high quality experiences embedded in the UML certainly makes its application to complex systems desirable, but the lack of precise semantics can limit its effectiveness. The modeling of complex systems (i.e., systems with a variety of interrelated features, data structures, and critical operational features) requires the use of modeling techniques that provide complexity management mechanisms and that allow for the early detection of errors in requirements and designs. The separation of view principle has proven to be an effective means of controlling complexity, and is well-supported by the UML. On the other hand, the formality and rigor principle that facilitates the detection of errors in requirements and designs is not well-supported in the UML.

It is well-known that requirements and design errors are more costly to fix if they are uncovered during the coding and code analysis activities. Requirements and design modeling notations that enable rigorous analysis (e.g., testing, prototyping/simulation/animation, verification of OO models) can help reduce this cost by allowing developers to detect errors earlier in the development lifecycle. Developing a precise semantics for UML notations that enables practical, tool-supported rigorous analysis of UML models can enhance its applicability to the modeling of complex systems. Development of a precise, complete, and understandable semantics for the UML notations can also lead to better utilization of UML modeling notations. A formal analysis of the semantic foundations of the UML notations can lead to more precise and complete natural language descriptions of the notations in the UML standard. The insights provided by a well-formulated description of the UML semantics can help modelers choose appropriately among a variety of modeling constructs.

Developing a rigorous foundation for the UML requires consideration of the role that the UML can play in facilitating software engineering. For example, the development of software models from architectures, patterns, and other forms of reusable experiences is highly desirable, and should be supported by the rigorous foundation.

The purpose of the workshop is to bring together researchers and practitioners from academia and industry to report on their experiences with developing UML-based rigorous development techniques and their foundations. Presentations and discussions will focus on identifying the challenges, recognizing limitations, and analyzing proposed approaches to using UML in a rigorous manner. Particular attention will be paid to work on improving the OCL to enhance its ability to support rigorous reasoning, incorporation of semantic information into meta-models, development of UML-based rigorous analysis techniques, and on works that use the UML to rigorously define and reason about software architectures.

For additional information please visit http://www.univ-pau.fr/OOPSLA99/

Organizers:

Robert France, Colorado State University
Email: france@cs.colostate.edu

Jean-Michel Bruel, Universite de Pau et des Pays de l'Adour

Brian Henderson-Sellers, University of Technology, Sydney, Australia

Ana Moreira, Universidade Nova de Lisboa

Bernhard Rumpe, Technische Universitat Munchen


24 XML and Objects Adam's Mark Hotel
Plaza Court 8
 
Little more than a year old, XML already seems to be the next technology of the web. XML is of great importance because it can enable a multitude of IS functions: data warehousing; meta-data definition; general three- or N-tier web-based application architectures; document management; workflow. At first XML appears simply to be a data definition language - the complete antithesis to the object approach of binding data and behaviour - but in practise it complements objects very well. The purpose of the workshop is to explore the potential uses of a combination of object-oriented technology and XML. The workshop is divided into two parts: the first part will examine applications of XML and objects; the second part will focus on the requisite standard extensions and tool support necessary to enable the usages envisioned in part one. Because XML is still in its infancy, we have an opportunity to influence the standards to reflect more of an object-oriented flavour. It is expected that this workshop will bring together a variety of experiences and insights that may contribute to the future development and advancement of XML.

Workshop attendance is by invitation only. Interested participants are expected to have participated in the application of XML technology or have knowledge of how object-oriented technology could be combined with XML. Participants are expected to contribute to discussion and to share their experiences. We invite papers from engineers, writers, architects and anyone else with an interest in exploring what objects and XML can do for you. We are particularly interested in papers that address the following topics:

  • An experience using XML and objects
  • Architectures that support the integration of XML and objects
  • A proposal for standard extensions
  • A proposal for tools

Organizers:

Laura Hill, Sun Microsystems, Inc.
Email: l_hill@mindspring.com

Ron Ben-Natan, RTS Software

Bernard Horan, Sun Microsystems Inc.

John Nolan, Drsdner Kleinwort Benson


25 Simplicity, Performance and
Portability in Virtual Machine Design
Adam's Mark Hotel
Governor's Square 9
 
We all know that the demand for performance is insatiable. Furthermore, the object-oriented language community has historically needed to prove that OO languages could rival the efficiency of procedural languages. As a result, we have not always explored design choices that result in slower but simpler, more portable, and sometimes more reliable virtual machines.

An example of such a performance vs. simplicity tradeoff arises in the choice of a dispatching mechanism for the virtual instruction set. A simple virtual machine might dispatch bytecodes via a case statement, a more complex one might employ some form of threaded code, and a very high-performance one might translate bytecodes into native code dynamically. Each of these alternatives may have indirect complexity, portability, and performance costs. Case statements make hardware branch prediction difficult thus triggering pipeline stalls. Dynamic code generation requires an architecture-specific code generator and careful synchronization between the processor caches and the instruction fetch pipeline. Clearly, the case statement will be slower and the dynamic translator will be harder to port, but when performance and portability are both important, how does one choose? We'd like to understand tradeoffs between virtual machine design choices as well as we understand tradeoffs between different sorting algorithms.

While investigating such tradeoffs is one theme of this workshop, we encourage papers about every aspect of virtual machine implementation including:

  • the impact of processor/memory architecture on performance
  • history: what can we learn from the 1970's and 1980's
  • using object-oriented technology to build virtual machines
  • embedded virtual machines
  • server virtual machines
  • multi-language virtual machines

Since there have been a number of excellent OOSPLA workshops on garbage collection, we would like to gently encourage papers focusing on other aspects of virtual machine design.

Organizers:

John Maloney, Walt Disney Imagineering
Email: johnm@wdi.disney.com

Antero Taivalsaari, Sun Microsystems Laboratories

Dan Ingalls, Walt Disney Imagineering


26 Distributed Object Security Adam's Mark Hotel
Governor's Square 10
 
The purpose of this workshop is to provide a forum for discussion of security problems relating to distributed object-oriented programming environments. As object-oriented technology is becoming more widely deployed, security has become a pressing issue. Object-Oriented programming languages and object-based systems generally offer a convenient set of abstractions for security, such as strong typing, well-defined interfaces and encapsulation of data. However, they also introduce a number of new problems, such as deciding on the granularity of protection in fine-grained object systems and the possible ambiguities arising from polymorphism and dynamic binding, e.g., can a compromised class be substituted for a valid one.

Distribution of objects on a network accentuates the existing problems and introduces a whole range of new security issues that have to be resolved, notably problems arising from mobility of instances or classes. Resolution of these problems is especially important if the objects are to be made accessible on the Internet or through the World Wide Web.

Reusability is one of the traditional virtues of object-oriented systems. However, security problems may arise when objects are reused in an execution context that is different from the context of the original implementation, e.g., the authentication and authorization required by an object modeling a bank account is very different, depending on whether its methods are being invoked from within the banks database or by a home-banking client on the Internet.

Component-based programming and Java Beans allow large parts of applications to be assembled out of an existing collection of components or beans. However, components and beans have the same potential security problems as reusing ordinary objects. The problems arise because components and beans cannot deal with the non-functional requirements, such as security, of the application.

New programming paradigms (such as reflection and aspect-oriented programming) are being introduced to deal with non-functional requirements in object-oriented systems. These paradigms look promising, but also introduce new questions such as: How can we use these paradigms to program secure applications? and how can we build secure systems that support these paradigms?

Topics of interest include but are not restricted to:

  • Application requirements for security
  • Security in the CORBA or COM frameworks
  • Security of object-oriented languages
  • Security models for object-oriented programming environments
  • Security of mobile object systems (mobile agents/active networks)
  • Security policy models and implementation, particularly for object-level policy
  • Security of reflective and aspect--oriented programming languages/runtime systems
  • Formal methods and verification of security in object-oriented programming environments
  • Granularity of protection in OO systems
  • Protection and object reuse
  • Practical experiences with security in OO systems (CORBA, COM, Java, etc.)

Organizers:

Christian Jensen, Trinity College, Dublin
Email: Christian.Jensen@cs.tcd.ie

Li Gong, Sun Microsystems, Inc.

Daniel Hagimont, INRIA

Trent Jaeger, IBM T.J. Watson Research Center

Jan Vitek, Purdue University


27 Java and Databases: Persistence Options Adam's Mark Hotel
Governor's Square 11
 
Today, many companies are making an expensive shift to object technology. For instance, COBOL programmers have to be educated in object-oriented programming. These days, the language of choice is Java? for many reasons: Java is the synthesis of good experiences gained with other object-oriented languages, such as C++ and Smalltalk.

Real-world objects can easily be modelled in a Java program or applet. However, most applications require a persistent storage medium like a database. Little has been published about what experiences users have in combining Java and Databases, for example:

  • What problems has it helped to overcome?
  • What problems has it helped to reduce?
  • What problems has it introduced?

These questions are particularly important, since Java technology, like many new technologies, can result in cultural changes and the way things "get done". Furthermore companies act as global companies and need wide distributed applications with stable and efficient data stores to provide "just-in-time information" via an intranet. This is a key issue to be a successful company having flexible reactions to global changes. Java technology becomes the standard platform for both distributed and intranet applications.

This workshop aims to bring together academics, users and vendors who have experiences in managing and handling persistent Java objects in their organizations. The goal is to discuss some of the issues and problems that they have experienced, what solutions they have developed and what lessons they have learned.

Organizers:

Juergen Zimmermann, sd&m AG (Germany)
Email: zimmerma@sdm.de

Akmal B. Chaudhri, Computer Associates Plc (UK)

Francois Bancilhon, Ardent Software Inc. (USA)

Jose Blakeley, Microsoft Inc. (USA)

Dan Fishman, Informix Software Inc. (USA)

Roberto Zicari, LogOn Technology Transfer (Germany)


28 Business Object Component Design
and Implementation V: From Business
Objects to Business Components
Adam's Mark Hotel
Governor's Square 12
 
The NCITS Accredited Standards Committee H7 Object Information Management, now part of NCITS T3 Open Distributed Processing, and the Object Management Group Business Object Domain Task Force (BODTF) will jointly sponsor the Fifth Annual OOPSLA Workshop on Business Object Component Design and Implementation.

This year's focus will be on design and implementation of business object component frameworks and architectures. Important questions are:

  • What is a comprehensive definition of a business object component?
  • Are the four layers (user, workspace, enterprise, resource) presented at the OOPSLA'98 workshop the right way to layer a business object component system? (Herzum and Sims, 1998)
  • How is a business object component implemented across these layers? What are the associated artifacts? Are there different object models representing the same business object component in different layers?
  • What are the dependencies between business object components? How can they be plug and play given these dependencies? How can they be flexible and adaptive? How do they participate in workflow systems?
  • How will the emergence of a web-based distributed object computing infrastructure based on XML influence business object component architectures? In particular, is the W3C WebBroker proposal appropriate for distributed business object component computing?

Goals of OOPSLA Business Object Component Workshops

  • Enhance the pattern literature on the specification, design, and implementation of interoperable, plug and play, distributed business object components.
  • Clarify the design and implementation of component based systems, including systems in which workflow patterns and the REA accounting model are basic building blocks for production business systems.
  • Contribute to emerging architectures for Intranet/Internet/Extranet applications, particularly those applications that integrate business object components, object and relational databases, and XML.
  • Pursue issues developed in previous years workshop stimulated by papers on heterogeneous distributed workflow systems. Specify business object component solutions to mobile agents, process engines, and systems that exhibit emergent behavior. Cross-fertilize business object design concepts with experience from the field of complex adaptive systems.
  • Provide explicit experience reports on business object component systems developed and in production.

Organizers:

Jeff Sutherland, IDX Systems Corporation
Email: jeff.sutherland@computer.org

Cory Casanave, Data Access Corporation

Haim Kilov, Genesis Development Corporation

Joaquin Miller, EDS Systemhouse

Dilip Patel, South Bank University

Workshops
Submission Information
Workshops At
A Glance
Full Description
of All Workshops
Back To
Final Program

 OOPSLA'98 Home