Change search
Link to record
Permanent link

Direct link
BETA
Publications (10 of 28) Show all publications
Schlingloff, H., Kruse, P. M. & Saadatmand, M. (2020). Excellence in variant testing. In: ACM International Conference Proceeding Series: . Paper presented at 14th International Working Conference on Variability Modelling of Software-Intensive Systems, VaMoS 2020, 5 February 2020 through 7 February 2020. Association for Computing Machinery
Open this publication in new window or tab >>Excellence in variant testing
2020 (English)In: ACM International Conference Proceeding Series, Association for Computing Machinery , 2020Conference paper, Published paper (Refereed)
Abstract [en]

In this short paper, we report on the motivation, background and ambition of the ITEA3 project XIVT - excellence in variant testing. We describe a work flow and tool chain for testing of configurable and highly-variant embedded systems in various domains. © 2020 Copyright is held by the owner/author(s).

Place, publisher, year, edition, pages
Association for Computing Machinery, 2020
Keywords
Computer applications, Computer programming, Work-flows, Embedded systems
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-44387 (URN)10.1145/3377024.3377028 (DOI)2-s2.0-85079832868 (Scopus ID)9781450375016 (ISBN)
Conference
14th International Working Conference on Variability Modelling of Software-Intensive Systems, VaMoS 2020, 5 February 2020 through 7 February 2020
Note

Funding text 1: We would like to acknowledge the work of all authors who contributed to the XIVT proposal, notably Peter Watkins, Ib?ria Medeiros, Eduard Enoiu, Noel Kirthiraj, Thomas Bangemann, Jan Krause, Heiko D?rr, Ferhat Erata, and others.

Available from: 2020-03-09 Created: 2020-03-09 Last updated: 2020-03-09Bibliographically approved
Campeanu, G. & Saadatmand, M. (2019). A Two-Layer Component-Based Allocation for Embedded Systems with GPUs. designs, 3(1), Article ID 6.
Open this publication in new window or tab >>A Two-Layer Component-Based Allocation for Embedded Systems with GPUs
2019 (English)In: designs, ISSN 2411-9660, Vol. 3, no 1, article id 6Article in journal (Other academic) Published
Abstract [en]

Component-based development is a software engineering paradigm that can facilitate the construction of embedded systems and tackle its complexities. The modern embedded systems have more and more demanding requirements. One way to cope with such a versatile and growing set of requirements is to employ heterogeneous processing power, i.e., CPU–GPU architectures. The new CPU–GPU embedded boards deliver an increased performance but also introduce additional complexity and challenges. In this work, we address the component-to-hardware allocation for CPU–GPU embedded systems. The allocation for such systems is much complex due to the increased amount of GPU-related information. For example, while in traditional embedded systems the allocation mechanism may consider only the CPU memory usage of components to find an appropriate allocation scheme, in heterogeneous systems, the GPU memory usage needs also to be taken into account in the allocation process. This paper aims at decreasing the component-to-hardware allocation complexity by introducing a two-layer component-based architecture for heterogeneous embedded systems. The detailed CPU–GPU information of the system is abstracted at a high-layer by compacting connected components into single units that behave as regular components. The allocator, based on the compacted information received from the high-level layer, computes, with a decreased complexity, feasible allocation schemes. In the last part of the paper, the two-layer allocation method is evaluated using an existing embedded system demonstrator; namely, an underwater robot.

Keywords
embedded systems, software component, component-based development, CBD, GPU, GPU component, allocation, component allocation, architecture layer
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-37739 (URN)10.3390/designs3010006 (DOI)
Available from: 2019-02-13 Created: 2019-02-13 Last updated: 2020-01-23Bibliographically approved
Saadatmand, M. (2019). Integrationdistiller: Automating integration analysis and testing of object-oriented applications. In: Proceedings of the IEEE International Conference on Industrial Technology: . Paper presented at 2019 IEEE International Conference on Industrial Technology, ICIT 2019, 13 February 2019 through 15 February 2019 (pp. 1385-1392). Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>Integrationdistiller: Automating integration analysis and testing of object-oriented applications
2019 (English)In: Proceedings of the IEEE International Conference on Industrial Technology, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 1385-1392Conference paper, Published paper (Refereed)
Abstract [en]

