| Friday | |
|
Is UML an Architectural Description Language? Moderator Panelists The architecture of a system defines its high-level structure as a collection of interacting components. Most architects use informal box and arrow diagrams to describe architectures. Unfortunately, informal diagrams and descriptions are highly ambiguous. Consequently, it is virtually impossible to answer with any precision the many questions that arise during system development. Recognizing the deficiencies of using ad-hoc and informal notations to describe architecture, the software engineering research community has pioneered architectural description languages (ADL). ADLs have well-defined semantics and tools for parsing, compiling etc. Industry has also realized the importance of documenting architecture. However, instead of using ADLs, industry has focussed on the UML. Today many companies are using UML for architectural description. In fact the UML developers are advocating this use and the introduction to the latest version states: "One of the key motivations in the minds of the UML developers was to create a set of semantics and notation that adequately addresses all scales of architectural complexity, across all domains." The issue facing the panel is how far have the UML developers succeeded in meeting this goal and what remains to be done. Some of the specific questions to be addressed are:
Derek Coleman leads the architectural consultancy group in Hewlett-Packards Product Generation Solutions. Derek was the lead developer of the Fusion Object-oriented Method. Grady Booch That being said, there is value in considering the merging of the UML with traditional, more formal ADLs. Such a merger might bear fruit with regard to the formal analysis of a system's architecture and the direct execution of models. Grady Booch is Chief Scientist of Rational Software, and is one of the original developers of the UML. David Garlan Once the question is framed in this way, I believe that the conclusion is that UML is not a very good architecture description language. Architectural information that one would naturally want to express, and that is easily expressible in other Architecture Description Languages, is often awkward (at best) to represent in UML. Moreover, there are few benefits that UML provides for the practicing architect to aid in analysis, effective tooling, and support for evolution. To be specific, in this panel I will argue that the aspects of architectural description that are problematic for UML include
David Garlan is an Associate Professor in the Department of Computer Science at CMU.He co-authored Software Architecture: Perspectives on an Emerging Discipline (Prentice-Hall, 1996). Sridhar Iyengar UML is being used as an architecture modeling as well as architecture definition language, not always with the expected results! The UML notation and semantics are already being used to represent key architectural styles as well as the core architecture of systems like CORBA and EJB. UML in conjunction with the OMG Meta Object Facility is being used to describe meta-modeling and software integration architectures. However, to describe these architectures precisely and more importantly to perform architectural analysis, the use UML needs to be constrained. Also if the goal of UML designers is to evolve UML to better support Architecture modeling, definition and design, the core of UML needs to be simplified and made more extensible borrowing key aspects of ADLs. Another area to improve is more precise and more intuitive mechanisms to specify component inter-connections. Sridhar Iyengar, a Unisys Fellow, leads the technology strategy for object technology products in Unisys. Sridhar represents Unisys at the OMG where he serves on the OMG Architecture Board. Cris Kobryn The many UML models that have been used to architect custom applications and commercial products, along with extensions to UML for use with ADLs such as C2 and Wright [Rob98], may be considered existence proofs that UML can function effectively as an ADL. This panel will be more productive if it discusses specific ways that UML can improve as an ADL rather than debates its lineage or purity. The panel should also note that many of the architectural modeling shortcomings of UML 1.1 were either corrected or improved in the recent UML 1.3 revision. In addition, the OMGs UML 2.0 roadmap includes plans to improve the support for modeling enterprise architecture views. Cris Kobryn is a Chief Architect in the E.solutions unit of EDS, where he specializes in software architectures and methods. He is also the co-chair of the OMGs UML Revision Task Force. Victoria Stavridou These major weaknesses could be overcome by integrating UML with an ADL. The integration would encompass the advantages of both languages. It would give formal semantics to UML constructs and thus would provide UML with a theoretical foundation for architecture modeling. Furthermore, the integration would provide benefits for both ADL and UML users: it will enable ADL users to utilize general-purpose UML tools, and will enable UML users to utilize ADL validation capabilities. The result would be a rigorous software development process that is currently lacking. Victoria Stavridou is the Director of the System Design Laboratory at SRI International where she is leading the Dependable System Architecture Group. |
|
Return To Final Program || Return To Technical Program At A Glance