Modeling and verification of compatibility of component composition
D. Craig and Zuberek, W.M.
Proc. 3rd Workshop on Modeling of Objects, Components, and Agents
(MOCA'04), Aarhus, Denmark, 1113 October 2004, pp.117130.
Abstract:
Two components are compatible if any sequence of operations requested by one
of these components can be provided by the other component. If the set of all
requested sequences is denoted by L_{R} and the set of all provided
sequences of operation by L_{P}, then the two components are compatible
if L_{R} is a subset of L_{P}. This paper uses Petri nets to
model the interface behaviors of interacting components and formally defines
the composition of components. Compatibility of components is verified by
checking if the composed models contain deadlocks. Simple examples illustrate
the proposed approach.
Keywords:
Component compatibility, component interfaces, software architecture,
componentbased software, Petri nets, deadlock detection.
References:

I. Sommerville, Software Engineering (6th ed.); AddisonWesley 2001.

G. Booch, ObjectOriented Analysis and Design with Applications
(2nd ed.); Benjamin/Cummings 1994.

N. Medvidovic and R.N. Taylor, "A framework for classifying and comparing
architecture description languages"; in Software Engineering 
ESEC/FSE'97 (Lecture Notes in Computer Science 1301); pp.6076,
SpringerVerlag 1997.

G.T. Heineman and W.T. Council, Component Based Software Engineering:
Putting the Pieces Together; AddisonWesley 2001.

W. Reisig, Petri Nets: An Introduction; SpringerVerlag 1985.

T. Murata, "Petri nets: properties, analysis and applications"; Proceedings
of the IEEE, vol.77, no.4, pp.541580, 1989.

C. Szyperski, D. Gruntz, and S. Murer, Component Software: Beyond
ObjectOriented Programming (2nd ed.); AddisonWesley 2002.

W.M.P van der Aalst, K.M. van Hee, and R.A. van der Toorn, "Componentbased
software architectures: a framework based on inheritance of behaviour";
Science of Computer Programming, vol.42, no.23, pp.129171, 2002.

S. Moschoyiannis and M.W. Shields, "Componentbased design: towards
guided composition"; Proc. Third Int. Conf. on Application of Concurrency
to System Design, pp.112131, IEEE Computer Society 2003.

R.H. Reussner, "Enhanced component interfaces to support dynamic adaption
and extension"; Proc. 34th Hawaii Int. Conf. on System Sciences, pp.19,
IEEE Computer Society 2001.

C. SibertinBlanc, "A compositional partial order semantics for Petri net
components"; in Application and Theory of Petri Nets 1993 (Lecture
Notes in Computer Science 691); pp.377396, SpringerVerlag 1993.

E. Kindler, "A compositional partial order semantics for Petri net
components"; in Application and Theory of Petri Nets 1997 (Lecture
Notes in Computer Science 1248); pp.235252, SpringerVerlag 1997.

A. Martens, "Usability of web services"; Proc. Fourth Int. Conf. on Web
Information Systems Engineering Workshops, pp.182190, IEEE Computer
Society 2003.

W.M.P van der Aalst, "Workflow verification: finding controlflow errors
using Petri netbased techniques"; in Business Process Management: Models,
Techniques, and Empircal Studies (Lecture Notes in Computer Science 1806);
pp.161183, SpringerVerlag 2000.

W.M. Zuberek, "Petri nets and timed Petri nets in modeling and analysis of
concurrent systems"; Record of the Research Forum (25th Anniversary
of the Department of Computer Science at Memorial University); St. John's,
NL, Canada A1B 3X5, 2003.

R. Fehling, "A concept of hierarchical petri nets with building blocks";
in Advances in Petri Nets 1993 (Lecture Notes in Computer Science
674); pp.148169, SpringerVerlag 1993.

D. Garland, R. Allen, and J. Ockerbloom, "Architectural mismatch: why reuse
is so hard"; IEEE Software, vol.12 no.6, pp.1726, 1995.

Z. Li and M. Zhou, "Elementary siphons of Petri nets and their application
to deadlock prevention in flexible manufacturing systems"; IEEE Trans. on
Systems, Man, and Cybernetics  Part A: Systems and Humans, vol.34, no.1,
pp.3851, 2004.

J. Ezpeleta, J.M. Couvreur, and M. Silva, "A new technique for finding a
generating family of siphons, traps and stcomponents: application to
colored petri nets""; in Advances in Petri Nets 1993 (Lecture Notes
in Computer Science 674); pp.126147, SpringerVerlag 1993.
Available in pdf.