Abstract

Scalability of software engineering methods can be improved by application of the methods to individual components instead of complete systems. This is, however, possible only if a model of interaction between each component and its environment (rest of the system) is available. Since constructing formal models of interaction by hand is hard and tedious, techniques and tools for automated inference of the models from code are needed.We present a technique for automated extraction of models of component-environment interaction from multi-threaded software systems implemented in Java, which is based on state space traversal. Models are captured in the formalism of behavior protocols, which allows to express parallel behavior explicitly. Java PathFinder is used to perform the state space traversal. We have implemented the technique in the Java2BP tool and applied the tool on two non-trivial software systems to show that our approach is feasible.

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