Advanced

Hierarchical Concurrent Systems from a Model-Oriented perspective

Einarson, Daniel LU (2002)
Abstract
Real world systems are normally considered as hierarchically organized, for example, we see those as hierarchies of systems including subsystems. Examples on this can be seen in organizations where people act in environments and carry within themselves their own internal subsystem of thinking processes. Another example relates to robotics where robots may be seen as hierarchical constructions, both physically and logically. As in the case of human actors, we can see robots as autonomous entities that need to perform internal reasoning and planning to conform well to the environment in which they act. Furthermore, actions on different levels are often inherently parallel and may be more or less independent.



... (More)
Real world systems are normally considered as hierarchically organized, for example, we see those as hierarchies of systems including subsystems. Examples on this can be seen in organizations where people act in environments and carry within themselves their own internal subsystem of thinking processes. Another example relates to robotics where robots may be seen as hierarchical constructions, both physically and logically. As in the case of human actors, we can see robots as autonomous entities that need to perform internal reasoning and planning to conform well to the environment in which they act. Furthermore, actions on different levels are often inherently parallel and may be more or less independent.



Object-Oriented (OO) technologies have proved to be appropriate tools in software development. Programming these kinds of hierarchical concurrent systems should therefore be gained by suitable Object-Oriented software support that reflects system level-dependent behavior. For instance, actions in a robot control system should relate to real time, while a robotÕs planning system actions relate to simulated time. However, existing OO software support mainly reflects one-level sequential systems which only by exhaustive work may conform to such hierarchically organized systems. Existing architectural design proposals that address hierarchical compositions often cover ways of collecting objects, but do normally not address issues such as concurrency and different time semantics.



We have developed concepts and software support to meet the need for modeling and implementing hierarchically organized systems with concurrent level-dependent autonomous entities. We have approached the problem from two directions, i.e., on one hand from a conceptual and principle perspective, and on the other hand from a software engineering perspective.



Concepts and principles are mainly treated in the context of the, so called, Model-Orientated Programming project. Model-Orientation (MO), can be seen as an extension to Object-Orientation to support concurrent models especially. We use the term model for a software representation of an autonomous entity. A model may define its own view upon matters such as time and communication, and may furthermore include further models to represent hierarchical system compositions. Within the project of Model-Oriented Programming we also develop programming language elements relating to the developed concepts.



Software engineering aspects are mainly studied within the project of Hierarchical Concurrent Systems. A developed Java-based framework especially reflects hierarchical properties of systems. A general concept of timebase may be specified as either based on a real time or a simulated time concept. This implies that software of one hierarchical level may act in real-time in a control system, while an internal hierarchical level may reason about future state based on a simulated time axis. Furthermore, within the framework we also regard communication, distribution and process management as hierarchical level-dependent properties. This impels ways of software components to flexibly adjust themselves to the context they are intended to act within. Our approach, based on investigations on both modeling and implementation, has been experimented on in several case studies. Those show that encapsulating our concepts and solutions within well defined software units provide software that is both flexible and scalable. (Less)
Please use this url to cite or link to this publication:
author
opponent
  • Professor Birtwistle, Graham, The University of Leeds
organization
publishing date
type
Thesis
publication status
published
subject
keywords
control, systems, numerical analysis, Computer science, Distributed Systems, Hierarchical Systems, Object-Orientation, Model-Orientation, Datalogi, numerisk analys, system, kontroll, Systems engineering, computer technology, Data- och systemvetenskap
pages
222 pages
publisher
Department of Computer Science, Lund University
defense location
Ole Römers väg 3, E:1406
defense date
2002-05-13 10:15
ISSN
1650-1268
ISBN
91-628-5250-7
language
English
LU publication?
yes
id
b741693f-999c-4b7a-8cd0-f761ad558b11 (old id 20587)
date added to LUP
2007-05-28 08:49:32
date last changed
2016-09-19 08:44:59
@phdthesis{b741693f-999c-4b7a-8cd0-f761ad558b11,
  abstract     = {Real world systems are normally considered as hierarchically organized, for example, we see those as hierarchies of systems including subsystems. Examples on this can be seen in organizations where people act in environments and carry within themselves their own internal subsystem of thinking processes. Another example relates to robotics where robots may be seen as hierarchical constructions, both physically and logically. As in the case of human actors, we can see robots as autonomous entities that need to perform internal reasoning and planning to conform well to the environment in which they act. Furthermore, actions on different levels are often inherently parallel and may be more or less independent.<br/><br>
<br/><br>
Object-Oriented (OO) technologies have proved to be appropriate tools in software development. Programming these kinds of hierarchical concurrent systems should therefore be gained by suitable Object-Oriented software support that reflects system level-dependent behavior. For instance, actions in a robot control system should relate to real time, while a robotÕs planning system actions relate to simulated time. However, existing OO software support mainly reflects one-level sequential systems which only by exhaustive work may conform to such hierarchically organized systems. Existing architectural design proposals that address hierarchical compositions often cover ways of collecting objects, but do normally not address issues such as concurrency and different time semantics.<br/><br>
<br/><br>
We have developed concepts and software support to meet the need for modeling and implementing hierarchically organized systems with concurrent level-dependent autonomous entities. We have approached the problem from two directions, i.e., on one hand from a conceptual and principle perspective, and on the other hand from a software engineering perspective.<br/><br>
<br/><br>
Concepts and principles are mainly treated in the context of the, so called, Model-Orientated Programming project. Model-Orientation (MO), can be seen as an extension to Object-Orientation to support concurrent models especially. We use the term model for a software representation of an autonomous entity. A model may define its own view upon matters such as time and communication, and may furthermore include further models to represent hierarchical system compositions. Within the project of Model-Oriented Programming we also develop programming language elements relating to the developed concepts.<br/><br>
<br/><br>
Software engineering aspects are mainly studied within the project of Hierarchical Concurrent Systems. A developed Java-based framework especially reflects hierarchical properties of systems. A general concept of timebase may be specified as either based on a real time or a simulated time concept. This implies that software of one hierarchical level may act in real-time in a control system, while an internal hierarchical level may reason about future state based on a simulated time axis. Furthermore, within the framework we also regard communication, distribution and process management as hierarchical level-dependent properties. This impels ways of software components to flexibly adjust themselves to the context they are intended to act within. Our approach, based on investigations on both modeling and implementation, has been experimented on in several case studies. Those show that encapsulating our concepts and solutions within well defined software units provide software that is both flexible and scalable.},
  author       = {Einarson, Daniel},
  isbn         = {91-628-5250-7},
  issn         = {1650-1268},
  keyword      = {control,systems,numerical analysis,Computer science,Distributed Systems,Hierarchical Systems,Object-Orientation,Model-Orientation,Datalogi,numerisk analys,system,kontroll,Systems engineering,computer technology,Data- och systemvetenskap},
  language     = {eng},
  pages        = {222},
  publisher    = {Department of Computer Science, Lund University},
  school       = {Lund University},
  title        = {Hierarchical Concurrent Systems from a Model-Oriented perspective},
  year         = {2002},
}