Change search
Refine search result
1 - 25 of 25
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • harvard1
  • 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.
    Abbas, Mohammad
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Inayat, Irum
    National University of Computer & Emerging Sciences, Pakistan.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Jan, Naila
    National University of Computer & Emerging Sciences, Pakistan.
    Requirements dependencies-based test case prioritization for extra-functional properties2019In: 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 (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.

  • 2.
    Abbaspour Assadollah, Sara
    et al.
    Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS.
    Eldh, Sigrid
    Ericsson AB, Sweden.
    Sundmark, Daniel
    Mälardalen University, Sweden.
    Hansson, Hans
    Mälardalen University, Sweden.
    A Model for Systematic Monitoring and Debugging of Starvation Bugs in Multicore Software2016In: Proceedings of the 1st International Workshop on Specification, Comprehension, Testing, and Debugging of Concurrent Programs (SCTDCP 2016), 2016, p. 7-11Conference paper (Refereed)
    Abstract [en]

    With the development of multicore hardware, concurrent, parallel and multicore software are becoming increasingly popular. Software companies are spending a huge amount of time and resources to nd and debug the bugs. Among all types of software bugs, concurrency bugs are also important and troublesome. This type of bugs is increasingly becoming an issue particularly due to the growing prevalence of multicore hardware. In this position paper, we propose a model for monitoring and debugging Starvation bugs as a type of concurrency bugs in multicore software. The model is composed into three phases: monitoring, detecting and debugging. The monitoring phase can support detecting phase by storing collected data from the system execution. The detecting phase can support debugging phase by comparing the stored data with starvation bug's properties, and the debugging phase can help in reproducing and removing the Starvation bug from multicore software. Our intention is that our model is the basis for developing tool(s) to enable solving Starvation bugs in software for multicore platforms.

  • 3.
    Campeanu, Gabriel
    et al.
    Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    A 2-Layer Component-based Architecture for Heterogeneous CPU-GPU Embedded Systems2016In: Information Technology: New Generations / [ed] Shahram Latifi, 2016, 14, Vol. 448, p. 629-639Conference paper (Refereed)
    Abstract [en]

    Traditional embedded systems are evolving into heterogeneous systems in order to address new and more demanding software requirements. Modern embedded systems are constructed by combining different computation units, such as traditional CPUs, with Graphics Processing Units (GPUs). Adding GPUs to conventional CPU-based embedded systems enhances the computation power but also increases the complexity in developing software applications. A method that can help to tackle and address the software complexity issue of heterogeneous systems is component-based development. The allocation of the software application onto the appropriate computation node is greatly influenced by the system information load. The allocation process is increased in difficulty when we use, instead of common CPU-based systems, complex CPU-GPU systems. This paper presents a 2-layer component-based architecture for heterogeneous embedded systems, which has the purpose to ease the software-to-hardware allocation process. The solution abstracts the CPU-GPU detailed component-based design into single software components in order to decrease the amount of information delivered to the allocator. The last part of the paper describes how the allocation process may be modified using our proposed solution, when applied on a real system demonstrator.

  • 4.
    Campeanu, Gabriel
    et al.
    Bombardier Transportation, Sweden.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    A Two-Layer Component-Based Allocation for Embedded Systems with GPUs2019In: designs, ISSN 2411-9660, Vol. 3, no 1, article id 6Article in journal (Other academic)
    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.

  • 5.
    Campeanu, Gabriel
    et al.
    Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS.
    Run-time component allocation in CPU-GPU embedded systems2017In: Proceedings of the ACM Symposium on Applied Computing, 2017, p. 1259-1265Conference paper (Refereed)
    Abstract [en]

    Nowadays, many of the modern embedded applications such as vehicles and robots, interact with the environment and receive huge amount of data through various sensors such as cameras and radars. The challenge of processing large amount of data, within an acceptable performance, is solved by employing embedded systems that incorporate complementary attributes of CPUs and Graphics Processing Units (GPUs), i.e., sequential and parallel execution models.component-based development (CBD) is a software engineering methodology that augments the applications development through reuse of software blocks known as components. In developing a CPU-GPU embedded application using CBD, allocation of components to different processing units of the platform is an important activity which can affect the overall performance of the system. In this context, there is also often the need to support and achieve run-time component allocation due to various factors and situations that can happen during system execution, such as switching off parts of the system for energy saving. In this paper, we provide a solution that dynamically allocates components using various system information such as the available resources (e.g., available GPU memory) and the software behavior (e.g., in terms of GPU memory usage). The novelty of our work is a formal allocation model that considers GPU system characteristics computed on-the-fly through software monitoring solutions. For the presentation and validation of our solution, we utilize an existing underwater robot demonstrator.

  • 6.
    Helali Moghadam, Mahshid
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Borg, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Lisper, Björn
    Mälardalen University, Sweden.
    Adaptive Run-time Response Time Control in PLC-based Real-Time Systems using Reinforcement Learning2018Conference 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.

  • 7.
    Helali Moghadam, Mahshid
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Borg, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Lisper, Björn
    Mälardalen University, Sweden.
    Learning-based Response Time Analysis in Real-Time Embedded Systems: A Simulation-based Approach2018Conference 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 run-time events in these systems. In this work-in-progress paper, we propose a simulation-based 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.

  • 8.
    Helali Moghadam, Mahshid
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Borg, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Lisper, Björn
    Mälardalen University, Sweden.
    Learning-Based Self-Adaptive Assurance of Timing Properties in a Real-Time Embedded System2018Conference 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.

  • 9.
    Helali Moghadam, Mahshid
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS. Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Borg, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Lisper, Björn
    Mälardalen University, Sweden.
    Machine Learning to Guide Performance Testing: An Autonomous Test Framework2019In: ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 2019, 2019Conference 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.

  • 10.
    Lisper, Björn
    et al.
    Mälardalen University, Sweden.
    Lindstrom, Birgitta
    University of Skövde, Sweden.
    Potena, Pasqualina
    RISE - Research Institutes of Sweden, ICT, SICS.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Targeted Mutation: Efficient Mutation Analysis for Testing Non-Functional Properties2017In: Proceedings - 10th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2017, 2017, p. 65-68Conference paper (Refereed)
    Abstract [en]

    Mutation analysis has proven to be a strong technique for software testing. Unfortunately, it is also computationally expensive and researchers have therefore proposed several different approaches to reduce the effort. None of these reduction techniques however, focuses on non-functional properties. Given that our goal is to create a strong test suite for testing a certain non-functional property, which mutants should be used? In this paper, we introduce the concept of targeted mutation, which focuses mutation effort to those parts of the code where a change can make a difference with respect to the targeted non-functional property. We show how targeted mutation can be applied to derive efficient test suites for estimating the Worst-Case Execution Time (WCET). We use program slicing to direct the mutations to the parts of the code that are likely to have the strongest influence on execution time. Finally, we outline an experimental procedure for how to evaluate the technique.

  • 11.
    Mullner, Nils
    et al.
    Malardalen University, Sweden.
    Khan, Saifullah
    Carl von Ossietzky Universitat, Germany.
    Rahman, Md Habibur
    Carl von Ossietzky Universitat, Germany.
    Afzal, Wasif
    Malardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS.
    Simulation-Based Safety Testing Brake-by-Wire2017In: Proceedings - 10th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2017, 2017, p. 61-64Conference paper (Refereed)
    Abstract [en]

    Mechanical systems in cars are replaced by electronic equivalents. To be authorized for the road, validation that the replacements are at least as good as the old systems is required. For electronic braking systems (brake-by-wire), this goodness translates to safety in terms of maintaining timing constraints. Yet, in the future, the safety of braking maneuvres will depend, not only, on electronic brakes, but also on cooperative driving maneuvres orchestrated among many cars. Connecting both brake-by-wire on the microscopic level with cooperative braking on the macroscopic level allows for determining safety on a broader scale, as both systems feed from the same resource: Time. This paper discusses work-in-progress, introducing and combining two threads: electronic brakes and cooperative braking. Discussing safety on two levels simultaneously motivates connecting a Simulink model of an electronic brake-by-wire system with the traffic simulator SUMO for conducting the required combined validation. How safe is a car in relation to a given maximal braking distance? What is the optimal distribution of reaction time between electronic brakes and cooperative braking? The validation focuses on non-functional safety limited by temporal constraints (translated to braking distance). It can be exploited in an early validation approach to help reduce costs of more expensive real world experimentation. It can also determine the boundaries at which sufficient safety can be guaranteed. © 2017 IEEE.

  • 12.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Integrationdistiller: Automating integration analysis and testing of object-oriented applications2019In: Proceedings of the IEEE International Conference on Industrial Technology, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 1385-1392Conference 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.

  • 13.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS.
    Towards Automating Integration Testing of .NET Applications using Roslyn2017Conference paper (Refereed)
    Abstract [en]

    The increasing complexity and size of software products combined with pressure to have shorter time-to-market is making manual testing techniques too costly and unscalable. This is particularly observed in industrial systems where continuous integration and deployment are applied. Therefore, there is a growing need to automate the testing process and make it scalable with respect to the context of real-world and large industrial applications. While there are already some solutions for generation of unit level test cases, automatic generation of integration level test cases to verify interaction of software components poses specific challenges especially in object-oriented applications. In this paper, we describe our ongoing work in introducing a solution to automate generation of integration test cases for C# applications by exploiting the code analysis capabilities of Microsoft .NET compiler platform known as Roslyn. This is done in collaboration with ABB Industrial Automation Control Technologies (IACT) in Västerås-Sweden, where the software for 800xA distributed control system is developed.

  • 14.
    Saadatmand, Mehrdad
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Hansson, Hans
    RISE - Research Institutes of Sweden, ICT, SICS. Mälardalen University.
    Thane, Henrik
    Safety Integrity AB.
    Hänninen, Kaj
    Mälardalen University.
    Inadequate Risk Analysis Might Jeopardize The Functional Safety of Modern Systems2016Report (Other academic)
    Abstract [en]

    In the early 90s, researchers began to focus on security as an important property to address in combination with safety. Over the years, researchers have proposed approaches to harmonize activities within the safety and security disciplines. Despite the academic efforts to identify interdependencies and to propose combined approaches for safety and security, there is still a lack of integration between safety and security practices in the industrial context, as they have separate standards and independent processes often addressed and assessed by different organizational teams and authorities. Specifically, security concerns are generally not covered in any detail in safety standards potentially resulting in successfully safety-certified systems that still are open for security threats from e.g., malicious intents from internal and external personnel and hackers that may jeopardize safety. In recent years security has again received an increasing attention of being an important issue also in safety assurance, as the open interconnected nature of emerging systems makes them susceptible to security threats at a much higher degree than existing more confined products.This article presents initial ideas on how to extend safety work to include aspects of security during the context establishment and initial risk assessment procedures. The ambition of our proposal is to improve safety and increase efficiency and effectiveness of the safety work within the frames of the current safety standards, i.e., raised security awareness in compliance with the current safety standards. We believe that our proposal is useful to raise the security awareness in industrial contexts, although it is not a complete harmonization of safety and security disciplines, as it merely provides applicable guidance to increase security awareness in a safety context.

  • 15.
    Saadatmand, Mehrdad
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Lindstrom, Birgitta
    University of Skövde, Sweden.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Message from the ITEQS 2017 Chairs2017In: 10th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2017, p. 44-45, article id 7899031Article in journal (Refereed)
  • 16.
    Saadatmand, Mehrdad
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Lindström, Birgitta
    University of Skövde, Sweden.
    Aichernig, Bernhard K.
    Graz University of Technology, Austria.
    Message from the ITEQS 2018 workshop chairs2018In: 11th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2018Article in journal (Other academic)
    Abstract [en]

    Testing  a  system  with  respect  to  extra-functional  properties  poses  specific  challenges  as  traditional  methods and approaches for testing the system’s functional correctness may not apply. A few examples of such challenges are: fault localization, the need to have appropriate techniques for different types of extra-functional  properties,  the  role  and  impact  of  the  environment  when  testing,  observability  and  testability  issues.  ITEQS  provides  a  well-focused  forum  with  the  goal  of  bringing  together  researchers  and  practitioners to share ideas, identify challenges, propose solutions and techniques, and in general expand the state of the art in testing EFPs and quality characteristics of software systems and services. ITEQS  2018  attracted  8  submissions  (1  withdrawn).  Each  paper  underwent  a  careful  review  and  discussion  process  by  at  least  three  members  of  the  program  committee.  Based  on  the  reviews,  5  papers  were  selected  for  publication  and  presentation  at  the  workshop.  ITEQS  2018  program  includes  keynotes  by Konstantinos Sagonas and Brian Nielsen, who both kindly accepted our invitation. Konstantinos gives a  keynote  on  testing  for  concurrency  bugs  and  Brian  gives  a  keynote  where  he  discusses  how  we  may  achieve a methodology for compositional testing of real-time systems. Finally,  we  would  like  to  thank  our  general  sponsors,  the  publicity  chairs,  the  program  committee,  the  external reviewers, the keynote speakers, the authors and participants. You all contribute to the quality and success of this workshop. Welcome to the workshop! We hope you will enjoy it. xv

  • 17.
    Saadatmand, Mehrdad
    et al.
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Tahvili, Sahar
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    A Fuzzy Decision Support Approach for Model-Based Tradeoff Analysis of Non-Functional Requirements2015In: 2015 12th International Conference on Information Technology - New Generations, 2015, 22, p. 112-121Conference paper (Refereed)
    Abstract [en]

    One of the main challenges in addressing Non-Functional Requirements (NFRs) in designing systems is to take into account their interdependencies and mutual impacts. For this reason, they cannot be considered in isolation and a careful balance and tradeoff among them should be established. This makes it a difficult task to select design decisions and features that lead to the satisfaction of all different NFRs in the system, which becomes even more difficult when the complexity of a system grows. In this paper, we introduce an approach based on fuzzy logic and decision support systems that helps to identify different design alternatives that lead to higher overall satisfaction of NFRs in the system. This is achieved by constructing a model of the NFRs and then performing analysis on the model. To build the model, we use a modified version of the NFR UML profile which we have introduced in our previous works, and using model transformation techniques we automate the analysis of the model.

  • 18.
    Tahvili, Sahar
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS. Mälardalen University, Sweden.
    Afzal, Wasif
    Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Marcus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Ameerjan, Sharvathul Hasan
    Mälardalen University, Sweden.
    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 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.

  • 19.
    Tahvili, Sahar
    et al.
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Afzal, Wasif
    Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Sundmark, Daniel
    Mälardalen University, Sweden.
    Larsson, Stig
    Towards Earlier Fault Detection by Value-Driven Prioritization of Test Cases Using Fuzzy TOPSIS2016In: Information Technology: New Generations, 2016, 9, Vol. 448, p. 745-759Conference paper (Refereed)
    Abstract [en]

    In industrial software testing, development projects typically set up and maintain test suites containing large numbers of test cases. Executing a large number of test cases can be expensive in terms of effort and wall-clock time. Moreover, indiscriminate execution of all available test cases typically lead to sub-optimal use of testing resources. On the other hand, selecting too few test cases for execution might leave a large number of faults undiscovered. Limiting factors such as allocated budget and time constraints for testing further emphasizes the importance of test case prioritization in order to identify test cases that enable earlier detection of faults while respecting such constraints. In this paper, we propose a multi-criteria decision making approach for prioritizing test cases in order to detect faults earlier. This is achieved by applying the TOPSIS (Technique for Order of Preference by Similarity to Ideal Solution) decision making technique combined with fuzzy principles. Our solution is based on important criteria such as fault detection probability, execution time, complexity, and other test case properties. By applying the approach on a train control management subsystem from Bombardier Transportation in Sweden, we demonstrate how it helps, in a systematic way, to identify test cases that can lead to early detection of faults while respecting various criteria.

  • 20.
    Tahvili, Sahar
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Ahlberg, Marcus
    KTH Royal Institute of Technology, Sweden.
    Fornander, Eric
    KTH Royal Institute of Technology, Sweden.
    Afzal, Wasif
    Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Sarabi, Mahdi
    Bombardier Transportation AB, Sweden.
    Functional Dependency Detection for Integration Test Cases2018In: Proceedings - 2018 IEEE 18th International Conference on Software Quality, Reliability, and Security Companion, QRS-C 2018, 2018, p. 207-214Conference paper (Refereed)
    Abstract [en]

    This paper presents a natural language processing (NLP) based approach that, given software requirements specification, allows the functional dependency detection between integration test cases. We analyze a set of internal signals to the implemented modules for detecting dependencies between requirements and thereby identifying dependencies between test cases such that: module 2 depends on module 1 if an output internal signal from module 1 enters as an input internal signal to the module 2. Consequently, all requirements (and thereby test cases) for module 2 are dependent on all the designed requirements (and test cases) for module 1. The dependency information between requirements (and thus corresponding test cases) can be utilized for test case prioritization and scheduling. We have implemented our approach as a tool and the feasibility is evaluated through an industrial use case in the railway domain at Bombardier Transportation (BT), Sweden. © 2018 IEEE.

  • 21.
    Tahvili, Sahar
    et al.
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Larsson, Stig
    RISE, Swedish ICT, SICS.
    Afzal, Wasif
    Mälardalen University, Sweden.
    Sundmark, Daniel
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Cost-Benefit Analysis of Using Dependency Knowledge at Integration Testing2016In: Product-Focused Software Process Improvement / [ed] Pekka Abrahamsson, Andreas Jedlitschka, Anh Nguyen Duc, Michael Felderer, Sousuke Amasaki, Tommi Mikkonen, 2016, 7, Vol. 10027, p. 268-284Conference paper (Refereed)
    Abstract [en]

    In software system development, testing can take considerable time and resources, and there are numerous examples in the literature of how to improve the testing process. In particular, methods for selection and prioritization of test cases can play a critical role in efficient use of testing resources. This paper focuses on the problem of selection and ordering of integration-level test cases. Integration testing is performed to evaluate the correctness of several units in composition. Further, for reasons of both effectiveness and safety, many embedded systems are still tested manually. To this end, we propose a process, supported by an online decision support system, for ordering and selection of test cases based on the test result of previously executed test cases. To analyze the economic efficiency of such a system, a customized return on investment (ROI) metric tailored for system integration testing is introduced. Using data collected from the development process of a large-scale safety-critical embedded system, we perform Monte Carlo simulations to evaluate the expected ROI of three variants of the proposed new process. The results show that our proposed decision support system is beneficial in terms of ROI at system integration testing and thus qualifies as an important element in improving the integration testing process.

  • 22.
    Tahvili, Sahar
    et al.
    RISE - Research Institutes of Sweden, ICT, SICS.
    Hatvani, Leo
    Mälardalen University, Sweden.
    Felderer, Michael
    University of Innsbruck, Austria.
    Afzal, Wasif
    Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE - Research Institutes of Sweden, ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Cluster-based test scheduling strategies using semantic relationships between test specifications2018Conference 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.

  • 23.
    Tahvili, Sahar
    et al.
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS. Mälardalen University, Sweden.
    Multi-Criteria Test Case Prioritization Using Fuzzy Analytic Hierarchy Process2015In: ICSEA 2015: The Tenth International Conference on Software Engineering Advances, 2015, 6Conference paper (Refereed)
    Abstract [en]

    One of the key challenges in software testing today is prioritizing and evaluating test cases. The decision of which test cases to design, select and execute first is of great importance, in particular considering that testing is often done late in the implementation process, and therefore needs to be done within tight resource constraints on time and budget. In practice, prioritized selection of test cases requires the evaluation of different test case criteria, and therefore, test case prioritization can be formulated as a multi-criteria decision making problem. As the number of decision criteria grows, application of a systematic decision making solution becomes a necessity. In this paper we propose an approach for prioritized selection of test cases by using the Analytic Hierarchy Process (AHP) technique. To improve the practicality of the approach in real world scenarios, we apply AHP in fuzzy environment so that criteria values can be specified using fuzzy variables than requiring precise quantified values. One of the advantages of the decision making process it that the defined criteria with the biggest and most critical role in priority ranking of test cases is identified. We have applied our approach on an example case in which several test cases for testing non-functional requirements in a systems are defined.

  • 24.
    Tahvili, Sahar
    et al.
    RISE, Swedish ICT, SICS.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Afzal, Wasif
    Mälardalen University, Sweden.
    Hasan Ameerjan, Sharvathu
    Mälardalen University, Sweden.
    Towards Execution Time Prediction for Test Cases from Test Specification2017Conference paper (Refereed)
    Abstract [en]

    Knowing the execution time of test cases is important to perform test scheduling, prioritization and progress monitoring. This short paper presents a novel approach for predicting the execution time of test cases based on test specifications and available historical data on previously executed test cases. Our approach works by extracting timing information (measured and maximum execution time) for various steps in manual test cases. 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 activities already exists or not. Finally, linear regression is used to predict the actual execution time for test cases. A proof-of-concept use-case at Bombardier transportation serves to evaluate the proposed approach.

  • 25.
    Tahvili, Sahar
    et al.
    RISE, Swedish ICT, SICS.
    Saadatmand, Mehrdad
    RISE, Swedish ICT, SICS.
    Larsson, Stig
    RISE, Swedish ICT, SICS.
    Afzal, Wasif
    Mälardalen University, Sweden.
    Bohlin, Markus
    RISE - Research Institutes of Sweden, ICT, SICS.
    Sundmark, Daniel
    RISE, Swedish ICT, SICS. Mälardalen University, Sweden.
    Dynamic Integration Test Selection Based on Test Case Dependencies2016In: 2016 IEEE Ninth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2016, 15, p. 277-286Conference paper (Refereed)
    Abstract [en]

    Prioritization, selection and minimization of test cases are well-known problems in software testing. Test case prioritization deals with the problem of ordering an existing set of test cases, typically with respect to the estimated likelihood of detecting faults. Test case selection addresses the problem of selecting a subset of an existing set of test cases, typically by discarding test cases that do not add any value in improving the quality of the software under test. Most existing approaches for test case prioritization and selection suffer from one or several drawbacks. For example, they to a large extent utilize static analysis of code for that purpose, making them unfit for higher levels of testing such as integration testing. Moreover, they do not exploit the possibility of dynamically changing the prioritization or selection of test cases based on the execution results of prior test cases. Such dynamic analysis allows for discarding test cases that do not need to be executed and are thus redundant. This paper proposes a generic method for prioritization and selection of test cases in integration testing that addresses the above issues. We also present the results of an industrial case study where initial evidence suggests the potential usefulness of our approach in testing a safety-critical train control management subsystem.

1 - 25 of 25
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • harvard1
  • 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
v. 2.35.7