Table of ContentsThe Object Technology MorassTowards 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: |