hh.sePublikationer
Ändra sökning
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Modeling and Model-Based Testing of Software Product Lines
Högskolan i Halmstad, Akademin för informationsteknologi, Halmstad Embedded and Intelligent Systems Research (EIS), Centrum för forskning om inbyggda system (CERES).
2019 (Engelska)Doktorsavhandling, sammanläggning (Övrigt vetenskapligt)
Abstract [en]

Software product line (SPL) engineering has become common practice for mass production and customization of variability intensive systems. A software product line comprises a family of software systems which share a managed core set of artifacts and also have a set of well-defined variabilities. The main idea in SPL engineering is to enable systematic reuse in different phases of software development to reduce cost and time to release.

Model-Based Testing (MBT) is a technique that is widely used for quality assurance of software systems. In MBT, an abstract model, which captures the desired behavior of the system, is used to generate test cases. The test cases are executed against a real implementation of the system and the conformance between the implementation and the specification is checked by comparing the observed outputs with the ones prescribed by the model.

Software product lines have been applied in a number of domains with mission critical systems. MBT is one of the techniques that has been used for analysis of such systems. As the number of products can be potentially large in an SPL, using conventional approaches for MBT of the products of an SPL individually can be very costly and time consuming. To tackle this problem, several approaches have been proposed in order to enable systematic reuse in different phases of the MBT process.

An efficient modeling technique is the first step towards an efficient MBT technique for SPLs. So far, several formalisms have been proposed for modeling SPLs. In this thesis, we conduct a study on such modeling techniques, focusing on four fundamental formalisms, namely featured transition systems, modal transition systems, product line calculus of communicating systems, and 1- selecting modal transition systems. We compare the expressive power and the succinctness of these formalisms.

Furthermore, we investigate adapting existing MBT methods for efficient testing of SPLs. As a part of this line of our research, we adapt the test case generation algorithm of one of the well-known black-box testing approaches, namely, Harmonized State Identification (HSI) method by exploiting the idea of delta-oriented programming. We apply the adapted test case generation algorithm to a case study taken from industry and the results show up to 50 percent reduction of time in test case generation by using the delta-oriented HSI method.

In line with our research on investigating existing MBT techniques, we compare the relative efficiency and effectiveness of the test case generation algorithms of the well-known Input-Output Conformance (ioco) testing approach and the complete ioco which is another testing technique used for input output transition systems that guarantees fault coverage. The comparison is done using three case studies taken from the automotive and railway domains. The obtained results show that complete ioco is more efficient in detecting deep faults (i.e., the faults reached through longer traces) in large state spaces while ioco is more efficient in detecting shallow faults (i.e., the faults reached through shorter traces) in small state spaces.

Moreover, we conduct a survey on sampling techniques, which have been proposed as a solution for handling the large number of products in analysis. In general, in product sampling a subset of products that collectively cover the behavior of the product line are selected. Performing tests on well selected sample set can reveal most of the faults in all products. We provide a classification for a catalog of studies on product sampling for software product lines. Additionally, we present a number of insights on the studied work as well as gaps for the future research.

Ort, förlag, år, upplaga, sidor
Halmstad: Halmstad University Press, 2019.
Serie
Halmstad University Dissertations ; 54
Nationell ämneskategori
Datorsystem
Identifikatorer
URN: urn:nbn:se:hh:diva-38921ISBN: 978-91-88749-16-1 (tryckt)ISBN: 978-91-88749-17-8 (digital)OAI: oai:DiVA.org:hh-38921DiVA, id: diva2:1289043
Disputation
2019-02-27, HAV, H22, Kristian IV:s väg 3, Halmstad, 13:00 (Engelska)
Opponent
Handledare
Tillgänglig från: 2019-02-18 Skapad: 2019-02-15 Senast uppdaterad: 2019-04-25Bibliografiskt granskad
Delarbeten
1. Delta-Oriented FSM-Based Testing
Öppna denna publikation i ny flik eller fönster >>Delta-Oriented FSM-Based Testing
2015 (Engelska)Ingår i: Formal Methods and Software Engineering: 17th International Conference on Formal Engineering Methods, ICFEM 2015, Paris, France, November 3-5, 2015, Proceedings / [ed] Michael Butler, Sylvain Conchon & Fatiha Zaïdi, Cham: Springer, 2015, Vol. 9407, s. 366-381Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

