SlideShare une entreprise Scribd logo
1  sur  31
Evolving KobrA to support SPL for
      WebGIS development


 Juan Manuel Moreno Rivera           Elena Navarro                            Carlos E. Cuesta
JuanManuel.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
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
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
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
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
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
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
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
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
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
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
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
KobrA in a nutshell:
Domain Engineering




                  Containment Tree


         VADER 2011, Hersonissos, Crete, Greece – 17-21 October
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
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
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
Evolved KobrA
Containment 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
Evolved KobrA
Containment 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
Evolved KobrA
Containment 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
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
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
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
Case Study
   SIGTEL SPL according to KobrA




            VADER 2011, Hersonissos, Crete, Greece – 17-21 October
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
Case Study
   SIGTEL SPL according to our proposal




             VADER 2011, Hersonissos, Crete, Greece – 17-21 October
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
Case Study
   SIGTEL SPL: Resolution of variability according to
    KobrA




               VADER 2011, Hersonissos, Crete, Greece – 17-21 October
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
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
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
Evolving KobrA to support SPL for
      WebGIS development


 Juan Manuel Moreno Rivera           Elena Navarro                            Carlos E. Cuesta
JuanManuel.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

Contenu connexe

En vedette (13)

Powers 5 13 dissertation presentation
Powers 5 13 dissertation presentationPowers 5 13 dissertation presentation
Powers 5 13 dissertation presentation
 
VADER 2011 (Pérez-Sotelo)
VADER 2011 (Pérez-Sotelo)VADER 2011 (Pérez-Sotelo)
VADER 2011 (Pérez-Sotelo)
 
Rovi Advertsing Overview
Rovi Advertsing OverviewRovi Advertsing Overview
Rovi Advertsing Overview
 
ECSA 2013 (Cuesta)
ECSA 2013 (Cuesta)ECSA 2013 (Cuesta)
ECSA 2013 (Cuesta)
 
PITA Y SU MÁQUINA
PITA Y  SU  MÁQUINAPITA Y  SU  MÁQUINA
PITA Y SU MÁQUINA
 
VADER 2011 (Younessi)
VADER 2011 (Younessi)VADER 2011 (Younessi)
VADER 2011 (Younessi)
 
The Onset of Connected TV
The Onset of Connected TVThe Onset of Connected TV
The Onset of Connected TV
 
SOAR 2009 (Cuesta)
SOAR 2009 (Cuesta)SOAR 2009 (Cuesta)
SOAR 2009 (Cuesta)
 
Loss Prevention Workshop
Loss Prevention WorkshopLoss Prevention Workshop
Loss Prevention Workshop
 
Ai weiwei
Ai weiweiAi weiwei
Ai weiwei
 
Retail Loss Prevention
Retail Loss PreventionRetail Loss Prevention
Retail Loss Prevention
 
Refund Fraud/Credit Card Skimming
Refund Fraud/Credit Card SkimmingRefund Fraud/Credit Card Skimming
Refund Fraud/Credit Card Skimming
 
Ai Weiwei
Ai WeiweiAi Weiwei
Ai Weiwei
 

Similaire à VADER 2011 (Moreno-Rivera)

Dybdahl - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl  - Getting the Rules Ready for Your Flight to LavaCon DublinDybdahl  - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl - Getting the Rules Ready for Your Flight to LavaCon Dublin
LavaCon
 
Challenges and solutions in Cloud computing for the Future Internet
Challenges and solutions in Cloud computing for the Future InternetChallenges and solutions in Cloud computing for the Future Internet
Challenges and solutions in Cloud computing for the Future Internet
SOFIProject
 
CHOReOS European Project presented at OW2Con2011 in Paris
CHOReOS European Project presented at OW2Con2011 in ParisCHOReOS European Project presented at OW2Con2011 in Paris
CHOReOS European Project presented at OW2Con2011 in Paris
choreos
 
CHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, Paris
CHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, ParisCHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, Paris
CHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, Paris
OW2
 
Object and method exploration for embedded systems
Object and method exploration for embedded systemsObject and method exploration for embedded systems
Object and method exploration for embedded systems
Mr. Chanuwan
 
