mdh.sePublications
Change search
Link to record
Permanent link

Direct link
BETA
Alternative names
Publications (10 of 98) Show all publications
Campeanu, G., Carlson, J. & Sentilles, S. (2018). Optimized Realization of Software Components with Flexible OpenCL Functionality. In: Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2018, Funchal, Madeira, Portugal, March 23-24, 2018: . Paper presented at 13th International Conference on Evaluation of Novel Approaches to Software Engineering ENASE 2018, 23 Mar 2018, Madeira, Portugal (pp. 77-88).
Open this publication in new window or tab >>Optimized Realization of Software Components with Flexible OpenCL Functionality
2018 (English)In: Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2018, Funchal, Madeira, Portugal, March 23-24, 2018, 2018, p. 77-88Conference paper, Published paper (Refereed)
Abstract [en]

Today, the newly available embedded boards with GPUs provide a solution to satisfy the ever-increasing requirements of modern embedded systems. Component-based development is a well-known paradigm used to develop embedded systems. However, this paradigm lacks GPU support to address the specifics of these new boards. This leads to components that typically have reduced reusability, poor maintainability and portability. One way to tackle the existing shortcomings is through flexible components, i.e., platform-agnostic components that, at design time, offer the possibility to be executed either on CPU or GPU. The current realization of flexible components, i.e., as regular components with functionality tailored for the selected hardware, introduces additional overheads such as component communication overhead. In order to tackle the introduced overheads, our solution groups connected flexible components under a flexible group that conceptually behaves as a component. We introduce an algorithm to identify the existing groups in a given component-based system and the generation rules that automatically realizes groups as regular components. To evaluate the feasibility of the new concept, the flexible group is implemented using a state-of-the-practice component model (i.e., Rubus) and examined through the vision system of an underwater robot.

Keywords
software component, flexible component, GPU, embedded system, CBD, component-based development, component model, OpenCL
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-38648 (URN)10.5220/0006691500770088 (DOI)2-s2.0-85051969301 (Scopus ID)9789897583001 (ISBN)
Conference
13th International Conference on Evaluation of Novel Approaches to Software Engineering ENASE 2018, 23 Mar 2018, Madeira, Portugal
Projects
RALF3 - Software for Embedded High Performance Architectures
Available from: 2018-03-02 Created: 2018-03-02 Last updated: 2018-08-30Bibliographically approved
Markovic, F., Carlson, J., Thekilakkattil, A., Dobrin, R. & Lisper, B. (2018). Probabilistic Response Time Analysis for Fixed Preemption Point Selection. In: 13th International Symposium on Industrial Embedded Systems SIES '18: . Paper presented at 13th International Symposium on Industrial Embedded Systems SIES '18, 06 Jun 2018, Graz, Austria.
Open this publication in new window or tab >>Probabilistic Response Time Analysis for Fixed Preemption Point Selection
Show others...
2018 (English)In: 13th International Symposium on Industrial Embedded Systems SIES '18, 2018Conference paper, Published paper (Refereed)
Abstract [en]

Preemption point selection has a significant impact on the schedulability of Real-Time tasks under the Fixed Preemption Point approach in Limited Preemptive Scheduling. Many real time systems can occasionally tolerate deadline misses as long as their occurrence does not exceed a specified probabilistic threshold. However, the existing approaches for preemption point selection are inappropriate for such systems, as they are mainly aiming to provide hard guarantees, considering worst case (upper bounded) preemption overheads. Additionally, the worst case preemption overheads typically occur with very low probabilities. In this paper, we propose a novel preemption point selection approach, and an associated probabilistic response time analysis, considering preemption related overheads modelled as probabilistic distributions. The method is suitable for providing solutions in systems that can occasionally tolerate deadline misses and can be interesting in the context of mixed criticality systems. Our method is able to find solutions, in terms of preemption point selections, in all cases where the existing approaches do. Moreover, it provides preemption point selections for additional tasksets that guarantees the overall taskset schedulability with a certain probability. The evaluation results show an improvement with respect to increasing the number of tasksets for which a preemption point selection is possible compared to existing, upper-bound based, selection approaches. The results show that the deadline miss probabilities of the tasksets and associated preemption point selections are considerably low.

