posters

monday - thursday

Co-Chairs:
Shail Arora, Inca Computer Co.
Ann Patrick, Object Technology International, Inc.

Posters provide a medium for both researchers and industry to describe work in progress and to elicit feedback from the OO community. In addition to being on display in the exhibit hall Tuesday through Thursday, the posters will be on display at Monday's Welcome Reception, where the poster authors will be available to describe their work and answer questions in an informal setting.

Command and Control, Java and the World Wide Web

Patricia J. Dousette, Ari Danesh, and Matthew Jones, Litton Data Systems

withdrawn by organizers

 

A Framework for Constructing Business Application Software

Mari Natori, Hiroshi Okano, and Yuji Arikawa, Toshiba Corp.

We propose a framework for business applications and present a software structure constructed by using this framework. Our framework consists of an abstract class group and a common component group. The abstract class group provides the skeleton of a business application system. This group consists of the following four subgroups: application core, presentation, report, and business logic. The common component group is a set of class libraries for reusing existing assets.

 

Octopus/UML: a pragmatic object-oriented method for real-time systems

Rallis Farfarakis, Nokia

Octopus/UML is a practical object-oriented software development method for embedded real-time systems. The method is an improvement on the original Octopus method. Octopus is the brainchild of Nokia Research Center, Helsinki. Since 1993, there has been a constant development and refinement of the method due to the feedback from real practical work at Nokia business units and scientific research. Several projects have applied the method, some ongoing projects are applying it currently, and new projects using Octopus/UML are planned. The projects involve mobile and fixed communications technology.

 

Teaching Object-Oriented Programming with More Practical, Complete, and Convincing Examples

Yanjie Zhao, Nagasaki Institute of Applied Science

It is often not easy for teachers to select suitable examples for teaching object-oriented technology to students, particularly to programming beginners. There are several reasons for this difficulty. First, object-oriented mechanisms are often used to cope with large and complicated problems that require lots of time and expertise to solve. Second, object-oriented mechanisms often play effective roles in large and practical programs that include many practical details and require special knowledge in application fields. And lastly, students do not easily understand object-oriented mechanisms without being given long and complicated examples. We discuss a teaching scheme that helps teachers to select suitable examples to enable students to understand object-oriented technology. We also discuss our experience with this teaching scheme.

 

Abstracting Positional Information in Data Structures: Locators and Positions in JDSL

Michael T. Goodrich, Johns Hopkins University; and Mark Handy, Benoît Hudson, and Roberto Tamassia, Brown University

Libraries of data structures provide developers with a set of data structures that allow them to concentrate on the new aspects of their project, rather than having to rediscover the solutions to solved problems. One requirement of all libraries is to provide the user with a method of accessing stored elements efficiently. Currently, either iterators or items are used for this purpose. We have refined the notion of an item and split it into two related concepts: "positions" and "locations".

 

An Interpretive Filter Layer for Checking Object Structure

Hamilton Link, Sandia National Laboratories

One key aspect of integrated network applications is the communications mechanism. In a network of heterogeneous systems being used to achieve a variety of goals, an individual system may receive a large amount of irrelevant information. Some of this information may be discarded based on its class by a class-based filtering mechanism, but an application may still be forced to sift through information that is malformed or otherwise inappropriate. A second layer of defense must therefore be created which analyzes the structure or syntax of incoming objects. This layer prevents the dispersion of syntax checking throughout the application code, because after a module registers a filter, any objects it receives from the outside have already been validated. Here we describe an interpretive filter class, explain how the filter set is maintained and used, and demonstrate an extension of the filter class for the application of message syntax checking for the Knowledge Query and Manipulation Language (KQML).

 

Tiered Vector: An Efficient Dynamic Array for JDSL

Michael T. Goodrich and John G. Kloss II, Johns Hopkins University

We demonstrate the Tiered Vector, an implementation of the Vector Abstract Data Type (ADT) that provides O(1) worst case for rank based retrieval and O(<square root of n>) amortized time for insertion and deletion. We also provide results from experiments involving the use of the Tiered Vector in JDSL, the Data Structures Library in Java.

 

Object Filtering by Adaptive Default Hierarchies

Steven Y. Goldsmith, Sandia National Laboratories

In an open environment such as the Internet, systems of autonomous interoperating programs may receive a large volume of irrelevant stimuli in the form of objects of various classes. Nefarious programs may generate stimuli in an attempt to overload the input channels of a legitimate program. Legitimate programs may broadcast request objects to many programs, also creating an overload situation. Rapidly differentiating relevant objects from irrelevant objects without using excessive computational resources is necessary to ensure performance immunity to deliberate attacks in such a regime. Moreover, a program must be able to adapt its input filtering mechanism in response to new tasks.

