Presentation is loading. Please wait.

Presentation is loading. Please wait.

Jiannong IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML.

Similar presentations


Presentation on theme: "Jiannong IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML."— Presentation transcript:

1

2 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Architecture Description of Distributed Systems using UML and XML Chang-ai Sun 1,2, Jiannong Cao 1 Maozhong Jin 2, Chao Liu 2, Michael R. Lyu 3 1 Internet and Mobile Computing Lab Department of Computing Hong Kong Polytechnic University 2 School of Computer Science and Engineering Beijin Univ. of Aeronautics and Astronautics 3 Dept. Of Computer Science and Engineering The Chinese University of Hong Kong

3 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 2 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Outline The GOP distributed programming model Need for interchangeable and extensible representation of GOP architecture A framework of describing GOP-based distributed software architecture using UML and XML Conclusions

4 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 3 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 The GOP distributed programming model Many distributed software can be modeled as a group of components coordinating with one another over a logical graph Software configuration Inter-component communication When come to implementation, we encounter some problems: Traceability - a gap between specification and implementation Dynamism – hard to reconfigure

5 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 4 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 The GOP model A distributed program consists of a set of cooperating local programs (LP) LPs are configured into a logical graph Naming and code of LPs for configuration, communication, synchronization are expressed in terms of the graph and its operations Step 1: Specify the logical graph for configuration configuration Step 2: Prepare the local programs(LPs) Step 3: Map LPs to nodes in the graph, and nodes to processors and nodes to processors Step 4: Compile, distribute, and run the application application

6 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 5 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 The GOP model Provide graph as an abstraction construct which supports both software design and implementation: The graph metaphor is made explicit in programming – GOP directly supports the graph construct at the programming level

7 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 6 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Specification and instantiation of language-level graph construct Node, Edge, Graph, LP-to-Node mapping Node-to-Processor mapping The GOP model (cont’d)

8 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 7 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Graph-Oriented Programming Primitives Communication and Synchronization defined in terms of the logical graph – referring to nodes / edges (pre-defined or derived) behavior changes as the graph changes Subgraph Generation e.g., deriving the shortest paths and spanning trees Graph Query check the graph structure Graph Update change the graph structure The GOP model (cont’d)

9 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 8 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 The GOP model Program the dynamic system reconfiguration directly B C A Reification B C A D Intercession Reflective Evolution Reify software configuration as an explicit and tangible run-time entity that is a part of the system. Evolve the system reflectively with operations on this entity.

10 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 9 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 GOP is language and platform independent GOP can be implemented as library incorporated in familiar languages and integrated with programming platforms: ClusterGOP in C over MPI WebGOP in Java over Soap OrbGOP in Java over CORBA GridGOP? Extending GOP to different environments GOP library is mapped to the underlying middleware and OS

11 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 10 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Logical Graph Logical Program Mapping+ Execution Monitor & Visualization User Interface GOP API GOP Library Graph Representation Middleware GOP Runtime Configuration Manager & Consistency Maintenance Network Visual GOP

12 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 11 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Visual GOP Support the visual, intelligent support for the design, coding, and deployment of GOP- based distributed programs to be executed on different platforms.

13 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 12 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Visual GOP Graph Editing Panel - provide an area for graph construction Graph Construction Tool - provide methods such as adding node, adding edge and moving objects Mapping Panel - provide LP-Node mapping and Node-Processor mapping Processor Panel - display all available processor for node mapping

14 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 13 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 An issue was raised … Traditionally, tools for software development usually store the software design in a platform-specific format. VisualGOP, however, need to support program construction for different kinds of programming platforms. We do not want to build a different version of VisualGOP for each platform Furthermore, even within the same platform, heterogeneous computers need to share the software design but may require different representation formats

15 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 14 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Solution … To have a standard notation of describing the GOP distributed software architecture, which is Mutually understandable and inter-changeable for being shared Extensible for accommodating dynamic changes. We decided to utilize the built-in extension mechanism of UML to describe the software architecture, with the underlying architecture metadata represented in XML

16 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 15 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Software architecture A set of components with independent functions and explicit interfaces, Interactions (connectors) between the components ADLs componentinteraction/ connector Topology Constraints Describing the GOP Architecture

17 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 16 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Describing the GOP Architecture using UML

18 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 17 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Four layer Meta-Model Linguistics Architecture of UML Extension Mechanism(Meta-model layer): 1) Stereotype, 2) Constraints, 3) Tagged Value XMI: XML Metadata Interchange (XMI) Extending UML to Describe the GOP Architecture

19 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 18 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Extension Strategy 1) Principle Meta-model closest to target architecture model in semantics is selected! 2) Criteria for choosing meta-model to extend A) semantics-match [A~C by D.Garlan] B) legibility, C) completeness D) extensibility and well-defined structure E) efficiency and effectiveness Extending UML to Describe the GOP Architecture

20 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 19 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 3) Extension Procedure Abstract Syntax : specifies what representation is valid. Described in a subset of UML, consisting of a UML class diagram and a supporting natural language description. Well-formed rules : specify what must be satisfied Provided using a formal language (E.g. OCL) and natural language. Semantics : specify what meanings they represent in the new domain. Specification description: Textual description of the above specifications with detailed information such as name and a set of attributes of model elements in textual mode. Written in XML Extending UML to Describe the GOP Architecture

21 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 20 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Extending UML for LG in GOP

22 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 21 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Step2 : well formed rules For Interface: For LGComponent: Extending UML for LG in GOP

23 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 22 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Step3 : Semantics To interpret the meanings of element in our architecture model. Setp4: specification description (partly) Extending UML for LG in GOP

24 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 23 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Parallel Extension of UML for Behavior of GOP Extending UML for LG in GOP

25 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 24 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 An example Extending UML to Describe the GOP Architecture

26 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 25 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Extending UML to Describe the GOP Architecture

27 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 26 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Extending UML to Describe the GOP Architecture

28 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 27 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Implementation in VisualGOP VisualGOP GOP- XML file GOP runtime Underlying Platform Platform dependent XML Parser Logical Graph Resources Configurations Program Deployment Running processes, middleware and other applications

29 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 28 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Visual modeling and description of GOP software architecture by using standard UML and XML Resulting SA specification can be shared by different platforms and interchanged between tools. Another benefit of the standard representation is that it can be transformed into any other representation schemes automatically. Conclusions

30 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 29 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 E.g. Version Management View can be obtained by further description of version information. Our future work is to further integrate our approach with GOP. Conclusions

31 Jiannong Cao @ IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 30 Architecture Description of Distributed Systems using UML and XML APPT’03, Xiamen – Sept 18, 2003 Example: Calculating a global sum on a hypercube. Two types of LPs: Coordinator - receives and distributes the global sum, and Participant - calculates and submits partial sums; collect s global sum from Coordinator. An efficient implementation is to use a spanning tree as the number of messages sent between the processes is minimum. Using GOP, the spanning tree is derived automatically by simply invoking such an operation on the hypercube; We can then base the calculation on the resulting tree, using primitives such as Receive, SendToChildren, ReceiveFromChildren, and SendToParent. 5228 15 1 12 34 56 78 Derived Spanning Tree


Download ppt "Jiannong IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML."

Similar presentations


Ads by Google