Keywords
Real-time systems, Limited Preemptive Scheduling, Fixed Preemption Points Scheduling, Probabilistic Response Time Analysis, Preemption Point Selection
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-39256 (URN)
Conference
13th International Symposium on Industrial Embedded Systems SIES '18, 06 Jun 2018, Graz, Austria
Available from: 2018-05-23 Created: 2018-05-23 Last updated: 2018-06-14Bibliographically approved
Sljivo, I., Gallina, B., Carlson, J., Hansson, H. & Puri, S. (2018). Tool-supported safety-relevant component reuse: From specification to argumentation. In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), Volume 10873: . Paper presented at 23rd International Conference on Reliable Software Technologies, Ada-Europe 2018; Lisbon; Portugal; 18 June 2018 through 22 June 2018 (pp. 19-33). Springer Verlag
Open this publication in new window or tab >>Tool-supported safety-relevant component reuse: From specification to argumentation
Show others...
2018 (English)In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), Volume 10873, Springer Verlag , 2018, p. 19-33Conference paper, Published paper (Refereed)
Abstract [en]

Contracts are envisaged to support compositional verification of a system as well as reuse and independent development of their implementations. But reuse of safety-relevant components in safety-critical systems needs to cover more than just the implementations. As many safety-relevant artefacts related to the component as possible should be reused together with the implementation to assist the integrator in assuring that the system they are developing is acceptably safe. Furthermore, the reused assurance information related to the contracts should be structured clearly to communicate the confidence in the component. In this work we present a tool-supported methodology for contract-driven assurance and reuse. We define the variability on the contract level in the scope of a trace-based approach to contract-based design. With awareness of the hierarchical nature of systems subject to compositional verification, we propose assurance patterns for arguing confidence in satisfaction of requirements and contracts. We present an implementation extending the AMASS platform to support automated instantiation of the proposed patterns, and evaluate its adequacy for assurance and reuse in a real-world case study. 

Place, publisher, year, edition, pages
Springer Verlag, 2018
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 10873
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-40197 (URN)10.1007/978-3-319-92432-8_2 (DOI)2-s2.0-85049018625 (Scopus ID)9783319924311 (ISBN)
Conference
23rd International Conference on Reliable Software Technologies, Ada-Europe 2018; Lisbon; Portugal; 18 June 2018 through 22 June 2018
Available from: 2018-07-05 Created: 2018-07-05 Last updated: 2018-07-05Bibliographically approved
Sljivo, I., Gallina, B., Carlson, J., Hansson, H. & Puri, S. (2018). Tool-Supported Safety-Relevant Component Reuse: From Specification to Argumentation. In: 23rd International Conference on Reliable Software Technologies - Ada-Europe 2018 Ada-Europe-2018: . Paper presented at 23rd International Conference on Reliable Software Technologies - Ada-Europe 2018 Ada-Europe-2018 , 18 Jun 2018, Lisbon, Portugal (pp. 19-33). , 10873
Open this publication in new window or tab >>Tool-Supported Safety-Relevant Component Reuse: From Specification to Argumentation
Show others...
2018 (English)In: 23rd International Conference on Reliable Software Technologies - Ada-Europe 2018 Ada-Europe-2018, 2018, Vol. 10873, p. 19-33Conference paper, Published paper (Refereed)
Abstract [en]

