Related Communities:


Moscow State University
Department of Computational Mathematics and Cybernetics
Russian Academy of Sciences
Institute for Problems of Informatics
Master (postgraduate) level course


Professor Leonid Andreevich Kalinichenko

General Description Of The Course

The course is devoted to the rapidly developing issues of object technologies emerging as a result of elaboration and deployment of the interoperation middlewares (such as the Object Management Group (OMG) infrastructure). Technologies of the distributed object-oriented middleware are considered. Several kinds of middleware (RPC, OMG CORBA, Java/RMI, Web Services) are considered as examples. Core midlleware architecture is considered in detail. Advanced features of the middleware considered include synchronization facilities, naming and trading, lifecycle of distributed objects, persistence and transaction services, as well as the security issues.

Compositional information systems development based on such distributed object-oriented middleware is considered separately. Compositional information systems development requires complete, rigorous specifications of requirements and of pre-existing, interoperable components. Object model semantics and application semantics are introduced in the course. Formal facilities (Abstract Machine Notation by J.-R. Abrial) are introduced to define object model semantics. Type specification and subtyping relationships are treated rigorously. Provable refinement of the abstract machines is considered as the basis for compositional development. Specification calculus leading to decomposition of specification into reusable fragments and to composition of such fragments into the artifacts refining the requirements is considered. Application semantics is treated in the course in frame of the ontological modelling. Ontolingua model and its mapping to an object-oriented model are given. An approach for systematic, provable transformation of object specifications in process of the component-based design is presented.

Structure of the course

This is the one semester course of lectures (about 24 hours)
  • Core interoperation technology (6);
  • Basic services of the middleware (11)
  • Formal specifications as sound foundation for the design with reuse (3);
  • Ontological modelling of application domains (2);
  • Process of semantically interoperable informations systems design (2).

Detailed Content Of The Course

Core Interoperation Technology

  • Concepts of the interoperation middleware architecture
  • CORBA core object model
  • Principles of CORBA
  • IDL specifications
  • IDL to programming languages mappings
  • CORBA 2.0: interorb protocols (IIOP)
  • Common services of the object-oriented middleware
  • Naming and trading
  • Object lifecycle
  • Persistence and transaction services
  • Security in distributed objects

Compositional Information System Development Framework

  • Transition from conventional object analysis and design to compositional development
  • A strategy for incorporating formal methods into a component-based process of development
  • General structure of the method for development of semantically interoperable information systems

Formal Specifications As Sound Foundations For The Design With Reuse

  • Abstract data type basics
    • Type specifications
    • Complete type specification example
    • Subtype relation: basic properties
    • Mutability property and subtyping
    • Strong and weak behavioral subtyping
  • Model-based formal specifications in Abstract Machine Notation
    • Generalized substitutions of AMN
    • Elements of the Abstract Machine Notation
    • Multiple generalized substitution and compositions of abstract machines
    • Basic modularization features of AMN
    • Refinement of Abstract Machines
    • Constructing large software systems in B-technology
  • Specification fragments and compositions for reuse
    • Specification algebra
    • Type reducts
    • Getting most common reducts for the types to be composed
    • Type compositions

Ontological Modeling Of Application Domains

  • Ontological model used: an overview
  • Ontolingua formalisms
  • Ontological contexts integration

Process Of Semantically Interoperable Information Systems Design

  • Common signature reducts identification
  • From signature to most common reduct: a procedure
  • Concretizing types construction
  • Role of formal facilities for the justification of design
Supported by Synthesis Group