Towards software architecture formalization
Autor(a) principal: | |
---|---|
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_ |
1814832940911165440 |