We use the concept of delta-oriented programming to organize FSM-based test models in an incremental structure. We then exploit incremental FSM-based testing to make efficient use of this high-level structure in generating test cases. We show how our approach can lead to more efficient test-case generation, both by analyzing the complexity of the test-case generation algorithm and by applying the technique to a case study. © Springer International Publishing Switzerland 2015

Ort, förlag, år, upplaga, sidor
Cham: Springer, 2015
Serie
Lecture Notes in Computer Science, ISSN 0302-9743 ; 9407
Nyckelord
Model-Based Testing, FSM-based Testing, HSI Method, Software Product Lines, Delta-Oriented Programming, DeltaJava
Nationell ämneskategori
Data- och informationsvetenskap
Identifikatorer
urn:nbn:se:hh:diva-29999 (URN)10.1007/978-3-319-25423-4_24 (DOI)2-s2.0-84949239517 (Scopus ID)978-3-319-25422-7 (ISBN)978-3-319-25423-4 (ISBN)
Konferens
17th International Conference on Formal Engineering Methods (ICFEM 2015), Paris, France, November 3-5, 2015
Projekt
EFFEMBACAUTO-CAAS
Forskningsfinansiär
ELLIIT - The Linköping‐Lund Initiative on IT and Mobile CommunicationsVetenskapsrådet, 621-2014-5057KK-stiftelsen
Anmärkning

M.R. Mousavi—The work has been partially supported by the Swedish Research Council award number: 621-2014-5057 and the Swedish Knowledge Foundation in the context of the AUTO-CAAS HöG project.

Tillgänglig från: 2015-12-09 Skapad: 2015-12-09 Senast uppdaterad: 2019-02-15Bibliografiskt granskad
2. Basic behavioral models for software product lines: Expressiveness and testing pre-orders
Öppna denna publikation i ny flik eller fönster >>Basic behavioral models for software product lines: Expressiveness and testing pre-orders
2016 (Engelska)Ingår i: Science of Computer Programming, ISSN 0167-6423, E-ISSN 1872-7964, Vol. 123, s. 42-60Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

In order to provide a rigorous foundation for Software Product Lines (SPLs), several fundamental approaches have been proposed to their formal behavioral modeling. In this paper, we provide a structured overview of those formalisms based on labeled transition systems and compare their expressiveness in terms of the set of products they can specify. Moreover, we define the notion of tests for each of these formalisms and show that our notions of testing precisely capture product derivation, i.e., all valid products will pass the set of test cases of the product line and each invalid product fails at least one test case of the product line. © 2015 The Authors.

Ort, förlag, år, upplaga, sidor
Amsterdam: Elsevier, 2016
Nyckelord
Software product lines, Formal specification, Behavioral specification, Labeled transition systems, Featured transition systems, Modal transition systems, Calculus of communicating systems (CCS), Product line CCS (PL-CCS)
Nationell ämneskategori
Datavetenskap (datalogi)
Identifikatorer
urn:nbn:se:hh:diva-29104 (URN)10.1016/j.scico.2015.06.005 (DOI)000374367600003 ()2-s2.0-84937604468 (Scopus ID)
Konferens
29th Symposium On Applied Computing, Gyeongju, South Korea, March 24-28, 2014
Projekt
EFFEMBAC
Forskningsfinansiär
Vetenskapsrådet, 621-2014-5057KK-stiftelsen, 20140312
Anmärkning

Issue with selected and extended papers from ACM SVT 2014.

