mdh.sePublications
Change search
Link to record
Permanent link

Direct link
BETA
Publications (10 of 74) Show all publications
Helali Moghadam, M., Saadatmand, M., Borg, M., Bohlin, M. & Lisper, B. (2019). Machine Learning to Guide Performance Testing: An Autonomous Test Framework. In: ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19: . Paper presented at ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 22 Apr 2019, Xi’an, China (pp. 164-167).
Open this publication in new window or tab >>Machine Learning to Guide Performance Testing: An Autonomous Test Framework
Show others...
2019 (English)In: ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 2019, p. 164-167Conference paper, Published paper (Refereed)
Abstract [en]

Satisfying performance requirements is of great importance for performance-critical software systems. Performance analysis to provide an estimation of performance indices and ascertain whether the requirements are met is essential for achieving this target. Model-based analysis as a common approach might provide useful information but inferring a precise performance model is challenging, especially for complex systems. Performance testing is considered as a dynamic approach for doing performance analysis. In this work-in-progress paper, we propose a self-adaptive learning-based test framework which learns how to apply stress testing as one aspect of performance testing on various software systems to find the performance breaking point. It learns the optimal policy of generating stress test cases for different types of software systems, then replays the learned policy to generate the test cases with less required effort. Our study indicates that the proposed learning-based framework could be applied to different types of software systems and guides towards autonomous performance testing.

Keywords
performance requirements, performance testing, test case generation, reinforcement learning, autonomous testing
National Category
Engineering and Technology Computer Systems
Identifiers
urn:nbn:se:mdh:diva-43918 (URN)10.1109/ICSTW.2019.00046 (DOI)000477742600022 ()
Conference
ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 22 Apr 2019, Xi’an, China
Available from: 2019-06-14 Created: 2019-06-14 Last updated: 2019-08-15Bibliographically approved
Faragardi, H. R., Lisper, B., Sandström, K. & Nolte, T. (2018). A resource efficient framework to run automotive embedded software on multi-core ECUs. Journal of Systems and Software, 64-83
Open this publication in new window or tab >>A resource efficient framework to run automotive embedded software on multi-core ECUs
2018 (Swedish)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, p. 64-83Article in journal (Refereed) Published
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. 

National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-36448 (URN)10.1016/j.jss.2018.01.040 (DOI)000428493000005 ()2-s2.0-85041901291 (Scopus ID)
Available from: 2017-09-18 Created: 2017-09-18 Last updated: 2019-06-26Bibliographically approved
Helali Moghadam, M., Saadatmand, M., Bohlin, M., Lisper, B. & Borg, M. (2018). Adaptive Runtime Response Time Control in PLC-based Real-Time Systems using Reinforcement Learning. In: ACM/IEEE 13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2018, , co-located with International Conference on Software Engineering, ICSE 2018; Gothenburg; Sweden; 28 May 2018 through 29 May 2018; Code 138312: . Paper presented at 13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems SEAMS 18, 28 May 2018, Gothenburg, Sweden (pp. 217-223). , 28 May
Open this publication in new window or tab >>Adaptive Runtime Response Time Control in PLC-based Real-Time Systems using Reinforcement Learning
Show others...
2018 (English)In: ACM/IEEE 13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2018, , co-located with International Conference on Software Engineering, ICSE 2018; Gothenburg; Sweden; 28 May 2018 through 29 May 2018; Code 138312, 2018, Vol. 28 May, p. 217-223Conference paper, Published paper (Refereed)
Abstract [en]

Timing requirements such as constraints on response time are key characteristics of real-time systems and violations of these requirements might cause a total failure, particularly in hard real-time systems. Runtime monitoring of the system properties is of great importance to detect and mitigate such failures. Thus, a runtime control to preserve the system properties could improve the robustness of the system with respect to timing violations. Common control approaches may require a precise analytical model of the system which is difficult to be provided at design time. Reinforcement learning is a promising technique to provide adaptive model-free control when the environment is stochastic, and the control problem could be formulated as a Markov Decision Process. In this paper, we propose an adaptive runtime control using reinforcement learning for real-time programs based on Programmable Logic Controllers (PLCs), to meet the response time requirements. We demonstrate through multiple experiments that our approach could control the response time efficiently to satisfy the timing requirements.

