https://www.mdu.se/

mdu.sePublications
Planned maintenance
A system upgrade is planned for 10/12-2024, at 12:00-13:00. During this time DiVA will be unavailable.
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • 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
ReSA Tool: Structured requirements specification and SAT-based consistency checking
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. (Formal Modelling and Analysis of Embedded Systems)ORCID iD: 0000-0002-5626-0587
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. (Formal Modelling and Analysis of Embedded Systems)ORCID iD: 0000-0003-2870-2680
Volvo Group Trucks Technology, Sweden.
2016 (English)In: ReSA Tool: Structured requirements specification and SAT-based consistency-checking, 2016, p. 1737-1746Conference paper, Published paper (Refereed)
Abstract [en]

Most industrial embedded systems requirements are specified in natural language, hence they can sometimes be ambiguous and error-prone. Moreover, employing an early-stage model-based incremental system development using multiple levels of abstraction, for instance via architectural languages such as EAST-ADL, calls for different granularity requirements specifications described with abstraction-specific concepts that reflect the respective abstraction level effectively. In this paper, we propose a toolchain for structured requirements specification in the ReSA language, which scales to multiple EAST-ADL levels of abstraction. Furthermore, we introduce a consistency function that is seamlessly integrated into the specification toolchain, for the automatic analysis of requirements logical consistency prior to their temporal logic formalization for full formal verification. The consistency check subsumes two parts: (i) transforming ReSA requirements specification into boolean expressions, and (ii) checking the consistency of the resulting boolean expressions by solving the satisfiability of their conjunction with the Z3 SMT solver. For validation, we apply the ReSA toolchain on an industrial vehicle speed control system, namely the Adjustable Speed Limiter.