Scaling choreographies for the internet of the future
Scaling choreographies for the internet of the futureScaling choreographies for the internet of the future
Scaling choreographies for the internet of the future
choreos
 

Similaire à VADER 2011 (Moreno-Rivera) (20)

Framework
FrameworkFramework
Framework
 
Banner xe cause 2013 part 1
Banner xe cause 2013 part 1Banner xe cause 2013 part 1
Banner xe cause 2013 part 1
 
Project Fuji/OpenESB Aquarium Paris
Project Fuji/OpenESB Aquarium ParisProject Fuji/OpenESB Aquarium Paris
Project Fuji/OpenESB Aquarium Paris
 
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformation
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformationEvolutionary evnt-driven-architecture-for-accelerated-digital-transformation
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformation
 
Banner XE CAUSE 2013 part 1
Banner XE CAUSE 2013 part 1Banner XE CAUSE 2013 part 1
Banner XE CAUSE 2013 part 1
 
Dybdahl - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl  - Getting the Rules Ready for Your Flight to LavaCon DublinDybdahl  - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl - Getting the Rules Ready for Your Flight to LavaCon Dublin
 
Reverse Engineering of Module Dependencies
Reverse Engineering of Module DependenciesReverse Engineering of Module Dependencies
Reverse Engineering of Module Dependencies
 
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
MobiCloud: Towards Cloud Mobile Hybrid Application Generation using Semantica...
 
UDMS 2004
UDMS 2004UDMS 2004
UDMS 2004
 
Challenges and solutions in Cloud computing for the Future Internet
Challenges and solutions in Cloud computing for the Future InternetChallenges and solutions in Cloud computing for the Future Internet
Challenges and solutions in Cloud computing for the Future Internet
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
 
CHOReOS European Project presented at OW2Con2011 in Paris
CHOReOS European Project presented at OW2Con2011 in ParisCHOReOS European Project presented at OW2Con2011 in Paris
CHOReOS European Project presented at OW2Con2011 in Paris
 
CHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, Paris
CHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, ParisCHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, Paris
CHOReOS Large Scale Choreographies, OW2con11, Nov 24-25, 2011, Paris
 
Learning activity 4
Learning activity 4Learning activity 4
Learning activity 4
 
Implementing Semantic Web applications: reference architecture and challenges
Implementing Semantic Web applications:  reference architecture and challengesImplementing Semantic Web applications:  reference architecture and challenges
Implementing Semantic Web applications: reference architecture and challenges
 
IRW 2004
IRW  2004IRW  2004
IRW 2004
 
Object and method exploration for embedded systems
Object and method exploration for embedded systemsObject and method exploration for embedded systems
Object and method exploration for embedded systems
 
WebEng_202107
WebEng_202107WebEng_202107
WebEng_202107
 
Keynote: A Roadmap for Domain-Specific Low-Code Platforms
Keynote: A Roadmap for Domain-Specific Low-Code PlatformsKeynote: A Roadmap for Domain-Specific Low-Code Platforms
Keynote: A Roadmap for Domain-Specific Low-Code Platforms
 
Scaling choreographies for the internet of the future
Scaling choreographies for the internet of the futureScaling choreographies for the internet of the future
Scaling choreographies for the internet of the future
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

VADER 2011 (Moreno-Rivera)

  • 1. Evolving KobrA to support SPL for WebGIS development Juan Manuel Moreno Rivera Elena Navarro Carlos E. Cuesta JuanManuel.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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. KobrA in a nutshell: Domain Engineering Containment Tree VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  • 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. 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. 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. Evolved KobrA Containment 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. Evolved KobrA Containment 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. Evolved KobrA Containment 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. 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. 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. 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. Case Study  SIGTEL SPL according to KobrA VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  • 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. Case Study  SIGTEL SPL according to our proposal VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  • 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. Case Study  SIGTEL SPL: Resolution of variability according to KobrA VADER 2011, Hersonissos, Crete, Greece – 17-21 October
  • 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. 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. 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. Evolving KobrA to support SPL for WebGIS development Juan Manuel Moreno Rivera Elena Navarro Carlos E. Cuesta JuanManuel.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