Series
Proceedings - International Conference on Software Engineering, ISSN 0270-5257
Keywords
Adaptive response time control, PLC-based real-time programs, Runtime monitoring, Reinforcement learning
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-38955 (URN)10.1145/3194133.3194153 (DOI)000458799600029 ()2-s2.0-85051555083 (Scopus ID)
Conference
13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems SEAMS 18, 28 May 2018, Gothenburg, Sweden
Available from: 2018-05-15 Created: 2018-05-15 Last updated: 2019-03-07Bibliographically approved
Masud, A. N., Lisper, B. & Ciccozzi, F. (2018). Automatic Inference of Task Parallelism in Task-graph-based Actor Models. IEEE Access, 6, 78965-78991
Open this publication in new window or tab >>Automatic Inference of Task Parallelism in Task-graph-based Actor Models
2018 (English)In: IEEE Access, E-ISSN 2169-3536, Vol. 6, p. 78965-78991Article in journal (Refereed) Published
Abstract [en]

Automatic inference of task level parallelism is fundamental for ensuring many kinds of safety and liveness properties of parallel applications. For example, two tasks running in parallel may be involved in data races when they have conflicting memory accesses, or one is affecting the termination of another by updating shared variables. In this article, we have considered a task-graph-based actor model, used in signal processing applications (e.g., baseband processing in wireless communication, LTE uplink processing) that are deployed on many-core platforms, in which actors, task-graphs and tasks are the active entities running in parallel. Actors invoke task graphs, which in turn invoke tasks, and they communicate through message passing, thus creating different kinds of dependencies and parallelism in the application. We introduce a novel May Happen in Parallel (MHP) analysis for complex parallel applications based on our computational model. The MHP analysis consists of (i) data-flow analysis applicable to parallel control-flow structures inferring MHP facts representing pairs of tasks running in parallel, (ii) identification of all direct and indirect communication by generating a context-free grammar and enumerating valid strings representing parallelism and dependencies among active entities, and (iii) inferring MHP facts when multiple task-graphs communicate. Our analysis is applicable to other computational models (e.g. Cilk or X10) too. We have fully implemented our analysis and evaluated it on signal processing applications consisting of a maximum of 36.57 million lines of code representing 232 different tasks. The analysis approximately 7 minutes to identify all communication information and 10.5 minutes to identify 12052 executable parallel task-pairs (to analyse for concurrency bugs) proving that our analysis is scalable for industrial-sized code-bases.

Keywords
May happen in parallel, data flow analysis, actor model, parallel task graph, graph reachability, UML profile
National Category
Engineering and Technology Computer Systems
Identifiers
urn:nbn:se:mdh:diva-41748 (URN)10.1109/ACCESS.2018.2885705 (DOI)000454857600001 ()2-s2.0-85058163957 (Scopus ID)2169-3536 (ISBN)
Projects
Static Program Analysis for Complex Embedded systemsMOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Available from: 2018-12-18 Created: 2019-01-25 Last updated: 2019-01-17Bibliographically approved
Marcus, J., Ermedahl, A., Eldh, S., Behnam, M. & Lisper, B. (2018). Enforcing Quality of Service Through Hardware Resource Aware Process Scheduling. In: IEEE International Conference on Emerging Technologies and Factory Automation, ETFA: . Paper presented at 23rd IEEE International Conference on Emerging Technologies and Factory Automation, ETFA 2018, 4 September 2018 through 7 September 2018 (pp. 329-336). Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>Enforcing Quality of Service Through Hardware Resource Aware Process Scheduling
Show others...
2018 (English)In: IEEE International Conference on Emerging Technologies and Factory Automation, ETFA, Institute of Electrical and Electronics Engineers Inc. , 2018, p. 329-336Conference paper, Published paper (Refereed)
Abstract [en]

