VADER 2011 (Moreno-Rivera)

415 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

VADER 2011 (Moreno-Rivera)

  1. 1. Evolving KobrA to support SPL for WebGIS development Juan Manuel Moreno Rivera Elena Navarro Carlos E. CuestaJuanManuel.Moreno@uclm.es Elena.Navarro@uclm.es carlos.cuesta@urjc.es VADER 2011, Hersonissos, Crete, Greece – 17-21 October VADER 2011, Hersonissos, Crete, Greece – 17- 21 October
  2. 2. Overview Introduction WebGIS Domain Related Work KobrA in a nutshell Evolved KobrA containment tree Case Study Conclusions and Future Work VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  3. 3. Introduction WebGIS development is more complex everyday  Component-based development  New emerging technologies: grid, cloud, smart phones, participatory web …  New users require new and more complex functionality Open GIS community: the supply chain  Development and maintenance of own developed components  Adoption and maintenance of third party components  Common architecture along all portfolio products  There is an exhausting situation for SME  Reuse is critical: SPL approaches (KobrA) VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  4. 4. Overview Introduction WebGIS Domain Related Work KobrA in a nutshell Evolved KobrA containment tree Case Study Conclusions and Future Work VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  5. 5. The WebGIS Domain (I) WebGIS widely used by internet users Core elements in WebGIS:  Spatial Data Base  Map server  Map viewer Extra components in WebGIS  Edition tools  Reports and analyzing tools  GeoProcessing features  Mobile Devices support  … VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  6. 6. The WebGIS Domain (II) Integration of own and third party components Open GIS community alive and growing  More components to be considered  Wide variety of development approaches and documentation  Open standards for data communication Cloning emerges  Non efficient management of the common architecture  Difficult to track, maintain and update deployed systems  Hard to develop test benchmarks for final systems VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  7. 7. Overview Introduction WebGIS Domain Related Work KobrA in a nutshell Evolved KobrA containment tree Case Study Conclusions and Future Work VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  8. 8. Related Work: GeoStack Development based on a common framework or the combination of a group of core components Family of products based on a common architecture with limited differences between their functionalities Problems:  (i) Strongly linked to the technology their components have been developed for  (II) Variability constrained to a reduced group of final features already considered by core components  (III) The cloning phenomenon arises due to the lack of traceability VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  9. 9. Related Work:Software Product Lines (SPL) Two main branches of SPL approaches  Feature-based  More mature  FODA settled down the bases in the 90’s  Component-based  Components are the basic unit as in WebGIS  KobrA and CoPaM VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  10. 10. Related Work:Variability Notations SPL approaches provide notation for variability management There are also specific notations to improve them:  Common Variability Language (CVL)  Eclipse CVL plug-in  Focused on feature diagrams  Orthogonal Variation Model (OVM)  VarMod Editor  Focused on improving the testing and formal validations of models VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  11. 11. Overview Introduction WebGIS Domain Related Work KobrA in a nutshell Evolved KobrA containment tree Case Study Conclusions and Future Work VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  12. 12. KobrA in a Nutshell (I) Model-driven and Component-based approach for SPL Any element of the system can be modelled as a component UML: modelling language KobrA Models systems hierarchy based on tree structures  Containment tree: relations between components at development time  Composition tree: runtime instance of the system Based on two main processes:  Specification: how a component interacts with the external world (External API)  Realization: how a component performs its specification WebGIS development is based on these two main concepts  Each Open GIS component offers an external API to be connected with other components / systems  Then, each component implements the functionality according to its API VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  13. 13. KobrA in a nutshell:Domain Engineering Containment Tree VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  14. 14. KobrA in a nutshell:Application Engineering  Solving variability in each node of the containment tree  Flattening process: logical components from containment tree are mapped into physical ones  Translation process: transform physical components into source code VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  15. 15. KobrA in a nutshell:Pros and Cons from [12] KobrA Cons:  There is no supporting tool to KobrA  Strong focus on design for reuse  Lack of model transformation facilities KobrA Pros:  Components are the basic unit for development  Internal configuration + external API  Compliant with WebGIS component-based development  Based on an adaptation of UML  Updated to UML 2.0  Many available UML tools VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  16. 16. Overview Introduction WebGIS Domain Related Work KobrA in a nutshell Evolved KobrA containment tree Case Study Conclusions and Future Works VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  17. 17. Evolved KobrAContainment Tree (I) KobrA is a general purpose approach  It needs to be customized to WebGIS domain Variability is modelled locally in each node of the system  Application Engineers need to go along the containment tree, node by node, to resolve variability  The global view of the system is lost while deciding what functionalities are necessary  The global interaction and dependencies of components are only modelled in the containment tree Decision models are text-based models  They are a list of questions about variability and indications of what to make on the model to resolve variability  Decisions are not taken based on visual models but text models, which is not very helpful during application engineering VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  18. 18. Evolved KobrAContainment Tree (II) In WebGIS variability emerges at components interaction level Which functionality needs to be included is strongly linked to which component is chosen to implement it When working with third party components getting into the node of this component in the containment tree is not necessary  For application engineers it should be a black box with its interface  Just in some cases it is necessary to get into the black box to customize its implementation. Most of the times it is plugged-in as it is. Commonly, the first step when implementing a new system is choosing which components are going to be included based on user requirements VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  19. 19. Evolved KobrAContainment Tree (III) Where do we want to improve KobrA SPL framework?  1) Work to be done during creation, maintenance and update of SPL framework can be reduced  2) It is necessary to manage not only which features should be included or not, but also which specific component should be used for implementation  3) To facilitate application engineering tasks by making more agile the flatting and translation process of KobrA Adding OVM notation into containment tree  It makes profit of the global overview  Excludes relation is added (not considered in KobrA) VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  20. 20. Overview Introduction WebGIS Domain Related Work KobrA in a nutshell Evolved KobrA containment tree Case Study Conclusions and Future Work VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  21. 21. Case Study: SIGTel SIGTel is a SME with work experience on WebGIS development Family of products:  Tools for inventories of trees, lights or management tasks of cities  Monitoring land use, forest and urban regions  Exploitation of Water balance and water flow models VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  22. 22. Case Study: SIGTel SIGTel is a SME with work experience on WebGIS development Family of products:  Tools for inventories of trees, lights or maintenance tasks in cities  Monitoring land use, forest and urban regions  Exploitation of Water balance and water flow models A common architecture for all of them Nowadays SIGTel development is based on GeoStack (OpenLayers, Mapserver and PostGIS) Open source GIS community plays the role of supply chain Open GIS components are assembled together with own components VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  23. 23. Case Study SIGTEL SPL according to KobrA VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  24. 24. Case Study SIGTEL SPL according to our proposal  Variability management included in the containment tree  Global overview of the system is not lost when solving variability  Components election is included at this stage linked with user requirements that guide variability solving VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  25. 25. Case Study SIGTEL SPL according to our proposal VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  26. 26. Case Study SIGTEL SPL according to our proposal:  Variability management included in the containment tree  Global overview of the system is not lost while resolving variability at components level  Components selection:  Included at this stage  Linked to user requirements that guide the variability resolution  A reduced containment tree is used to apply KobrA  Reducing time needed for resolving variability at the feature level  The selection of available features is constrained by the components selection performed in a previous step VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  27. 27. Case Study SIGTEL SPL: Resolution of variability according to KobrA VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  28. 28. Overview Introduction WebGIS Domain Related Works KobrA in a nutshell Evolved KobrA containment tree Case Study Conclusions and Future Work VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  29. 29. Conclusions OVM can help to improve variability in SIGTel SPL  Containment tree: a more usable tool for application engineers The number of models is reduced along the process Text-based decision models are partially replace by graphical elements Flattening process is resolved at the same time that variability Maintenance and update of variability is simplified KobrA variability management has been customized to WebGIS development VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  30. 30. Future Work Present: Improving Tool support Next step: Model-to-text transformation  M2T from Eclipse is the project to follow Future Challenge: Improve the interaction with Open GIS components  How can we incorporate new functionality into our SPL component adaptation?  How can we give feedback to community and publish our improvements / modifications on these kind of components?  These two tasks are very time consuming for our SPL maintenance VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  31. 31. Evolving KobrA to support SPL for WebGIS development Juan Manuel Moreno Rivera Elena Navarro Carlos E. CuestaJuanManuel.Moreno@uclm.es Elena.Navarro@uclm.es carlos.cuesta@urjc.es VADER 2011, Hersonissos, Crete, Greece – 17-21 October VADER 2011, Hersonissos, Crete, Greece – 17- 21 October

×