A typical feature of robotic architectures are its reactivity and self-adaptivity. In practice, this is achieved by context-dependent dynamic invocation of software components in robotic architectures. In this paper, ...
详细信息
ISBN:
(纸本)9781467391634
A typical feature of robotic architectures are its reactivity and self-adaptivity. In practice, this is achieved by context-dependent dynamic invocation of software components in robotic architectures. In this paper, we specifically address how this self-adaptation capability can be formally defined and modeled in an architecture-independent way. We propose a probabilistic approach that facilitates system design and dynamic runtime adaptation satisfying the quality requirements. We also show how such techniques are incorporated in our model-driven framework: Self Adaptive Framework for Robotic Systems.
Component-based software development provides a modular approach to develop complex software systems. In the context of real-time systems, it is desirable to abstract the timing properties of software components using...
详细信息
ISBN:
(纸本)9781467378550
Component-based software development provides a modular approach to develop complex software systems. In the context of real-time systems, it is desirable to abstract the timing properties of software components using an interface for each component. The timing properties of the whole system, composed of multiple components, is studied using the component interfaces. In this paper we focus on periodic interface models. In the case of components developed for single processor platforms, for examining the system schedulability, the interfaces can be regarded as periodic tasks. Thus, making it possible to use the conventional schedulability analyses for the system level schedulability test. In the case of components developed for multiprocessors, since interfaces may have utilization larger than 100 % of a single processor, it is not possible to directly use the component interfaces for the system schedulability test. Therefore, the interfaces have to be decomposed before performing the system level schedulability test. In this paper, we target the special case of partitioned EDF for scheduling the components integrated on a multiprocessor. Therefore, the system level schedulability test is equivalent to finding a feasible allocation of component interfaces on the multiprocessor. We propose two algorithms for allocating the multiprocessor periodic interfaces. In addition, we propose an orthogonal approach for developing component-based real-time systems on multiprocessors in which components with utilization more than 100 % of a single processor are divided into smaller subcomponents before abstracting their interfaces. We show, through extensive evaluations, that our alternative approach significantly reduces the interface overhead.
The power of aspect-oriented modelling is that structural and behavioural properties of a crosscutting concern can be modularized within an aspect model. With proper care, such an aspect model can also be made reusabl...
详细信息
ISBN:
(数字)9783319211510
ISBN:
(纸本)9783319211510;9783319211503
The power of aspect-oriented modelling is that structural and behavioural properties of a crosscutting concern can be modularized within an aspect model. With proper care, such an aspect model can also be made reusable. If the functionality provided by such a modularized concern is needed repeatedly within a system, the reusable aspect model can be applied multiple times within the same target model. This paper reviews the pending issues related to multiple aspect model instantiations identified in past research, and then proposes to extend the customization interface of aspect models with instantiation cardinalities. This removes potential customization ambiguities for the model user, and gives the model designer fine-grained control about how many instances of each structural and behavioural element contained in an aspect model are to be created in the target model. The approach is illustrated by presenting the aspect-oriented design of a behavioural, a structural and a creational design pattern.
This paper deals with objectoriented software implementation of the algorithms for transformation of the continuous-time linear systems to the discrete-time systems. These algorithms are used for displaying the basic...
详细信息
ISBN:
(纸本)9781467379397
This paper deals with objectoriented software implementation of the algorithms for transformation of the continuous-time linear systems to the discrete-time systems. These algorithms are used for displaying the basic discrete-time systems characteristics: step response, impulse response and frequency response in PLC based tunnel simulator. State-space system representation and basic interconnection of the systems are also considered.
Originally proposed in the mid-90s, design patterns for software development played a key role in object-orientedprogramming not only in increasing software quality, but also by giving a better understanding of the p...
详细信息
ISBN:
(纸本)9783662465493;9783662465486
Originally proposed in the mid-90s, design patterns for software development played a key role in object-orientedprogramming not only in increasing software quality, but also by giving a better understanding of the power and limitations of this paradigm. Since then, several authors have endorsed a similar task for other programming paradigms, in the hope of achieving similar benefits. In this paper we present a set of design patterns for Mdl-programs, a hybrid formalism combining several description logic knowledge bases via a logic program. These patterns are extensively applied in a natural way in a large-scale example that illustrates how their usage greatly simplifies some programming tasks, at the level of both development and extension. We also discuss some limitations of this formalism, examining some usual patterns in other programming paradigms that have no parallel in Mdl-programs.
Reactive programming and event-based programming are two closely related programming styles that are becoming ever more important with the advent of advanced HCI technology and the ever increasing requirement for appl...
详细信息
ISBN:
(纸本)9781450337229
Reactive programming and event-based programming are two closely related programming styles that are becoming ever more important with the advent of advanced HCI technology and the ever increasing requirement for applications to run on the web or on collaborating mobile devices. A number of publications about middleware and language design - so-called reactive and event-based languages and systems - have already seen the light, but the field still raises several questions. For example, the interaction with mainstream language concepts is poorly understood, implementation technology is in its infancy and modularity mechanisms are almost totally lacking. Moreover, large applications are still to be developed and patterns and tools for developing reactive applications is an area that is vastly unexplored. This workshop gathers researchers in reactive and event-based languages and systems. The goal of the workshop is to exchange new technical research results and to define better the field by coming up with taxonomies and overviews of the existing work.
Development environments which aim to provide short feedback loops to developers must strike a balance between immediacy and the ability to abstract and reuse behavioral modules. The Lively Kernel, a self-supporting, ...
详细信息
ISBN:
(纸本)9781450339056
Development environments which aim to provide short feedback loops to developers must strike a balance between immediacy and the ability to abstract and reuse behavioral modules. The Lively Kernel, a self-supporting, browser-based environment for explorative development supports standard object-orientedprogramming with classes or prototypes, but also a more immediate, object-centric approach for modifying and programming visible objects directly. This allows users to quickly create graphical prototypes with concrete objects. However, when developing with the object-centric approach, sharing behavior between similar objects becomes cumbersome. Developers must choose to either abstract behavior into classes, scatter code across collaborating objects, or to manually copy code between multiple objects. That is, they must choose between less concrete development, reduced maintainability, or code duplication. In this paper, we propose Lively Groups, an extension to the object-centric development tools of Lively to work on multiple concrete objects. With Lively Groups, developers may dynamically organize live objects that share behavior using tags. They can then modify and program such groups as if they were single objects. Our approach scales the Lively Kernel's explorative development approach from one to many objects, while preserving the maintainability of abstractions and the immediacy of concrete objects.
To denote an exact form of decoupling software modules in object-orientedprogramming the dependency inversion principle is used. By using this principle, the conventional dependency relationships known from high-leve...
详细信息
We present an object model that is the ground for several software products written by our team in C++ and used by our customers for over 10 years. The object model has allowed us to design software packages of many c...
详细信息
object-orientedprogramming is easily accessible by beginners, since it allows for modeling real-world entities as software objects. Storytelling is a natural way to introduce the basic concepts behind object-oriented...
详细信息
ISBN:
(纸本)9781450331463
object-orientedprogramming is easily accessible by beginners, since it allows for modeling real-world entities as software objects. Storytelling is a natural way to introduce the basic concepts behind object-orientedprogramming. To convey object-orientedprogramming concepts to children, such as object, attribute and etc., we present a new tangible programming tool-TanProStory, for children in 1-3 grades. Children can tell a story by arranging programming blocks to initialize a character and construct a program controlling its action. TanProStory consists of three parts: programming blocks, Animation Game and Sensor input module. programming blocks in TanProStory are surface-sensitive, i.e. only the command on the top surface can be detected. We conducted a preliminary user study and analyzed the results, which can guide a better design of TanProStory.
暂无评论