Skip to Main Content
With the rapid growth of networking and high-computing power, the demand of larger and more complex software systems has increased dramatically. To deal with the complexity in designing large-scale complex software systems, the concept of component-based software design has gained popularity recently. However, in pursuing a component-based approach there are obstacles to be overcome. One of them is the state-explosion problem in the formal verification of large-scale component-based systems. In this paper, we introduce a modeling mechanism and a set of heuristic rules to facilitate the verification of component-based software systems. Our heuristic techniques are much weaker than current theories useful for the compositional verification. More significantly, our technique can eliminate the interleaved behaviors caused by asynchronously sending actions. Therefore, our technique provides a much more powerful means for the compositional verification of asynchronous processes. Our technique can efficiently analyze several state-based properties: deadlock, reachable, and livelock state. The experimental results show a significant improvement in the analysis of large-scale component-based systems.