Tillgänglig från: 2015-08-10 Skapad: 2015-08-10 Senast uppdaterad: 2019-02-15Bibliografiskt granskad
3. Complete IOCO Test Cases: A Case Study
Öppna denna publikation i ny flik eller fönster >>Complete IOCO Test Cases: A Case Study
2016 (Engelska)Ingår i: A-TEST 2016 - Proceedings of the 7th International Workshop on Automating Test Case Design, Selection, and Evaluation, co-located with FSE 2016, New York, NY: ACM Press, 2016, s. 38-44Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Input/Output Transition Systems (IOTSs) have been widely used as test models in model-based testing. Traditionally, input output conformance testing (IOCO) has been used to generate random test cases from IOTSs. A recent test case generation method for IOTSs, called Complete IOCO, applies fault models to obtain complete test suites with guaranteed fault coverage for IOTSs. This paper measures the efficiency of Complete IOCO in comparison with the traditional IOCO test case generation implemented in the JTorX tool. To this end, we use a case study involving five specification models from the automotive and the railway domains. Faulty mutations of the specifications were produced in order to compare the efficiency of both test generation methods in killing them. The results indicate that Complete IOCO is more efficient in detecting deep faults in large state spaces while IOCO is more efficient in detecting shallow faults in small state spaces. © 2016 ACM.

Ort, förlag, år, upplaga, sidor
New York, NY: ACM Press, 2016
Nyckelord
Conformance testing, Input output conformance (IOCO), Complete input output conformance, Mealy input output transition systems, fault models
Nationell ämneskategori
Data- och informationsvetenskap
Identifikatorer
urn:nbn:se:hh:diva-33212 (URN)10.1145/2994291.2994297 (DOI)2-s2.0-85007035449 (Scopus ID)978-1-4503-4401-2 (ISBN)
Konferens
7th International Workshop on Automating Test Case Design, Selection, and Evaluation (A-TEST 2016), Seattle, WA, USA, November 18, 2016
Projekt
VR Project EFFEMBACKKS Project AUTO-CAAS
Forskningsfinansiär
ELLIIT - The Linköping‐Lund Initiative on IT and Mobile CommunicationsVetenskapsrådet, 621-2014-5057KK-stiftelsen, 20140312
Anmärkning

The research of S. C. Paiva and A. Simao have been supported by Sao Paulo Research Foundation (Grants 2012/09650-5 and 2012/02232-3), Coordination for the Improvement of Higher Education Personnel and National Counsel of Technological and Scientic Development.

Tillgänglig från: 2017-02-06 Skapad: 2017-02-06 Senast uppdaterad: 2019-02-15Bibliografiskt granskad
4. Basic Behavioral Models For Software Product Lines: Revisited
Öppna denna publikation i ny flik eller fönster >>Basic Behavioral Models For Software Product Lines: Revisited
2018 (Engelska)Ingår i: Science of Computer Programming, ISSN 0167-6423, E-ISSN 1872-7964, Vol. 168, s. 171-185Artikel i tidskrift (Övrigt vetenskapligt) Published
Abstract [en]

In Beohar et al. (2016) [9], we established an expressiveness hierarchy and studied the notions of refinement and testing for three fundamental behavioral models for software product lines. These models were featured transition systems, product line labeled transition systems, and modal transition systems. It turns out that our definition of product line labeled transition systems is more restrictive than the one introduced by Gruler, Leucker, and Scheidemann. Adopting the original and more liberal notion changes the expressiveness results, as we demonstrate in this paper. Namely, we show that the original notion of product line labeled transition systems and featured transition systems are equally expressive. As an additional result, we show that there are featured transition systems for which the size of the corresponding product line labeled transition system, resulting from any sound encoding, is exponentially larger than the size of the original model. Furthermore, we show that each product line labeled transition system can be encoded into a featured transition system, such that the size of featured transition system is linear in terms of the size of the corresponding model. To summarize, featured transition systems are equally expressive as, but exponentially more succinct than, product line labeled transition systems. © 2018 Elsevier B.V.

Ort, förlag, år, upplaga, sidor
Amsterdam: Elsevier, 2018
Nyckelord
Software product lines, Behavioral model, Featured transition systems, Calculus of communicating systems, Product line labeled transition systems
Nationell ämneskategori
Inbäddad systemteknik
Identifikatorer
urn:nbn:se:hh:diva-33892 (URN)10.1016/j.scico.2018.09.001 (DOI)2-s2.0-85054040481 (Scopus ID)
Projekt
AUTO-CAAS HoG
Forskningsfinansiär
KK-stiftelsen, 20140312Vetenskapsrådet, 621-2014-5057ELLIIT - The Linköping‐Lund Initiative on IT and Mobile Communications
Tillgänglig från: 2017-05-26 Skapad: 2017-05-26 Senast uppdaterad: 2019-02-15Bibliografiskt granskad
5. A classification of product sampling for software product lines
Öppna denna publikation i ny flik eller fönster >>A classification of product sampling for software product lines
Visa övriga...
2018 (Engelska)Ingår i: SPLC '18 Proceedings of the 22nd International Systems and Software Product Line Conference - Volume 1 / [ed] Berger et al., New York, NY: Association for Computing Machinery (ACM), 2018, s. 1-13Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

