The OOPSLA poster session is an alternative forum for authors to present the results of their work. Posters cover the same technical areas of interest and reflect the same degree of professionalism in their work as in the technical papers, yet are different in the manner in which the material is presented by the author(s). There is an interactive session associated with the posters, where all the poster authors attend their posters and conference attendees can discuss the work with the authors. The discussions tend to be open and free-flowing and you are allowed to ask the viewers questions as well as have them ask questions of you! Posters are particularly appropriate for work that is too preliminary for a paper session. The OOPSLA '96 Poster Session allows close interaction between authors and attendees interested in a specific theoretical or applied approach to object technology. Posters should provide both visual impact and the ability to stimulate interaction among attendees. Authors are provided display space and are required to be available during designated times (approximately 4 hours).
The most difficult and important process within Software Engineering is Requirements Analysis - the production of analytic models that accurately and adequately represent the requirements of the system to be built. This paper presents a series of patterns (or processes) that can be used to perform an object-oriented requirements analysis. These patterns indicate how to define and refine various portions of the analytic models, and examples are provided indicating their use. |
A Use-Case Based Method for User-Interface Development The goal of this work is to present an object-oriented method for user interface development combining the use-case approach and the multiagent model. The system architecture is expressed as a generic framework, where the interface agents, constituting the graphical interface component, are also designed according to known frameworks. The proposed method covers all the phases of software development, and it is actually used in several software projects, enhancing strong adaptability, in the sense of reuse and extension of the resulting systems. |
Business applets - loosely integrated (Bali) Bali is a prototype for a development tool for Java Business Applications. Bali is written in Java and uses itself for development. It has a drawing component to develop OMT-style object models. A code generator produces Java code for these object models, including a standardized GUI and model-view interactions. The purpose of Bali is, to explore the possibilities for new, portable, more flexible, and more modular application development tools. |
A Production Support Process For A GemStone Based Architecture Congratulations, your project is one of the special few that has delivered a new production system. Now you are experiencing the agony of lost application code fixes, uncertainly about the version of code in your database, and fixes which do not work when placed in production all while trying to continue new development. Come by this poster and see a process that will get things back under control! |
Persistent Data Conversion A persistent data conversion design pattern was developed to solve the data conversion problems when a new release is deployed. The major idea is to control the persistent data conversion from release to release. Data conversion is not difficult, but it is expensive and time-consuming. It usually takes a lot of hardware to do the job. The ideal solution is to do a controlled data conversion. When the object model and schema are designed, data conversion should be considered. The design should minimize data conversion. For one release, the design does not need any data conversion. For another release, the design needs partial data conversion. For some other release, the design needs complete data conversion. A controlled data conversion approach should be used from release to release. Sometimes it is worth while temporarily to break the rules and conventions for the design of the object model and schema if there is a big gain for data conversion. |
Classification of Composition and Interoperation A classification of composition and interoperation mechanisms is proposed. Levels of composition are distinguished for components with data, user, and/or program interfaces. Interoperation is classified according to control and data interaction. The composition levels and a matrix of interoperation mechanisms will be presented. |
Preliminary Experience Report on the Implementation of an Enterprise System through Use Cases, Object
Modeling and Task Analysis We applied Jacobson's use cases, user task analysis, and OMT object modeling in the development of an enterprise-wide system. Use cases provide each application team with a way of exploring user-system interactions and describing system behavior. Task analysis provides a user-centric view of a suite of applications. This view aids in analyzing usability characteristics of the system. A three-layer (Entity, Task, Interface) class separation in OMT object models expresses the analysis and design work of each application team in a form that is more easily analyzed and iterated upon by both domain and user interface engineers. |
Extending OSM for Templates Programming language templates allow developers to capture and name coding/detailed-design expertise for subsequent reuse. Here, we describe a technique, called OSM Templates, that extends this idea for analysis, specification, and design. Although OSM Templates do not represent the same kind of reuse found in patterns, they provide a form of reuse that can be codified and automated. Developers define an OSM Template with a parameterized OSM model instance, a graphical notation, and a set of instantiation rules. In addition to symbol substitution similar to that used in the instantiation of programming language templates, instantiation rules for OSM Templates support conditional, recursive, and generative rules, and thus offer the power of a fully computable language. |
Dynamic Modeling with DYNAMO DYNAMO is a set of tools which supports construction, exploration and analysis of dynamic, object-oriented design models. Our work is based on the observation that it is difficult to deal with dynamic models on a static medium. We are developing a formalism which allows us to express scenarios at a high abstraction level. DYNAMO can be thought of as a dynamic medium which matches the dynamics of the problem domain. We focus on conceptual issues of dynamic modeling instead of superficial, notational issues. |
Automatic Code Generation on a Test Bed Project The appropriate use of CASE tools has provided for some formality and consistency across a development effort. Coding, however, can still be a repetitive, labor-intensive effort. The manual enforcement of software architecture, design patterns, standards, and conventions across a team is a difficult endeavor. A mechanism to reduce this manual coding and enforcement, and in addition to force "safe" coding practices, reduce repetitious coding, and reduce syntax/compile/runtime errors would provide an advantage to producing quality code on a tight schedule. The Phoenix test bed project successfully solved this problem by use of a CASE tool, and development and use of an automatic code generator. |
Modeling Patterns in Graphical User Interface Design GUI design patterns capture the experience and rationale of GUI specialists, as well as embodying time-proven strategies to recurring problems in graphical user interfaces. Like Gamma's design patterns, our GUI design patterns (called OSM design patterns) include problem descriptions, solutions, and consequences. The unique challenges of GUI design are accommodated by allowing each pattern to include multiple solutions, each targeted to a difference interface metaphor and each with its own consequences. The problem description and solutions are formally modeled with OSM, while the consequences are informally described with narrative text. |
SimObject: Object Model Animation and Business Process Simulation Bernhard Bichmann, Thomas Grotehen |
Itineraries for Representing O-O Behavior: An Extended Abstract Michael M. Werner |
Applying Component-based Application Architecture David L. Bailey |