Contracts are envisaged to support compositional verification of a system as well as reuse and independent development of their implementations. But reuse of safety-relevant components in safety-critical systems needs to cover more than just the implementations. As many safety-relevant artefacts related to the component as possible should be reused together with the implementation to assist the integrator in assuring that the system they are developing is acceptably safe. Furthermore, the reused assurance information related to the contracts should be structured clearly to communicate the confidence in the component. In this work we present a tool-supported methodology for contract-driven assurance and reuse. We define the variability on the contract level in the scope of a trace-based approach to contract-based design. With awareness of the hierarchical nature of systems subject to compositional verification, we propose assurance patterns for arguing confidence in satisfaction of requirements and contracts. We present an implementation extending the AMASS platform to support automated instantiation of the proposed patterns, and evaluate its adequacy for assurance and reuse in a real-world case study.

National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-40845 (URN)10.1007/978-3-319-92432-8_2 (DOI)2-s2.0-85049018625 (Scopus ID)978-3-319-92431-1 (ISBN)
Conference
23rd International Conference on Reliable Software Technologies - Ada-Europe 2018 Ada-Europe-2018 , 18 Jun 2018, Lisbon, Portugal
Projects
Future factories in the CloudSafeCOP - Safe Cooperating Cyber-Physical Systems using Wireless CommunicationAMASS - Architecture-driven, Multi-concern and Seamless Assurance and Certification of Cyber-Physical Systems
Available from: 2018-09-12 Created: 2018-09-12 Last updated: 2018-09-12Bibliographically approved
Campeanu, G., Carlson, J. & Sentilles, S. (2017). Developing CPU-GPU Embedded Systems using Platform-Agnostic Components. In: Proceedings - 43rd Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2017: . Paper presented at 43rd Euromicro Conference on Software Engineering and Advanced Applications SEAA'17, 30 Aug 2017, Vienna, Austria (pp. 176-180). , Article ID 8051345.
Open this publication in new window or tab >>Developing CPU-GPU Embedded Systems using Platform-Agnostic Components
2017 (English)In: Proceedings - 43rd Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2017, 2017, p. 176-180, article id 8051345Conference paper, Published paper (Refereed)
Abstract [en]

Nowadays, there are many embedded systems with different architectures that have incorporated GPUs. However, it is difficult to develop CPU-GPU embedded systems using component-based development (CBD), since existing CBD ap- proaches have no support for GPU development. In this context, when targeting a particular CPU-GPU platform, the component developer is forced to construct hardware-specific components, which are problematic to (re-)use in different contexts. More- over, hard-coding specific GPU-usage characteristics (e.g., the number of utilized GPU threads) inside the component is not possible without making detailed assumptions about the system in which the component is used, which conflicts with separation- of-concerns CBD principle. The paper presents a solution to allow component-based development of platform-agnostic CPU-GPU embedded systems through: i) high-level API, ii) adapters, and iii) code template. The API abstracts the specifics of the different platforms, while the adapters externalize hardware-specific activities outside components. We also raise the decision regarding the GPU- usage specifications, from the component to the system level. Furthermore, to minimize the development effort, we provide a code template that contains ready-made code fragments required for GPU development. As a case study, we examine the feasibility of our solution applied on a component-based vision system of an underwater robot.

Keywords
embedded systems, GPU, CBD, component-based development, CPU-GPU embedded systems
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-37012 (URN)10.1109/SEAA.2017.20 (DOI)000426074600026 ()2-s2.0-85034422676 (Scopus ID)9781538621400 (ISBN)
Conference
43rd Euromicro Conference on Software Engineering and Advanced Applications SEAA'17, 30 Aug 2017, Vienna, Austria
Projects
RALF3 - Software for Embedded High Performance Architectures
Available from: 2017-11-27 Created: 2017-11-27 Last updated: 2018-03-15Bibliographically approved
Ciccozzi, F., Carlson, J., Pelliccione, P. & Tivoli, M. (2017). Editorial to theme issue on model-driven engineering of component-based software systems. Software and Systems Modeling
Open this publication in new window or tab >>Editorial to theme issue on model-driven engineering of component-based software systems
2017 (English)In: Software and Systems Modeling, ISSN 1619-1366, E-ISSN 1619-1374Article in journal, Editorial material (Other academic) Published
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.