Software systems typically consist of various interacting components and units. While these components can be tested and shown to work correctly in isolation, when integrated and start interacting with each other, they may fail to produce the desired behaviors and results. Integration testing plays an important role in revealing issues in interactions among cooperating components. Identifying different interaction scenarios, however, is not a trivial task when performing integration testing. On the other hand, most of the integration testing solutions proposed in the literature are manual which hinders their scalability and applicability when it comes to large industrial systems. In this paper we introduce IntegrationDistiller as an automated solution and tool to identify integration scenarios and generate test cases (in the form of method call sequences) for.NET applications. It works by analyzing the code and automatically identifying class couplings, interacting methods, as well as invocation points. Moreover, the tool also helps and supports testers in identifying timing issues at integration level by automatic code instrumentation at invocation points. The code analysis engine of IntegrationDistiller is built and automated using.NET compiler platform, known as Roslyn. Hence, this work is the first in utilizing Roslyn features for automatic integration analysis and integration test case generation. This work has been done as part of our collaboration with ABB Industrial Automation Control Technologies (IACT) in Västerås-Sweden to address the integration testing challenges of the software part of the ABB Ability™ 800xA distributed control systems.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
Keywords
Extra-functional properties, Integration testing, Non-functional properties, Test case generation, Timing properties, Ability testing, Automation, Codes (symbols), Distributed parameter control systems, Integration, Object oriented programming, Automated solutions, Industrial automation, Integration analysis, Non functional properties, Object oriented application
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39674 (URN)10.1109/ICIT.2019.8755027 (DOI)2-s2.0-85069056791 (Scopus ID)9781538663769 (ISBN)
Conference
2019 IEEE International Conference on Industrial Technology, ICIT 2019, 13 February 2019 through 15 February 2019
Available from: 2019-08-07 Created: 2019-08-07 Last updated: 2020-01-23Bibliographically approved
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, 2019: . Paper presented at ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 22 Apr 2019, Xi’an, China.
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, 2019Conference 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, Engineering and Technology, Teknik och teknologier, Computer Systems, Datorsystem
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39327 (URN)10.1109/ICSTW.2019.00046 (DOI)2-s2.0-85068406208 (Scopus ID)
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-07-04 Created: 2019-07-04 Last updated: 2020-01-29Bibliographically approved
Abbas, M., Inayat, I., Jan, N., Saadatmand, M., Enoiu, E. P. & Sundmark, D. (2019). MBRP: Model-Based Requirements Prioritization Using PageRank Algorithm. In: 2019 26th Asia-Pacific Software Engineering Conference (APSEC): . Paper presented at 2019 26th Asia-Pacific Software Engineering Conference (APSEC) (pp. 31-38).
Open this publication in new window or tab >>MBRP: Model-Based Requirements Prioritization Using PageRank Algorithm
Show others...
2019 (English)In: 2019 26th Asia-Pacific Software Engineering Conference (APSEC), 2019, p. 31-38Conference paper, Published paper (Refereed)
Abstract [en]

Requirements prioritization plays an important role in driving project success during software development. Literature reveals that existing requirements prioritization approaches ignore vital factors such as interdependency between requirements. Existing requirements prioritization approaches are also generally time-consuming and involve substantial manual effort. Besides, these approaches show substantial limitations in terms of the number of requirements under consideration. There is some evidence suggesting that models could have a useful role in the analysis of requirements interdependency and their visualization, contributing towards the improvement of the overall requirements prioritization process. However, to date, just a handful of studies are focused on model-based strategies for requirements prioritization, considering only conflict-free functional requirements. This paper uses a meta-model-based approach to help the requirements analyst to model the requirements, stakeholders, and inter-dependencies between requirements. The model instance is then processed by our modified PageRank algorithm to prioritize the given requirements. An experiment was conducted, comparing our modified PageRank algorithm's efficiency and accuracy with five existing requirements prioritization methods. Besides, we also compared our results with a baseline prioritized list of 104 requirements prepared by 28 graduate students. Our results show that our modified PageRank algorithm was able to prioritize the requirements more effectively and efficiently than the other prioritization methods.

