Presentation is loading. Please wait.

Presentation is loading. Please wait.

Comparing Architecture Description Languages for Mobile Software Systems Nour Ali Politecnico di Milano Carlos Solís, Isidro Ramos Universidad.

Similar presentations


Presentation on theme: "Comparing Architecture Description Languages for Mobile Software Systems Nour Ali Politecnico di Milano Carlos Solís, Isidro Ramos Universidad."— Presentation transcript:

1 Comparing Architecture Description Languages for Mobile Software Systems Nour Ali Politecnico di Milano Carlos Solís, Isidro Ramos Universidad Politecnica de Valencia {csolis,

2 Content Introduction Features and ADLs used in the comparison Comparison Conclusions and Further Work

3 Introduction How current ADLs deal with distribution and mobility? No consensus on how ADLs should support distributed and mobile software systems. ?

4 Mobility > Carzaniga et al. in [Car97]

5 Software Architecture «connector Connector Component Computation Coordination Building blocks of software architecture [Med00]: Components Connectors Configurations Composite Component Connections

6 Content Introduction Features and ADLs used in the comparison Comparison Conclusions and Further Work

7 Features used for comparing ADLs Features of a Mobile Model [Roman00]: Notion of Location Location-awareness Mobility Support Unit of Mobility Migration Decision Coordination Formalism Middleware Other features considered such as in [Med00] Graphical Support Tool support

8 ADLs Compared ADLs that that have described distribution and mobility are:  Darwin ( Magee et al., 1995)  C2Sadel ( Medvidovic et al., 2001)  Community ( Lopes et al., 2002)  MobiS ( Ciancarini et al., 1998)  LAM Model ( Xu et al., 2003)   -ADL ( Oquendo et al., 2004)  Con-Moto ( Gruhn et al., 2005)

9 Content Introduction Features and ADLs used in the comparison Comparison Conclusions and Further Work

10 Notion of Location Locations represent the different positions where a mobile entity can move in space. Locations have to be explicitly dealt as first-class entities and be distinguished from other entities of a model.

11 Notion of Location Representation: Variable Darwin

12 Notion of Location Implicitly as a composite component  -ADL Composite Component Component located in Client

13 Notion of Location Explicitly, as a physical components Con Moto

14 Notion of Location Explicitly, as a connector Ambient-PRISMA

15 Notion of Location RepresentationType DarwinInteger valueFlat C2SadelExplicitly, a border connectorFlat CommunityExplicitly, a value of an abstract data typeFlat MobiSImplicitly, composite componentHierarchical LAM modelImplicitly, composite componentFlat  -ADL Implicitly,composite componentFlat Con Moto Explicitly, physical componentsFlat Ambient- PRISMA Explicitly, an ambient connectorHierarchical

16 Location-Awareness This feature determines whether an entity can be aware of its current location or not. This feature is important because it allows an entity to take decisions depending on its current location. Location-Awareness DarwinImplicit C2SadelImplicit CommunityExplicit MobiSImplicit LAM modelImplicit  -ADL Implicit Con Moto Implicit Ambient-PRISMA Explicit

17 Location-Awareness Implicit Darwin Explicit Ambient-PRISMA Distribution Aspect Bidder using IMobility, ICapability Attributes Variable location: Ambient NOT NULL; ……… End_Distribution Aspect BidderDist

18 Mobility Support How a model supports the movement of an entity? Unit of mobility  What is the smallest entity of a model that is allowed to move? Migration Decision  When and what causes an entity to move?  Objective or subjective moves?

19 Mobility Support Support Unit of MobilityMigration Decision DarwinXXX C2SadelreconfigurationComponentsobjective moves CommunityChange in a valueFine-grained components & connectors objective and subjective MobiSreconfigurationComponents, locations, channels objective and subjective LAM modelreconfigurationsubcomponentsobjective and subjective  -ADL reconfigurationsubcomponentsobjective and subjective Con Moto reconfigurationLogical componentsobjective and subjective Ambient-PRISMA reconfigurationComponents, connectors, ambients and composite components objective and subjective

20 Mobility Support Reconfiguration Ambient-PRISMA out exit(Name,Parent)

21 Mobility Support Reconfiguration Ambient-PRISMA

22 Mobility Support Reconfiguration Ambient-PRISMA

23 Coordination Do ADLs provide special coordination mechanisms for distribution and mobility? Coordination DarwinBindings C2Sadelborder, communication,…, connectors CommunityDistribution connectors for mobility MobiSImplicit coordination model LAM modelConnectors for mobility  -ADL First class connectors Con Moto Physical connections Ambient-PRISMA A connector for mobility, communication, security

24 Formalism Models need to enable a precise description of the distribution and mobility properties. The formalism used to formalize an ADL needs to provide explicit mobility primitives. Formalism Darwin  -calculus C2SadelFirst-order logic CommunityCategory theory, Mobile Unity MobiSmultiple tuple-space LAM modelPredicate/Transition nets (a variant of Petri Nets)  -ADL  -calculus Con Moto  -calculus Ambient-PRISMA Channel Ambient Calculus, etc

25 Graphical, Middleware and Tool Support Graphical Notation  A graphical notation allows a model to be more usable and understandable. Which ADLs provide a graphical notation for distribution and mobility? Middleware Have ADLs been used for implementing executable distributed and mobile applications? Tool support What facilities do ADL tools provide for distribution and mobility?

26 Graphical, Middleware and Tool Support Graphical Middleware Tool Darwin ImplicitRMIGraphical modelling, Automatic compiler, Automatic distributed configuration C2Sadel ImplicitRMI, code-on-demand mobilityTextual and graphical modelling, skeletons generation Community ImplicitXTextual and graphical modelling, simulation MobiS ImplicitXX LAM model ImplicitXX  -ADL ImplicitXCode generation to Java,modelling & verification Con Moto ExplicitXSimulation tool Ambient- PRISMA ExplicitRMI, agent weak mobility, distributed transactions, etc Graphical modelling, verification, Automatic distributed configuration

27 Content Introduction Features and ADLs used in the comparison Comparison Conclusions and Further Work

28 Conclusions Notion of location has been provided explicitly as components, connectors or as a variable. Mobility has been supported either by reconfiguration or change of value Components are the only unit of mobility in most ADLs. Explicit coordination mechanisms for distribution and mobility have been supported by different kinds of connectors. Formal methods used have not supported explicit notions for mobility Graphical notation, middleware and tool support for ADLs for distribution and mobility are limited

29 Further Work Extend the comparison for including new features such as non-functional requirements, QoS, physical mobility, etc., Necessity to empirically demonstrate the usability, understability and expressiveness of ADLs for distribution and mobility

30 Questions? Nour Ali Politecnico di Milano Carlos Solís, Isidro Ramos Universidad Politecnica de Valencia {csolis,


Download ppt "Comparing Architecture Description Languages for Mobile Software Systems Nour Ali Politecnico di Milano Carlos Solís, Isidro Ramos Universidad."

Similar presentations


Ads by Google