mdh.sePublications
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
Design of Assured and Efficient Safety-critical Systems
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Mälardalen University. (Formal Modeling and Analysis of Embedded Systems)ORCID iD: 0000-0002-5626-0587
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 [en]
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: urn:nbn:se:mdh:diva-43371ISBN: 978-91-7485-428-2 (print)OAI: oai:DiVA.org:mdh-43371DiVA, id: diva2:1314418
Public defence
2019-06-13, Gamma, Mälardalens högskola, Västerås, 13:15 (English)
Opponent
Supervisors
Projects
VeriSpec
Funder
Vinnova, 16335Available from: 2019-05-08 Created: 2019-05-08 Last updated: 2019-05-17Bibliographically approved
List of papers
1. ReSA: An Ontology-based Requirement Specification Language Tailored to Automotive Systems
Open this publication in new window or tab >>ReSA: An Ontology-based Requirement Specification Language Tailored to Automotive Systems
2015 (English)In: 2015 10th IEEE International Symposium on Industrial Embedded Systems (SIES), 2015, p. 1-10Conference paper, Published paper (Refereed)
Abstract [en]

Automotive systems are developed using multi-leveled architectural abstractions in an attempt to manage the increasing complexity and criticality of automotive functions. Consequently, well-structured and unambiguously specified requirements are needed on all levels of abstraction, in order to enable early detection of possible design errors. However, automotive industry often relies on requirements specified in ambiguous natural language, sometimes in large and incomprehensible documents. Semi-formal requirements specification approaches (e.g., requirement boilerplates, pattern-based specifications, etc.) aim to reduce requirements ambiguity, without altering their readability and expressiveness. Nevertheless, such approaches do not offer support for specifying requirements in terms of multileveled architectural concepts, nor do they provide means for early-stage rigorous analysis of the specified requirements. In this paper, we propose a language, called ReSA, which allows requirements specification at various levels of abstraction, modeled in the architectural language of EAST-ADL. ReSA uses an automotive systems’ ontology that offers typing and syntactic axioms for the specification. Besides enforcing structure and more rigor in specifying requirements, our approach enables checking refinement as well as consistency of requirements, by proving ordinary boolean implications. To illustrate ReSA’s applicability, we show how to specify some requirements of the Adjustable Speed Limiter, which is a complex, safety-critical Volvo Trucks user function.

Keywords
automotive systems, requirements specification, boilerplates, ontology
National Category
Engineering and Technology Computer Systems
Identifiers
urn:nbn:se:mdh:diva-29240 (URN)10.1109/SIES.2015.7185035 (DOI)000380569800001 ()2-s2.0-84959476620 (Scopus ID)978-1-4673-7711-9 (ISBN)
External cooperation:
Conference
10th IEEE International Symposium on Industrial Embedded Systems SIES'15, 8-10 Jun 2015, Siegen, Germany
Projects
VeriSpec - Structured Specification and Automated Verification for Automotive Functional Safety
Available from: 2015-10-06 Created: 2015-09-29 Last updated: 2019-05-08Bibliographically approved
2. ReSA Tool: Structured requirements specification and SAT-based consistency checking
Open this publication in new window or tab >>ReSA Tool: Structured requirements specification and SAT-based consistency checking
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.

