{"title":"Modeling and verification of software evolution using bigraphical reactive system","authors":"Nisha Pal, Dharmendra Kumar Yadav","doi":"10.1007/s10586-024-04597-y","DOIUrl":null,"url":null,"abstract":"<p>Changes are inevitable in software due to technology advancements, and changes in business requirements. Making changes in the software by insertion, deletion or modification of new code may lead to malfunctioning of the old code. Hence, there is a need for a priori analysis to ensure and capture these types of changes to run the software smoothly. Making changes in the software while it is in use is called dynamic evolution. Due to the lack of formal modeling and verification, this dynamic evolution process of software systems has not become prominent. Hence, we used the bigraphical reactive system (BRS) technique to ensure that changes do not break the software functionality (adversely affect the system). BRS provides a powerful framework for modeling, analyzing, and verifying the dynamic evolution of software systems, resulting in ensuring the reliability and correctness of evolving software system. In this paper, we proposed a formal method technique for modeling and verifying the dynamic evolution process (changing user requirements at run time) using the BRS. We used a bigraph to model software architectures and described the evolution rules for supporting the dynamic changes of the software system. Finally, we have used the BigMC model checker tool to validate this model with its properties and provide associated verification procedures.</p>","PeriodicalId":501576,"journal":{"name":"Cluster Computing","volume":"40 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Cluster Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1007/s10586-024-04597-y","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Changes are inevitable in software due to technology advancements, and changes in business requirements. Making changes in the software by insertion, deletion or modification of new code may lead to malfunctioning of the old code. Hence, there is a need for a priori analysis to ensure and capture these types of changes to run the software smoothly. Making changes in the software while it is in use is called dynamic evolution. Due to the lack of formal modeling and verification, this dynamic evolution process of software systems has not become prominent. Hence, we used the bigraphical reactive system (BRS) technique to ensure that changes do not break the software functionality (adversely affect the system). BRS provides a powerful framework for modeling, analyzing, and verifying the dynamic evolution of software systems, resulting in ensuring the reliability and correctness of evolving software system. In this paper, we proposed a formal method technique for modeling and verifying the dynamic evolution process (changing user requirements at run time) using the BRS. We used a bigraph to model software architectures and described the evolution rules for supporting the dynamic changes of the software system. Finally, we have used the BigMC model checker tool to validate this model with its properties and provide associated verification procedures.