Hardware manufacturers are forced to improve system performance continuously due to advanced and computationally demanding system functions. Unfortunately-more powerful hardware leads to increased costs. Instead, companies attempt to improve performance by consolidating multiple functions to share the same hardware to exploit existing performance instead. In legacy systems, each function had individual execution environment that guaranteed HW resource isolation and therefore the Quality of Service (QoS). Consolidation of multiple functions increases the risk of shared resource congestion. Current process schedulers focus on time quanta and do not consider shared resources. We present a novel process scheduler that complements current process schedulers by enforcing QoS though Shared Resource Aware (SRA) process scheduling. The SRA scheduler programs the Performance Monitoring Unit (PMU) to generate an overflow interrupt when reaching the assigned process resource quota. The scheduler has the possibility to swap out the process when receiving the interrupt allowing it to enforce the QoS for the scheduled process. We have implemented our scheduling policy as a new scheduling class in Linux. Our experiments show that it efficiently enforces QoS without seriously affect the shared resource usage of other processes executing on the same HW. © 2018 IEEE.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2018
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-41507 (URN)10.1109/ETFA.2018.8502609 (DOI)000449334500040 ()2-s2.0-85057231617 (Scopus ID)9781538671085 (ISBN)
Conference
23rd IEEE International Conference on Emerging Technologies and Factory Automation, ETFA 2018, 4 September 2018 through 7 September 2018
Available from: 2018-12-06 Created: 2018-12-06 Last updated: 2018-12-27Bibliographically approved
Felderer, M., Gurov, D., Huisman, M., Lisper, B. & Schlick, R. (2018). Formal methods in industrial practice - Bridging the gap (track summary). In: Lect. Notes Comput. Sci.: . Paper presented at 5 November 2018 through 9 November 2018 (pp. 77-81). Springer Verlag
Open this publication in new window or tab >>Formal methods in industrial practice - Bridging the gap (track summary)
Show others...
2018 (English)In: Lect. Notes Comput. Sci., Springer Verlag , 2018, p. 77-81Conference paper, Published paper (Refereed)
Abstract [en]

Already for many decades, formal methods are considered to be the way forward to help the software industry to make more reliable and trustworthy software. However, despite this strong belief, and many individual success stories, no real change in industrial software development seems to happen. In fact, the software industry is moving fast forward itself, and the gap between what formal methods can achieve, and the daily software development practice does not seem to get smaller (and might even be growing).

Place, publisher, year, edition, pages
Springer Verlag, 2018
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 11247 LNCS
Keywords
Industrial management, Software design, Fast forward, Industrial practices, Industrial software development, Software development practices, Software industry, Trustworthy softwares, Formal methods
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-41446 (URN)10.1007/978-3-030-03427-6_10 (DOI)2-s2.0-85056479295 (Scopus ID)9783030034269 (ISBN)
Conference
5 November 2018 through 9 November 2018
Available from: 2018-11-29 Created: 2018-11-29 Last updated: 2018-11-29Bibliographically approved
Helali Moghadam, M., Saadatmand, M., Borg, M., Bohlin, M. & Lisper, B. (2018). Learning-based Response Time Analysis in Real-Time Embedded Systems: A Simulation-based Approach. In: 1st International Workshop on Software Qualities and their Dependencies, located at the International Conference of Software Engineering (ICSE) 2018 SQUADE'18: . Paper presented at 1st International Workshop on Software Qualities and their Dependencies, located at the International Conference of Software Engineering (ICSE) 2018 SQUADE'18, 27 May 2018, Gothenburg, Sweden (pp. 21-24).
Open this publication in new window or tab >>Learning-based Response Time Analysis in Real-Time Embedded Systems: A Simulation-based Approach
Show others...
2018 (English)In: 1st International Workshop on Software Qualities and their Dependencies, located at the International Conference of Software Engineering (ICSE) 2018 SQUADE'18, 2018, p. 21-24Conference paper, Published paper (Refereed)
Abstract [en]

Response time analysis is an essential task to verify the behavior of real-time systems. Several response time analysis methods have been proposed to address this challenge, particularly for real-time systems with different levels of complexity. Static analysis is a popular approach in this context, but its practical applicability is limited due to the high complexity of the industrial real-time systems, as well as many unpredictable runtime events in these systems. In this work-in-progress paper, we propose a simulationbased response time analysis approach using reinforcement learning to find the execution scenarios leading to the worst-case response time. The approach learns how to provide a practical estimation of the worst-case response time through simulating the program without performing static analysis. Our initial study suggests that the proposed approach could be applicable in the simulation environments of the industrial real-time control systems to provide a practical estimation of the execution scenarios leading to the worst-case response time.