Place, publisher, year, edition, pages
2016. p. 1737-1746
Series
2016 Federated Conference on Computer Science and Information Systems (FedCSIS
Keywords [en]
requirements specification, consistency checking, formal methods, embedded systems, automotive systems, software tool
National Category
Embedded Systems
Research subject
Computer Science
Identifiers
URN: urn:nbn:se:mdh:diva-34005DOI: 10.15439/2016F404ISI: 000392436600246Scopus ID: 2-s2.0-85007240246ISBN: 978-8-3608-1090-3 (print)OAI: oai:DiVA.org:mdh-34005DiVA, id: diva2:1050648
Conference
2016 Federated Conference on Computer Science and Information Systems, FedCSIS 2016; Gdansk; Poland; 11 September 2016 through 14 September 2016
Projects
VeriSpec
Funder
VINNOVA, 16335Available from: 2016-11-29 Created: 2016-11-29 Last updated: 2019-05-08Bibliographically approved
In thesis
1. Ontology-based Analysis and Scalable Model Checking of Embedded Systems Models
Open this publication in new window or tab >>Ontology-based Analysis and Scalable Model Checking of Embedded Systems Models
2017 (English)Licentiate thesis, comprehensive summary (Other academic)
Abstract [en]

Currently, there is lack of effective and scalable methods to specify and ana-lyze requirements specifications, and verify the behavioral models of embed-ded systems. Most embedded systems requirements are expressed in naturallanguage which is flexible and intuitive but frequently ambiguous, vague andincomprehensive. Besides to natural language, template-based requirementsspecification methods are used to specify requirements specifications (esp. insafety-critical applications), which reduce ambiguity and improves the com-prehensibility of the specifications. However, the template-based method areusually rigid due to the fixed structures of the templates. They also lack meta-models for extensibility, and template selection is challenging.In this thesis, we proposed a domain specific language for embedded sys-tems, called ReSA, which is constrained natural language but flexible enoughto allow engineers to use different constructs to specify requirements. Thelanguage has formal semantics in proportional logic and description logic thatenables non-trivial and rigorous analysis of requirements specification, e.g.,consistency checking, completeness of specifications, etc.Moreover, we propose a scalable formal verification of Simulink models,whichisusedtodescribethebehaviorofsystemsthroughcommunicatingfunc-tional blocks. In industry, Simulink is the de facto modeling and analysis en-vironment of embedded systems. It is also used to generate code automati-cally from special Simulink models for various hardware platforms. However,Simulink lacks formal approach to verify large and hybrid Simulink models.Therefore, we also propose a formal verification of Simulink models, repre-sented as stochastic timed automata, using statistical model checking, whichhas proven to scale for industrial applications.We validate our approaches on industrial use cases from the automotiveindustry. These includes Adjustable Speed Limiter (ASL) and Brake-By-Wire(BBW) systems from Volvo Group Trucks Technology, both safety-critical.

Place, publisher, year, edition, pages
Västerås: Mälardalen University, 2017. p. 200
Series
Mälardalen University Press Licentiate Theses, ISSN 1651-9256 ; 262
Keywords
requirements specification, embedded systems, ontology, formal methods, simulink, sat, domain specific language, requirements boilerplates
National Category
Embedded Systems
Research subject
Computer Science
Identifiers
urn:nbn:se:mdh:diva-35386 (URN)978-91-7485-337-7 (ISBN)
Presentation
2017-06-16, Gamma, Mälardalens högskola, Västerås, 13:15 (English)
Opponent
Supervisors
Projects
Verispec
Funder
VINNOVA, 16335
Available from: 2017-05-24 Created: 2017-05-24 Last updated: 2017-07-10Bibliographically approved
2. Design of Assured and Efficient Safety-critical Systems
Open this publication in new window or tab >>Design of Assured and Efficient Safety-critical Systems
2019 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Safety-critical   systems   need   to   be   analyzed rigorously to remove software/specifications errors, that is, their requirements specifications should be unambiguous, comprehensible and consistent, and the software design should conform to the specifications, hence avoiding undesirable system failures. Currently, there is a lack of effective and scalable methods to specify and analyze requirements, and formally analyze the behavioral models of embedded systems. Most embedded systems requirements are expressed in natural language, which is flexible and intuitive but frequently ambiguous and incomprehensible.  Besides natural language, template-based requirements specification methods are used frequently to specify requirements (esp.  in safety-critical applications).  Although the latter reduce ambiguity and improve the comprehensibility of the specifications, they are usually rigid due to the constrained syntax of the templates, and template selection is challenging.  Industrial systems are frequently developed by using modeling and simulation environments such as Simulink, which is also used to generate code automatically for various hardware platforms. Therefore, it is essential to be able to formally analyze Simulink models, to get insight into the behavior of the embedded system, and also prevent potential errors from propagating into the implementation.  Analyzing the timing behavior of safety-critical software that is refined by multi-rate periodic tasks with data age constraints across the end-to-end software functionality is not trivial. This is due to the undersampling and oversampling effects caused by the data propagation from higher to lower rates and vice versa, respectively. Furthermore, when such systems are deployed on a distributed architecture, e.g., electrical/electronic vehicular system, besides assuring the timeliness, the reliability of the distributed software should be maximized to counter the higher risk of failures in the distributed computing setting, hence improving the overall predictability of the safety-critical system. However, designing for reliability usually requires additional critical system resources such as energy.  Hence, to accommodate the growing complexity of software functionality, the design of the safety-critical systems should consider the efficient use of critical system resources such as the power source, while meeting the timing and reliability requirements.

To address the above needs, in this thesis, we propose formal-methods-based approaches and optimization techniques to assure improved quality of requirements specifications and software designs, and to efficiently map software functionality to hardware. The contributions of the thesis are: (i) ReSA - a domain-specific requirements specification  language tailored to embedded systems, based on constrained natural language; (ii) a formal approach to check consistency of ReSA specifications via Boolean satisfiability problem (SAT) and ontology; (iii) a framework based on statistical model checking to analyze Simulink models via automated transformation into networks of stochastic timed automata; and (iv) a resource-efficient allocation of fault-tolerant software with end-to-end timing and reliability constraints via integer linear programming and hybrid particle-swarm optimization. Our proposed solutions are validated and evaluated on automotive use cases such as the Adjustable Speed Limiter (ASL) and the Brake-by-Wire (BBW) systems from Volvo Group Trucks Technology (VGTT), and on an Engine Management (EM) system benchmark from Bosch.

 

Abstract [sv]

Säkerhetskritiska system bör analyseras noggrant för att ta bort fel i programvaror och specifikationer, dvs systemens krav måste vara entydiga, begripliga och konsekventa, och programvarudesignen ska överensstämma med specifikationerna för att undvika oönskade systemfel. För närvarande saknas effektiva och skalbara metoder för att specificera och analysera systemkrav, och för att formellt analysera beteendemodellerna för inbyggda system. De flesta krav för inbyggda system uttrycks i naturligt språk, vilket är flexibelt och intuitivt men ofta tvetydigt och oprecist. Förutom naturligt språk används ofta mallbaserade kravspecifikationsmetoder för att specificera krav (speciellt i säkerhetskritiska tillämpningar). Även om de senare minskar otydligheten och förbättrar begripligheten, är de vanligtvis oflexibla på grund av den begränsade syntaxen i mallarna, och mallvalet är svårt. Industriella system utvecklas ofta genom att använda modellerings- och simuleringsmiljöer såsom Simulink, som också används för att generera kod automatiskt för olika hårdvaruplattformar. Därför är det viktigt att kunna formellt analysera Simulink-modeller, för att få insikt i beteendet hos det inbyggda systemet, och för att förhindra potentiella fel från att sprida sig till implementationen. Att analysera tidsperspektivet för sådan säkerhetskritisk mjukvara som har tasks med olika periodicitet och som har begränsningar på datas ålder, dvs datans färskhet, för end-to-end-programvarufunktionalitet, är inte trivialt. Detta orsakas av undersamplings- och översamplingseffekter, som uppstår när data går från högre till lägre signaleringshastigheter och vice versa. Vidare, när sådana system används i en distribuerad arkitektur, t.ex. elektriska / elektroniska fordonssystem, , så bör, förutom att säkerställa tidskraven, även tillförlitligheten hos den distribuerade mjukvaran maximeras för att motverka den högre risken för fel i den distribuerade databehandlingen, för att därigenom förbättra den övergripande förutsägbarheten för det säkerhetskritiska systemet. Design för tillförlitlighet kräver emellertid vanligtvis mer av kritiska systemresurser, såsom energi. För att tillgodose nuvarande och framtida mjukvarufunktionalitet bör utformningen av det säkerhetskritiska systemet ta hänsyn till effektiviteten hos kritiska systemresurser, såsom energiförbrukning, samtidigt som kraven på tid och tillförlitlighet uppfylls.

För att möta ovanstående behov, föreslår vi i denna avhandling formella metoder och optimeringstekniker för att säkerställa förbättrad kvalitet på kravspecifikationer och mjukvaruutveckling, och för att effektivt mappa mjukvarufunktionalitet till hårdvara. Avhandlingens bidrag är: (i) \textit{ReSA} - ett domänspecifikt språk för kravspecifikation, skräddarsytt för inbyggda system, baserat på begränsat naturligt språk; (ii) ett formellt tillvägagångssätt för att kontrollera konsistensen av \textit{ReSA}-specifikationer genom SAT och Ontologi; (iii) ett ramverk baserat på statistisk modellkontroll för att analysera Simulink-modeller via automatiserad omvandling till nätverk av stokastiska tidsautomater; och (iv) en resurseffektiv fördelning av feltolerant programvara med end-to-end-tidskrav och driftsäkerhetsbegränsningar genom heltals-linjär programmering och hybrid partikel-svärmoptimering. Våra föreslagna lösningar utvärderas i fall som används i fordon, såsom justerbar hastighetsbegränsare (ASL) och BBW-system från Volvo Group Trucks Technology (VGTT), och på ett motorstyrsystem från Bosch.

Place, publisher, year, edition, pages
Västerås: Mälardalen University, 2019. p. 200
Series
Mälardalen University Press Dissertations, ISSN 1651-4238 ; 291
Keywords
embedded systems design, safety critical systems, real time systems, formal method, optimization, model checking, Simulink
National Category
Electrical Engineering, Electronic Engineering, Information Engineering Embedded Systems
Research subject
Computer Science
Identifiers
urn:nbn:se:mdh:diva-43371 (URN)978-91-7485-428-2 (ISBN)
Public defence
2019-06-13, Gamma, Mälardalens högskola, Västerås, 13:15 (English)
Opponent
Supervisors
Projects
VeriSpec
Funder
Vinnova, 16335
Available from: 2019-05-08 Created: 2019-05-08 Last updated: 2019-05-17Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Authority records

Mahmud, NesredinSeceleanu, Cristina

Search in DiVA

By author/editor
Mahmud, NesredinSeceleanu, Cristina
By organisation
Embedded Systems
Embedded Systems

Search outside of DiVA

GoogleGoogle Scholar

doi
isbn
urn-nbn

Altmetric score

doi
isbn
urn-nbn
Total: 233 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • 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