The analysis of software product lines is challenging due to the potentially large number of products, which grow exponentially in terms of the number of features. Product sampling is a technique used to avoid exhaustive testing, which is often infeasible. In this paper, we propose a classification for product sampling techniques and classify the existing literature accordingly. We distinguish the important characteristics of such approaches based on the information used for sampling, the kind of algorithm, and the achieved coverage criteria. Furthermore, we give an overview on existing tools and evaluations of product sampling techniques. We share our insights on the state-of-the-art of product sampling and discuss potential future work. © 2018 Association for Computing Machinery.

Ort, förlag, år, upplaga, sidor
New York, NY: Association for Computing Machinery (ACM), 2018
Serie
ACM International Conference Proceeding Serie
Nyckelord
Domain models, Feature interaction, Sampling algorithms, Software product lines, Testing, Software design, Software testing, Coverage criteria, Domain model, Exhaustive testing, Feature interactions, Product samplings, Sampling algorithm, Software Product Line, State of the art, Importance sampling
Nationell ämneskategori
Produktionsteknik, arbetsvetenskap och ergonomi
Identifikatorer
urn:nbn:se:hh:diva-38742 (URN)10.1145/3233027.3233035 (DOI)2-s2.0-85055486094 (Scopus ID)9781450363716 (ISBN)9781450364645 (ISBN)
Konferens
22nd International Systems and Software Product Line Conference, SPLC 2018, Gothenburg, Sweden, 10-14 September, 2018
Anmärkning

Funding: partially supported by the European project ITEA 3 15010 REV aMP2 and by the German Research Foundation within the project IMoTEP (grant agreement LO 2198/2-1).

Tillgänglig från: 2019-01-10 Skapad: 2019-01-10 Senast uppdaterad: 2019-02-15Bibliografiskt granskad
6. Comparative Expressiveness of Product Line Calculus of Communicating Systems and 1-Selecting Modal Transition Systems
Öppna denna publikation i ny flik eller fönster >>Comparative Expressiveness of Product Line Calculus of Communicating Systems and 1-Selecting Modal Transition Systems
2019 (Engelska)Ingår i: SOFSEM 2019: Theory and Practice of Computer Science / [ed] Barbara Catania, Rastislav Královič, Jerzy Nawrocki & Giovanni Pighizzini, Cham: Springer, 2019, s. 490-503Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Product line calculus of communicating systems (PL-CCSs) is a process calculus proposed to model the behavior of software product lines. Modal transition systems (MTSs) are also used to model variability in behavioral models. MTSs are known to be strictly less expressive than PL-CCS. In this paper, we show that the extension of MTSs with hyper transitions by Fecher and Schmidt, called 1-selecting modal transition systems (1MTSs), closes this expressiveness gap. To this end, we propose a novel notion of refinement for 1MTSs that makes them more suitable for specifying variability for software product lines and prove its various essential properties. © Springer Nature Switzerland AG 2019

