Quarterly Technical Status Report: Architecture-based Adaptation of Complex Systems (Rainbow)
Agreement/Contract Number: F30602-00-2-0616
For the period of: October—December 2000
David Garlan, Principal Investigator
School of Computer Science, Carnegie Mellon University
5000 Forbes Ave
Pittsburgh, PA 15213
Voice: 412-268-5057
FAX: 412-268-5576
Faculty:
David Garlan
Peter Steenkiste
Bradley Schmerl
Graduate Students:
Bridget Spitznagel
Owen Cheng
Jichuan Chang
Jianing Hu
Ningning Hu
Staff:
Nancy Miller
Bridget Spitznagel worked out an example of composing two (non-independent) uses of connector transformations to produce a more dependable (or fault tolerant) connector:
Through mid-october she had been working on a simple classification scheme for categorizing connector-related dependability techniques (techniques that are commonly used to enhance dependability of software systems). The reason for this excursion was to select a small collection of dependability techniques that differ in the type of fault they address, and that also seem likely to exercise a variety of connector transformations (the classification was used to make a prediction of transformations used though it has not been entirely accurate). Two pairs of dependability techniques were used initially as examples, and Bridget determined how one could construct each of the four individual modifications using connector transformations, and how to compose a pair of modifications that needed to cooperate. She extended a tool she had previously written (that generated implementations of some connector transformations applied to Java RMI based connectors) so that it would support all of the required transformations and tried it out on one of the example pairs.
Owen Cheng’s research for this period was based on the paper, "Reconciling the Needs of Architecture Description with Object-Modeling Notations", by David Garlan, Andrew Kompanek and Pedro Pinto. Because the Unified Modeling Language (UML) is a widely used object-oriented design standard, enabling the translation of Acme descriptions to models in UML becomes important for object-oriented designers who also wish to benefit from the strengths of architectural descriptions. The ultimate goal of this project is to develop a tool to automate this translation of Acme to UML. Facilitating the translation of architectural designs to object-oriented models would encourage the use of architectural designs and benefit the software design community.
The current focus of this work is to identify and resolve the feasibilities and ambiguities in syntactic and semantic mappings between Acme and UML. During this period, my work involved gaining a better understanding of Acme, the UML Real-time profile, and relevant details of UML itself; identifying issues and difficulties in the mappings; narrowing down the mapping targets to some of the core architectural elements (components, connectors, ports, roles); and establishing a first approximate of mapping between elements of Acme, UML-RT, and UML.
To familiarize himself with Remos, Ningning Hu worked on locating a memory-leak problem inside the Remos modeler. Subsequent to this, he worked on an application utilizing Remos designed to discover the accuracy of the information produced by Remos. A future concern of this work is to ascertain how applications use Remos to modify themselves, with a focus on modeling the architectural change. This will be used as a starting point for considering operations to add to Acme to facilitate dynamic change. Also under consideration is how to integrate Remos with the probe infrastructure developed by the Runtime Infrastructure Working Group.
Jichaun Chang has been investigating adaptive architectural styles. As a case study, he has been analyzing the Workspace style proposed by Nicholas Graham of Queens University in Canada. Our approach is to study adaptive styles by modeling them in Acme, and find out how to effectively support modeling the dynamic change of the representation of such styles/systems. Using this and other simple adaptive examples, we are aiming to develop a general design with repair mechanism by first implementing the application-specific adaptation rules by hand.
Bradley Schmerl prepared AcmeStudio for a new release, fixing numerous bugs, and was involved with David Garlan in the development of xArch (see next section). In addition to this, they have been involved with the Open Group. The Open Group is a standards organization that, among other things, promotes standards for modeling and developing Enterprise Architectures. The Open Group has picked up an earlier effort by MCC to develop an XML-based representation for specifying architectures, called ADML, and this representation was based on Acme (but without constraints). The main purpose of ADML is for tool interoperability. Bradley and David have met with members of the Open Group numerous times in the last quarter, and plan to integrate the efforts in developing xArch with developing a new version of ADML.
¨ Announced, jointly with University of California, Irvine (UCI), the release of xArch, an XML representation for a common architectural structural core, hosted at UCI.
¨ Released a new version of AcmeStudio
¨ Garlan and Schmerl met with John Paul Parker and Chuck Hastings of Veridian/PSR to discuss the use of AcmeLib in Venice.
¨ Garlan and Schmerl collaborated with Andre van der Hoek, Dick Taylor and Eric Dashofy of UCI, to produce the xArch XML representation.
¨ Garlan hosted a meeting with John Spencer of the Open Group to discuss the future of ADML and Acme.
¨ We met with Nicholas Graham and Greg Phillips of Queens University in Canada to discuss the use of their Workspace architectural style as a case study for dynamic adaptation.
"Reconciling the Needs of
Architectural Description with Object-Modeling Notations," David Garlan
and Andrew Kompanek. Accepted for the Third International Conference on the
Unified Modeling Language - << UML >> 2000, York, UK, October 2000.
"Modeling of Architectures with UML," David Garlan , John Knapman , Birger Møller-Pedersen , Bran Selic, and Thomas Weigert. Accepted for the Third International Conference on the Unified Modeling Language - << UML >> 2000, York, UK, October 2000.
"Model Checking Implicit Invocation Systems," David Garlan and Serge Khersonsky. Accepted to the International Workshop on Software Specification and Design, San Diego, CA, November 2000.
“Pervasive Computing and the Future of CSCW Systems,” Workshop on Software Architectures for Cooperative Systems, CSCW2000, Philadelphia, PA, December 1, 2000.
”Documenting Software Architectures: Recommendations
for Industrial Practice,” João Pedro Sousa and David Garlan, Carnegie Mellon
University, School of Computer Science Technical Report CMU-CS-00-169, October
2000.
Schmerl, Chang and Sousa attended the Workshop on Software Architectures for Cooperative Systems, Philadelphia, December 1, 2000.
Schmerl attended the Architecture Forum of the Open Group Conference in Washington DC, November 2000.
Garlan and Schmerl met with John Paul Parker and Chuck Hastings of Veridian/PSR in Washington DC, November 2000.
·
Release Acme extensions to xArch
·
Continue collaboration with Veridian/PSR to migrate
Venice to use Acme
·
Begin collaboration with CMU/Impact
·
Begin collaboration with Gail Kaiser, to supply
run-time Acme support
·
Continue integration of Remos with Acme tools
·
Work with the Gauges Infrastructure and Resource
Constrained working groups
·
Continue collaboration with OMG aimed at developing a
UML architecture extensions