Modeling Distributed Software Systems with Object Coordination Nets (bibtex)
by , ,
Abstract:
A dedicated approach for the design and development of distributed software systems is outlined. The method may be used in combination with any standard object-oriented analysis and design method as far as static aspects are concerned. Dynamic aspects like the external behavior of distributed components, the status of services or resource handling, however, play the key role in distributed systems. The main contribution of the approach is to put its focus on these aspects right from the beginning of a design. - Information from static modeling is used to define the responsibilities for coordinating a system: classes coordinate their aggregates and explicit coordination objects are introduced to handle more complex relationships in order to prevent from introducing complex implicit (third-party carried) interdependencies between different parts of a system. - Interfaces of components extend the common signature specification by behavioral contracts consisting of pre/post-conditions as well as externally significant states and state-changes induced by service usage. - Services offered by an object via an interface are assumed to execute arbitrary in parallel a priori but may be restricted due to logical or resource dependencies. A new formalism based on extended Petri-Nets – so called Object Coordination Nets OCoNs – is used to describe the coordination of the behavior of a class on a per service (method) basis, the allocation of object resources as well as behavioral contracts. Integration with a standard sequential object-oriented language like C++ or Java or, e.g., the IDL of CORBA for a multi-platform application, is used to organize method nets in a class context which provides a type system for the nets as well. In contrast to the notations like UML normally used in design, OCoN s have a clear formal semantics which permits their usage for simulation, analysis as well as (skeleton) code generation. The paper discusses the rationale behind the key points of the OCoN approach, introduces the method and illustrates it by means of an extended example.
Reference:
Modeling Distributed Software Systems with Object Coordination Nets (Holger Giese, Jörg Graf, Guido Wirtz), In Int. Symposium on Software Engineering for Parallel and Distributed Systems (PDSE'98), Kyoto, Japan (Bernd Krämer, Naoshi Uchihira, Peter Croll, Stefano Russo, eds.), IEEE Press, 1998.
Bibtex Entry:
@InProceedings{Giese+1998,
AUTHOR = {Giese, Holger and Graf, Jörg and Wirtz, Guido},
TITLE = {{Modeling Distributed Software Systems with Object Coordination Nets}},
YEAR = {1998},
MONTH = {July},
BOOKTITLE = {Int. Symposium on Software Engineering for Parallel and Distributed Systems (PDSE'98), Kyoto, Japan},
PAGES = {107-116},
EDITOR = {Krämer, Bernd and Uchihira, Naoshi and Croll, Peter and Russo, Stefano},
PUBLISHER = {IEEE Press},
ABSTRACT = {A dedicated approach for the design and development of distributed software systems is outlined. The method may be used in combination with any standard object-oriented analysis and design method as far as static aspects are concerned. Dynamic aspects like the external behavior of distributed components, the status of services or resource handling, however, play the key role in distributed systems. The main contribution of the approach is to put its focus on these aspects right from the beginning of a design. - Information from static modeling is used to define the responsibilities for coordinating a system: classes coordinate their aggregates and explicit coordination objects are introduced to handle more complex relationships in order to prevent from introducing complex implicit (third-party carried) interdependencies between different parts of a system. - Interfaces of components extend the common signature specification by behavioral contracts consisting of pre/post-conditions as well as externally significant states and state-changes induced by service usage. - Services offered by an object via an interface are assumed to execute arbitrary in parallel a priori but may be restricted due to logical or resource dependencies. A new formalism based on extended Petri-Nets -- so called Object Coordination Nets OCoNs -- is used to describe the coordination of the behavior of a class on a per service (method) basis, the allocation of object resources as well as behavioral contracts. Integration with a standard sequential object-oriented language like C++ or Java or, e.g., the IDL of CORBA for a multi-platform application, is used to organize method nets in a class context which provides a type system for the nets as well. In contrast to the notations like UML normally used in design, OCoN s have a clear formal semantics which permits their usage for simulation, analysis as well as (skeleton) code generation. The paper discusses the rationale behind the key points of the OCoN approach, introduces the method and illustrates it by means of an extended example.}
}
Powered by bibtexbrowser