One solution to the object filtering problem is based on a design pattern called an adaptive default hierarchy (ADH). A default hierarchy is an efficient structure for filtering a large input space with a minimum number of filter elements. A default hierarchy enables program interoperability and sensory input adaptation while enforcing the integrity of the program boundary. The default hierarchy interface mechanism will support a wide variety of communications regimes and enable custom program-to-program communications, but will concomitantly provide a robust and secure barrier to inadvertent or deliberate actions that might compromise the program's function or integrity. It will provide a mechanism for dynamic control of the program's sensory input channels by the program's processing mechanism, enabling the program to focus its attention on important stimuli, adapt its communications functions, and determine its level of interoperability.

 

A Pattern-Rich Process Definition Environment

James J. Cusick, Columbia University

In order to deploy the appropriate process constructs for small software R&D efforts, a study is underway to design and build a process support environment, and measure projects using the environment. A web-based environment for defining customized software processes from a repository of artifacts was constructed and tested. Artifacts include tutorials, templates, examples, tools, references, and design patterns. Trials of the tool for supporting student team projects were encouraging. Planned metrics for deployment will include accuracy of meeting deliverables, software quality, and productivity. By presenting this ongoing work, the authors hope to generate collaborative efforts in this are or to refine its focus and applicability.

 

10 Practical Limitations of OO

Thad Scheer and Scott Pringle, Lockheed Martin Mission Systems

The mainstream software development community has been using Object-Oriented (OO) technology for many years now. By reviewing successes and failures we can begin to identify strengths and weaknesses in the paradigm itself. From experience we know that people generally find OO difficult to master, and that OO is easier to do incorrectly than it is to do correctly. Also, contrary to some early claims about OO, the paradigm does not "guide" developers towards more correct software engineering; however, it does facilitate excellent software engineering if applied correctly. While OO is undeniably powerful, the ability to apply good software engineering principles is sometimes hampered by the paradigm.

We outline ten shortfalls of OO taken from our experiences. These shortfalls are significant because the circumstances in which they occur are common. Every project we have seen has encountered one or more of the problems listed here; most projects tend to encounter them all. As we look to the future, asking ourselves what comes after OO, these limitations will provide insights into what improvements we can expect in the next new paradigm.

 

Patient Headache Care Education System Using a Software Reuse Reference Model

Anil Khatri and David C. Rine, George Mason University

Instructional medical information systems tools have emerged as one of the most important support areas for medical information systems. Our research goal in the study of instructional medical information systems tools is to improve the performance of decision making by integrating medical professional knowledge with computer information systems. Our instructional medical information system is in the domain of headache education. The user of the system is the patient. Our system is being effectively and efficiently developed using a software reuse reference model as a starting point. By leveraging software development reuse, our resulting Patient Headache Care Education System (PHCES) will have a great impact on effectiveness and efficiency of developing patient headache health care education software.

 

A Product Line Model

Khaled Jaber, Case Western Reserve Universityand Nader Nada, George Mason University 

A product line is a group of systems sharing a common, managed set of features that satisfy specific needs of a selected market or mission. In the product line approach, management, system developers, and a reuse team are interested in some views of the product line. In this poster, a model is defined to present product lines, their derived products, and common assets used in these product lines. The model is used to convey views of interest to management, system developers, and a reuse team in the product line approach. Its purpose is to capture information about organizations' product lines and make it visible to people both inside and outside the organizations. A repository that supports the product line approach can use the model to present these views. Management can use the model when producing new products of a product line, negotiating with customers, and assessing the benefits of adopting the product line approach. Product line developers can use the model when developing products of a product line. A reuse team can use the model through asset identifications, ensuring a successful use of asset base in and across product lines, and when assessing the level of reuse. A continuing work will show how a repository can implement the model.

 

Computing: An Object-Oriented Approach -- Transforming Computing to Object Technology

Mark Woodman and Rob Griffiths, Open University

After four years of development, the distance learning institution, the Open University (OU), has launched its flagship course Computing: an Object-Oriented Approach--a radical introduction to designing and writing complex software systems. It goes beyond what any organisation has attempted by providing to ordinary users of computer systems the resources to become developers of them by teaching them to use Object Technology from ground zero. Utilising Web technology and our version of the state-of-the-art Smalltalk programming and learning environment, LearningWorks, the course defines computing for thousands of people per year and redefines it for others. The initial 'class' size for this first year of the 440-hour course was over 5,100 students. With students typically aged 37 and in middle management, the social and educational impact will be both dramatic and immediate. In 1999 an additional 700 will take the course at the Singapore Institute of Management, and other educational institutions are currently negotiating to adopt the course.

 

An Object-Oriented Framework for Multiparty Interactions in Fault-Tolerant Distributed Systems

