Specifying and Verifying Collaborative Behavior in Component-Based Systems

dc.contributor.authorYilmaz, Leventen
dc.contributor.committeechairEdwards, Stephen H.en
dc.contributor.committeememberRavindran, Binoyen
dc.contributor.committeememberNance, Richard E.en
dc.contributor.committeememberNespor, Jan K.en
dc.contributor.committeememberArthur, James D.en
dc.contributor.departmentComputer Scienceen
dc.date.accessioned2014-03-14T20:08:29Zen
dc.date.adate2002-04-03en
dc.date.available2014-03-14T20:08:29Zen
dc.date.issued2002-03-13en
dc.date.rdate2003-04-03en
dc.date.sdate2002-03-25en
dc.description.abstractIn a parameterized collaboration design, one views software as a collection of components that play specific roles in interacting, giving rise to collaborative behavior. From this perspective, collaboration designs revolve around reusing collaborations that typify certain design patterns. Unfortunately, verifying that active, concurrently executing components obey the synchronization and communication requirements needed for the collaboration to work is a serious problem. At least two major complications arise in concurrent settings: (1) it may not be possible to analytically identify components that violate the synchronization constraints required by a collaboration, and (2) evolving participants in a collaboration independently often gives rise to unanticipated synchronization conflicts. This work presents a solution technique that addresses both of these problems. Local (that is, role-to-role) synchronization consistency conditions are formalized and associated decidable inference mechanisms are developed to determine mutual compatibility and safe refinement of synchronization behavior. More specifically, given generic parameterized collaborations and components with specific roles, mutual compatibility analysis verifies that the provided and required synchronization models are consistent and integrate correctly. Safe refinement, on the other hand, guarantees that the local synchronization behavior is maintained consistently as the roles and the collaboration are refined during development. This form of local consistency is necessary, but insufficient to guarantee a consistent collaboration overall. As a result, a new notion of global consistency (that is, among multiple components playing multiple roles) is introduced: causal process constraint analysis. A method for capturing, constraining, and analyzing global causal processes, which arise due to causal interference and interaction of components, is presented. Principally, the method allows one to: (1) represent the intended causal processes in terms of interactions depicted in UML collaboration graphs; (2) formulate constraints on such interactions and their evolution; and (3) check that the causal process constraints are satisfied by the observed behavior of the component(s) at run-time.en
dc.description.degreePh. D.en
dc.identifier.otheretd-03252002-121049en
dc.identifier.sourceurlhttp://scholar.lib.vt.edu/theses/available/etd-03252002-121049/en
dc.identifier.urihttp://hdl.handle.net/10919/26494en
dc.publisherVirginia Techen
dc.relation.haspartDissertation.pdfen
dc.rightsIn Copyrighten
dc.rights.urihttp://rightsstatements.org/vocab/InC/1.0/en
dc.subjectcomponent-baseden
dc.subjectverificationen
dc.subjectvalidationen
dc.subjectreuseen
dc.subjectcollaborative behavioren
dc.subjecttestingen
dc.titleSpecifying and Verifying Collaborative Behavior in Component-Based Systemsen
dc.typeDissertationen
thesis.degree.disciplineComputer Scienceen
thesis.degree.grantorVirginia Polytechnic Institute and State Universityen
thesis.degree.leveldoctoralen
thesis.degree.namePh. D.en

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Dissertation.pdf
Size:
1.25 MB
Format:
Adobe Portable Document Format