Towards software architecture formalization

Detalhes bibliográficos
Autor(a) principal: Dias, Fagner Morais
Data de Publicação: 2023
Tipo de documento: Trabalho de conclusão de curso
Idioma: eng
Título da fonte: Repositório Institucional da UFRN
Texto Completo: https://repositorio.ufrn.br/handle/123456789/52908
Resumo: Errors during the software development may give rise to flaws in the system that can cause important damages. One of the most important stages in the software development process is modelling the system architecture, possibly using software architecture description languages~(ADLs). The ADLs currently adopted by industry for software-intensive systems are mostly semi-formal and essentially based on SysML and specialized profiles. These ADLs allow describing the structure and the behavior of the system. Besides, it is possible to generate executable models or produce code in a target programming language and simulate its behaviour. This, however, does not constitute a proof that the system is correct or safe. This work proposes a novel approach for empowering SysML-based ADLs with formal verification tools supported by model checking. It presents a CSP-based semantics to SysADL models. Furthermore, this work presents how correctness properties can be formally specified using CSP, and how the FDR4 refinement model-checker can verify these correctness properties. Finally, we present the new extension to SysADL studio that allows the automated transformation from SysADL architecture descriptions to CSP processes and the verification of important system correctness properties. The whole approach is illustrated via a case study, which is also part of this document. This case study demonstrates the usefulness of our approach in practice.
id UFRN_7a90f7ce34ab57b864e67c07b8473da9
oai_identifier_str oai:https://repositorio.ufrn.br:123456789/52908
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Dias, Fagner Morais0000-0001-7398-8628http://lattes.cnpq.br/94577366603957180000-0002-3023-2748http://lattes.cnpq.br/1756952696097255Batista, Thais Vasconcelos0000-0003-3558-1450http://lattes.cnpq.br/5521922960404236Leite, Jair Cavalcantihttp://lattes.cnpq.br/8133660776746187Oliveira, Marcel Vinicius Medeiros2023-06-27T15:26:51Z2023-06-27T15:26:51Z2023-06-13DIAS, Fagner Morais. Towards software architecture formalization. Orientador: Marcel Vinicius Medeiros Oliveira. 2023. 75 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software) - Departamento de Informática e Matemática Aplicada, Universidade Federal do Rio Grande do Norte, Natal, 2023.https://repositorio.ufrn.br/handle/123456789/52908Errors during the software development may give rise to flaws in the system that can cause important damages. One of the most important stages in the software development process is modelling the system architecture, possibly using software architecture description languages~(ADLs). The ADLs currently adopted by industry for software-intensive systems are mostly semi-formal and essentially based on SysML and specialized profiles. These ADLs allow describing the structure and the behavior of the system. Besides, it is possible to generate executable models or produce code in a target programming language and simulate its behaviour. This, however, does not constitute a proof that the system is correct or safe. This work proposes a novel approach for empowering SysML-based ADLs with formal verification tools supported by model checking. It presents a CSP-based semantics to SysADL models. Furthermore, this work presents how correctness properties can be formally specified using CSP, and how the FDR4 refinement model-checker can verify these correctness properties. Finally, we present the new extension to SysADL studio that allows the automated transformation from SysADL architecture descriptions to CSP processes and the verification of important system correctness properties. The whole approach is illustrated via a case study, which is also part of this document. This case study demonstrates the usefulness of our approach in practice.Errors during the software development may give rise to flaws in the system that can cause important damages. One of the most important stages in the software development process is modelling the system architecture, possibly using software architecture description languages~(ADLs). The ADLs currently adopted by industry for software-intensive systems are mostly semi-formal and essentially based on SysML and specialized profiles. These ADLs allow describing the structure and the behavior of the system. Besides, it is possible to generate executable models or produce code in a target programming language and simulate its behaviour. This, however, does not constitute a proof that the system is correct or safe. This work proposes a novel approach for empowering SysML-based ADLs with formal verification tools supported by model checking. It presents a CSP-based semantics to SysADL models. Furthermore, this work presents how correctness properties can be formally specified using CSP, and how the FDR4 refinement model-checker can verify these correctness properties. Finally, we present the new extension to SysADL studio that allows the automated transformation from SysADL architecture descriptions to CSP processes and the verification of important system correctness properties. The whole approach is illustrated via a case study, which is also part of this document. This case study demonstrates the usefulness of our approach in practice.Universidade Federal do Rio Grande do NorteEngenharia de SoftwareUFRNBrasilInformática e Matemática AplicadaAttribution 3.0 Brazilhttp://creativecommons.org/licenses/by/3.0/br/info:eu-repo/semantics/openAccessSoftware architecture descriptionFormal verificationCSPSysADLDescrição de arquitetura de softwareVerificação formalTowards software architecture formalizationTowards software architecture formalizationinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisengreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALTowardsSoftwareArchitectureFormalization_Dias_2023.pdfTowardsSoftwareArchitectureFormalization_Dias_2023.pdfapplication/pdf4898673https://repositorio.ufrn.br/bitstream/123456789/52908/4/TowardsSoftwareArchitectureFormalization_Dias_2023.pdf148791b49ea7992e4a4c5a21937fdc36MD54LICENSElicense.txtlicense.txttext/plain; charset=utf-81484https://repositorio.ufrn.br/bitstream/123456789/52908/5/license.txte9597aa2854d128fd968be5edc8a28d9MD55CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8914https://repositorio.ufrn.br/bitstream/123456789/52908/2/license_rdf4d2950bda3d176f570a9f8b328dfbbefMD52123456789/529082023-06-27 12:26:51.544oai:https://repositorio.ufrn.br:123456789/52908Tk9OLUVYQ0xVU0lWRSBESVNUUklCVVRJT04gTElDRU5TRQoKCkJ5IHNpZ25pbmcgYW5kIGRlbGl2ZXJpbmcgdGhpcyBsaWNlbnNlLCBNci4gKGF1dGhvciBvciBjb3B5cmlnaHQgaG9sZGVyKToKCgphKSBHcmFudHMgdGhlIFVuaXZlcnNpZGFkZSBGZWRlcmFsIFJpbyBHcmFuZGUgZG8gTm9ydGUgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgb2YKcmVwcm9kdWNlLCBjb252ZXJ0IChhcyBkZWZpbmVkIGJlbG93KSwgY29tbXVuaWNhdGUgYW5kIC8gb3IKZGlzdHJpYnV0ZSB0aGUgZGVsaXZlcmVkIGRvY3VtZW50IChpbmNsdWRpbmcgYWJzdHJhY3QgLyBhYnN0cmFjdCkgaW4KZGlnaXRhbCBvciBwcmludGVkIGZvcm1hdCBhbmQgaW4gYW55IG1lZGl1bS4KCmIpIERlY2xhcmVzIHRoYXQgdGhlIGRvY3VtZW50IHN1Ym1pdHRlZCBpcyBpdHMgb3JpZ2luYWwgd29yaywgYW5kIHRoYXQKeW91IGhhdmUgdGhlIHJpZ2h0IHRvIGdyYW50IHRoZSByaWdodHMgY29udGFpbmVkIGluIHRoaXMgbGljZW5zZS4gRGVjbGFyZXMKdGhhdCB0aGUgZGVsaXZlcnkgb2YgdGhlIGRvY3VtZW50IGRvZXMgbm90IGluZnJpbmdlLCBhcyBmYXIgYXMgaXQgaXMKdGhlIHJpZ2h0cyBvZiBhbnkgb3RoZXIgcGVyc29uIG9yIGVudGl0eS4KCmMpIElmIHRoZSBkb2N1bWVudCBkZWxpdmVyZWQgY29udGFpbnMgbWF0ZXJpYWwgd2hpY2ggZG9lcyBub3QKcmlnaHRzLCBkZWNsYXJlcyB0aGF0IGl0IGhhcyBvYnRhaW5lZCBhdXRob3JpemF0aW9uIGZyb20gdGhlIGhvbGRlciBvZiB0aGUKY29weXJpZ2h0IHRvIGdyYW50IHRoZSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkbyBSaW8gR3JhbmRlIGRvIE5vcnRlIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdCB0aGlzIG1hdGVyaWFsIHdob3NlIHJpZ2h0cyBhcmUgb2YKdGhpcmQgcGFydGllcyBpcyBjbGVhcmx5IGlkZW50aWZpZWQgYW5kIHJlY29nbml6ZWQgaW4gdGhlIHRleHQgb3IKY29udGVudCBvZiB0aGUgZG9jdW1lbnQgZGVsaXZlcmVkLgoKSWYgdGhlIGRvY3VtZW50IHN1Ym1pdHRlZCBpcyBiYXNlZCBvbiBmdW5kZWQgb3Igc3VwcG9ydGVkIHdvcmsKYnkgYW5vdGhlciBpbnN0aXR1dGlvbiBvdGhlciB0aGFuIHRoZSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkbyBSaW8gR3JhbmRlIGRvIE5vcnRlLCBkZWNsYXJlcyB0aGF0IGl0IGhhcyBmdWxmaWxsZWQgYW55IG9ibGlnYXRpb25zIHJlcXVpcmVkIGJ5IHRoZSByZXNwZWN0aXZlIGFncmVlbWVudCBvciBhZ3JlZW1lbnQuCgpUaGUgVW5pdmVyc2lkYWRlIEZlZGVyYWwgZG8gUmlvIEdyYW5kZSBkbyBOb3J0ZSB3aWxsIGNsZWFybHkgaWRlbnRpZnkgaXRzIG5hbWUgKHMpIGFzIHRoZSBhdXRob3IgKHMpIG9yIGhvbGRlciAocykgb2YgdGhlIGRvY3VtZW50J3MgcmlnaHRzCmRlbGl2ZXJlZCwgYW5kIHdpbGwgbm90IG1ha2UgYW55IGNoYW5nZXMsIG90aGVyIHRoYW4gdGhvc2UgcGVybWl0dGVkIGJ5CnRoaXMgbGljZW5zZQo=Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2023-06-27T15:26:51Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.pt_BR.fl_str_mv Towards software architecture formalization
dc.title.alternative.pt_BR.fl_str_mv Towards software architecture formalization
title Towards software architecture formalization
spellingShingle Towards software architecture formalization
Dias, Fagner Morais
Software architecture description
Formal verification
CSP
SysADL
Descrição de arquitetura de software
Verificação formal
title_short Towards software architecture formalization
title_full Towards software architecture formalization
title_fullStr Towards software architecture formalization
title_full_unstemmed Towards software architecture formalization
title_sort Towards software architecture formalization
author Dias, Fagner Morais
author_facet Dias, Fagner Morais
author_role author
dc.contributor.authorID.pt_BR.fl_str_mv 0000-0001-7398-8628
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/9457736660395718
dc.contributor.advisorID.pt_BR.fl_str_mv 0000-0002-3023-2748
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/1756952696097255
dc.contributor.referees1.none.fl_str_mv Batista, Thais Vasconcelos
dc.contributor.referees1ID.pt_BR.fl_str_mv 0000-0003-3558-1450
dc.contributor.referees1Lattes.pt_BR.fl_str_mv http://lattes.cnpq.br/5521922960404236
dc.contributor.referees2.none.fl_str_mv Leite, Jair Cavalcanti
dc.contributor.referees2Lattes.pt_BR.fl_str_mv http://lattes.cnpq.br/8133660776746187
dc.contributor.author.fl_str_mv Dias, Fagner Morais
dc.contributor.advisor1.fl_str_mv Oliveira, Marcel Vinicius Medeiros
contributor_str_mv Oliveira, Marcel Vinicius Medeiros
dc.subject.por.fl_str_mv Software architecture description
Formal verification
CSP
SysADL
Descrição de arquitetura de software
Verificação formal
topic Software architecture description
Formal verification
CSP
SysADL
Descrição de arquitetura de software
Verificação formal
description Errors during the software development may give rise to flaws in the system that can cause important damages. One of the most important stages in the software development process is modelling the system architecture, possibly using software architecture description languages~(ADLs). The ADLs currently adopted by industry for software-intensive systems are mostly semi-formal and essentially based on SysML and specialized profiles. These ADLs allow describing the structure and the behavior of the system. Besides, it is possible to generate executable models or produce code in a target programming language and simulate its behaviour. This, however, does not constitute a proof that the system is correct or safe. This work proposes a novel approach for empowering SysML-based ADLs with formal verification tools supported by model checking. It presents a CSP-based semantics to SysADL models. Furthermore, this work presents how correctness properties can be formally specified using CSP, and how the FDR4 refinement model-checker can verify these correctness properties. Finally, we present the new extension to SysADL studio that allows the automated transformation from SysADL architecture descriptions to CSP processes and the verification of important system correctness properties. The whole approach is illustrated via a case study, which is also part of this document. This case study demonstrates the usefulness of our approach in practice.
publishDate 2023
dc.date.accessioned.fl_str_mv 2023-06-27T15:26:51Z
dc.date.available.fl_str_mv 2023-06-27T15:26:51Z
dc.date.issued.fl_str_mv 2023-06-13
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv DIAS, Fagner Morais. Towards software architecture formalization. Orientador: Marcel Vinicius Medeiros Oliveira. 2023. 75 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software) - Departamento de Informática e Matemática Aplicada, Universidade Federal do Rio Grande do Norte, Natal, 2023.
dc.identifier.uri.fl_str_mv https://repositorio.ufrn.br/handle/123456789/52908
identifier_str_mv DIAS, Fagner Morais. Towards software architecture formalization. Orientador: Marcel Vinicius Medeiros Oliveira. 2023. 75 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software) - Departamento de Informática e Matemática Aplicada, Universidade Federal do Rio Grande do Norte, Natal, 2023.
url https://repositorio.ufrn.br/handle/123456789/52908
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv Attribution 3.0 Brazil
http://creativecommons.org/licenses/by/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution 3.0 Brazil
http://creativecommons.org/licenses/by/3.0/br/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal do Rio Grande do Norte
dc.publisher.program.fl_str_mv Engenharia de Software
dc.publisher.initials.fl_str_mv UFRN
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Informática e Matemática Aplicada
publisher.none.fl_str_mv Universidade Federal do Rio Grande do Norte
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFRN
instname:Universidade Federal do Rio Grande do Norte (UFRN)
instacron:UFRN
instname_str Universidade Federal do Rio Grande do Norte (UFRN)
instacron_str UFRN
institution UFRN
reponame_str Repositório Institucional da UFRN
collection Repositório Institucional da UFRN
bitstream.url.fl_str_mv https://repositorio.ufrn.br/bitstream/123456789/52908/4/TowardsSoftwareArchitectureFormalization_Dias_2023.pdf
https://repositorio.ufrn.br/bitstream/123456789/52908/5/license.txt
https://repositorio.ufrn.br/bitstream/123456789/52908/2/license_rdf
bitstream.checksum.fl_str_mv 148791b49ea7992e4a4c5a21937fdc36
e9597aa2854d128fd968be5edc8a28d9
4d2950bda3d176f570a9f8b328dfbbef
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)
repository.mail.fl_str_mv
_version_ 1802117790899896320