Avelino F. Zorzo, University of Newcastle upon Tyne

In this poster we show an object-oriented framework for achieving multiparty interactions in fault-tolerant distributed systems. We have applied the framework in two different areas: safety-critical systems and fault-tolerant parallel systems. We have used a fault-tolerant Production Cell case study to show how we can use the framework to implement a safety-critical system, and we have used an example based on the GAMMA paradigm to demonstrate how the framework can be used to add fault tolerance to a parallel computation model. The framework presented here was writing using the Java language.

 

A Pattern for Structuring UML-Based Repositories

Pavel Hruby, Navision Software

The idea of using Unified Modeling Language (UML) appeals to people, but actually using it can be challenging. UML defines a standard notation for object-oriented systems, but does not specify how to structure the information describing the system, or what the relationships between various diagrams are.

This poster illustrates a simple structure of design artifacts that can be used for structuring project repositories containing UML diagrams. The structure is based on a pattern of four design artifacts that describes classifier relationships, interactions, responsibilities and lifecycles. The pattern can be applied to different levels of abstraction and to different views on a software product, which allows the repository to be extended in a consistent way to cover various relevant information about the software product. After OOPSLA '98, the poster will be available for downloading at the address: http://www.navision.com/default.asp?url=services/methodology/default.asp.

 

From Two to Three Dimensional Software Modeling

Joseph (Yossi) Gil, IBM T.J. Watson Research Center; and Stuart Kent, University of Brighton

Traditionally, diagrams used in software systems modelling have been two-dimensional (2D). This is probably because graphical notations, such as those used in object-oriented and structured systems modelling, draw upon the topological graph metaphor, which, at its basic form, receives little benefit from three-dimensional (3D) rendering. This poster presents a series of 3D graphical notations demonstrating effective use of the third dimension in modelling. This is done, for example, by connecting several graphs together, or by using the Z co-ordinate to show special kinds of edges. Each notation combines several familiar 2D diagrams, which can be reproduced from 2D projections of the 3D model. 3D models are useful even in the absence of a powerful graphical workstation: even 2D stereoscopic projections can expose more information than a plain planar diagram.

 

GoWeb System--A Preview

Nikola B. Serbedzija, GMD FIRST - German National Research Center for Information Technology

This poster presents highlights of the GoWeb system, a middleware that provides Web-based distributed execution of collaborative applications. The system is a part of a wider on-going project whose aim is to make computer resources, both software and hardware, available to Internet users. The GoWeb middleware has been constructed from prefabricated Web-enabled objects with the ability to open and maintain Web connections and provide collaboration over the Internet by invoking remote methods. The GoWeb system is an object-oriented distributed infrastructure that runs on any platform that supports a Java Virtual Machine. A number of case studies illustrate the practical use of the system. The technical note: "GoWeb System -- An Overview" and the demo "GoWeb System -- On View" complement the system description with more text and a live demonstration.

 

The Siren Music/Sound Package for Squeak Smalltalk

Stephen Travis Pope, Center for Research in Electronic Art Technology, Dept. of Music, U.C. Santa Barbara

The Siren system is a general-purpose music composition and production framework integrated with Squeak Smalltalk (Ingalls et al., 1997); it is a re-implementation of the Musical Object Development Environment (MODE), the software component of the "Interim DynaPiano" project. Siren is a Smalltalk class library of about 190 classes for building musical applications. It runs on a variety of platforms with support for MIDI and audio I/O. There are several elements to Siren: the Smoke music representation language; voices, schedulers and I/O drivers; user interface components for musical applications; and several built-in applications. The poster will illustrate the Smoke language's design and implementation, present the compiler and user primitive technology of the real-time I/O system, and show Morphic-based GUI tools that use the Navigator MVC structure. Siren's source code is available for free download at http://www.create.ucsb.edu/htmls/siren.html.

 

Rule-Based Architecture: Beyond Pure Objects

Ted Steuer, Norrell Information Services

Organizations need to rapidly respond to intense competition and changing government regulations. In serving as a business enabler, software should expose the business to the users that run the business. All too often, the business rules that drive a company are hidden in arcane (to the user) software programs (albeit elegant to the developers!). The problem with taking a pure object-oriented approach is that all changes to business rules become software changes. This implies coding, testing, and release delays. When you separate out the business rules, you provide the capability of putting rules in force very quickly. You also provide the ability to analyze rules to run your business more effectively. Applied properly, a rule-based approach can deliver a more flexible and responsive solution than a purely object-oriented approach.

 

Demos Schedule Demos Descriptions
(in entirety)
Posters Overview Posters Descriptions
(in entirety)

OOPSLA'98 Home
Last updated 14 October 1998 14:45:18