National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-35486 (URN)10.1007/s10270-017-0589-6 (DOI)
Projects
RALF3 - Software for Embedded High Performance ArchitecturesMOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Available from: 2017-06-12 Created: 2017-06-12 Last updated: 2018-03-27Bibliographically approved
Campeanu, G., Carlson, J. & Sentilles, S. (2017). Flexible Components for Development of Embedded Systems with GPUs. In: 24th Asia-Pacific Software Engineering Conference APSEC 2017: . Paper presented at 24th Asia-Pacific Software Engineering Conference APSEC 2017, 04 Dec 2017, Nanjing, China (pp. 219-228).
Open this publication in new window or tab >>Flexible Components for Development of Embedded Systems with GPUs
2017 (English)In: 24th Asia-Pacific Software Engineering Conference APSEC 2017, 2017, p. 219-228Conference paper, Published paper (Refereed)
Abstract [en]

Today, embedded systems incorporate GPUs through a multitude of different architectures. When it comes to the development of these systems with GPUs, component-based development is ill-equipped as it does not provide support for GPUs. Instead, the component developer needs to encapsulate inside the component, besides functionality, settings and environment information that are specific to a particular GPU architecture. This binds the component this GPU architecture. Using these hardware-specific components characterized by restricted reusability, the system developer is confined to a limited design space which may negatively impact the overall system feasibility. 

In this paper, we introduce the concept of flexible components, which are components that can be executed indifferently on CPU or GPU, regardless of the architecture. Using flexible components, component developers are relieved from the side development activities (e.g., environment information) which are automatically handled by component-level mechanisms. To enhance component communications, connection elements (i.e., adapters) are generated to handle component data transmission, taking in consideration the platform characteristics. Finally, our proposed solution is evaluated by using flexible components to implement the vision system of an underwater robot, and execute it on three platforms with different GPU architectures.

National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-37070 (URN)10.1109/APSEC.2017.28 (DOI)000428733800023 ()2-s2.0-85045943595 (Scopus ID)978-1-5386-3681-7 (ISBN)
Conference
24th Asia-Pacific Software Engineering Conference APSEC 2017, 04 Dec 2017, Nanjing, China
Projects
RALF3 - Software for Embedded High Performance Architectures
Available from: 2017-10-31 Created: 2017-10-31 Last updated: 2018-05-11Bibliographically approved
Razavian, M., Tang, A., van Vliet, H. & Carlson, J. (2017). MARCH 2017: 2nd International Workshop on Decision Making in Software Architecture. In: 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE WORKSHOPS (ICSAW): . Paper presented at IEEE International Conference on Software Architecture (ICSA), APR 03-07, 2017, Gothenburg, SWEDEN (pp. 128-128). IEEE
Open this publication in new window or tab >>MARCH 2017: 2nd International Workshop on Decision Making in Software Architecture
2017 (English)In: 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE WORKSHOPS (ICSAW), IEEE , 2017, p. 128-128Conference paper, Published paper (Other academic)
Place, publisher, year, edition, pages
IEEE, 2017
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-37197 (URN)10.1109/ICSAW.2017.62 (DOI)000413089000023 ()2-s2.0-85025627501 (Scopus ID)978-1-5090-4793-2 (ISBN)
Conference
IEEE International Conference on Software Architecture (ICSA), APR 03-07, 2017, Gothenburg, SWEDEN
Available from: 2017-11-07 Created: 2017-11-07 Last updated: 2018-01-24Bibliographically approved
Papatheocharous, E., Petersen, K., Axelsson, J., Wohlin, C., Carlson, J., Ciccozzi, F., . . . Cicchetti, A. (2017). The GRADE Decision Canvas for Classification and Reflection on Architecture Decisions. In: 12th International Conference on Evaluation of Novel Approaches to Software Engineering ENASE17: . Paper presented at 12th International Conference on Evaluation of Novel Approaches to Software Engineering ENASE17, 28 Apr 2017, Porto, Portugal (pp. 187-194).
Open this publication in new window or tab >>The GRADE Decision Canvas for Classification and Reflection on Architecture Decisions
Show others...
2017 (English)In: 12th International Conference on Evaluation of Novel Approaches to Software Engineering ENASE17, 2017, p. 187-194Conference paper, Published paper (Refereed)
Abstract [en]