Keywords
requirement prioritization, requirements interdependencies, meta model, page-rank
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-42585 (URN)10.1109/APSEC48747.2019.00014 (DOI)
Conference
2019 26th Asia-Pacific Software Engineering Conference (APSEC)
Available from: 2020-01-10 Created: 2020-01-10 Last updated: 2020-01-23Bibliographically approved
Abbas, M., Inayat, I., Saadatmand, M. & Jan, N. (2019). Requirements dependencies-based test case prioritization for extra-functional properties. In: Proceedings - 2019 IEEE 12th International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2019: . Paper presented at 12th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2019, 22 April 2019 through 27 April 2019 (pp. 159-163). Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>Requirements dependencies-based test case prioritization for extra-functional properties
2019 (English)In: Proceedings - 2019 IEEE 12th International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 159-163Conference paper, Published paper (Refereed)
Abstract [en]

The use of requirements' information in testing is a well-recognized practice in the software development life cycle. Literature reveals that existing tests prioritization and selection approaches neglected vital factors affecting tests priorities, like interdependencies between requirement specifications. We believe that models may play a positive role in specifying these inter-dependencies and prioritizing tests based on these inter-dependencies. However, till date, few studies can be found that make use of requirements inter-dependencies for test case prioritization. This paper uses a meta-model to aid modeling requirements, their related tests, and inter-dependencies between them. The instance of this meta-model is then processed by our modified PageRank algorithm to prioritize the requirements. The requirement priorities are then propagated to related test cases in the test model and test cases are selected based on coverage of extra-functional properties. We have demonstrated the applicability of our proposed approach on a small example case.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
Keywords
Meta-model, Requirements inter dependencies, Test case prioritization, Life cycle, Software design, Verification, Well testing, Extra-functional properties, Inter-dependencies, Meta model, PageRank algorithm, Requirement specification, Requirements dependencies, Software development life cycle, Software testing
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39669 (URN)10.1109/ICSTW.2019.00045 (DOI)2-s2.0-85068376871 (Scopus ID)9781728108889 (ISBN)
Conference
12th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2019, 22 April 2019 through 27 April 2019
Note

 Funding text 1: ACKNOWLEDGMENT This work has been supported by and received funding from the XIVT project (https://itea3.org/project/xivt.html).

Available from: 2019-08-07 Created: 2019-08-07 Last updated: 2020-01-23Bibliographically approved
Saadatmand, M., Lindström, B. & Aichernig, B. K. (2019). Special issue on testing extra-functional properties. Software testing, verification & reliability, Article ID e1726.
Open this publication in new window or tab >>Special issue on testing extra-functional properties
2019 (English)In: Software testing, verification & reliability, ISSN 0960-0833, E-ISSN 1099-1689, article id e1726Article in journal (Refereed) Epub ahead of print
Place, publisher, year, edition, pages
John Wiley and Sons Ltd, 2019
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-42502 (URN)10.1002/stvr.1726 (DOI)2-s2.0-85076416207 (Scopus ID)
Available from: 2020-01-10 Created: 2020-01-10 Last updated: 2020-01-23Bibliographically approved
Helali Moghadam, M., Saadatmand, M., Borg, M., Bohlin, M. & Lisper, B. (2018). Adaptive Run-time Response Time Control in PLC-based Real-Time Systems using Reinforcement Learning. In: : . Paper presented at 13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (pp. 217-223).
Open this publication in new window or tab >>Adaptive Run-time Response Time Control in PLC-based Real-Time Systems using Reinforcement Learning
Show others...
2018 (English)Conference 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 check the system status 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.

Keywords
adaptive response time contro, lPLC-based real-time programs, reinforcement learning, runtime monitoring
National Category
Software Engineering
Identifiers
urn:nbn:se:ri:diva-34197 (URN)10.1145/3194133.3194153 (DOI)2-s2.0-85051555083 (Scopus ID)9781450357159 (ISBN)
Conference
13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Available from: 2018-07-13 Created: 2018-07-13 Last updated: 2020-01-29Bibliographically approved
Tahvili, S., Hatvani, L., Felderer, M., Afzal, W., Saadatmand, M. & Bohlin, M. (2018). Cluster-based test scheduling strategies using semantic relationships between test specifications. In: : . Paper presented at Proceedings of the 5th International Workshop on Requirements Engineering and Testing. Gothenburg, Sweden (pp. 1-4).
Open this publication in new window or tab >>Cluster-based test scheduling strategies using semantic relationships between test specifications
Show others...
2018 (English)Conference paper, Published paper (Other academic)
Abstract [en]

One of the challenging issues in improving the test efficiency isthat of achieving a balance between testing goals and testing resources.Test execution scheduling is one way of saving time andbudget, where a set of test cases are grouped and tested at thesame time. To have an optimal test execution schedule, all relatedinformation of a test case (e.g. execution time, functionality to betested, dependency and similarity with other test cases) need tobe analyzed. Test scheduling problem becomes more complicatedat high-level testing, such as integration testing and especially inmanual testing procedure. Test specifications are generally writtenin natural text by humans and usually contain ambiguity anduncertainty. Therefore, analyzing a test specification demands astrong learning algorithm. In this position paper, we propose anatural language processing-based approach that, given test specificationsat the integration level, allows automatic detection oftest cases semantic dependencies. The proposed approach utilizesthe Doc2Vec algorithm and converts each test case into a vectorin n-dimensional space. These vectors are then grouped using theHDBSCAN clustering algorithm into semantic clusters. Finally, aset of cluster-based test scheduling strategies are proposed for execution.The proposed approach has been applied in a sub-systemfrom the railway domain by analyzing an ongoing testing projectat Bombardier Transportation AB, Sweden.

Keywords
clustering, dependency, Doc2Vec, HDBSCAN, NLP, software testing, test optimization
National Category
Computer and Information Sciences
Identifiers
urn:nbn:se:ri:diva-34878 (URN)10.1145/3195538.3195540 (DOI)2-s2.0-85051238162 (Scopus ID)978-1-4503-5749-4 (ISBN)
Conference
Proceedings of the 5th International Workshop on Requirements Engineering and Testing. Gothenburg, Sweden
Available from: 2018-08-21 Created: 2018-08-21 Last updated: 2020-01-29Bibliographically approved
Tahvili, S., Afzal, W., Saadatmand, M., Bohlin, M. & Ameerjan, S. H. (2018). ESPRET: A tool for execution time estimation of manual test cases. Journal of Systems and Software, 146, 26-41
Open this publication in new window or tab >>ESPRET: A tool for execution time estimation of manual test cases
Show others...
2018 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 146, p. 26-41Article in journal (Refereed) Published
Abstract [en]

Manual testing is still a predominant and an important approach for validation of computer systems, particularly in certain domains such as safety-critical 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 specification. 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.

Keywords
Execution time, Manual testing, Optimization, Regression analysis, Software testing, Test specification, Forecasting, Safety engineering, Safety testing, Specifications, Bombardier Transportation, Empirical evaluations, Estimation and predictions, Natural language parsing, Safety critical systems, Test specifications
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-35572 (URN)10.1016/j.jss.2018.09.003 (DOI)2-s2.0-85053193472 (Scopus ID)
Note

Funding details: 20130085; Funding details: 20160139; Funding details: MegaM@RT2, VINNOVA; Funding details: Bombardier; Funding text: ECSEL & VINNOVA (through projects MegaM@RT2 & TESTOMAT) and the Swedish Knowledge Foundation (through the projects TOCSYC (20130085) and TestMine (20160139)) have supported this work

Available from: 2018-11-06 Created: 2018-11-06 Last updated: 2020-01-29Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-1512-0844

Search in DiVA

Show all publications
v. 2.35.10