Cargando…

Technique for Early Reliability Prediction of Software Components Using Behaviour Models

Behaviour models are the most commonly used input for predicting the reliability of a software system at the early design stage. A component behaviour model reveals the structure and behaviour of the component during the execution of system-level functionalities. There are various challenges related...

Descripción completa

Detalles Bibliográficos
Autores principales: Ali, Awad, N. A. Jawawi, Dayang, Adham Isa, Mohd, Imran Babar, Muhammad
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Public Library of Science 2016
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5036808/
https://www.ncbi.nlm.nih.gov/pubmed/27668748
http://dx.doi.org/10.1371/journal.pone.0163346
_version_ 1782455627944034304
author Ali, Awad
N. A. Jawawi, Dayang
Adham Isa, Mohd
Imran Babar, Muhammad
author_facet Ali, Awad
N. A. Jawawi, Dayang
Adham Isa, Mohd
Imran Babar, Muhammad
author_sort Ali, Awad
collection PubMed
description Behaviour models are the most commonly used input for predicting the reliability of a software system at the early design stage. A component behaviour model reveals the structure and behaviour of the component during the execution of system-level functionalities. There are various challenges related to component reliability prediction at the early design stage based on behaviour models. For example, most of the current reliability techniques do not provide fine-grained sequential behaviour models of individual components and fail to consider the loop entry and exit points in the reliability computation. Moreover, some of the current techniques do not tackle the problem of operational data unavailability and the lack of analysis results that can be valuable for software architects at the early design stage. This paper proposes a reliability prediction technique that, pragmatically, synthesizes system behaviour in the form of a state machine, given a set of scenarios and corresponding constraints as input. The state machine is utilized as a base for generating the component-relevant operational data. The state machine is also used as a source for identifying the nodes and edges of a component probabilistic dependency graph (CPDG). Based on the CPDG, a stack-based algorithm is used to compute the reliability. The proposed technique is evaluated by a comparison with existing techniques and the application of sensitivity analysis to a robotic wheelchair system as a case study. The results indicate that the proposed technique is more relevant at the early design stage compared to existing works, and can provide a more realistic and meaningful prediction.
format Online
Article
Text
id pubmed-5036808
institution National Center for Biotechnology Information
language English
publishDate 2016
publisher Public Library of Science
record_format MEDLINE/PubMed
spelling pubmed-50368082016-10-27 Technique for Early Reliability Prediction of Software Components Using Behaviour Models Ali, Awad N. A. Jawawi, Dayang Adham Isa, Mohd Imran Babar, Muhammad PLoS One Research Article Behaviour models are the most commonly used input for predicting the reliability of a software system at the early design stage. A component behaviour model reveals the structure and behaviour of the component during the execution of system-level functionalities. There are various challenges related to component reliability prediction at the early design stage based on behaviour models. For example, most of the current reliability techniques do not provide fine-grained sequential behaviour models of individual components and fail to consider the loop entry and exit points in the reliability computation. Moreover, some of the current techniques do not tackle the problem of operational data unavailability and the lack of analysis results that can be valuable for software architects at the early design stage. This paper proposes a reliability prediction technique that, pragmatically, synthesizes system behaviour in the form of a state machine, given a set of scenarios and corresponding constraints as input. The state machine is utilized as a base for generating the component-relevant operational data. The state machine is also used as a source for identifying the nodes and edges of a component probabilistic dependency graph (CPDG). Based on the CPDG, a stack-based algorithm is used to compute the reliability. The proposed technique is evaluated by a comparison with existing techniques and the application of sensitivity analysis to a robotic wheelchair system as a case study. The results indicate that the proposed technique is more relevant at the early design stage compared to existing works, and can provide a more realistic and meaningful prediction. Public Library of Science 2016-09-26 /pmc/articles/PMC5036808/ /pubmed/27668748 http://dx.doi.org/10.1371/journal.pone.0163346 Text en © 2016 Ali et al http://creativecommons.org/licenses/by/4.0/ This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
spellingShingle Research Article
Ali, Awad
N. A. Jawawi, Dayang
Adham Isa, Mohd
Imran Babar, Muhammad
Technique for Early Reliability Prediction of Software Components Using Behaviour Models
title Technique for Early Reliability Prediction of Software Components Using Behaviour Models
title_full Technique for Early Reliability Prediction of Software Components Using Behaviour Models
title_fullStr Technique for Early Reliability Prediction of Software Components Using Behaviour Models
title_full_unstemmed Technique for Early Reliability Prediction of Software Components Using Behaviour Models
title_short Technique for Early Reliability Prediction of Software Components Using Behaviour Models
title_sort technique for early reliability prediction of software components using behaviour models
topic Research Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5036808/
https://www.ncbi.nlm.nih.gov/pubmed/27668748
http://dx.doi.org/10.1371/journal.pone.0163346
work_keys_str_mv AT aliawad techniqueforearlyreliabilitypredictionofsoftwarecomponentsusingbehaviourmodels
AT najawawidayang techniqueforearlyreliabilitypredictionofsoftwarecomponentsusingbehaviourmodels
AT adhamisamohd techniqueforearlyreliabilitypredictionofsoftwarecomponentsusingbehaviourmodels
AT imranbabarmuhammad techniqueforearlyreliabilitypredictionofsoftwarecomponentsusingbehaviourmodels