Series
2016 Federated Conference on Computer Science and Information Systems (FedCSIS
Keywords
requirements specification, consistency checking, formal methods, embedded systems, automotive systems, software tool
National Category
Embedded Systems
Research subject
Computer Science
Identifiers
urn:nbn:se:mdh:diva-34005 (URN)10.15439/2016F404 (DOI)000392436600246 ()2-s2.0-85007240246 (Scopus ID)978-8-3608-1090-3 (ISBN)
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, 16335
Available from: 2016-11-29 Created: 2016-11-29 Last updated: 2019-05-08Bibliographically approved
3. Semantic Analysis of Embedded System Requirements Specifications
Open this publication in new window or tab >>Semantic Analysis of Embedded System Requirements Specifications
2017 (English)Report (Other academic)
Abstract [en]

Due to the increasing complexity of embedded systems, early detection of soft- ware/hardware errors has become desirable. In this context, e ective yet exible speci cation methods that support rigorous analysis of embedded system requirements are needed. Current speci cation methods such as pattern-based, boilerplates normally lack meta-models for exten- sibility and exibility. In contrast, formal speci cation languages, e.g., temporal logic, Z, etc. are too mathematical to be used by the average software engineer in industry. In this paper, we propose a speci cation representation that considers thematic roles and domain knowledge that enable a deep semantic analysis of requirements. The speci cation is complemented by our constrained natural language speci cation framework, ReSA, which acts as interface to the representation. The representation that we propose is encoded in the logic-based, usually de- cidable ontology language called Description Logic. With support from the ontology reasoner, Hermit, we check for consistency and completeness of requirements. Moreover, we transform the ontology-based speci cation into Timed Computation Tree Logic formulas, to be used further in model checking system behavioral models.

Place, publisher, year, edition, pages
Västerås, Sweden: Mälardalen Real-Time Research Centre, Mälardalen University, 2017
Series
MRTC Reports, ISSN 1404-3041
Keywords
requirements specification, requirements analysis, semantics representation, event-based semantics, ontology, description logic, temporal logic
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-35390 (URN)MDH-MRTC-320/2017-1-SE (ISRN)
Projects
VeriSpec - Structured Specification and Automated Verification for Automotive Functional Safety
Available from: 2017-05-24 Created: 2017-05-24 Last updated: 2019-05-08Bibliographically approved
4. Simulink to UPPAAL Statistical Model Checker: Analyzing Automotive Industrial Systems
Open this publication in new window or tab >>Simulink to UPPAAL Statistical Model Checker: Analyzing Automotive Industrial Systems
Show others...
2016 (English)In: FM 2016: Formal Methods, 2016, p. 748-756Conference paper, Published paper (Refereed)
Abstract [en]

The advanced technology used for developing modern automotive systems increases their complexity, making their correctness assurance very tedious. To enable analysis, but also enhance understanding and communication, by simulation, engineers use MATLAB/Simulink modeling during system development. In this paper, we provide further analysis means to industrial Simulink models by proposing a pattern-based, execution-order preserving transformation of Simulink blocks into the input language of UPPAAL Statistical Model checker, that is, timed (hybrid) automata with stochastic semantics. The approach leads to being able to analyze complex Simulink models of automotive systems, and we report our experience with two vehicular systems, the Brake-by-Wire and the Adjustable Speed Limiter.

Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 9995
National Category
Electrical Engineering, Electronic Engineering, Information Engineering
Identifiers
urn:nbn:se:mdh:diva-33822 (URN)10.1007/978-3-319-48989-6_46 (DOI)000389793300046 ()2-s2.0-84996523483 (Scopus ID)978-3-319-48989-6 (ISBN)
Conference
21st International Symposium on Formal Methods FM2016, 09 Nov 2016, Limassol, Cyprus
Projects
VeriSpec - Structured Specification and Automated Verification for Automotive Functional Safety
Available from: 2016-11-21 Created: 2016-11-21 Last updated: 2019-05-08Bibliographically approved
5. Analyzing Industrial Simulink Models by Statistical Model Checking
Open this publication in new window or tab >>Analyzing Industrial Simulink Models by Statistical Model Checking
Show others...
2017 (English)Report (Other academic)
Abstract [en]

The evolution of automotive systems has been rapid. Nowadays, electronic brains control dozens of functions in vehicles, like braking, cruising, etc. Model-based design approaches, in environments such as MATLAB Simulink, seem to help in addressing the ever-increasing need to enhance quality, and manage complexity, by supporting functional design from predefined block libraries, which can be simulated and analyzed for hidden errors, but also used for code generation. For this reason, providing assurance that Simulink models fulfill given functional and timing requirements is desirable. In this paper, we propose a pattern-based, execution-order preserving automatic transformation of Simulink atomic and composite blocks into stochastic timed automata that can then be analyzed formally with UPPAAL Statistical Model Checker (UPPPAAL SMC). Our method is supported by the tool SIMPPAAL, which we also introduce and apply on an industrial prototype called the Brake-by-Wire system. This work enables the formal analysis of industrial Simulink models, by automatically generating their semantic counterpart.

Place, publisher, year, edition, pages
Västerås, Sweden: Mälardalen Real-Time Research Centre, Mälardalen University, 2017
Series
MRTC Reports, ISSN 1404-3041
National Category
Engineering and Technology Computer Systems
Identifiers
urn:nbn:se:mdh:diva-35069 (URN)MDH-MRTC-316/2017-1-SE (ISRN)
Projects
VeriSpec - Structured Specification and Automated Verification for Automotive Functional Safety
Available from: 2017-03-27 Created: 2017-03-27 Last updated: 2019-05-08Bibliographically approved

Open Access in DiVA

fulltext(4220 kB)27 downloads
File information
File name FULLTEXT04.pdfFile size 4220 kBChecksum SHA-512
ff87bb3a32d6d275c526b2d155cf86b45c05d6a8557e1eca84bc19d263e765ed756cc059959cfe1d64363fb7341251d431b5a97c342dcedf42a67e4c48493892
Type fulltextMimetype application/pdf

Authority records BETA

Mahmud, Nesredin

Search in DiVA

By author/editor
Mahmud, Nesredin
By organisation
Embedded Systems
Electrical Engineering, Electronic Engineering, Information EngineeringEmbedded Systems

Search outside of DiVA

GoogleGoogle Scholar
Total: 27 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 211 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