Ort, förlag, år, upplaga, sidor
Cham: Springer, 2019
Serie
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 11376
Nyckelord
Product line calculus of communicating systems (PL-CCS), Modal transition system (MTSs), 1-selecting modal transition system (1MTS), Comparative expressiveness
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:hh:diva-38920 (URN)10.1007/978-3-030-10801-4_38 (DOI)978-3-030-10800-7 (ISBN)978-3-030-10801-4 (ISBN)
Konferens
45th International Conference on Current Trends in Theory and Practice of Computer Science (SOFSEM 2019), Nový Smokovec, Slovakia, January 27-30, 2019
Tillgänglig från: 2019-02-15 Skapad: 2019-02-15 Senast uppdaterad: 2019-02-18Bibliografiskt granskad
7. Modal Transition System Encoding of Featured Transition Systems
Öppna denna publikation i ny flik eller fönster >>Modal Transition System Encoding of Featured Transition Systems
Visa övriga...
2019 (Engelska)Ingår i: The Journal of logical and algebraic methods in programming, ISSN 2352-2208, E-ISSN 2352-2216, Vol. 106, s. 1-28Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Featured transition systems (FTSs) and modal transition systems (MTSs) are two of the most prominent and well-studied formalisms for modeling and analyzing behavioral variability as apparent in software product line engineering. On one hand, it is well-known that for finite behavior FTSs are strictly more expressive than MTSs, essentially due to the inability of MTSs to express logically constrained behavioral variability such as persistently exclusive behaviors. On the other hand, MTSs enjoy many desirable formal properties such as compositionality of semantic refinement and parallel composition. In order to finally consolidate the two formalisms for variability modeling, we establish a rigorous connection between FTSs and MTSs by means of an encoding of one FTS into an equivalent set of multiple MTSs. To this end, we split the structure of an FTS into several MTSs whenever it is necessary to denote exclusive choices that are not expressible in a single MTS. Moreover, extra care is taken when dealing with infinite behaviour: loops may have to be unrolled to accumulate FTS path constraints when encoding them into MTSs. We prove our encoding to be semanticpreserving (i.e., the resulting set of MTSs induces, up to bisimulation, the same set of derivable variants as their FTS counterpart) and to commute with modal refinement. We further give an algorithm to calculate a concise representation of a given FTS as a minimal set of MTSs. Finally, we present experimental results gained from applying a tool implementation of our approach to a collection of case studies.

Ort, förlag, år, upplaga, sidor
Amsterdam: Elsevier, 2019
Nyckelord
Featured Transition Systems, Modal Transition Systems, Expressiveness Power, Product Lines, Modeling
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:hh:diva-38941 (URN)10.1016/j.jlamp.2019.03.003 (DOI)
Projekt
AUTO-CAAS
Forskningsfinansiär
KK-stiftelsen, 20140312Vetenskapsrådet, 621-2014-5057ELLIIT - The Linköping‐Lund Initiative on IT and Mobile Communications
Anmärkning

Funding: The work of Mahsa Varshosaz and Mohammad Reza Mousavi has been partially supported by grants from the Swedish Knowledge Foundation (Stiftelsen för Kunskaps- och Kompetensutveckling) in the context of the AUTO-CAAS HoGproject (number: 20140312), Swedish Research Council (Vetenskapsrådet) award number: 621-2014-5057 (Effective Model-Based Testing of Concurrent Systems), and the ELLIIT Strategic Research Environment. The work of Lars Luthmann, Paul Mohr and Malte Lochau has been supported by the German Research Foundation (DFG) in the Priority Programme SPP 1593: Design For Future – Managed Software Evolution (LO 2198/2-1).

Tillgänglig från: 2019-02-18 Skapad: 2019-02-18 Senast uppdaterad: 2019-06-12Bibliografiskt granskad

Open Access i DiVA

fulltext(7445 kB)113 nedladdningar
Filinformation
Filnamn FULLTEXT01.pdfFilstorlek 7445 kBChecksumma SHA-512
515b38a60f109e1c8ce0a8b8dc7bc42e2451ecb9e05e1d0504a0b003682ab62566c533a6137cc4fcd05acc6e5fe52d0ae60ad6728668fafc2dea2b23f2272d94
Typ fulltextMimetyp application/pdf

Personposter BETA

Varshosaz, Mahsa

Sök vidare i DiVA

Av författaren/redaktören
Varshosaz, Mahsa
Av organisationen
Centrum för forskning om inbyggda system (CERES)
Datorsystem

Sök vidare utanför DiVA

GoogleGoogle Scholar
Totalt: 113 nedladdningar
Antalet nedladdningar är summan av nedladdningar för alla fulltexter. Det kan inkludera t.ex tidigare versioner som nu inte längre är tillgängliga.

isbn
urn-nbn

Altmetricpoäng

isbn
urn-nbn
Totalt: 510 träffar
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf