SlideShare a Scribd company logo
1 of 6
Download to read offline
KNOWLEDGECUDDLE PUBLICATION
International Journal of Computer Engineering and Science, August- 2014
1
Documenting Software Architectural
Component and Connector with UML 2
Vikram M. Agrawal
IT Department
BVM Engineering College
agrawal.vm@gmail.com
_______________________________________________________________________________________
ABSTRACT: Earlierversions of the UML have been an out of depth for documenting software architectures
like component, port, connector and system. Users have adopted conventions for representing architectural
concepts using different grouping of UML modeling element. They can also create profiles to focus the UML.
Changes incorporated in UML 2 have improved UML’s suitability for software architectural documentation,
but UML is still an out of your depth for documenting some types of architectural information. In this paper,
there is description of documenting component and connector using UML but in particular case,
documenting architectural connectors and components remains problematic.
Keywords: - component, connector
_______________________________________________________________________________________
1. INTRODUCTION
The first work of stakeholder to create communicating architecture of whole system because
architectures are rational constructs of enduring and long-lived importance.Architecture must be clearly
explained because others are to build systems from it, analyze it, maintain it, and learn from it. Therefore,
increased attention is now being paid to how architectures should be documented.
Modern software architecture practice embraces the concept of architectural views as part of the
solution [1–4]. A view is a representation of a set of system elements and relations associated with them [5].
Systems are typically recognized in terms of many views, each of which represents aspects of the system needed
to analyze and communicate different quality attributes of the system. So we can consider the all the view of all
the stakeholders. For instance, a layered view is useful for understanding modifiability, while a communicating
processes view is useful for understanding system performance.
The widespread presence of UML has directed practitioners to try to use it to document software
architectures. The results have been mixed and somewhat unacceptable and un-useful. For example, UML has
no built-in way to represent the basic architectural concept of a layer. Nor was there any straightforward way to
represent a connector, in the rich sense proposed by Garlan and Shaw [6]. Nevertheless, ways have been
proposed to represent several familiar architectural views using UML. Previous work has investigated ways that
it can be used as is to represent architectural concepts or ways that UML can be specialized to improve its
suitability for architectural documentation, such as [7–9].
During the development of UML 2, changes were made that significantly improve UML’s suitability
for architectural documentation [10]. Structured Classifiers permit improved representation of architectural
hierarchy, often used effectively to represent detail in stages or for different USERS. Ports provide a normal
way to represent runtime points of interaction and collections of interfaces involved in a common protocol.
Unfortunately, some of UML’s drawback with respect to architectural documentation remain. In this
paper, we examine one such drawback of documenting architectural connector with UML 2. Though UML 2
provides better support for representing connectors, users are still left with a variety of modeling options to
choose among, each of which is best suited to different uses.
To distinguish between architectural and UML uses of the same term, we capitalize the names of UML
modeling elements (e.g., Component or Class) and use lower case for architectural concepts (e.g., component or
connector).
KNOWLEDGECUDDLE PUBLICATION
International Journal of Computer Engineering and Science, August- 2014
2
2. COMPONENT AND CONNECTOR VIEWS
Component and connector views present architecture in terms of elements that have a runtime presence
(e.g., processes, clients, database,and data stores) and trails of interaction e.g., communication links and
protocols, information flows, use of resources, and access to common resources. Components are the major
units of run-time interaction or data storage. Connectors are the interaction mechanisms among components.
Different styles of Component and Connector views important vocabulary and often impose additional
topological restrictions. In a shared data view, the data repository and the accesses are the components; the
access mechanisms are the connectors. And in a client-server view, the components are clients and servers; the
connectors are the protocol mechanisms by which they interact.
When considering documentation options it is important to be clear about criteria for choosing one way
of using UML 2.0 over other possibilities. These criteria allow us to determine when a particular documentation
option is likely to be appropriate. The criteria (the first three of which are derived from [8]) are
 Semantic match: The UML modeling elements should map naturally to the architectural concepts that
are being documented.
 Visual clarity: The UML description should bring conceptual clarity to a system design, avoid visual
disorder, and highlight key design information.
 Completeness: All relevant architectural features for the design should be implemented in the UML
model.
 Tool support: Not all uses of UML are equally supported by all tools, particularly when specialize the
UML.
The changes in UML 2 provide better representation options for many architectural concepts with respect to
these criteria, particularly in terms of semanticoptions for architectural connectors remain deficient. Ideally, we
look for a UML modeling option that is
 Typically used to represent trails of interaction,
 visually separate from component representations and introduces a minimum number of visual
elements,
 able to represent connector behavior e.g., a state machine, state e.g., queue size, and interfaces over
which a connector’s rules might be imposed, and
 supported by UML tools implementing the minimal features needed to be compliant with the UML 2
standard.
3. DOCUMENTING COMPONENTS AND CONNECTORS WITH UML 2
In this section, ways of using UML (class diagram in particular) to document component and connector
view are described. Following elements of component and connector view will be described using UML:
components and component types, connectors and connector types, ports, roles, systems and properties [8].
Since there is no best way of documenting these elements using UML, multiple alternatives will be
presented, along with their advantages and disadvantages. Architectural descriptions which are produced this
way should respect documented UML semantics and the intuitions of UML modelers. The interpretation of the
encoding UML model should be close to the interpretation of the original architectural description so the model
is intelligible to both designers and UML-based tools. Also, resulting architectural descriptions in UML should
bring conceptual clarity to a system design, avoid visual clutter, and highlight key design details. All relevant
architectural features for the design should be represented in the UML model, keeping in mind that not all uses
of UML are supported equally by all UML tools, which can limit documentation options [5].
3.1 Documenting components
KNOWLEDGECUDDLE PUBLICATION
International Journal of Computer Engineering and Science, August- 2014
3
There are two meaningful ways of representing architectural components in UML, by using UML
classes or UML components.A natural candidate for representing component types in UML is the class concept.
Classes describe the conceptual vocabulary of a system just as component types form the conceptual vocabulary
of architectural documentation. Also, UML classes, like component types in architectural descriptions, are first-
class entities and rich structures for capturing software abstractions.
Structural properties of architectural components can be represented as class attributes or associations,
behavior can be described using UML behavioral descriptions, and generalization can be used to relate a set of
component types. The type/instance relationship in architectural descriptions is a close match to the class/object
relationship in a UML model, although it's not identical. A component instance might refine the number of ports
specified by its type or associate an implementation in the form of an additional structure that is not part of its
type’s definition. This can be overcome by using subclasses, so that instance of a subclass represents instance of
a component.
On the other hand, UML components have an expressive power similar to that of classes and can be
used to represent architectural components as in the first strategy, with slightly different graphical notation. In
addition, component can own packagable elements along with elements a class can own, which can be useful in
some cases.
3.2 Documenting connectors
While the Connector element introduced in UML 2 is intended to represent communication links (a
good semantic match to architectural connectors), it lacks the expressiveness needed to satisfy our completeness
criteria. In particular, semantic information such as a connector’s behavior or interfaces cannot be associated
with a UML Connector. As a result, we examine other options available in UML 2 and how each compares to
our criteria. We restrict our-selves to solutions that avoid importance of the UML to assist communication
among varied documentation users, but briefly mention one simple specialization (examples of more complex
specializations include [7, 9]).
Even though there is connector concept in UML, it lacks fluency needed to be considered as a solution
for documenting architectural connectors, e.g. it lacks ability to associate semantic information with a connector
or to clearly document architectural connector roles. Therefore, three strategies for representing connectors in
UML will be considered:
 using UML associations
 using UML association classes using UML classes
Using UML associations for documenting connectors allows visual distinction between components
and connectors. Different types of connectors can be distinguished by labeling each association with a
stereotype (Figure 1).
This strategy lacks ability to express semantic information connectors provide, because roles of
connector can’t be defined by associations (since associations don’t have UML interfaces or ports), and
associations can’t own neither attributes nor behavioral descriptions. Nevertheless, this strategy is useful when
purpose of documentation is identifying where different types of connectors are used in a system.
FIGURE 1:- Documenting connector using link
KNOWLEDGECUDDLE PUBLICATION
International Journal of Computer Engineering and Science, August- 2014
4
The second strategy consists of using UML association class for describing connectors (Figure 2). This
strategy allows semantic descriptions of connectors, by using attributes and behavioral descriptions of a class, as
well as creating substructure of connectors, if needed.
FIGURE 2:- Documenting connector using association class instance
Also, connector roles now can be represented as UML ports on the association class, which enables
same level of expressiveness that component ports have (Figure 3).
FIGURE 3:- Documenting connector using association class instance with ports
However, this brings out issue of attaching component ports to connector roles. This can be solved
either by role name being added to corresponding component port, or by using assembly connectors between
ports of objects representing the connector and the ports of the objects representing the components. First
solution doesn’t affect visual clarity, but it lacks standard tool support, and second solution introduces
substantial visual clutter.
The third strategy consists of using UML class for documenting connectors (Figure 4).
FIGURE 4:- Documenting connector using object
This strategy allows same expression capabilities as the previous one, but also resolves the component
and connector attachment problems by explicitly using UML assembly connectors, removing the potential
ambiguity of the second strategy. Unfortunately, this solution presents the poorest visual distinction between
components and connectors, especially if classes are used for documenting components. This problem can be
mitigated by using different UML concepts to represent components and connectors, as shown in Figure 5,
KNOWLEDGECUDDLE PUBLICATION
International Journal of Computer Engineering and Science, August- 2014
5
where UML components are used for representing architectural components, and class is used for representing
connector.
FIGURE 5: - Documenting connector using object, UML components document components
If the goal of documentation is to identify where different types of connectors are used in a system,
particularly if the connector types are well known and understood, first strategy is a good choice. This strategy
is a good choice for “first drafts”, in which specific connector semantics have not been defined, but rough
choices should be identified by name. Drawback of this strategy is its inability to describe semantics and role of
a connector. Second strategy is a good choice when connector semantics need to be described, but specific
component port and connector role attachments are not important. If these attachments are important, third
strategy can be used. An Association, like a Connector or class connector, is a poor solution in terms of
completeness. Because this type of stereotype require the graphical support which is not offered by the UML
tools.
4. CONCLUSION
In previous versions, the UML has been an out of depth for documenting software architectures.
Though architectural concepts could be represented using different UML modeling elements, in many cases
there has been no clear best option for documenting some concepts, often resulting in compromising
completeness or semantic match to fit within the UML vocabulary.
UML 2 is well defined tools for describing components and connectors from its predecessors. It has
improved considerably by adding new things such as Structured Classifier and Port, which are excellent
semantic matches to their corresponding architectural concepts. These improvements provide a clear best
option, and reduce the confusion that can be caused by modeling the same architectural concepts differently for
different systems or in different organizations.
However, there has not been a similar bound forward in terms of documenting architectural connectors.
The new UML 2 Connector modeling element is not satisfactorily rich, making it difficult to associate detailed
semantic descriptions or representations with them; consequently, they are a poor choice for
representingcomponents and connectors.Also, concept of a part, introduced with composite structure diagrams
in UML 2 can be taken into thought when showing complex properties of the containing structured classifier.
REFERENCES
1. Kruchten, P.: The Rational Unified Process: An Introduction. Addison-Wesley (2001)
2. IEEE: 1471-2000: Recommended Practice for Architectural Description of Software-Intensive Systems
(2000)
3. Kruchten, P.: The 4+1 View Model of Architecture. IEEE Software 12 (1995) 42–50
4. Hofmeister, C., Nord, R., Soni, D.: Applied Software Architecture. Addison-Wesley (2000)
5. Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Nord, R., Stafford, J.: Documenting
Software Architectures: Views and Beyond. Addison-Wesley (2002)
6. Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Disci-pline. Prentice-Hall
(1996)
7. Selic, B., Rumbaugh, J.: Using UML for Modeling Complex Real-Time Systems. White paper (1998)
KNOWLEDGECUDDLE PUBLICATION
International Journal of Computer Engineering and Science, August- 2014
6
Available at http://www.objectime.com/otl/technical.
8. Garlan, F., Cheng, S., Kompanek, A.: Reconciling the Needs of Architectural Description with Object
Modeling Notations. In Evan, H., Kent, S., Selic, B., eds.: Science of Computer Programming, Special
UML Edition. Volume 44. Elsevier Press (2002)
9. Medvidovic, N., Rosenblum, D., Redmiles, D., Robbins, J.: Modeling Software Architecture in the Unified
Modeling Language. ACM Transactions on Software Engineering and Methodology 11 (2002) 2–57
10. Group, O.M.: UML 2.0 Superstructure Specification: Final Adopted Specification (2003) OMG document
ptc/08-03-02.
11. Ivers, J., Clements, P., Garlan, D., Nord, R., Schmerl, B., Silva, J.: Documenting Component and Connector
Views with UML 2.0. Technical Report CMU/SEI-2004-TR-008, Sofware Engineering Institute, Carnegie
Mellon University (2004)

More Related Content

What's hot

Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling LanguageAMITJain879
 
Devnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology
 
Software architecture
Software architectureSoftware architecture
Software architectureInam Soomro
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architecturedrewz lin
 
UML Architecture and Views
UML Architecture and ViewsUML Architecture and Views
UML Architecture and ViewsKumar
 
an analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioralan analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioralINFOGAIN PUBLICATION
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)Nguyen Tuan
 
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?Eliza Wright
 
J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007Jay van Zyl
 
Object Oriented, Design patterns and data modelling worshop
Object Oriented, Design patterns and data modelling worshopObject Oriented, Design patterns and data modelling worshop
Object Oriented, Design patterns and data modelling worshopMohammad Shawahneh
 
Round - Trip Software Engineering using UML: From Architecture to Design and...
Round - Trip Software Engineering using UML:  From Architecture to Design and...Round - Trip Software Engineering using UML:  From Architecture to Design and...
Round - Trip Software Engineering using UML: From Architecture to Design and...Aman Mishra
 
Arch06 1
Arch06 1Arch06 1
Arch06 1nazn
 

What's hot (20)

Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 
Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling Language
 
Devnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software Development
 
Object oriented analysis and design unit- ii
Object oriented analysis and design unit- iiObject oriented analysis and design unit- ii
Object oriented analysis and design unit- ii
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architecture
 
4+1
4+14+1
4+1
 
UML Architecture and Views
UML Architecture and ViewsUML Architecture and Views
UML Architecture and Views
 
UML Design
UML DesignUML Design
UML Design
 
an analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioralan analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioral
 
Presentation on uml
Presentation on umlPresentation on uml
Presentation on uml
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)
 
SMD Unit ii
SMD Unit iiSMD Unit ii
SMD Unit ii
 
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?
 
J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007
 
Sda 7
Sda   7Sda   7
Sda 7
 
Object Oriented, Design patterns and data modelling worshop
Object Oriented, Design patterns and data modelling worshopObject Oriented, Design patterns and data modelling worshop
Object Oriented, Design patterns and data modelling worshop
 
Round - Trip Software Engineering using UML: From Architecture to Design and...
Round - Trip Software Engineering using UML:  From Architecture to Design and...Round - Trip Software Engineering using UML:  From Architecture to Design and...
Round - Trip Software Engineering using UML: From Architecture to Design and...
 
Uml basics
Uml basicsUml basics
Uml basics
 
Arch06 1
Arch06 1Arch06 1
Arch06 1
 

Viewers also liked

International marketing manager perfomance appraisal 2
International marketing manager perfomance appraisal 2International marketing manager perfomance appraisal 2
International marketing manager perfomance appraisal 2tonychoper3104
 
Setmana santa
Setmana santaSetmana santa
Setmana santaTashblond
 
LINDA HARRISON RESUME 12B
LINDA HARRISON  RESUME  12BLINDA HARRISON  RESUME  12B
LINDA HARRISON RESUME 12BLinda Harrison
 
How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...
How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...
How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...Curley & Rothman, LLC
 
Internet sales manager perfomance appraisal 2
Internet sales manager perfomance appraisal 2Internet sales manager perfomance appraisal 2
Internet sales manager perfomance appraisal 2tonychoper5704
 
Commercial loan officer perfomance appraisal 2
Commercial loan officer perfomance appraisal 2Commercial loan officer perfomance appraisal 2
Commercial loan officer perfomance appraisal 2tonychoper6104
 
Единый справочник контактов
Единый справочник контактов Единый справочник контактов
Единый справочник контактов ICL Solutions
 
PURUSHOTHAMAN.M_-_RESUME.
PURUSHOTHAMAN.M_-_RESUME.PURUSHOTHAMAN.M_-_RESUME.
PURUSHOTHAMAN.M_-_RESUME.Purushoth M
 
Senior administrative officer perfomance appraisal 2
Senior administrative officer perfomance appraisal 2Senior administrative officer perfomance appraisal 2
Senior administrative officer perfomance appraisal 2tonychoper6104
 
LINDA HARRISON RESUME 9
LINDA HARRISON  RESUME   9LINDA HARRISON  RESUME   9
LINDA HARRISON RESUME 9Linda Harrison
 

Viewers also liked (13)

International marketing manager perfomance appraisal 2
International marketing manager perfomance appraisal 2International marketing manager perfomance appraisal 2
International marketing manager perfomance appraisal 2
 
Setmana santa
Setmana santaSetmana santa
Setmana santa
 
LINDA HARRISON RESUME 12B
LINDA HARRISON  RESUME  12BLINDA HARRISON  RESUME  12B
LINDA HARRISON RESUME 12B
 
Karczówka
KarczówkaKarczówka
Karczówka
 
How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...
How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...
How Can You Determined If A Contract Was Breached: A Guide for Conshohocken, ...
 
Internet sales manager perfomance appraisal 2
Internet sales manager perfomance appraisal 2Internet sales manager perfomance appraisal 2
Internet sales manager perfomance appraisal 2
 
Coconurture
CoconurtureCoconurture
Coconurture
 
Commercial loan officer perfomance appraisal 2
Commercial loan officer perfomance appraisal 2Commercial loan officer perfomance appraisal 2
Commercial loan officer perfomance appraisal 2
 
Единый справочник контактов
Единый справочник контактов Единый справочник контактов
Единый справочник контактов
 
PURUSHOTHAMAN.M_-_RESUME.
PURUSHOTHAMAN.M_-_RESUME.PURUSHOTHAMAN.M_-_RESUME.
PURUSHOTHAMAN.M_-_RESUME.
 
Senior administrative officer perfomance appraisal 2
Senior administrative officer perfomance appraisal 2Senior administrative officer perfomance appraisal 2
Senior administrative officer perfomance appraisal 2
 
PRC EBOOK
PRC EBOOKPRC EBOOK
PRC EBOOK
 
LINDA HARRISON RESUME 9
LINDA HARRISON  RESUME   9LINDA HARRISON  RESUME   9
LINDA HARRISON RESUME 9
 

Similar to Documenting Software Architectural Component and Connector with UML 2

Introduction To Uml
Introduction To UmlIntroduction To Uml
Introduction To Umlguest514814
 
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfPhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfJAYANTHIKANNAN8
 
Uml(unified modeling language) Homework Help
Uml(unified modeling language) Homework HelpUml(unified modeling language) Homework Help
Uml(unified modeling language) Homework HelpSteve Nash
 
UML-Basics-to-AI-Powered-UML-Course.pdf
UML-Basics-to-AI-Powered-UML-Course.pdfUML-Basics-to-AI-Powered-UML-Course.pdf
UML-Basics-to-AI-Powered-UML-Course.pdfssuser200e7a1
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationanasz3z3
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented DatabaseMegan Espinoza
 
18540PhDreport.pdf
18540PhDreport.pdf18540PhDreport.pdf
18540PhDreport.pdfTaraTrends
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfMeagGhn
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1SJC
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11SJC
 
Understanding unified modelling language
Understanding unified modelling languageUnderstanding unified modelling language
Understanding unified modelling languageEmmanuel Kumah
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Languagesurana college
 

Similar to Documenting Software Architectural Component and Connector with UML 2 (20)

Introduction To Uml
Introduction To UmlIntroduction To Uml
Introduction To Uml
 
Apostila UML
Apostila UMLApostila UML
Apostila UML
 
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfPhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
 
Uml
UmlUml
Uml
 
Uml.pptx
Uml.pptxUml.pptx
Uml.pptx
 
Uml(unified modeling language) Homework Help
Uml(unified modeling language) Homework HelpUml(unified modeling language) Homework Help
Uml(unified modeling language) Homework Help
 
UML-Basics-to-AI-Powered-UML-Course.pdf
UML-Basics-to-AI-Powered-UML-Course.pdfUML-Basics-to-AI-Powered-UML-Course.pdf
UML-Basics-to-AI-Powered-UML-Course.pdf
 
l1_introuml.pdf
l1_introuml.pdfl1_introuml.pdf
l1_introuml.pdf
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented Database
 
18540PhDreport.pdf
18540PhDreport.pdf18540PhDreport.pdf
18540PhDreport.pdf
 
Uml
UmlUml
Uml
 
3.UML Diagrams.pptx
3.UML Diagrams.pptx3.UML Diagrams.pptx
3.UML Diagrams.pptx
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
 
