Abstract

Software architectural style is one of the best concepts to define a family of related architectures and their common properties. Despite the essential role of software architectures in the software engineering practice, the lack of formal description and analysis may hamper the quality of designed models. Hence, using proper formal languages seems necessary for architectural style description. In this case, it is possible to use model checking to verify the designed models automatically. However, the model checking of complex software systems suffers from the state space explosion problem. To handle this problem, data mining techniques may contribute to obtain the required knowledge for intelligent model checking i.e. searching only a portion of the state space. In this paper, to check the model of complex software systems which are designed according to an architectural style, an efficient approach is proposed using data mining techniques. These software systems must be specified through architectural styles and modeled by Graph Transformation Systems (GTS) formally. In the proposed approach, to check a large model based on a specific style intelligently, a specific knowledge is required. Such knowledge is acquired from mining the data of checking a smaller model consistent with the same style. These smaller models can be designed either by the designers or can be automatically generated consistent with the style. The proposed solution can be used to verify the reachability property and to refute the safety and liveness properties. This solution is implemented in GROOVE, a toolset for designing and model checking of graph transformation systems. The experimental results show that our method is faster and more accurate in comparison with the existing techniques in model checking of complex software systems.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call