Abstract: Software merging is needed at different stages of software development to combine the
artifacts created or modified by the parallel work of the different developers involved in
the project. An accurate matching approach is the key to successful software merging
as well as to conflicts identification. In this paper, a new matching approach for
Object-Oriented formal specifications is proposed. Object-Z is used as a specification
language. However, the proposed approach is meant to be applicable to a wide range
of Object-Oriented software artifacts. Merging formal requirements specifications is
motivated by the fact that it could help in identifying (and resolving) conflicts that will
cost higher to identify (and resolve) at later stages of software development. The
proposed approach incorporates heuristics for both syntactic and structural similarity.
The empirical results obtained through a prototype implementation of the proposed
approach were very encouraging.