Understanding unified modelling language
Understanding unified modelling languageUnderstanding unified modelling language
Understanding unified modelling language
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 

Recently uploaded

CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 

Recently uploaded (20)

CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 

Documenting Software Architectural Component and Connector with UML 2

  • 1. KNOWLEDGECUDDLE PUBLICATION International Journal of Computer Engineering and Science, August- 2014 1 Documenting Software Architectural Component and Connector with UML 2 Vikram M. Agrawal IT Department BVM Engineering College agrawal.vm@gmail.com _______________________________________________________________________________________ ABSTRACT: Earlierversions of the UML have been an out of depth for documenting software architectures like component, port, connector and system. Users have adopted conventions for representing architectural concepts using different grouping of UML modeling element. They can also create profiles to focus the UML. Changes incorporated in UML 2 have improved UML’s suitability for software architectural documentation, but UML is still an out of your depth for documenting some types of architectural information. In this paper, there is description of documenting component and connector using UML but in particular case, documenting architectural connectors and components remains problematic. Keywords: - component, connector _______________________________________________________________________________________ 1. INTRODUCTION The first work of stakeholder to create communicating architecture of whole system because architectures are rational constructs of enduring and long-lived importance.Architecture must be clearly explained because others are to build systems from it, analyze it, maintain it, and learn from it. Therefore, increased attention is now being paid to how architectures should be documented. Modern software architecture practice embraces the concept of architectural views as part of the solution [1–4]. A view is a representation of a set of system elements and relations associated with them [5]. Systems are typically recognized in terms of many views, each of which represents aspects of the system needed to analyze and communicate different quality attributes of the system. So we can consider the all the view of all the stakeholders. For instance, a layered view is useful for understanding modifiability, while a communicating processes view is useful for understanding system performance. The widespread presence of UML has directed practitioners to try to use it to document software architectures. The results have been mixed and somewhat unacceptable and un-useful. For example, UML has no built-in way to represent the basic architectural concept of a layer. Nor was there any straightforward way to represent a connector, in the rich sense proposed by Garlan and Shaw [6]. Nevertheless, ways have been proposed to represent several familiar architectural views using UML. Previous work has investigated ways that it can be used as is to represent architectural concepts or ways that UML can be specialized to improve its suitability for architectural documentation, such as [7–9]. During the development of UML 2, changes were made that significantly improve UML’s suitability for architectural documentation [10]. Structured Classifiers permit improved representation of architectural hierarchy, often used effectively to represent detail in stages or for different USERS. Ports provide a normal way to represent runtime points of interaction and collections of interfaces involved in a common protocol. Unfortunately, some of UML’s drawback with respect to architectural documentation remain. In this paper, we examine one such drawback of documenting architectural connector with UML 2. Though UML 2 provides better support for representing connectors, users are still left with a variety of modeling options to choose among, each of which is best suited to different uses. To distinguish between architectural and UML uses of the same term, we capitalize the names of UML modeling elements (e.g., Component or Class) and use lower case for architectural concepts (e.g., component or connector).
  • 2. KNOWLEDGECUDDLE PUBLICATION International Journal of Computer Engineering and Science, August- 2014 2 2. COMPONENT AND CONNECTOR VIEWS Component and connector views present architecture in terms of elements that have a runtime presence (e.g., processes, clients, database,and data stores) and trails of interaction e.g., communication links and protocols, information flows, use of resources, and access to common resources. Components are the major units of run-time interaction or data storage. Connectors are the interaction mechanisms among components. Different styles of Component and Connector views important vocabulary and often impose additional topological restrictions. In a shared data view, the data repository and the accesses are the components; the access mechanisms are the connectors. And in a client-server view, the components are clients and servers; the connectors are the protocol mechanisms by which they interact. When considering documentation options it is important to be clear about criteria for choosing one way of using UML 2.0 over other possibilities. These criteria allow us to determine when a particular documentation option is likely to be appropriate. The criteria (the first three of which are derived from [8]) are  Semantic match: The UML modeling elements should map naturally to the architectural concepts that are being documented.  Visual clarity: The UML description should bring conceptual clarity to a system design, avoid visual disorder, and highlight key design information.  Completeness: All relevant architectural features for the design should be implemented in the UML model.  Tool support: Not all uses of UML are equally supported by all tools, particularly when specialize the UML. The changes in UML 2 provide better representation options for many architectural concepts with respect to these criteria, particularly in terms of semanticoptions for architectural connectors remain deficient. Ideally, we look for a UML modeling option that is  Typically used to represent trails of interaction,  visually separate from component representations and introduces a minimum number of visual elements,  able to represent connector behavior e.g., a state machine, state e.g., queue size, and interfaces over which a connector’s rules might be imposed, and  supported by UML tools implementing the minimal features needed to be compliant with the UML 2 standard. 3. DOCUMENTING COMPONENTS AND CONNECTORS WITH UML 2 In this section, ways of using UML (class diagram in particular) to document component and connector view are described. Following elements of component and connector view will be described using UML: components and component types, connectors and connector types, ports, roles, systems and properties [8]. Since there is no best way of documenting these elements using UML, multiple alternatives will be presented, along with their advantages and disadvantages. Architectural descriptions which are produced this way should respect documented UML semantics and the intuitions of UML modelers. The interpretation of the encoding UML model should be close to the interpretation of the original architectural description so the model is intelligible to both designers and UML-based tools. Also, resulting architectural descriptions in UML should bring conceptual clarity to a system design, avoid visual clutter, and highlight key design details. All relevant architectural features for the design should be represented in the UML model, keeping in mind that not all uses of UML are supported equally by all UML tools, which can limit documentation options [5]. 3.1 Documenting components
  • 3. KNOWLEDGECUDDLE PUBLICATION International Journal of Computer Engineering and Science, August- 2014 3 There are two meaningful ways of representing architectural components in UML, by using UML classes or UML components.A natural candidate for representing component types in UML is the class concept. Classes describe the conceptual vocabulary of a system just as component types form the conceptual vocabulary of architectural documentation. Also, UML classes, like component types in architectural descriptions, are first- class entities and rich structures for capturing software abstractions. Structural properties of architectural components can be represented as class attributes or associations, behavior can be described using UML behavioral descriptions, and generalization can be used to relate a set of component types. The type/instance relationship in architectural descriptions is a close match to the class/object relationship in a UML model, although it's not identical. A component instance might refine the number of ports specified by its type or associate an implementation in the form of an additional structure that is not part of its type’s definition. This can be overcome by using subclasses, so that instance of a subclass represents instance of a component. On the other hand, UML components have an expressive power similar to that of classes and can be used to represent architectural components as in the first strategy, with slightly different graphical notation. In addition, component can own packagable elements along with elements a class can own, which can be useful in some cases. 3.2 Documenting connectors While the Connector element introduced in UML 2 is intended to represent communication links (a good semantic match to architectural connectors), it lacks the expressiveness needed to satisfy our completeness criteria. In particular, semantic information such as a connector’s behavior or interfaces cannot be associated with a UML Connector. As a result, we examine other options available in UML 2 and how each compares to our criteria. We restrict our-selves to solutions that avoid importance of the UML to assist communication among varied documentation users, but briefly mention one simple specialization (examples of more complex specializations include [7, 9]). Even though there is connector concept in UML, it lacks fluency needed to be considered as a solution for documenting architectural connectors, e.g. it lacks ability to associate semantic information with a connector or to clearly document architectural connector roles. Therefore, three strategies for representing connectors in UML will be considered:  using UML associations  using UML association classes using UML classes Using UML associations for documenting connectors allows visual distinction between components and connectors. Different types of connectors can be distinguished by labeling each association with a stereotype (Figure 1). This strategy lacks ability to express semantic information connectors provide, because roles of connector can’t be defined by associations (since associations don’t have UML interfaces or ports), and associations can’t own neither attributes nor behavioral descriptions. Nevertheless, this strategy is useful when purpose of documentation is identifying where different types of connectors are used in a system. FIGURE 1:- Documenting connector using link
  • 4. KNOWLEDGECUDDLE PUBLICATION International Journal of Computer Engineering and Science, August- 2014 4 The second strategy consists of using UML association class for describing connectors (Figure 2). This strategy allows semantic descriptions of connectors, by using attributes and behavioral descriptions of a class, as well as creating substructure of connectors, if needed. FIGURE 2:- Documenting connector using association class instance Also, connector roles now can be represented as UML ports on the association class, which enables same level of expressiveness that component ports have (Figure 3). FIGURE 3:- Documenting connector using association class instance with ports However, this brings out issue of attaching component ports to connector roles. This can be solved either by role name being added to corresponding component port, or by using assembly connectors between ports of objects representing the connector and the ports of the objects representing the components. First solution doesn’t affect visual clarity, but it lacks standard tool support, and second solution introduces substantial visual clutter. The third strategy consists of using UML class for documenting connectors (Figure 4). FIGURE 4:- Documenting connector using object This strategy allows same expression capabilities as the previous one, but also resolves the component and connector attachment problems by explicitly using UML assembly connectors, removing the potential ambiguity of the second strategy. Unfortunately, this solution presents the poorest visual distinction between components and connectors, especially if classes are used for documenting components. This problem can be mitigated by using different UML concepts to represent components and connectors, as shown in Figure 5,
  • 5. KNOWLEDGECUDDLE PUBLICATION International Journal of Computer Engineering and Science, August- 2014 5 where UML components are used for representing architectural components, and class is used for representing connector. FIGURE 5: - Documenting connector using object, UML components document components If the goal of documentation is to identify where different types of connectors are used in a system, particularly if the connector types are well known and understood, first strategy is a good choice. This strategy is a good choice for “first drafts”, in which specific connector semantics have not been defined, but rough choices should be identified by name. Drawback of this strategy is its inability to describe semantics and role of a connector. Second strategy is a good choice when connector semantics need to be described, but specific component port and connector role attachments are not important. If these attachments are important, third strategy can be used. An Association, like a Connector or class connector, is a poor solution in terms of completeness. Because this type of stereotype require the graphical support which is not offered by the UML tools. 4. CONCLUSION In previous versions, the UML has been an out of depth for documenting software architectures. Though architectural concepts could be represented using different UML modeling elements, in many cases there has been no clear best option for documenting some concepts, often resulting in compromising completeness or semantic match to fit within the UML vocabulary. UML 2 is well defined tools for describing components and connectors from its predecessors. It has improved considerably by adding new things such as Structured Classifier and Port, which are excellent semantic matches to their corresponding architectural concepts. These improvements provide a clear best option, and reduce the confusion that can be caused by modeling the same architectural concepts differently for different systems or in different organizations. However, there has not been a similar bound forward in terms of documenting architectural connectors. The new UML 2 Connector modeling element is not satisfactorily rich, making it difficult to associate detailed semantic descriptions or representations with them; consequently, they are a poor choice for representingcomponents and connectors.Also, concept of a part, introduced with composite structure diagrams in UML 2 can be taken into thought when showing complex properties of the containing structured classifier. REFERENCES 1. Kruchten, P.: The Rational Unified Process: An Introduction. Addison-Wesley (2001) 2. IEEE: 1471-2000: Recommended Practice for Architectural Description of Software-Intensive Systems (2000) 3. Kruchten, P.: The 4+1 View Model of Architecture. IEEE Software 12 (1995) 42–50 4. Hofmeister, C., Nord, R., Soni, D.: Applied Software Architecture. Addison-Wesley (2000) 5. Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Nord, R., Stafford, J.: Documenting Software Architectures: Views and Beyond. Addison-Wesley (2002) 6. Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Disci-pline. Prentice-Hall (1996) 7. Selic, B., Rumbaugh, J.: Using UML for Modeling Complex Real-Time Systems. White paper (1998)
  • 6. KNOWLEDGECUDDLE PUBLICATION International Journal of Computer Engineering and Science, August- 2014 6 Available at http://www.objectime.com/otl/technical. 8. Garlan, F., Cheng, S., Kompanek, A.: Reconciling the Needs of Architectural Description with Object Modeling Notations. In Evan, H., Kent, S., Selic, B., eds.: Science of Computer Programming, Special UML Edition. Volume 44. Elsevier Press (2002) 9. Medvidovic, N., Rosenblum, D., Redmiles, D., Robbins, J.: Modeling Software Architecture in the Unified Modeling Language. ACM Transactions on Software Engineering and Methodology 11 (2002) 2–57 10. Group, O.M.: UML 2.0 Superstructure Specification: Final Adopted Specification (2003) OMG document ptc/08-03-02. 11. Ivers, J., Clements, P., Garlan, D., Nord, R., Schmerl, B., Silva, J.: Documenting Component and Connector Views with UML 2.0. Technical Report CMU/SEI-2004-TR-008, Sofware Engineering Institute, Carnegie Mellon University (2004)