This paper introduces a decision canvas for capturing architecture decisions in software and systems engineer- ing. The canvas leverages a dedicated taxonomy, denoted GRADE, meant for establishing the basics of the vocabulary for assessing and choosing architectural assets in the development of software-intensive systems. The canvas serves as a template for practitioners to discuss and document architecture decisions, i.e., capture, understand and communicate decisions among decision-makers and to others. It also serves as a way to re- flect on past decision-making activities devoted to both tentative and concluding decisions in the development of software-intensive systems. The canvas has been assessed by means of preliminary internal and external evaluations with four scenarios. The results are promising as the canvas fulfills its intended objectives while satisfying most of the needs of the subjects participating in the evaluation.

Keywords
Software engineering, architecture knowledge, decision documentation, decision canvas, decision template
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-35496 (URN)2-s2.0-85025451151 (Scopus ID)9789897582509 (ISBN)
Conference
12th International Conference on Evaluation of Novel Approaches to Software Engineering ENASE17, 28 Apr 2017, Porto, Portugal
Projects
ORION - Decision Support for Component-Based Software Engineering of Cyber-Physical Systems
Available from: 2017-06-09 Created: 2017-06-09 Last updated: 2017-08-10Bibliographically approved
Markovic, F., Carlson, J. & Dobrin, R. (2017). Tightening the Bounds on Cache-Related Preemption Delay in Fixed Preemption Point Scheduling. In: OpenAccess Series in Informatics: . Paper presented at 17th International Workshop on Worst-Case Execution Time Analysis WCET 2017, 27 Jun 2017, Dubrovnik, Croatia (pp. 41-411). , 57
Open this publication in new window or tab >>Tightening the Bounds on Cache-Related Preemption Delay in Fixed Preemption Point Scheduling
2017 (English)In: OpenAccess Series in Informatics, 2017, Vol. 57, p. 41-411Conference paper, Published paper (Refereed)
Abstract [en]

Limited Preemptive Fixed Preemption Point scheduling (LP-FPP) has the ability to decrease and control the preemption-related overheads in the real-time task systems, compared to other limited or fully preemptive scheduling approaches. However, existing methods for computing the preemption overheads in LP-FPP systems rely on over-approximation of the evicting cache blocks (ECB) calculations, potentially leading to pessimistic schedulability analysis. In this paper, we propose a novel method for preemption cost calculation that exploits the benefits of the LP-FPP task model both at the scheduling and cache analysis level. The method identifies certain infeasible preemption combinations, based on analysis on the scheduling level, and combines it with cache analysis information into a constraint problem from which less pessimistic upper bounds on cache-related preemption delays (CRPD) can be derived. The evaluation results indicate that our proposed method has the potential to significantly reduce the upper bound on CRPD, by up to 50% in our experiments, compared to the existing over-approximating calculations of the eviction scenarios.

Keywords
Real-time systems, CRPD Analysis, WCET analysis, Limited Preemptive Scheduling, Fixed Preemption Point Approach
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-37013 (URN)10.4230/OASIcs.WCET.2017.4 (DOI)2-s2.0-85037724726 (Scopus ID)9783959770576 (ISBN)
Conference
17th International Workshop on Worst-Case Execution Time Analysis WCET 2017, 27 Jun 2017, Dubrovnik, Croatia
Available from: 2017-11-27 Created: 2017-11-27 Last updated: 2018-06-14Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-8461-0230

Search in DiVA

Show all publications