Series
Proceedings - International Conference on Software Engineering, ISSN 0270-5257
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-38956 (URN)10.1145/3194095.3194097 (DOI)000449622800004 ()2-s2.0-85051494988 (Scopus ID)9781450357371 (ISBN)
Conference
1st International Workshop on Software Qualities and their Dependencies, located at the International Conference of Software Engineering (ICSE) 2018 SQUADE'18, 27 May 2018, Gothenburg, Sweden
Available from: 2018-05-15 Created: 2018-05-15 Last updated: 2019-01-16Bibliographically approved
Helali Moghadam, M., Saadatmand, M., Borg, M., Bohlin, M. & Lisper, B. (2018). Learning-Based Self-Adaptive Assurance of Timing Properties in a Real-Time Embedded System. In: ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'18: . Paper presented at ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'18, 09 Apr 2018, Västerås, Sweden (pp. 77-80).
Open this publication in new window or tab >>Learning-Based Self-Adaptive Assurance of Timing Properties in a Real-Time Embedded System
Show others...
2018 (English)In: ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'18, 2018, p. 77-80Conference paper, Published paper (Refereed)
Abstract [en]

Providing an adaptive runtime assurance technique to meet the performance requirements of a real-time system without the need for a precise model could be a challenge. Adaptive performance assurance based on monitoring the status of timing properties can bring more robustness to the underlying platform. At the same time, the results or the achieved policy of this adaptive procedure could be used as feedback to update the initial model, and consequently for producing proper test cases. Reinforcement-learning has been considered as a promising adaptive technique for assuring the satisfaction of the performance properties of software-intensive systems in recent years. In this work-in-progress paper, we propose an adaptive runtime timing assurance procedure based on reinforcement learning to satisfy the performance requirements in terms of response time. The timing control problem is formulated as a Markov Decision Process and the details of applying the proposed learning-based timing assurance technique are described.

Keywords
Timing properties, self-adaptive performance assurance, real-time embedded systems, reinforcement learning
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-38954 (URN)10.1109/ICSTW.2018.00031 (DOI)2-s2.0-85050958526 (Scopus ID)9781538663523 (ISBN)
Conference
ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'18, 09 Apr 2018, Västerås, Sweden
Available from: 2018-05-15 Created: 2018-05-15 Last updated: 2019-01-04Bibliographically 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. , Article ID 8442099.
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, 2018, article id 8442099Conference 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)10.1109/SIES.2018.8442099 (DOI)2-s2.0-85053475648 (Scopus ID)9781538641552 (ISBN)
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-09-27Bibliographically approved
Malm, J., Ciccozzi, F., Gustafsson, J., Lisper, B. & Skoog, J. (2018). Static Flow Analysis of the Action Language for Foundational UML. In: International Conference on Emerging Technologies and Factory Automation ETFA'18: . Paper presented at International Conference on Emerging Technologies and Factory Automation ETFA'18, 04 Sep 2018, Torino, Italy (pp. 161-168).
Open this publication in new window or tab >>Static Flow Analysis of the Action Language for Foundational UML
Show others...
2018 (English)In: International Conference on Emerging Technologies and Factory Automation ETFA'18, 2018, p. 161-168Conference paper, Published paper (Refereed)
Abstract [en]

One of the major advantages of Model-Driven Engineering is the possibility to early assess crucial system properties, in order to identify issues that are easier and cheaper to solve at design level than at code level. An example of such a property is the timing behaviour of a real-time application, where an early indication that the timing constraints might not be met can help avoiding costly re-designs late in the development process. In this paper we provide a model-driven round-trip transformation chain for (i) applying a flow analysis to executable models described in terms of the Action Language for Foundational UML (Alf), and (ii) back-propagating analysis results to Alf models for further investigation. Alf models are transformed into the input format for an analysis tool that identifies flow facts, i.e., information about loop bounds and infeasible paths in the model. Flow facts can be used, for instance, when estimating the worstcase execution time for the analysed model. We evaluated the approach through a set of benchmark models of various size and complexity.

Keywords
UML, Alf, model-based analysis, timing analysis, flow facts, SWEET, model transformation, back-propagation
National Category
Engineering and Technology Computer Systems
Identifiers
urn:nbn:se:mdh:diva-40881 (URN)10.1109/ETFA.2018.8502620 (DOI)000449334500019 ()2-s2.0-85057262142 (Scopus ID)
Conference
International Conference on Emerging Technologies and Factory Automation ETFA'18, 04 Sep 2018, Torino, Italy
Projects
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applicationsTESTOMAT Project - The Next Level of Test Automation
Available from: 2018-09-18 Created: 2018-09-18 Last updated: 2019-01-24Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0001-5297-6548

Search in DiVA

Show all publications