Specifying Component Behavior with Port State Machines
Vladimir Mencl
Abstract
Open-access reader
Vladimir Mencl
Abstract
Open-access reader
Protocol State Machines (PSM) in UML 2.0 [13] describe valid sequences of operation calls.To support modeling components, UML 2.0 introduces a Port associated with a set of provided and required interfaces.Unfortunately, a PSM is applicable only to a single interface, either a provided or required one; moreover, nested calls cannot be modeled with a PSM.Furthermore, the definition of protocol conformance is rather fuzzy and reasoning on this relation is not possible in general; thus reasoning on consistency in component composition is not possible with PSMs.Behavior Protocols [17] capture the behavior of a component via a set of traces.A textual notation similar to regular expressions is provided to approximate the behavior with a regular language.In [1,17], the compliance relation and consent operator are defined to reason on consistency of component composition; a verifier tool [18] is available for the compliance relation. In this paper, we propose the Port State Machine (PoSM) to model the communication on a Port.Building on our experience with behavior protocols, we model an operation call as two atomic events request and response, permitting PoSM to capture the interleaving and nesting of operation calls on provided and required interfaces of the Port.The trace semantics of PoSM yields a regular language.We apply the compliance relation of behavior protocols to PoSMs, allowing us to reason on behavior compliance of components in software architectures; the existing verifier tool can be applied to PoSMs.
OpenAlex reports 25 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Protocol State Machines (PSM) in UML 2.0 [13] describe valid sequences of operation calls.To support modeling components, UML 2.0 introduces a Port associated with a set of provided and required interfaces.Unfortunately, a PSM is applicable only to a single interface, either a provided or required one; moreover, nested calls cannot be modeled with a PSM.Furthermore, the definition of protocol conformance is rather fuzzy and reasoning on this relation is not possible in general; thus reasoning on consistency in component composition is not possible with PSMs.Behavior Protocols [17] capture the behavior of a component via a set of traces.A textual notation similar to regular expressions is provided to approximate the behavior with a regular language.In [1,17], the compliance relation and consent operator are defined to reason on consistency of component composition; a verifier tool [18] is available for the compliance relation. In this paper, we propose the Port State Machine (PoSM) to model the communication on a Port.Building on our experience with behavior protocols, we model an operation call as two atomic events request and response, permitting PoSM to capture the interleaving and nesting of operation calls on provided and required interfaces of the Port.The trace semantics of PoSM yields a regular language.We apply the compliance relation of behavior protocols to PoSMs, allowing us to reason on behavior compliance of components in software architectures; the existing verifier tool can be applied to PoSMs.
Key concepts: Computer science, Component (thermodynamics), Programming language, Consistency (knowledge bases), Executable, Set (abstract data type), Unified Modeling Language, Interface (matter)