https://www.mdu.se/

mdu.sePublications
Change search
Refine search result
1 - 29 of 29
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)
  • Disputation date (earliest first)
  • Disputation date (latest 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)
  • Disputation date (earliest first)
  • Disputation date (latest 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.
    Addazi, Lorenzo
    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.
    Blended graphical and textual modelling for UML profiles: A proof-of-concept implementation and experiment2021In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 175, article id 110912Article in journal (Refereed)
    Abstract [en]

    Domain-specific modelling languages defined by extending or constraining the Unified Modelling Language (UML) through the profiling mechanism have historically relied on graphical notations to maximise human understanding and facilitate communication among stakeholders. Other notations, such as text-, form-, or table-based are, however, often preferred for specific modelling purposes, due to the nature of a specific domain or the available tooling, or for personal preference. Currently, the state of the art support for UML-based languages provides an almost completely detached, or even entirely mutually exclusive, use of graphical and textual modelling. This becomes inadequate when dealing with the development of modern systems carried out by heterogeneous stakeholders. Our intuition is that a modelling framework based on seamless blended multi-notations can disclose several benefits, among which: flexible separation of concerns, multi-view modelling based on multiple notations, convenient text-based editing operations (inside and outside the modelling environment), and eventually faster modelling activities. In this paper we report on: (i) a proof-of-concept implementation of a framework for UML and profiles modelling using blended textual and graphical notations, and (ii) an experiment on the framework, which eventually shows that blended multi-notation modelling performs better than standard single-notation modelling.

  • 2.
    Ali, Nazakat
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Punnekkat, Sasikumar
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Rauf, A.
    Knightec AB, Västerås, Sweden.
    Modeling and safety analysis for collaborative safety-critical systems using hierarchical colored Petri nets2024In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 210, article id 111958Article in journal (Refereed)
    Abstract [en]

    Context: Collaborative systems enable multiple independent systems to work together towards a common goal. These systems can include both human-system and system-system interactions and can be found in a variety of settings, including smart manufacturing, smart transportation, and healthcare. Safety is an important consideration for collaborative systems because one system's failure can significantly impact the overall system performance and adversely affect other systems, humans or the environment. Goal: Fail-safe mechanisms for safety-critical systems are designed to bring the system to a safe state in case of a failure in the sensors or actuators. However, a collaborative safety-critical system must do better and be safe-operational, for e.g., a failure of one of the members in a platoon of vehicles in the middle of a highway is not acceptable. Thus, failures must be compensated, and compliance with safety constraints must be ensured even under faults or failures of constituent systems. Method: In this paper, we model and analyze safety for collaborative safety-critical systems using hierarchical Coloured Petri nets (CPN). We used an automated Human Rescue Robot System (HRRS) as a case study, modeled it using hierarchical CPN, and injected some specified failures to check and confirm the safe behavior in case of unexpected scenarios. Results: The system behavior was observed after injecting three types of failures in constituent systems, and then safety mechanisms were applied to mitigate the effect of these failures. After applying safety mechanisms, the HRRS system's overall behavior was again observed both in terms of verification and validation, and the simulated results show that all the identified failures were mitigated and HRRS completed its mission. Conclusion: It was found that the approach based on formal methods (CPN modeling) can be used for the safety analysis, modeling, validation, and verification of collaborative safety-critical systems like HRRS. The hierarchical CPN provides a rigorous way of modeling to implement complex collaborative systems. 

  • 3.
    Avritzer, Alberto
    et al.
    Siemens Corporate Research, United States .
    Cole, R
    JHU/Applied Physics Laboratory, United States .
    Weyuker, Elaine
    AT and T Labs - Research, United States.
    Methods and Opportunities for Rejuvenation in Aging Distributed Software2010In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 83, no 9, p. 1568-1578Article in journal (Refereed)
    Abstract [en]

    In this paper we describe several methods for detecting the need for software rejuvenation in mission critical systems that are subjected to worm infection, and introduce new software rejuvenation algorithms. We evaluate these algorithms' effectiveness using both simulation studies and analytic modeling, by assessing the probability of mission success. The system under study emulates a Mobile Ad-Hoc Network (MANET) of processing nodes. Our analysis determined that some of our rejuvenation algorithms are quite effective in maintaining a high probability of mission success while the system is under explicit attack by a worm infection.

  • 4.
    Ayala, I.
    et al.
    Universidad de Málaga, Spain.
    Papadopoulos, Alessandro
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Amor, M.
    Universidad de Málaga, Spain.
    Fuentes, L.
    Universidad de Málaga, Spain.
    ProDSPL: Proactive self-adaptation based on Dynamic Software Product Lines2021In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 175, article id 110909Article in journal (Refereed)
    Abstract [en]

    Dynamic Software Product Lines (DSPLs) are a well-accepted approach to self-adaptation at runtime. In the context of DSPLs, there are plenty of reactive approaches that apply countermeasures as soon as a context change happens. In this paper we propose a proactive approach, PRODSPL, that exploits an automatically learnt model of the system, anticipates future variations of the system and generates the best DSPL configuration that can lessen the negative impact of future events on the quality requirements of the system. Predicting the future fosters adaptations that are good for a longer time and therefore reduces the number of reconfigurations required, making the system more stable. PRODSPL formulates the problem of the generation of dynamic reconfigurations as a proactive controller over a prediction horizon, which includes a mapping of the valid configurations of the DSPL into linear constraints. Our approach is evaluated and compared with a reactive approach, DAGAME, also based on a DSPL, which uses a genetic algorithm to generate quasi-optimal feature model configurations at runtime. PRODSPL has been evaluated using a strategy mobile game and a set of randomly generated feature models. The evaluation shows that PRODSPL gives good results with regard to the quality of the configurations generated when it tries anticipate future events. Moreover, in doing so, PRODSPL enforces the system to make as few reconfigurations as possible.

  • 5.
    Badampudi, D.
    et al.
    Blekinge Institute of Technology, Karlskrona, Sweden.
    Wnuk, K.
    Blekinge Institute of Technology, Karlskrona, Sweden.
    Wohlin, C.
    Blekinge Institute of Technology, Karlskrona, Sweden.
    Franke, U.
    Blekinge Institute of Technology, Karlskrona, Sweden.
    Smite, D.
    Blekinge Institute of Technology, Karlskrona, Sweden.
    Cicchetti, Antonio
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    A decision-making process-line for selection of software asset origins and components2018In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 135, p. 88-104Article in journal (Refereed)
    Abstract [en]

    Selecting sourcing options for software assets and components is an important process that helps companies to gain and keep their competitive advantage. The sourcing options include: in-house, COTS, open source and outsourcing. The objective of this paper is to further refine, extend and validate a solution presented in our previous work. The refinement includes a set of decision-making activities, which are described in the form of a process-line that can be used by decision-makers to build their specific decision-making process. We conducted five case studies in three companies to validate the coverage of the set of decision-making activities. The solution in our previous work was validated in two cases in the first two companies. In the validation, it was observed that no activity in the proposed set was perceived to be missing, although not all activities were conducted and the activities that were conducted were not executed in a specific order. Therefore, the refinement of the solution into a process-line approach increases the flexibility and hence it is better in capturing the differences in the decision-making processes observed in the case studies. The applicability of the process-line was then validated in three case studies in a third company. 

  • 6.
    Bagheri, M.
    et al.
    Sharif University of Technology, Tehran, Iran.
    Sirjani, Marjan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Reykjavik University, Reykjavik, Iceland.
    Khamespanah, E.
    Reykjavik University, Reykjavik, Iceland.
    Khakpour, N.
    Linnaeus University, Växjö Campus, Sweden.
    Akkaya, I.
    University of California at Berkeley, CA, United States.
    Movaghar, A.
    Sharif University of Technology, Tehran, Iran.
    Lee, E. A.
    University of California at Berkeley, CA, United States.
    Coordinated actor model of self-adaptive track-based traffic control systems2018In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 143, p. 116-139Article in journal (Refereed)
    Abstract [en]

    Self-adaptation is a well-known technique to handle growing complexities of software systems, where a system autonomously adapts itself in response to changes in a dynamic and unpredictable environment. With the increasing need for developing self-adaptive systems, providing a model and an implementation platform to facilitate integration of adaptation mechanisms into the systems and assuring their safety and quality is crucial. In this paper, we target Track-based Traffic Control Systems (TTCSs) in which the traffic flows through pre-specified sub-tracks and is coordinated by a traffic controller. We introduce a coordinated actor model to design self-adaptive TTCSs and provide a general mapping between various TTCSs and the coordinated actor model. The coordinated actor model is extended to build large-scale self-adaptive TTCSs in a decentralized setting. We also discuss the benefits of using Ptolemy II as a framework for model-based development of large-scale self-adaptive systems that supports designing multiple hierarchical MAPE-K feedback loops interacting with each other. We propose a template based on the coordinated actor model to design a self-adaptive TTCS in Ptolemy II that can be instantiated for various TTCSs. We enhance the proposed template with a predictive adaptation feature. We illustrate applicability of the coordinated actor model and consequently the proposed template by designing two real-life case studies in the domains of air traffic control systems and railway traffic control systems in Ptolemy II. 

  • 7.
    Barisic, Ankica
    et al.
    Univ Cote dAzur, INRIA, CNRS, Sophia Antipolis, France.;Univ Nova Lisboa, NOVA LINCS, Lisbon, Portugal..
    Ruchkin, Ivan
    Univ Penn, Philadelphia, USA..
    Savic, Dusan
    Fac Org Sci, Belgrade, Serbia..
    Mohamed, Mustafa Abshir
    Ege Univ, Izmir, Turkey..
    Al-Ali, Rima
    Charles Univ Prague, Prague, Czech Republic..
    Li, Letitia W.
    BAE Syst, FAST Labs, Falls Church, USA..
    Mkaouar, Hana
    Telecom Paris, Inst Polytech Paris, LTCI, Paris, France..
    Eslampanah, Raheleh
    Univ Antwerp, Antwerp, Belgium.;Flanders Make, Lommel, Belgium..
    Challenger, Moharram
    Univ Antwerp, Antwerp, Belgium.;Flanders Make, Lommel, Belgium..
    Blouin, Dominique
    Telecom Paris, Inst Polytech Paris, LTCI, Paris, France..
    Nikiforova, Oksana
    Riga Tech Univ, Riga, Latvia..
    Cicchetti, Antonio
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Multi-paradigm modeling for cyber-physical systems: A systematic mapping review2022In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 183, article id 111081Article, review/survey (Refereed)
    Abstract [en]

    Cyber-Physical Systems (CPS) are heterogeneous and require cross-domain expertise to model. The complexity of these systems leads to questions about prevalent modeling approaches, their ability to integrate heterogeneous models, and their relevance to the application domains and stakeholders. The methodology for Multi-Paradigm Modeling (MPM) of CPS is not yet fully established and standardized, and researchers apply existing methods for modeling of complex systems and introducing their own. No systematic review has been previously performed to create an overview of the field on the methods used for MPM of CPS. In this paper, we present a systematic mapping study that determines the models, formalisms, and development processes used over the last decade. Additionally, to determine the knowledge necessary for developing CPS, our review studied the background of actors involved in modeling and authors of surveyed studies. The results of the survey show a tendency to reuse multiple existing formalisms and their associated paradigms, in addition to a tendency towards applying transformations between models. These findings suggest that MPM is becoming a essential approach to model CPS, and highlight the importance of future integration of models, standardization of development process and education.

  • 8.
    Bate, Iain
    University of York.
    Systematic approaches to understanding and evaluating design trade-offs2008In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 81, no 8, p. 1253-1271Article in journal (Refereed)
    Abstract [en]

    The use of trade-off analysis as part of optimising designs has been an emerging technique for a number of years. However, only recently has much work been done with respect to systematically deriving the understanding of the system problem to be optimised and using this information as part of the design process. As systems have become larger and more complex then a need has arisen for suitable approaches. The system problem consists of design choices, measures for individual values related to quality attributes and weights to balance the relative importance of each individual quality attribute. In this paper, a method is presented for establishing an understanding of a system problem using the goal structuring notation (GSN). The motivation for this work is borne out of experience working on embedded systems in the context of critical systems where the cost of change can be large and the impact of design errors potentially catastrophic. A particular focus is deriving an understanding of the problem so that different solutions can be assessed quantitatively, which allows more definitive choices to be made. A secondary benefit is it also enables design using heuristic search approaches which is another area of our research. The overall approach is demonstrated through a case study which is a task allocation problem.

  • 9.
    Breivold, Hongyu Pei
    et al.
    ABB Corp Res.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Magnus
    ABB Corp Res.
    Software architecture evolution through evolvability analysis2012In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 85, no 11, p. 2574-2592Article in journal (Refereed)
    Abstract [en]

    Software evolvability is a multifaceted quality attribute that describes a software system's ability to easily accommodate future changes. It is a fundamental characteristic for the efficient implementation of strategic decisions, and the increasing economic value of software. For long life systems, there is a need to address evolvability explicitly during the entire software lifecycle in order to prolong the productive lifetime of software systems. However, designing and evolving software architectures are the challenging task. To improve the ability to understand and systematically analyze the evolution of software system architectures, in this paper, we describe software architecture evolution characterization, and propose an architecture evolvability analysis process that provides replicable techniques for performing activities to aim at understanding and supporting software architecture evolution. The activities are embedded in: (i) the application of a software evolvability model; (ii) a structured qualitative method for analyzing evolvability at the architectural level; and (iii) a quantitative evolvability analysis method with explicit and quantitative treatment of stakeholders' evolvability concerns and the impact of potential architectural solutions on evolvability. The qualitative and quantitative assessments manifested in the evolvability analysis process have been applied in two large-scale industrial software systems at ABB and Ericsson, with experiences and reflections described. (c) 2012 Elsevier Inc. All rights reserved.

  • 10.
    Bucaioni, Alessio
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Innovation and Product Realisation.
    Becker, Matthias
    KTH Royal Institute of Technology, Stockholm, Sweden.
    Enabling Automated Integration of Architectural Languages: an Experience Report from the Automotive Domain2022In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 184, article id 111106Article in journal (Refereed)
    Abstract [en]

    Modern automotive software systems consist of hundreds of heterogeneous software applications, belonging to separated function domains and often developed within distributed automotive ecosystems consisting of original equipment manufactures, tier-1 and tier-2 companies. Hence, the development of modern automotive software systems is a formidable challenge. A well-known instrument for coping with the tremendous heterogeneity and complexity of modern automotive software systems is the use of architectural languages as a way of enabling different and specific views over these systems. However, the use of different architectural languages might come with the cost of reduced interoperability and automation as different languages might have weak to no integration. In this article, we tackle the challenge of integrating two architectural languages heavily used in the automotive domain for the design and timing analysis of automotive software systems: AMALTHEA and Rubus Component Model. The main contributions of this paper are i) a mapping scheme for the translation of an AMALTHEA architecture into a Rubus Component Model architecture where high-precision timing analysis can be run, and the back annotation of the analysis results on the starting AMALTHEA architecture; ii) the implementation of the proposed scheme, which uses the concept of model transformations for enabling a full-fledged automated integration; iii) the application of such automation on three industrial automotive systems being the brake-by-wire, the full blown engine management system and the engine management system. We discuss and evaluate the proposed contributions using an online, experts survey and the above-mentioned use cases. Based on the evaluation results, we conclude that the proposed automation mechanism is correct and applicable in industrial contexts. Besides, we observe that the performance of the automation mechanism does not degrade when translating large models with several thousands of elements. Eventually, we conclude that experts in this field find the proposed contribution industrially relevant.

  • 11.
    Campeanu, Gabriel
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Bombardier Transportation, 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.
    Component-based development of embedded systems with GPUs2020In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 161, article id 110488Article in journal (Refereed)
    Abstract [en]

    One pressing challenge of many modern embedded systems is to successfully deal with the considerable amount of data that originates from the interaction with the environment. A recent solution comes from the use of GPUs, providing a significantly improved performance for data-parallel applications. Another trend in the embedded systems domain is component-based development. However, existing component-based approaches lack specific support to develop embedded systems with GPUs. As a result, components with GPU capability need to encapsulate all the required GPU information, leading to component specialization to specific platforms, hence drastically impeding component reusability. To facilitate component-based development of embedded systems with GPUs, we introduce the concept of flexible components. This increases the design flexibility by allowing the system developer to decide component allocation (i.e., either the CPU or GPU) at a later stage of the system development, with no change to the component implementation. Furthermore, we provide means to automatically generate code for adapting flexible components corresponding to their hardware placement, as well as code for component communication. Through the introduced support, components with GPU capability are platform-independent, and can be executed, without manual adjustment, on a large variety of hardware (i.e., platforms with different GPU characteristics).

  • 12.
    Ciccozzi, Federico
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Explicit connection patterns (ECP) profile and semantics for modelling and generating explicit connections in complex UML composite structures2016In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 121, p. 329-344Article in journal (Refereed)
    Abstract [en]

    Model-driven engineering can help in mitigating ever-growing complexity of modern software systems. In this sense, the Unified Modelling Language (UML) has gained a thick share in the market of modelling languages adopted in industry. Nevertheless, the generality of UML can make it hard to build complete code generators, simulators, model-based analysis or testing tools without setting variability in the semantics of the language. To tailor semantics variability the notion of semantic variation point has been introduced in UML 2.0. Our research focuses on the semantic variation point that leaves the rules for matching multiplicities of connected instances of components and ports undecided in UML composite structures. In order to allow model analysability, simulation and code generation, this semantics needs to be set. At the same time, leaving the burden of this task to the developers is often overwhelming for complex systems. In this paper we provide a solution for supporting modelling and automatic calculation and generation of explicit interconnections in complex UML composite structures. This is achieved by (i) defining a set of connection patterns, in terms of a UML profile, and related semantic rules for driving the calculation, (ii) providing a generation algorithm to calculate the explicit interconnections.

  • 13.
    Crnkovic, Ivica
    et al.
    Mälardalen University, Department of Computer Science and Electronics.
    Heineman, George
    Schmidt, Heinz
    Stafford, Judith
    Wallnau, Kurt
    Guest Editorial2007In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 80, no 5, p. 641-642Article in journal (Other academic)
  • 14.
    Faragardi, Hamid Reza
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Lisper, Björn
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Sandström, Kristian
    RISE SICS, Västerås, Sweden.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    A resource efficient framework to run automotive embedded software on multi-core ECUs2018In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 139, p. 64-83Article in journal (Refereed)
    Abstract [en]

    The increasing functionality and complexity of automotive applications requires not only the use of more powerful hardware, e.g., multi-core processors, but also efficient methods and tools to support design decisions. Component-based software engineering proved to be a promising solution for managing software complexity and allowing for reuse. However, there are several challenges inherent in the intersection of resource efficiency and predictability of multi-core processors when it comes to running component-based embedded software. In this paper, we present a software design framework addressing these challenges. The framework includes both mapping of software components onto executable tasks, and the partitioning of the generated task set onto the cores of a multi-core processor. This paper aims at enhancing resource efficiency by optimizing the software design with respect to: 1) the inter-software-components communication cost, 2) the cost of synchronization among dependent transactions of software components, and 3) the interaction of software components with the basic software services. An engine management system, one of the most complex automotive sub-systems, is considered as a use case, and the experimental results show a reduction of up to 11.2% total CPU usage on aquad-core processor, in comparison with the common framework in the literature. 

    Download full text (pdf)
    fulltext
  • 15.
    Hjertström, Andreas
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nyström, Dag
    Mälardalen University, School of Innovation, Design and Engineering.
    Sjödin, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Data Management for Component-Based Embedded Real-Time Systems: the Database Proxy Approach2012In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 85, no 4, p. 821-834Article in journal (Refereed)
    Abstract [en]

    We introduce the concept of database proxies intended to mitigate the gap between two disjoint productivity-enhancing techniques: Component Based Software Engineering (CBSE) and Real-Time Database Management Systems (RTDBMS). The two techniques promote opposing design goals and their coexistence is neither obvious nor intuitive. CBSE promotes encapsulation and decoupling of component internals from the component environment, whilst an RTDBMS provide mechanisms for efficient and predictable global data sharing. A component with direct access to an RTDBMS is dependent on that specific RTDBMS and may not be useable in an alternative environment. For components to remain encapsulated and reusable, database proxies decouple components from an underlying database residing in the component framework, while providing temporally predictable access to data maintained in a database. Our approach provide access to features such as extensive data modeling tools, predictable access to hard real-time data, dynamic access to soft real-time data using standardized queries and controlled data sharing; thus allowing developers to employ the full potential of both CBSE and an RTDBMS. Our approach primarily targets embedded systems with a subset of functionality with real-time requirements. The implementation results show that the benefits of using proxies do not come at the expense of significant run-time overheads or less accurate timing predictions.

  • 16.
    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, E-ISSN 1873-1228, Vol. 91, p. 147-162Article 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.

  • 17.
    Jägemar, Marcus
    et al.
    Ericsson, Stockholm, Sweden.
    Eldh, Sigrid
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Ermedahl, Andreas
    Ericsson, Stockholm, Sweden.
    Lisper, Björn
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Automatic Message Compression with Overload Protection2016In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 121, no 1 nov, p. 209-222Article in journal (Refereed)
    Abstract [en]

    In this paper, we show that it is possible to increase the message throughput of a large-scale industrial system by selectively compress messages. The demand for new high-performance message processing systems conflicts with the cost effectiveness of legacy systems. The result is often a mixed environment with several concurrent system generations. Such a mixed environment does not allow a complete replacement of the communication backbone to provide the increased messaging performance. Thus, performance-enhancing software solutions are highly attractive. Our contribution is 1) an online compression mechanism that automatically selects the most appropriate compression algorithm to minimize the message round trip time; 2) a compression overload mechanism that ensures ample resources for other processes sharing the same CPU. We have integrated 11 well-known compression algorithms/configurations and tested them with production node traffic. In our target system, automatic message compression results is a 9.6% reduction of message round trip time. The selection procedure is fully automatic and does not require any manual intervention. The automatic behavior makes it particularly suitable for large systems where it is difficult to predict future system behavior.

  • 18.
    Landwehr, Carl
    et al.
    George Washington Univ, Washington DC, USA.
    Ludewig, Jochen
    Univ Stuttgart, Stuttgart, Germany.
    Meersman, Robert
    Graz Univ Technol, Austria.
    Parnas, David Lorge
    Middle Rd Software, Ottawa, ON, Canada.
    Shoval, Peretz
    Ben Gurion Univ Negev, Beer Sheva, Israel.
    Wand, Yair
    Univ British Columbia, Vancouver, BC, Canada.
    Weiss, David
    Iowa State Univ, Ames, IA USA.
    Weyuker, Elaine
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Univ Cent Florida, Orlando, USA.
    Software Systems Engineering programmes a capability approach2017In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 125, p. 354-364Article in journal (Refereed)
    Abstract [en]

    This paper discusses third-level educational programmes that are intended to prepare their graduates for a career building systems in which software plays a major role. Such programmes are modelled on traditional Engineering programmes but have been tailored to applications that depend heavily on software. Rather than describe knowledge that should be taught, we describe capabilities that students should acquire in these programmes. The paper begins with some historical observations about the software development field. 

  • 19.
    Masud, Abu Naser
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Efficient computation of minimal weak and strong control closure2022In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 184, article id 111140Article in journal (Refereed)
    Abstract [en]

    Control dependency is a fundamental concept in many program analyses, transformation, parallelization, and compiler optimization techniques. An overwhelming number of definitions of control dependency relations are found in the literature that capture various kinds of program control flow structures. Weak and strong control closure (WCC and SCC) relations capture nontermination insensitive and sensitive control dependencies and subsume all previously defined control dependency relations. In this paper, we have shown that static dependency-based program slicing requires the repeated computation of WCC and SCC. The state-of-the-art WCC and SCC algorithm provided by Danicic et al. has the cubic and the quartic worst-case complexity in terms of the size of the control flow graph and is a major obstacle to be used in static program slicing. We have provided a simple yet efficient method to compute the minimal WCC and SCC which has the quadratic and cubic worst-case complexity and proved the correctness of our algorithms. We implemented ours and the state-of-the-art algorithms in the Clang/LLVM compiler framework and run experiments on a number of SPEC CPU 2017 benchmarks. Our WCC method performs a maximum of 23.8 times and on average 10.6 times faster than the state-of-the-art method to compute WCC. The performance curves of our WCC algorithm for practical applications are closer to the NlogN curve in the microsecond scale. Our SCC method performs a maximum of 226.86 times and on average 67.66 times faster than the state-of-the-art method to compute SCC. Evidently, we improve the practical performance of WCC and SCC computation by an order of magnitude. 

  • 20.
    Masud, Abu Naser
    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.
    More precise construction of static single assignment programs using reaching definitions2020In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 166, article id 110590Article in journal (Refereed)
    Abstract [en]

    The Static Single Assignment (SSA) form is an intermediate representation used for the analysis and optimization of programs in modern compilers. The ϕ-function placement is the most computationally expensive part of converting any program into its SSA form. The most widely-used ϕ-function placement algorithms are based on computing dominance frontiers (DF). However, this kind of algorithms works under the limiting assumption that all variables are defined at the beginning of the program, which is not the case for local variables. In this paper, we introduce an innovative ϕ-placement algorithm based on computing reaching definitions (RD), which generates a precise number of ϕ-functions. We provided theorems and proofs showing the correctness and the theoretical computational complexity of our algorithms. We implemented our approach and a well-known DF-based algorithm in the Clang/LLVM compiler framework, and performed experiments on a number of benchmarks. The results show that the limiting assumption of the DF-based algorithm when compared with the more accurate results of our RD-based approach leads to generating up to 87% (69% on average) superfluous ϕ-functions on all benchmarks, and thus brings about a significant precision loss. Moreover, even though our approach computes more information to generate precise results, it is able to analyze up to 92.96% procedures (65.63% on average) of all benchmarks with execution time within twice the execution time of the reference DF-based approach. © 2020 Elsevier Inc.

  • 21.
    Mubeen, Saad
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Mäki-Turja, Jukka
    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.
    Integrating Mixed Transmission and Practical Limitations with the Worst-Case Response-Time Analysis for Controller Area Network2015In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 99, p. 66-84Article in journal (Refereed)
    Abstract [en]

    The existing worst-case response-time analysis for Controller Area Network (CAN) calculates upper bounds on the response times of messages that are queued for transmission either periodically or sporadically. However, it does not support the analysis of mixed messages. These messages do not exhibit a periodic activation pattern and can be queued for transmission both periodically and sporadically. They are implemented by several higher-level protocols based on CAN that are used in the automotive industry. We extend the existing analysis to support worst-case response-time calculations for periodic and sporadic as well as mixed messages. Moreover, we integrate the effect of hardware and software limitations in the CAN controllers and device drivers such as abortable and non-abortable transmit buffers with the extended analysis. The extended analysis is applicable to any higher-level protocol for CAN that uses periodic, sporadic and mixed transmission modes.

  • 22. Nazir, R.
    et al.
    Bucaioni, Alessio
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Pelliccione, P.
    Gran Sasso Science Institute, L'Aquila, Italy.
    Architecting ML-enabled systems: Challenges, best practices, and design decisions2024In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 207, article id 111860Article in journal (Refereed)
    Abstract [en]

    Context: Machine learning is increasingly used in a wide set of applications ranging from recommendation engines to autonomous systems through business intelligence and smart assistants. Designing and developing machine learning systems is a complex process that can be eased by leveraging effective design decisions tackling the most important challenges and by having a good system and software architecture. Goal: The research goal of this work is to identify common challenges, best design practices, and main software architecture design decisions of machine learning enabled systems from the point of view of researchers and practitioners. Method: We performed a mixed method including a systematic literature review and expert interviews. We started with a systematic literature review. From an initial set of 3038 studies, we selected 41 primary studies, which we analysed according to a data extraction, analysis, and synthesis process. In addition, we conducted 12 expert interviews that involved researchers and professionals with machine learning expertise from 9 different countries. Findings: We identify 35 design challenges, 42 best practices and 27 design decisions when architecting machine learning systems. By eliciting main design challenges, we contribute to best practices and design decisions. In addition, we identify correlations among design challenges, decisions and best practices. Conclusions: We believe that practitioners and researchers can benefit from this first and comprehensive analysis of current software architecture design challenges, best practices, and design decisions. 

  • 23.
    Nešić, D.
    et al.
    KTH Royal Institute of Technology, Brinellvägen 83, Stockholm, 100 44, Sweden.
    Nyberg, M.
    KTH Royal Institute of Technology, Brinellvägen 83, Stockholm, 100 44, Sweden.
    Gallina, Barbara
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Product-line assurance cases from contract-based design2021In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 176, article id 110922Article in journal (Refereed)
    Abstract [en]

    Assurance cases are used to argue in a structured, and evidence-supported way, that a property such as safety or security is satisfied by a system. In some domains however, instead of single systems, product lines with many system-variants are engineered, to satisfy the needs of different customers. In such context, single-system methods for assurance-case creation suffer from scalability issues because the underlying assumption is that the evidence and arguments can be created per system variant. This paper presents a novel method for product-line assurance-case creation where all the arguments and the evidence are created without analyzing each system variant. Consequently, the effort to create an assurance case scales with the complexity of system variants, instead with their number. The method is based on a contract-based design framework for cyber–physical systems, which is extended to define the conditions under which all system variants satisfy a particular property. These conditions are used to define an assurance-case pattern, which can be instantiated for arbitrary product lines. Moreover, the defined pattern is modular to enable step-wise assurance-case creation. Finally, an exploratory case study is performed on a real product-line from the heavy-vehicle manufacturer SCANIA to evaluate the applicability of the presented method. 

  • 24.
    Punter, H. Teade
    et al.
    Embedded Systems Institute, Netherlands .
    Krikhaar, René
    VU University Amsterdam, Netherlands .
    Bril, Reinder J.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Technical University Eindhoven, Netherlands .
    Software engineering technology innovation – turning research results into industrial success2009In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 82, no 6, p. 993-1003Article in journal (Refereed)
    Abstract [en]

    This paper deals with the innovation of software engineering technologies. These technologies are methods and tools for conducting software development and maintenance. We consider innovation as a process consisting of two phases, being technology creation and technology transfer. In this paper, we focus mainly on the transfer phase. Technology transfer is of mutual interest to both academia and industry. Transfer is important for academia, because it shows the industrial relevance of their research results to, for example, their sponsoring authorities. Showing the industrial applicability of research results is sometimes referred to as valorization of research. Nowadays, valorization is often required by research funding bodies. The transfer is important for industries, because innovating their development processes and their products is supportive in gaining a competitive edge or remaining competitive in their business. We describe the technology transfer phase by means of three activities: technology evaluation, technology engineering, and technology embedding. The technology evaluation activity is perceived as the main gate between the technology creation phase and the technology transfer phase. With two case studies, originating from the Dutch high-tech systems industry, we will illustrate the activities in the transfer phase. In addition to the process we will also define the main roles in a software engineering technology innovation, namely: the technology provider (academic research, industrial research and technology vendor) and the technology receiver (industrial development). With those roles we also address the issues concerning the ownership of technologies.

  • 25.
    Seceleanu, Cristina
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Yoshida, Kenichi
    Univ Tsukuba, Tokyo, Japan..
    Guest editorial foreword2016In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 121, p. 125-125Article in journal (Other academic)
  • 26.
    Sljivo, Irfan
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Gallina, Barbara
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Carlson, Jan
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Hansson, Hans
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Puri, Stefano
    Intecs SpA, Italy.
    A Method to Generate Reusable Safety Case Argument-Fragments from Compositional Safety Analysis2017In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 131, p. 570-590Article in journal (Refereed)
    Abstract [en]

    Safety-critical systems usually need to be accompanied by an explained and well-founded body of evidence to show that the system is acceptably safe. While reuse within such systems covers mainly code, reusing accompanying safety artefacts is limited due to a wide range of context dependencies that need to be satisfied for safety evidence to be valid in a different context. Currently, the most commonly used approaches that facilitate reuse lack support for systematic reuse of safety artefacts. To facilitate systematic reuse of safety artefacts we provide a method to generate reusable safety case argument-fragments that include supporting evidence related to compositional safety analysis. The generation is performed from safety contracts that capture safety-relevant behaviour of components in assumption/guarantee pairs backed up by the supporting evidence. We evaluate the feasibility of our approach in a real-world case study where a safety related component developed in isolation is reused within a wheel-loader.

  • 27.
    T., Vale
    et al.
    Uni-versidade Federal Do Reɥoncavo da Bahia (UFRB), Brazil.
    Ivica, Crnkovic
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    E.S., De Almeida
    Federal University of Bahia, Salvador, BA, Brazil.
    P.A.D.M., Silveira Neto
    RiSE, Reuse in Software Engineering, Recife, PE, Brazil.
    Y.C., Cavalcanti
    RiSE, Reuse in Software Engineering, Recife, PE, Brazil.
    S.R.D.L., Meira
    Federal University of Pernambuco, Recife, PE, Brazil.
    Twenty-eight years of component-based software engineering2016In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 111, p. 128-148Article in journal (Refereed)
    Abstract [en]

    The idea of developing software components was envisioned more than forty years ago. In the past two decades, Component-Based Software Engineering (CBSE) has emerged as a distinguishable approach in software engineering, and it has attracted the attention of many researchers, which has led to many results being published in the research literature. There is a huge amount of knowledge encapsulated in conferences and journals targeting this area, but a systematic analysis of that knowledge is missing. For this reason, we aim to investigate the state-of-the-art of the CBSE area through a detailed literature review. To do this, 1231 studies dating from 1984 to 2012 were analyzed. Using the available evidence, this paper addresses five dimensions of CBSE: main objectives, research topics, application domains, research intensity and applied research methods. The main objectives found were to increase productivity, save costs and improve quality. The most addressed application domains are homogeneously divided between commercial-off-the-shelf (COTS), distributed and embedded systems. Intensity of research showed a considerable increase in the last fourteen years. In addition to the analysis, this paper also synthesizes the available evidence, identifies open issues and points out areas that call for further research. 

  • 28.
    Tahvili, Sahar
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. RISE SICS Västerås, Sweden.
    Afzal, Wasif
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Saadatmand, Mehrdad
    RISE SICS Västerås, Sweden.
    Bohlin, Markus
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. RISE SICS Västerås, Sweden.
    Hasan Ameerjan, Sharvathul
    ESPRET: A Tool for Execution Time Estimation of Manual Test Cases2018In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 146, p. 26-41Article in journal (Refereed)
    Abstract [en]

    Manual testing is still a predominant and an important approach for validation of computer systems, particularly in certain domains such as safetycritical systems. Knowing the execution time of test cases is important to perform test scheduling, prioritization and progress monitoring. In this work, we present, apply and evaluate ESPRET (EStimation and PRediction of Execution Time) as our tool for estimating and predicting the execution time of manual test cases based on their test specifications. Our approach works by extracting timing information for various steps in manual test specifcation. This information is then used to estimate the maximum time for test steps that have not previously been executed, but for which textual specifications exist. As part of our approach, natural language parsing of the specifications is performed to identify word combinations to check whether existing timing information on various test steps is already available or not. Since executing test cases on the several machines may take different time, we predict the actual execution time for test cases by a set of regression models. Finally, an empirical evaluation of the approach and tool has been performed on a railway use case at Bombardier Transportation (BT) in Sweden.

  • 29.
    Åkerholm, Mikael
    et al.
    Mälardalen University, Department of Computer Science and Electronics.
    Carlson, Jan
    Mälardalen University, Department of Computer Science and Electronics.
    Fredriksson, Johan
    Mälardalen University, Department of Computer Science and Electronics.
    Hansson, Hans
    Mälardalen University, Department of Computer Science and Electronics.
    Håkansson, John
    Uppsala University, Sweden.
    Möller, Anders
    Mälardalen University, Department of Computer Science and Electronics.
    Pettersson, Paul
    Uppsala University, Sweden.
    Tivoli, Massimo
    University of L'Aquila, Italy.
    The SAVE approach to component-based development of vehicular systems2007In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 80, no 5, p. 655-667Article in journal (Refereed)
    Abstract [en]

    The component-based strategy aims at managing complexity, shortening time-to-market, and reducing maintenance requirements by building systems with existing components. The full potential of this strategy has not yet been demonstrated for embedded software, mainly because of specific requirements in the domain, e.g., those related to timing, dependability, and resource consumption. We present SaveCCT - a component technology intended for vehicular systems, show the applicability of SaveCCT in the engineering process, and demonstrate its suitability for vehicular systems in an industrial case-study. Our experiments indicate that SaveCCT provides appropriate expressiveness, resource efficiency, analysis and verification support for component-based development of vehicular software. 

1 - 29 of 29
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