The Object Technology Morass Towards better unification in object technology

07/02/99


Click here to start


Table of Contents

The Object Technology Morass Towards better unification in object technology

Based on the Scandinavian approach to object-orientation

The object technology morass

Object-orientation started with programming

Main benefits of object-orientation

1. Modeling

2. Reuse and extensibility

3. Unifying Perspective

Unification dimensions

Conceptual framework and languages

Informal and formal languages

The BETA Language

Object-oriented perspective

Common Conceptual Framework

Phenomena and concepts

Aspect of concepts

Aristotelian view

Prototypical view

Conceptual means

Conceptual means and languages

Identification of objects

Notation for object

Classification

Clustering

Notation for class

Generalization/specialization

Notation for generalization/specialization

Aspects of classification

Tree structured classification

Non-tree structured classification

Several classification hierarchies

Dynamic classification

Using composition for independent/dynamic classification

Process hierarchies

Event sequence generalization

Procedure specialization

Inheritance characterization

Composition

Whole/part examples

Whole/part diagram notation

Whole/part programming language notation

Reference composition

Association

Association as object

Association - programming language

Concept composition - example

Concept composition - diagram notation

Concept composition - programming lang.

Global variables

Interface classes

Person class with several interfaces

Nested/inner classes

Summary on concepts and languages

Unification dimensions: tools

Object-oriented methodologies

No model transformations

Aspects of the development process

Evolutionary development

More on methodology

Tool requirements

One language for design and implementation

The Mjølner CASE Tool

Screen dump from Mjølner CASE tool

Integration of design diagrams and BETA

Summary on Mjølner CASE tool

Dynamic aspects - state machines

State machine for Watch

State machine impl. using conditional

State machine impl. using state pattern

Pattern Watch

State implementations

Implementation

Extensions and status

Unification dimensions: paradigms

Multi-paradigm languages

Multiparadigm versus unification

Functional style for methods

Higher order functions

Use of equations

Other paradigms

Unification in Beta

Syntax for function application

Uniform abstraction mechanisms

Abstraction generalization

Summary

Author: Ole Lehrmann Madsen

Email: Ole.L.Madsen@daimi.au.dk

Home Page: http://www.daimi.au.dk/~olm

Other information:
For more information about BETA and the Mjølner System see: http://www.mjolner.com