mdh.sePublications
Change search
Refine search result
12 1 - 50 of 91
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Rows per page
  • 5
  • 10
  • 20
  • 50
  • 100
  • 250
Sort
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
Select
The maximal number of hits you can export is 250. When you want to export more records please use the 'Create feeds' function.
  • 1.
    Axelsson, Jakob
    et al.
    Swedish Institute of Computer Science, SICS, Sweden.
    Franke, Ulrik
    Swedish Institute of Computer Science, SICS, Sweden.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Cicchetti, Antonio
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Towards the Architecture of a Decision Support Ecosystem for System Component Selection2017In: 11th Annual IEEE International Systems conference SysCon17, 2017, 371-377 p.Conference paper (Refereed)
    Abstract [en]

    When developing complex software-intensive systems, it is nowadays common practice to base the solution partly on existing software components. Selecting which components to use becomes a critical decision in development, but it is currently not well supported through methods and tools. This paper discusses how a decision support system for this problem could benefit from a software ecosystem approach, where participants share knowledge across organizations both through reuse of analysis models, and through partially disclosed past decision cases. It is shown how the architecture of this ecosystem becomes fundamental to deal with efficient knowledge sharing, while respecting constraints on integrity of intellectual property. A concrete proposal for an architecture is outlined, which is a distributed system-of-systems using web technologies. Experiences of a proof-of-concept implementation are also described.

  • 2.
    Bohlin, Markus
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Hänninen, Kaj
    Mälardalen University, School of Innovation, Design and Engineering.
    Mäki-Turja, Jukka
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Safe Shared Stack Bounds in Systems with Offsets and Precedences2008Report (Other academic)
    Abstract [en]

    The paper presents two novel methods to bound the stack memory used in preemptive, shared stack, real-time systems. The first method is based on branch-and-bound search for possible preemption patterns, and the second one approximates the first in polynomial time. The work extends previous methods by considering a more general taskmodel, in which all tasks can share the same stack. In addition, the new methods account for precedence and offset relations. Thus, the methods give tight bounds for a large set of realistic systems. The methods have been implemented and a comprehensive evaluation, comparing our new methods against each other and against existing methods, is presented. The evaluation shows that our exact method can significantly reduce the amount of stack memory needed. In our simulations, a decrease in the order of 40% was typical, with a runtime in the order of seconds. Our polynomial approximation consequently yields about 20% higher bound than the exact method. 

  • 3.
    Bohlin, Markus
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Hänninen, Kaj
    Mälardalen University, School of Innovation, Design and Engineering.
    Mäki-Turja, Jukka
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Sjödin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Bounding Shared-Stack Usage in Systems with Offsets and Precedences2008In: ECRTS 2008: PROCEEDINGS OF THE 20TH EUROMICRO CONFERENCE ON REAL-TIME SYSTEMS, 2008, 276-285 p.Conference paper (Refereed)
    Abstract [en]

    The paper presents two novel methods to bound the stack memory used in preemptive, shared stack, real-time systems. The first method is based on branch-and-bound search for possible preemption patterns, and the second one approximates the first in polynomial time. The work extends previous methods by considering a more general task-model, in which all tasks can share the same stack. In addition, the new methods account for precedence and offset relations. Thus, the methods give tight bounds for a large set of realistic systems. The methods have been implemented and a comprehensive evaluation, comparing our new methods against each other and against existing methods, is presented. The evaluation shows that our exact method can significantly reduce the amount of stack memory needed.

  • 4.
    Borde, E.
    et al.
    Institut TELECOM, TELECOM ParisTech.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards verified synthesis of ProCom, a component model for real-time embedded systems2011In: CompArch - Proceedings of the 2011 Federated Events on Component-Based Software Engineering and Software Architecture - CBSE'11, 2011, 129-138 p.Conference paper (Refereed)
    Abstract [en]

    To take advantage of component-based software engineering, software designers need a component framework that automates the assemblage and integration of developed components. It is then of prime importance to ensure that the synthesized code respects the definition of the component model's semantics. This is all the more difficult in the domain of embedded systems since the considered semantics usually aims at characterizing both functional properties (e.g. data and control dependencies) and non-functional properties such as timing and memory consumption. The component model considered in this paper, called ProCom, relies on an asynchronous operational semantics and a formal hypothesis of atomic and instantaneous interactions between components. The asynchronous approach targets higher exibility in the deployment and analysis process, while the formal hypothesis helps in reducing the combinatory problems of formal verification. In this paper, we present a code generation strategy to synthesize ProCom components, and a formalization of this generated code. This formalization extends the verification possibilities of ProCom architectures, and constitutes a step toward the verification that the produced code respects the operational semantics of ProCom. © 2011 ACM.

  • 5.
    Borde, Etienne
    et al.
    Institut TELECOM, TELECOM ParisTech, LTCI, Paris.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Automatic Synthesis and Adaption of Gray-box Components for Embedded Systems - Reuse vs. Optimization2011In: Proceedings - International Computer Software and Applications Conference, 2011, 224-229 p.Conference paper (Refereed)
    Abstract [en]

    Component-based development of embedded systems has been suggested as a means to increase development efficiency by, for example, facilitating reuse. However, the specifics of the embedded systems domain also raise some particular difficulties when applying this approach. For example, when glue code is automatically produced from an architectural specification, a systematic approach where fully reusable code is generated for all entities in the system, can lead to unaffordable overhead in embedded systems with severe resource limitations and temporal constraints. If, on the other hand, highly optimized code is produced by taking advantage of the specific context in which each component is used, then the generated code is not reusable in other contexts, and the potential benefits of component-based development are not fully exploited. In this paper, we present a component-based framework that permits a more detailed trade-off between optimization and reusability, by automating the integration of components for which the software designer can specify the desired reuse potential. Depending on this specification, the integration code is either reused and adapted, or completely optimized.

  • 6.
    Borde, Etienne
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Feljan, Juraj
    Mälardalen University, School of Innovation, Design and Engineering.
    Lednicki, Luka
    Mälardalen University, School of Innovation, Design and Engineering.
    Leveque, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Maras, Josip
    Mälardalen University, School of Innovation, Design and Engineering.
    Petricic, Ana
    Mälardalen University, School of Innovation, Design and Engineering.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering.
    PRIDE - an Environment for Component-based Development of Distributed Real-time Embedded Systems2011In: 9th Working IEEE/IFIP Conference on Software Architecture, Los Alamitos: IEEE Computer Society, 2011, 351-354 p.Conference paper (Refereed)
    Abstract [en]

    Settling down the software architecture for embedded system is a complex and time consuming task. Specific concerns that are generally issued from implementation details must be captured in the software architecture and assessed to ensure system correctness. The matter is further complicated by the inherent complexity and heterogeneity of the targeted systems, platforms and concerns. In addition, tools capable of conjointly catering for the complete design-verificationdeployment cycle, extra-functional properties and reuse are currently lacking. To address this, we have developed Pride, an integrated development environment for component-based development of embedded systems. Pride is based on an architecture relying on components with well-defined semantics that serve as the central development entity, and as means to support and aggregate various analysis and verification techniques throughout the development - from early specification to synthesis and deployment. Pride also provides generic support for integrating extra-functional properties into architectural definitions.

  • 7.
    Bures, Tomas
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering.
    Vulgarakis, Aneta
    Mälardalen University, School of Innovation, Design and Engineering.
    ProCom - the Progress Component Model Reference Manual, version 1.02008Report (Other academic)
  • 8.
    Bures, Tomas
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering.
    Vulgarakis, Aneta
    Mälardalen University, School of Innovation, Design and Engineering.
    Progress Component Model Reference Manual - version 0.52008Report (Other academic)
    Abstract [en]

    This report describes the component model developed within PROGRESS. In addition to defining the syntax and semantics, it also gives some background and motivation, and describes how this work relates to the overall PROGRESS vision and to the work in other areas of the project.

  • 9.
    Bures, Tomas
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering.
    Vulgarakis, Aneta
    Mälardalen University, School of Innovation, Design and Engineering.
    A Component Model Family for Vehicular Embedded Systems2008In: The 3rd International Conference on Software Engineering Advances, ICSEA 2008, Includes ENTISY 2008: International Workshop on Enterprise Information Systems, 2008, 437-444 p.Conference paper (Refereed)
    Abstract [en]

    In this paper we propose to use components for managingthe increasing complexity in modern vehicular systems.Compared to other approaches, the distinguishingfeature of our work is using and benefiting from componentsthroughout the development process from early designto development and deployment, and an explicit separationof concerns at different levels of granularity. Basedon the elaboration of the specifics of vehicular systems (resourceconstraints, real-time requirements, hard demandson reliability), the paper identifies concerns that need to beaddressed by a component model for this domain, and describesa realization of such a component model.

  • 10.
    Bures, Tomas
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering.
    Vulgarakis, Aneta
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards Component Modelling of Embedded Systems in the Vehicular Domain2008Report (Other academic)
    Abstract [en]

    The complexity of software and electronics in vehicular systems has increased significantly over last few years - up to the point when it is difficult to manage it with existing development methods. In this paper we aim at using components for managing the complexity in vehicular systems. Compared to other approaches, the distinguishing feature of our work is using and benefiting from components throughout the whole development process (from early design to development and deployment). Based on the elaboration of the specifics of vehicular systems (resource constraints, real-time requirements, hard demands on reliability), the paper identifies concerns that need to be addressed by a component model for this domain. It also outlines basic features and characteristics of such a component model and discusses how relevant existing formalisms and component models relate to it and how they could be reused within the proposed approach.

     

  • 11.
    Campeanu, Gabriel
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    A GPU-aware Component Model Extension for Heterogeneous Embedded Systems2015In: The Tenth International Conference on Software Engineering Advances ICSEA 2015, 2015Conference paper (Refereed)
    Abstract [en]

    One way for modern embedded systems to tackle the demand for more complex functionality requiring more computational power is to take advantage of heterogeneous hardware. These hardware platforms are constructed from the combination of different processing units including both traditional CPUs and for example Graphical Processing Units (GPUs). However, there is a lack of efficient approaches supporting software development for such systems. In particular, modern software development approaches, such as component-based development, do not provide sufficient support for heterogeneous hardware platforms. This paper presents a component model extension, which defines specific features for components with GPU capabilities. The benefits of the proposed solution include an increased system performance by accelerating the communication between GPU-aware components and the possibility to control the distribution of GPU computation resources at system level.

  • 12.
    Campeanu, Gabriel
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Component Allocation Optimization for Heterogeneous CPU-GPU Embedded Systems2014In: The 40th Euromicro Conference on Software Engineering and Advanced Applications SEAA 2014, Verona, 27-29 Aug. 2014, 2014, 229-236 p.Conference paper (Refereed)
    Abstract [en]

    In a quest to improve system performance, embedded systems are today increasingly relying on heterogeneous platforms that combine different types of processing units such as CPUs, GPUs and FPGAs. However, having better hardware capability alone does not guarantee higher performance; how functionality is allocated onto the appropriate processing units strongly impacts the system performance as well. Yet, with this increase in hardware complexity, finding suitable allocation schemes is becoming a challenge as many new constraints and requirements must now be taken into consideration. In this paper, we present a formal model for allocation optimization of embedded systems which contains a mix of CPU and GPU processing nodes. The allocation takes into consideration the software and hardware architectures, the system requirements and criteria upon which the allocation should be optimized. In its current version, optimized allocation schemes are generated through an integer programming technique to balance the system resource utilization and to optimize the system performance using the GPU resources.

  • 13.
    Campeanu, Gabriel
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Séntilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Mubeen, Saad
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Extending the Rubus Component Model with GPU-Aware Components2016In: Proceedings - 2016 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016, 2016, 59-68 p.Conference paper (Refereed)
    Abstract [en]

    To support the complex functionality expected of modern embedded systems, the trend is to supplement CPUs with Graphical Processing Units (GPUs), thus creating heterogeneous embedded systems. However, taking full advantage of GPUs increases the complexity of the development and requires dedicated support, and no such support exists in the component models currently available. The only solution today is to completely encapsulate all GPU-specific information and operations within the components, which increases the communication overhead and reduces component reusability, thus significantly limiting the applicability of component-based development to heterogeneous embedded systems. In this paper, we propose to extend Rubus, an industrial component model for embedded systems, with dedicated support for GPUs. We introduce new constructs, including GPU ports and automatically generated adapters to facilitate seamless component communication over the heterogeneous processing units, regardless of whether the components use the CPU, GPU, or both. A running example is used for the problem description, the proposed extension, and to evaluate our solution.

  • 14.
    Carlson, Jan
    Mälardalen University, Department of Computer Science and Engineering.
    An intuitive and resource-efficient event detection algebra2004Licentiate thesis, monograph (Other scientific)
    Abstract [en]

    In reactive systems, execution is driven by external events to which the system should respond with appropriate actions. Such events can be simple, but systems are often supposed to react to sophisticated situations involving a number of simpel events occurring in accordance with some pattern. A systematic approach to handle this type of systems is to separate the mechanism for detecting composite events from the rest of the application logic. A detection mechanism listens for simple event occurrences and notifies the application when one of the complex event patterns of interest occur. The event detection mechanism can for example be based on an event algebra, i.e., expressions that correspond to the event patterns of interest are built from simple events and operators from the algebra.

    This thesis presents a novel event algebra with two important characteristics: It complies with algebraic laws that intuitively ought to hold for the operators of the algebra, and for a large class of expressions the detection can be correctly performed with limited resources in terms of memory and time. In addition to the declarative algebra semantics, we present an imperative detection algorithm and show that it correctly implements the algebra. This algorithm is analysed with respect to memory requirements and execution time complexity. To increase the efficiency of the algebra, we also present a semantic-preserving transformation scheme by which many expressions can be transformed to meet criteria under which limited resource requirements are guaranteed. Finally, we present a prototype implementation that combines the algebra with the event system in Java.

  • 15.
    Carlson, Jan
    Mälardalen University, Department of Computer Science and Electronics.
    Event Pattern Detection for Embedded Systems2007Doctoral thesis, monograph (Other scientific)
    Abstract [en]

    Events play an important role in many computer systems, from small reactive embedded applications to large distributed systems. Many applications react to events generated by a graphical user interface or by external sensors that monitor the system environment, and other systems use events for communication and synchronisation between independent subsystems. In some applications, however, individual event occurrences are not the main point of concern. Instead, the system should respond to certain event patterns, such as "the start button being pushed, followed by a temperature alarm within two seconds". One way to specify such event patterns is by means of an event algebra with operators for combining the simple events of a system into specifications of complex patterns.

    This thesis presents an event algebra with two important characteristics. First, it complies with a number of algebraic laws, which shows that the algebra operators behave as expected. Second, any pattern represented by an expression in this algebra can be efficiently detected with bounded resources in terms of memory and time, which is particularly important when event pattern detection is used in embedded systems, where resource efficiency and predictability are crucial.

    In addition to the formal algebra semantics and an efficient detection algorithm, the thesis describes how event pattern detection can be used in real-time systems without support from the underlying operating system, and presents schedulability theory for such systems. It also describes how the event algebra can be combined with a component model for embedded system, to support high level design of systems that react to event patterns.

  • 16.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Timing Analysis of Component-based Embedded Systems2012In: Proceedings of the 15th ACM SIGSOFT symposium on Component Based Software Engineering, New York: ACM , 2012, 151-156 p.Conference paper (Refereed)
    Abstract [en]

    The recent trend towards applying component-based and model-driven approaches also to the development of safety-critical real-time embedded systems, opens new possibilities for model-level analysis of aspects that traditionally are analysed very late in the development when the system has been fully implemented. For real-time systems, the temporal aspect is as important as the functional to the overall correctness of the system, and thus timing analysis in different forms play a key role in their development. This paper presents the timing analysis of ProCom, a component model specifically targeting distributed real-time embedded systems, focusing in particular on three methods for compositional model-level analysis of worst-case execution time.

  • 17.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Feljan, Juraj
    Mälardalen University, School of Innovation, Design and Engineering.
    Mäki-Turja, Jukka
    Mälardalen University, School of Innovation, Design and Engineering.
    Sjödin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Deployment Modelling and Synthesis in a Component Model for Distributed Embedded Systems2010In: Proceedings - 36th EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 2010, Lille, France, 2010, 74-82 p.Conference paper (Refereed)
    Abstract [en]

    We present an approach to combine model-driven and component-based software engineering of distributed embedded systems. Specifically, we describe how deployment modelling is performed in two steps, and present an incremental synthesis of runnable representations of model entities on various abstraction levels. Our approach allows for flexible reuse opportunities, in that entities at different levels of granularity and abstraction can be reused. It also permits detailed analysis, e.g., with respect to timing, of units smaller than a whole physical node. We present a concept, virtual nodes, which preserves real-time properties across reuse and integration in different contexts.

  • 18.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Håkansson, J.
    Uppsala University, Sweden.
    Pettersson, P.
    Uppsala University, Sweden.
    SaveCCM: An Analysable Component Model for Real-Time Systems2006In: Electronical Notes in Theoretical Computer Science, ISSN 1571-0661, E-ISSN 1571-0661, Vol. 160, no 1, 127-140 p.Article in journal (Refereed)
    Abstract [en]

    Component based development is a promising approach for embedded systems. Typical for embedded software is the presence of resource constraints in multiple dimensions. An essential dimension is time, since many embedded systems have real-time requirements. We define a formal semantics of a component language for embedded systems, SaveCCM, a language designed with vehicle applications and safety concerns in focus. The semantics is defined by a transformation into timed automata with tasks, a formalism that explicitly models timing and real-time task scheduling. A simple SaveCCM system with a PI controller is used as a case study. Temporal properties of the PI controller have been successfully verified using the timed automata model checker Uppaal.

  • 19.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Lednicki, Luka
    Mälardalen University, School of Innovation, Design and Engineering.
    Feasibility of migrating analysis and synthesis mechanisms from ProCom to IEC 614992012Report (Other academic)
    Abstract [en]

    This report presents the initial results from the Assist project at Mälardalen University, funded by the ABB Software Research Grant Program. The project aims to bridge the gap between recent academic research achievements in the area of control- and model based development of embedded systems, and concrete industrial needs and state of practice in this domain. Concretely, the focus of the project is to investigate how novel timing analysis and code synthesis techniques developed in the context of ProCom, an academic component model for embedded systems, can be extended and adapted in order to be applicable to IEC 61499.

  • 20.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Lennvall, Tomas
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Fohler, Gerhard
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Enhancing time triggered scheduling with value based overload handling and task migration2003In: Proceedings - 6th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, ISORC 2003, 2003, 121-128 p.Conference paper (Refereed)
    Abstract [en]

    Time triggered methods provide deterministic behaviour suitable for critical real-time systems. The), perform less favourably, however if the arrival times of some activities are not known in advance, in particular if overload situations have to be anticipated. In many systems, the criticality of only a subset of activities justify the cost associated with the time triggered methods. In this paper we consider distributed systems where a subset of critical activities are handled in a time triggered fashion, via an offline schedule. At runtime, the arrival of aperiodic tasks may cause overload that demands to be handled in such a way that i) time triggered activities still meet all their original constraints, ii) execution of high-valued tasks are prioritised over tasks with lower value, iii) tasks can be quickly migrated to balance the overall system load. We give a precise formulation of overload detection and value based task rejection in the presence of offline scheduled tasks, and present a heuristic algorithm to handle overload. To benefit from the distributed setting, the overload handling includes an algorithm that integrates migration of rejected tasks with resource reclaiming and an acceptance test of newly arrived tasks. Simulation results underline the effectiveness of the presented approach.

  • 21.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Lisper, Björn
    Mälardalen University, School of Innovation, Design and Engineering.
    A resource-efficient event algebra2010In: Science of Computer Programming, ISSN 0167-6423, Vol. 75, no 12, 1215-1234 p.Article in journal (Refereed)
    Abstract [en]

    Events play many roles in computer systems, ranging from hardware interrupts, over event-based software architecture, to monitoring and managing of complex systems. In many applications, however, individual event occurrences are not the main point of concern, but rather the occurrences of certain event patterns. Such event patterns can be defined by means of an event algebra, i.e., expressions representing the patterns of interest are built from simple events and operators such as disjunction, sequence, etc. We propose a novel event algebra with intuitive operators (a claim which is supported by a number of algebraic properties). We also present an efficient detection algorithm that correctly detects any expression with bounded memory, which makes this algebra particularly suitable for resource-constrained applications such as embedded systems.

  • 22.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Mäki-Turja, Jukka
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Event-Pattern Triggered Real-Time Tasks2008Conference paper (Refereed)
    Abstract [en]

    We present the concept of pattern-triggered tasks which are released when a particular pattern of events occur. A formal event algebra is used to define complex triggering conditions for these tasks, and the detection of triggering conditions is performed within the system by code generated automatically from these definitions. The implementation of the algebra has many desirable features for resource constrained real-time systems, including bounded and low execution time and memory consumption. Furthermore, we present novel schedulability analysis for our pattern-triggered tasks that leverage on existing analysis for fixed-priority and dynamic-priority scheduling policies.

  • 23.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Papatheocharous, Efi
    Mälardalen University. Blekinge Institute of Technology, Karlskrona, Sweden.
    Petersen, K.
    Swedish Institute of Computer Science, Kista, Stockholm, Sweden.
    A Context Model for Architectural Decision Support2016In: Proceedings - 2016 1st International Workshop on Decision Making in Software ARCHitecture, MARCH 2016, 2016, 9-15 p.Conference paper (Refereed)
    Abstract [en]

    Developing efficient and effective decision making support includes identifying means to reduce repeated manual work and providing possibilities to take advantage of the experience gained in previous decision situations. For this to be possible, there is a need to explicitly model the context of a decision case, for example to determine how much the evidence from one decision case can be trusted in another, similar context. In earlier work, context has been recognized as important when transferring and understanding outcomes between cases. The contribution of this paper is threefold. First, we describe different ways of utilizing context in an envisioned decision support system. Thereby, we distinguish between internal and external context usage, possibilities of context representation, and context inheritance. Second, we present a systematically developed context model comprised of five types of context information, namely organization, product, stakeholder, development method & technology, and market & business. Third, we exemplary illustrate the relation of the context information to architectural decision making using existing literature. 

  • 24.
    Carlson, Jan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Åkerholm, Mikael
    Mälardalen University.
    An event algebra extension of the triggering mechanism in a component model for embedded systems2005In: Electronical Notes in Theoretical Computer Science, ISSN 1571-0661, E-ISSN 1571-0661, Vol. 141, no 3, 107-121 p.Article in journal (Refereed)
    Abstract [en]

    In this article we present how the component triggering in SaveCCM, a component model intended for embedded vehicular systems, can be extended by means of an event algebra. The extension allows components to be triggered by complex event patterns, and not only by clock signals or single external events. Separating the detection of triggering conditions from the definition of the triggered services permits more general components and thus improves component reusability. Providing event detection mechanisms within the component model means that triggering conditions are explicitly available for system analysis at design time. An event algebra is used to define the complex triggering conditions. This algebra has a relatively simple declarative semantics and well documented algebraic properties, which facilitates formal and informal reasoning about the system. The algebra also ensures that detection of triggering conditions can be efficiently implemented with limited resources, which is critical in embedded applications.

  • 25.
    Cicchetti, Antonio
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Borg, M.
    SICS Swedish Institute of Computer Science, Kista.
    Sentilles, Séverine
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Wnuk, K.
    Blekinge Institute of Technology, Karlskrona, Sweden.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Papatheocharous, Efi
    Mälardalen University.
    Towards Software Assets Origin Selection Supported by a Knowledge Repository2016In: Proceedings - 2016 1st International Workshop on Decision Making in Software ARCHitecture, MARCH 2016, 2016, 22-29 p.Conference paper (Refereed)
    Abstract [en]

    Software architecture is no more a mere system specification as resulting from the design phase, but it includes the process by which its specification was carried out. In this respect, design decisions in component-based software engineering play an important role: They are used to enhance the quality of the system, keep the current market level, keep partnership relationships, reduce costs, and so forth. For non trivial systems, a recurring situation is the selection of an asset origin, that is if going for in-house, outsourcing, open-source, or COTS, when in the need of a certain missing functionality. Usually, the decision making process follows a case-by-case approach, in which historical information is largely neglected: hence, it is avoided the overhead of keeping detailed documentation about past decisions, but it is hampered consistency among multiple, possibly related, decisions.The ORION project aims at developing a decision support framework in which historical decision information plays a pivotal role: it is used to analyse current decision scenarios, take well-founded decisions, and store the collected data for future exploitation. In this paper, we outline the potentials of such a knowledge repository, including the information it is intended to be stored in it, and when and how to retrieve it within a decision case. 

  • 26.
    Cicchetti, Antonio
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. IS (Embedded Systems).
    Ciccozzi, Federico
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. IS (Embedded Systems).
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. IS (Embedded Systems).
    Software Evolution Management: Industrial Practices2016In: ME 2016 Models and Evolution: Proceedings of the 10th Workshop on Models and Evolution, Saint Malo, France: CEUR-WS , 2016, 8-13 p.Conference paper (Refereed)
  • 27.
    Ciccozzi, Federico
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Pelliccione, Patrizio
    University of Gothenburg, Sweden.
    Tivoli, Massimo
    University of L’Aquila, Italy.
    Editorial to theme issue on model-driven engineering of component-based software systems2017In: Software and Systems Modeling, ISSN 1619-1366, E-ISSN 1619-1374Article in journal (Other academic)
    Abstract [en]

    This theme issue aims at providing a forum for disseminating latest trends in the use and combination of model-driven engineering (MDE) and component-based software engineering (CBSE). One of the main aims of MDE is to increase productivity in the development of complex systems, while reducing the time to market. Regarding CBSE, one of the main goals is to deliver and then support the exploitation of reusable “off-the-shelf” software components to be incorporated into larger applications. An effective interplay of MDE and CBSE can bring benefits to both communities: on the one hand, the CBSE community would benefit from implementation and automation capabilities of MDE, and on the other hand, MDE would benefit from the foundational nature of CBSE. In total, we received 23 submissions to this theme issue, and each submission was reviewed by at least three reviewers. Thanks to the high quality of the submissions that we received, we could eventually accept six papers for publication.

  • 28.
    Ciccozzi, Federico
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, JanMälardalen University, School of Innovation, Design and Engineering, Embedded Systems.Tivoli, MassimoUniversity of L’Aquila, Italy.
    Proceedings of the 1st International Workshop on Model-Driven Engineering for Component-Based Software Systems (ModComp) 20142014Conference proceedings (editor) (Other academic)
  • 29.
    Ciccozzi, Federico
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Feljan, Juraj
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. IS (Embedded Systems).
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Architecture optimization: Speed or accuracy? Both!In: Software Quality Journal (Springer) SQJArticle in journal (Refereed)
    Abstract [en]

    Embedded systems are becoming more and more complex, thus demanding innovative means to tame their challenging development. Among others, early architecture optimization represents a crucial activity in the development of embedded systems to maximise the usage of their limited resources and to respect their real-time requirements. Typically, architecture optimization seeks good architecture candidates based on model-based analysis. Leveraging abstractions and estimates, this analysis usually produces approximations useful for comparing architecture candidates. Nonetheless, approximations do not provide enough accuracy in estimating crucial extra-functional properties. In this article, we provide an architecture optimization framework that profits from both the speed of model-based predictions and the accuracy of execution-based measurements. Model-based optimization rapidly finds a good architecture candidate, which is refined through optimization based on monitored executions of automatically generated code. Moreover, the framework enables the developer to leverage her optimization experience. More specifically, the developer can use runtime monitoring of generated code execution to manually adjust task allocation at modelling level, and commit the changes without halting execution. In the article, our architecture optimization mechanism is first described from a general point of view and then exploited for optimizing the allocation of software tasks to the processing cores of a multicore embedded system; we target extra-functional properties that can be concretely represented and automatically compared for different architectural alternatives (such as memory consumption, energy consumption, or responsetime).

  • 30.
    Feljan, Juraj
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Task Allocation Optimization for Multicore Embedded Systems2014In: The 40th Euromicro Conference on Software Engineering and Advanced Applications SEAA 2014, 2014, 237-244 p.Conference paper (Refereed)
    Abstract [en]

    In many domains of embedded systems, the increasing performance demands are tackled by increasing performance capacity through the use of multicore technology. However, adding more processing units also introduces the issue of task allocation --- decisions have to be made which software task to run on which core in order to best utilize the hardware platform. In this paper, we present an optimization mechanism for allocating tasks to cores of a soft real-time embedded system, that aims to minimize end-to-end response times of task chains, while keeping the number of deadline misses below the desired limit. The optimization relies on a novel heuristic that proposes new allocation candidates based on information how tasks delay each other. The heuristic was evaluated in a series of experiments, which showed that it both finds better allocations, and does it in fewer iterations than two heuristics that we used for comparison.

  • 31.
    Feljan, Juraj
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    The Impact of Intra-core and Inter-core Task Communication on Architectural Analysis of Multicore Embedded Systems2013Conference paper (Refereed)
    Abstract [en]

    In order to get accurate performance predictions, design-time architectural analysis of multicore embedded systems has to consider communication overhead. When communicating tasks execute on the same core, the communication typically happens through the local cache. On the other hand, when they run on separate cores, the communication has to go through the shared memory. As the shared memory has a significantly larger latency than the local cache, we expect a significant difference between intra-core and inter-core task communication. In this paper, we present a series of experiments we ran to identify the size of this difference, and discuss its impact on architectural analysis of multicore embedded systems. In particular, we show that the impact of the difference is much lower than anticipated.

  • 32.
    Feljan, Juraj
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Seceleanu, Tiberiu
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards a model-based approach for allocating tasks to multicore processors2012In: Proceedings - 38th EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 2012, 2012, 117-124 p.Conference paper (Refereed)
    Abstract [en]

    Multicore technology provides a way to improve the performance of embedded systems in response to the demand in many domains for more and more complex functionality. However, increasing the number of processing units also introduces the problem of deciding which task to execute on which core in order to best utilize the platform. In this paper we present a model-based approach for automatic allocation of software tasks to the cores of a soft real-time embedded system, based on design-time performance predictions. We describe a general iterative method for finding an allocation that maximizes key performance aspects while satisfying given allocation constraints, and present an instance of this method, focusing on the particular performance aspects of timeliness and balanced computational load over time and over the cores.

  • 33.
    Feljan, Juraj
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Zagar, Mario
    Mälardalen University, School of Innovation, Design and Engineering.
    Realizing a domain specific component model with JavaBeans2008Conference paper (Refereed)
    Abstract [en]

    SaveCCM is a domain specific component model developed specifically for safety-critical hard real-time embedded systems. The goal of this paper is to extend the scope of SaveCCM to make it usable also outside this narrow domain, as the general concepts behind SaveCCM are applicable as well for embedded systems that have soft or no real-time constraints. We describe the modifications made to SaveCCM in order to adjust it to the wider scope, focusing on defining a new realization mechanism. In its original form, a SaveCCM system is realized by component allocation to real-time tasks, which means that individual components are not observable in the run-time system. We propose realizing SaveCCM by a transformation to JavaBeans, making the advantages of component-based development present also at run-time. This way we also make the executable system more general and portable.

  • 34.
    Feljan, Juraj
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Zagar, Mario
    Mälardalen University, School of Innovation, Design and Engineering.
    Using JavaBeans to Realize a Domain-Specific Component Model2009In: 35th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 2009, 474-477 p.Conference paper (Refereed)
    Abstract [en]

    SaveCCM is a domain-specific component model developed specifically for safety-critical hard real-time embedded systems in the vehicular domain. This paper expands the scope of SaveCCM to make it usable also outside this narrow domain, as the general concepts behind SaveCCM are applicable for a wider range of embedded systems. We describe the extensions made to SaveCCM in order to adjust it to a broader scope, focusing on a new realization mechanism. In its original form, SaveCCM systems are realized by components being grouped and transformed into real-time tasks. We propose an alternative realization of SaveCCM - by transformation to JavaBeans, which makes the executable system more general and portable, and maintains the structure of the component-based design.

  • 35.
    Feljan, Juraj
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Ciccozzi, Federico
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Enhancing model-based architecture optimization with monitored system runs2015In: 41st Euromicro Conference on Software Engineering and Advanced Applications SEAA15, 2015, 216-233 p.Conference paper (Refereed)
    Abstract [en]

    Typically, architecture optimization searches for good architecture candidates based on analyzing a model of the system. Model-based analysis inherently relies on abstractions and estimates, and as such produces approximations which are used to compare architecture candidates. However, approximations are often not sufficient due to the difficulty of accurately estimating certain extra-functional properties. In this paper, we present an architecture optimization approach where the speed of model-based optimization is combined with the accuracy of monitored system runs. Model-based optimization is used to quickly find a good architecture candidate, while optimization based on monitored system runs further refines this candidate. Using measurements assures a higher accuracy of the metrics used for optimization compared to using performance predictions. We demonstrate the feasibility of the approach by implementing it in our framework for optimizing the allocation of software tasks to the processing cores of a multicore embedded system.

  • 36.
    Hansson, Hans
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Isovic, Damir
    Mälardalen University, School of Innovation, Design and Engineering.
    Lundqvist, Kristina
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Ouimet, Martin
    Mälardalen University, School of Innovation, Design and Engineering.
    Pettersson, Paul
    Mälardalen University, School of Innovation, Design and Engineering.
    Punnekkat, Sasikumar
    Mälardalen University, School of Innovation, Design and Engineering.
    Seceleanu, Cristina
    Mälardalen University, School of Innovation, Design and Engineering.
    Real-Time Systems2010Book (Other academic)
    Abstract [en]

    This is a textbook developed for use in the Master Programme Module E-M.6 "Real-Time Systems" as part of the Postgraduate Distance studies organized by Fraunhofer IESE and the Distance and International Studies Center at the Technical University of Kaiserslauten, Germany.

  • 37.
    Hansson, Hans
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Axelsson, Jakob
    Mälardalen University, School of Innovation, Design and Engineering.
    Björkman, Mats
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Lisper, Björn
    Mälardalen University, School of Innovation, Design and Engineering.
    Lundqvist, Kristina
    Mälardalen University, School of Innovation, Design and Engineering.
    Norström, Christer
    Mälardalen University, School of Innovation, Design and Engineering.
    Pettersson, Paul
    Mälardalen University, School of Innovation, Design and Engineering.
    Punnekkat, Sasikumar
    Mälardalen University, School of Innovation, Design and Engineering.
    Sjödin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    The PROGRESS Centre for Predictable Embedded Software Systems - Half-time report (edited version)2010Report (Other academic)
    Abstract [en]

    Presentation of the achievements and activities within the PROGRESS national strategic research centre 2006-2008

  • 38.
    Hänninen, Kaj
    et al.
    Mälardalen University, Department of Computer Science and Electronics.
    Mäki-Turja, Jukka
    Mälardalen University, Department of Computer Science and Electronics.
    Bohlin, Markus
    Mälardalen University, Department of Computer Science and Electronics.
    Carlson, Jan
    Mälardalen University, Department of Computer Science and Electronics.
    Sjödin, Mikael
    Mälardalen University, Department of Computer Science and Electronics.
    Analysing Stack Usage in Preemptive Shared Stack Systems2006Report (Other academic)
    Abstract [en]

    This paper presents a novel method to determine the maximum stack memory used in preemptive, shared stack, real-time systems. We provide a general and exact problem formulation applicable for any preemptive system model based on dynamic (run-time) properties. We also show how to safely approximate the exact stack usage by using static (compile time) information about the system model and the underlying run-time system on a relevant and commercially available system model: A hybrid, statically and dynamically, scheduled system. Comprehensive evaluations show that our technique significantly reduces the amount of stack memory needed compared to existing analysis techniques. For typical task sets a decrease in the order of 70% is typical.

  • 39.
    Hänninen, Kaj
    et al.
    Mälardalen University, Department of Computer Science and Electronics.
    Mäki-Turja, Jukka
    Mälardalen University, Department of Computer Science and Electronics.
    Bohlin, Markus
    Mälardalen University, Department of Computer Science and Electronics.
    Carlson, Jan
    Mälardalen University, Department of Computer Science and Electronics.
    Sjödin, Mikael
    Mälardalen University, Department of Computer Science and Electronics.
    Determining Maximum Stack Usage in Preemptive Shared Stack Systems2006In: Proceedings - Real-Time Systems Symposium, 2006, 445-453 p.Conference paper (Refereed)
    Abstract [en]

    This paper presents a novel method to determine the maximum stack memory used in preemptive, shared stack, real-time systems. We provide a general and exact problem formulation applicable for any preemptive system model based on dynamic (run-time) properties. We also show how to safely approximate the exact stack usage by using static (compile time) information about the system model and the underlying run-time system on a relevant and commercially available system model: A hybrid, statically and dynamically, scheduled system.

    Comprehensive evaluations show that our technique significantly reduces the amount of stack memory needed compared to existing analysis techniques. For typical task sets a decrease in the order of 70% is typical.

  • 40.
    Hänninen, Kaj
    et al.
    Mälardalen University, Department of Computer Science and Electronics. Arcticus Systems, Järfälla, Sweden.
    Mäki-Turja, Jukka
    Mälardalen University, Department of Computer Science and Electronics.
    Bohlin, Markus
    Mälardalen University, Department of Computer Science and Electronics. Swedish Institute of Computer Science, Kista, Sweden.
    Carlson, Jan
    Mälardalen University, Department of Computer Science and Electronics.
    Sjödin, Mikael
    Mälardalen University, Department of Computer Science and Electronics. CC Systems, Uppsala, Sweden .
    Determining Maximum Stack Usage in Preemptive Shared Stack Systems2007In: Proceedings of the 9th Real-Time in Sweden (RTiS'07), Västerås, Sweden, 2007, 118-126 p.Conference paper (Refereed)
    Abstract [en]

    This paper presents a novel method to determine the

    maximum stack memory used in preemptive, shared stack,

    real-time systems. We provide a general and exact problem

    formulation applicable for any preemptive system model

    based on dynamic (run-time) properties.

    We also show how to safely approximate the exact stack

    usage by using static (compile time) information about the

    system model and the underlying run-time system on a relevant

    and commercially available system model: A hybrid,

    statically and dynamically, scheduled system.

    Comprehensive evaluations show that our technique significantly

    reduces the amount of stack memory needed compared

    to existing analysis techniques. For typical task sets

    a decrease in the order of 70% is typical.

  • 41.
    Håkansson, John
    et al.
    Uppsala University.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Monot, Aurelien
    Ecole des Mines, Nancy, France .
    Pettersson, Paul
    Mälardalen University, School of Innovation, Design and Engineering.
    Slutej, Davor
    Mälardalen University, School of Innovation, Design and Engineering.
    Component-Based Design and Analysis of Embedded Systems with UPPAAL PORT2008In: Lecture Notes in Computer Science,  Volume 5311, Springer, 2008, 252-257 p.Chapter in book (Refereed)
    Abstract [en]

    UPPAAL PORT is a new tool for component-based design and analysis

    of embedded systems. It operates on the hierarchically structured continuous time component modeling language SaveCCM and provides efficient model-checking

    by using partial-order reduction techniques that exploits the structure and the component behavior of the model. UPPAAL PORT is implemented as an extension of the verification engine in the UPPAAL tool. The tool can be used as back-end in to the Eclipse based SaveCCM integrated development environment, which

    supports user friendly editing, simulation, and verification of models.

  • 42.
    Inam, Rafia
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Sjödin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Kuncar, Jiri
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Predictable integration and reuse of executable real-time components2014In: Journal of Systems and Software, ISSN 0164-1212, Vol. 91, 147-162 p.Article in journal (Refereed)
    Abstract [en]

    We present the concept of runnable virtual node (RVN) as a means to achieve predictable integration and reuse of executable real-time components in embedded systems. A runnable virtual node is a coarse-grained software component that provides functional and temporal isolation with respect to its environment. Its interaction with the environment is bounded both by a functional and a temporal interface, and the validity of its internal temporal behaviour is preserved when integrated with other components or when reused in a new environment. Our realization of RVN exploits the latest techniques for hierarchical scheduling to achieve temporal isolation, and the principles from component-based software-engineering to achieve functional isolation. It uses a two-level deployment process, i.e. deploying functional entities to RVNs and then deploying RVNs to physical nodes, and thus also gives development benefits with respect to composability, system integration, testing, and validation. In addition, we have implemented a server-based inter-RVN communication strategy to not only support the predictable integration and reuse properties of RVNs by keeping the communication code in a separate server, but also increasing the maintainability and flexibility to change the communication code without affecting the timing properties of RVNs. We have applied our approach to a case study, implemented in the ProCom component technology executing on top of a FreeRTOS-based hierarchical scheduling framework and present the results as a proof-of-concept.

  • 43.
    Inam, Rafia
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Mäki-Turja, Jukka
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Sjödin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Using Temporal Isolation to Achieve Predictable Integration of Real-Time Components2010In: 22nd Euromicro Conference on Real-Time Systems (ECRTS' 10) WiP Session / [ed] Robert I. Davis, 2010, 17-21 p.Conference paper (Refereed)
    Abstract [en]

    We present the concept of a virtual node as means to achieve predictable integration of software components with real-time requirements. The virtual node is based on the technology using the hierarchical scheduling framework to achieve temporal isolation between components (or sets of components). The temporal isolation means that all components deployed to a virtual node will retain their temporal properties when integrated with other components on a physical node. We present how the concept of virtual nodes is applicable to three different component technologies: ProCom, Autosar and AADL. Keywords-real-time systems; component integration

  • 44.
    Inam, Rafia
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Mäki-Turja, Jukka
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Sjödin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Virtual Node - To Achieve Temporal Isolation and Predictable Integration of Real-Time Components2012In: International Journal on Computing (JoC), ISSN 2010-2283, Vol. 1, no 4, 63-69 p.Article in journal (Refereed)
    Abstract [en]

    We present an approach of two-level deployment process for component models used in distributed real-time embedded systems to achieve predictable integration of real-time components. Our main emphasis is on the new concept of virtual node with the use of a hierarchical scheduling technique. Virtual nodes are used as means to achieve predictable integration of software components with real-time requirements. The hierarchical scheduling framework is used to achieve temporal isolation between components (or sets of components). Our approach permits detailed analysis, e.g., with respect to timing, of virtual nodes and this analysis is also reusable with the reuse of virtual nodes. Hence virtual node preserves real-time properties across reuse and integration in different contexts.

  • 45.
    Krpic, Zdravko
    et al.
    Josip Juraj Strossmayer Univ., Croatia.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Towards a Common Software-to-hardware Allocation Framework for the Heterogeneous High Performance Computing2014Conference paper (Refereed)
    Abstract [en]

    In the domain of high performance computing, software deployment on heterogeneous distributed processing units has been in practice for many years. However, new hardware technologies, increased complexity of software and significant increase of requirements demand new methods that can manage these concerns in an efficient way. In this paper we propose a new optimization framework that in a systematic way addresses a general allocation model, the software and deployment architectures, and, based on the user preferences, provides a software deployment solution regardless of number of quality attributes used. Additionally, we present the input models to the allocation process capable of describing a number of software and hardware configurations, and a two-step allocation algorithm capable of harnessing these models.

  • 46.
    Land, Rikard
    et al.
    Mälardalen University, Department of Computer Science and Electronics.
    Carlson, Jan
    Larsson, Stig
    Crnkovic, Ivica
    Merging In-House Developed Software Systems: A Method for Exploring Alternatives2006In: Perspectives in Software Architecture Quality: Short papers of the 2nd International Conference on the Quality of Software Architectures (QoSA 2006), June 27-29, 2006, Västeras, Sweden, Universität Karlsruhe , 2006, 13-23 p.Chapter in book (Other academic)
  • 47.
    Land, Rikard
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Stig
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Project Monitoring and Control In Model-Driven and Component-Based Development of Embedded Systems : The CARMA Principle and Preliminary Results2010In: ENASE 2010 - Proceedings of the 5th International Conference on Evaluation of Novel Approaches to Software Engineering, 2010, 253-258 p.Conference paper (Refereed)
    Abstract [en]

    This position paper describes how the combination of the Model-Driven Development (MDD) and Component-Based Software Engineering (CBSE) paradigms can support project monitoring and control, and project risk reduction. The core principle for this is articulated and named CARMA, and our research agenda and preliminary results are described. Through interviews, industry input, process simulation, tool implementation and pilot projects, and describing an extension of CMMI, we are exploring the CARMA principle in order to provide guidelines for MDD/CBSE projects.

  • 48.
    Land, Rikard
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Stig
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    The Progress Process Guidelines (PPG)2010Report (Other academic)
    Abstract [en]

    This report proposes how the emerging model-driven and component-based paradigms can be utilized in embedded systems development to achieve a potentially high level of project monitoring and control, and thus reduce project risks. The guidelines are formulated as an extension of CMMI.

  • 49.
    Land, Rikard
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Stig
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards Guidelines for a Development Process for Component-Based Embedded Systems2009In: COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2009, Springer, 2009, 43-58 p.Chapter in book (Refereed)
    Abstract [en]

    Software is more and more built from pre-existing components. This is true also for the embedded software domain, and there is a need to consider how development processes need to be changed to best utilize the component-based paradigm, and how processes and technologies must be designed to support each other. To facilitate this change towards component-based embedded software, this paper presents a set of process guidelines, named the Progress Process Guidelines (PPG), which is based on the structure of CMMI. This paper presents the structure of the PPG, and presents and analyzes the PPG parts which most closely relate to system verification, which is typically an important and difficult activity for embedded software.

  • 50.
    Land, Rikard
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Åkerholm, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering.
    Efficient Software Component Reuse in Safety-Critical Systems – An Empirical Study2012In: Lecture Notes in Computer Science, vol. 7612, Springer, 2012, 388-399 p.Chapter in book (Refereed)
    Abstract [en]

    The development of software components to be reused in safety-critical systems involves a number of challenges. These are related to both the goals of using the component in several systems, with different definitions of system-specific hazards, and on the high demands of today’s safety standards, which assume a top-down system and software development process. A large part of the safety-related activities is therefore left for integrator, and there is a risk that a pre-existing component will neither be feasible nor more efficient to use than internal development of the same functionality. In this paper we address five important challenges, based on an empirical study consisting of interviews with experts in the field, and a case study. The result is twelve concrete practices found to improve the overall efficiency of such component development, and their subsequent reuse. These are related to the component architecture and configuration interface, component and system testing and verification, and the information to be provided with the component.

12 1 - 50 of 91
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf