SlideShare a Scribd company logo
Web technologies and patterns in HTML5 mapping
 Value Lab is a management consulting and
IT solutions company specialized in
Marketing, Sales and Retailing
 Our goal is to help Manufactures, Retailers
and Service company to improve their
commercial performance and strengthen
their competitive positioning, supporting
their stratiegic decisions and operational
management
 Founded in 1990 we have two offices in
Milan and Rome and we operate in Italy and
abroad
 As IT system integrator and italian ESRI
Business Partner company we use and
customize a wide range of software
solutions including ESRI ArcGIS platform
 We provide geomarketing and geo-BI
solutions to our customers, based on our
micro-geographical data (at census and
street number level)
Web technologies and patterns in HTML5 mapping
 We had a geomarketing solution based
on ESRI Silverlight API
› No browser vendor issues
› Great developer experience in terms of
technology and productivity
› Great third parties support in terms of tools
and UI widgets
 Then Steve Jobs "invented" a new
technology user experience: the mobile
touch
› iPhone started the smartphone era
› iPad started the tablet era
 Our customers, the old ones and the
new ones, started to ask us to play with
our web solution also on that devices
 We tried first to support iPad users
developing a prototype with ESRI ArcGIS
iOS API, but we realized that wasn't
possible for us to maintain several
different applications, one for every SDK
 We decided to try to embrace the "new-
wave" and its "write once, run
everywhere" promise: HTML5
 We know our end user scenario is very
particular:
› End user is usually a business analyst, he's
not a classical GIS user so our solutions are
not GIS centric: the map is only another
way to show performance KPIs
› Our end users usually are not particularly
interested in technology, but they ask for
usability and high customizations
 Yes you're right: "5" stands for HTML5
 We decided to develop a web solution
with specific features both server side
and client side:
› Maintainable
› Configurable and composable based on
user account
› Secure
› User friendly
 Server side GeoIntelligence5 is built on:
› Microsoft ASP.NET MVC 3
› Microsoft Enterprise Library 5.0
› Microsoft Entity Framework 4.x
› Microsoft WCF REST Services
› Managed Extensibility Framework (MEF)
› Combres
 Client side GeoIntelligence5 is built on:
› ArcGIS Javascript API
› jQuery
› jQuery UI
› Knockout JS
› Linq JS
 But most of all Javascript Design Patterns
› Inheritance, Namespace, Module, M-V-VM
 GeoIntelligence 5 shares and extends
the ArcGIS Server user accountability
system based on Microsoft SQL Server
 We use Microsoft Entity Framework to
access basic membership informations
and the extended user configuration
settings
 GeoIntelligence5 is fully based on Microsoft
Enterprise Library at infrastructure level to
manage cross-cutting concerns:
› Dependency Injection & Interception
› Logging
› Security
› Caching
› Validation
› Exception handling
 We decided to expose application
services in the same way ArcGIS Server
do: HTTP REST services
 Client-Side we can use the same
paradigm to access both ArcGIS services
and application services
 We decided to use Microsoft WCF REST
Services because of its no-configuration
capability and integration with ASP.NET
 GeoIntelligence5 is a plug-in based
system: user account configuration
contains the plug-in list available for that
user
 Managed Extensibility Framework is the
key factor technology in our plug-in
architecture in terms of single plug-in
deployment, runtime registration and
loading
 HTML5 client-side richness means we
have to face a large number of CSS and
Javascript files
 GeoIntelligence5 integrates Combres to
streamline client-side resources
optimization:
› Runtime minification
› Caching
› Reduced number of client requests
 We decided to use jQuery as main
Javascript support framework because
of:
› Wide adoption and documentation
› Great third parties plug-in avalaibility
› Simplicity
› Customization
 Linq is one of the most important
innovation in software development
 Querying arrays and objects (such as the
complex user configuration graph) is
very easy using Linq JS
 One of the most productive UI
presentation patterns is Model-View-
ViewModel
 Knockout JS is a complete M-V-VM
implementation in Javascript:
› Clean HTML markup
› Clear separation between UI and business
code
› Simple databinding mechanism
Roberto Messora
Marco Brugna

More Related Content

PPT
BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010
PDF
APIStrat Open API Workshop
PDF
Senior software engineer, Senior Full stack web developer Resume
PPTX
APIdays Helsinki 2019 - Impact of Microservices Architecture on API Managemen...
PDF
[WSO2 Integration Summit London 2019] An API-enabled Journey Towards Empoweri...
PDF
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...
PDF
Digital Transformation for Karnataka Bank Through API-led Integration
PDF
[Workshop] API Management in Microservices Architecture
BizTalk 2010 with Appfabric Hosting in the Cloud: WCF Services vs BT2010
APIStrat Open API Workshop
Senior software engineer, Senior Full stack web developer Resume
APIdays Helsinki 2019 - Impact of Microservices Architecture on API Managemen...
[WSO2 Integration Summit London 2019] An API-enabled Journey Towards Empoweri...
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...
Digital Transformation for Karnataka Bank Through API-led Integration
[Workshop] API Management in Microservices Architecture

What's hot (20)

PDF
Exposing Lambda Functions as Managed APIs
PPTX
A Connector, A Container and an API Walk into a Bar… Microservices Edition
PPTX
APIs: The Gateway to Digital Transformation
PDF
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
PDF
[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise
PDF
Solving Enteprise Mobility Considerations with Telerik Mobile Platform
PDF
[WSO2 Integration Summit London 2019] The Composable Enterprise
PDF
WSO2 Product Release Webinar Introducing WSO2 API Manager for Complete API ...
PDF
[WSO2 Summit New York 2018] Digital Impact In the Real World: Integration Lif...
PDF
Continuous Integration and Continuous Deployment (CI/CD) with WSO2 Enterprise...
PPTX
Cloud Native Application Development-build fast, low TCO, scalable & agile so...
PDF
[WSO2Con EU 2018] APIs - Technology That Can Transform Your Business Into a P...
PDF
Online Meetup - MuleSoft - June 2020
PDF
WSO2 User Group Bangalore Meetup
PDF
WSO2 Product Release Webinar - WSO2 API Manager 1.9
PDF
[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management
PDF
[WSO2 API Day Dallas 2019] API-Driven World
PPTX
Using SignalR with Kendo UI
PDF
[apidays Live Australia] - Quantum Duality of “API as a business and a techno...
PDF
[apidays Live Australia] How do you enhance customer experience through event...
Exposing Lambda Functions as Managed APIs
A Connector, A Container and an API Walk into a Bar… Microservices Edition
APIs: The Gateway to Digital Transformation
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise
Solving Enteprise Mobility Considerations with Telerik Mobile Platform
[WSO2 Integration Summit London 2019] The Composable Enterprise
WSO2 Product Release Webinar Introducing WSO2 API Manager for Complete API ...
[WSO2 Summit New York 2018] Digital Impact In the Real World: Integration Lif...
Continuous Integration and Continuous Deployment (CI/CD) with WSO2 Enterprise...
Cloud Native Application Development-build fast, low TCO, scalable & agile so...
[WSO2Con EU 2018] APIs - Technology That Can Transform Your Business Into a P...
Online Meetup - MuleSoft - June 2020
WSO2 User Group Bangalore Meetup
WSO2 Product Release Webinar - WSO2 API Manager 1.9
[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management
[WSO2 API Day Dallas 2019] API-Driven World
Using SignalR with Kendo UI
[apidays Live Australia] - Quantum Duality of “API as a business and a techno...
[apidays Live Australia] How do you enhance customer experience through event...
Ad

Similar to Web technologies and patterns in HTML5 mapping (20)

PPTX
Self-adaptive geospatial web applications
PPT
An Overview of Web GIS and Location Based Services
PPTX
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...
PDF
Developing for the GeoWeb: Notes From The Field Dev Summit 2009
PPT
Netek - On-screen Editing of Map Content via Web Browser in Real Time
PPTX
Break on Through (To The Java(Script) Side) - Smart Development - Esri UK Ann...
PDF
We are the music makers and we are the dreamers of dreams
PPTX
Developing Efficient Web-based GIS Applications
PDF
Volume 2-issue-6-2030-2033
PDF
Volume 2-issue-6-2030-2033
PDF
Usability in the GeoWeb
PDF
2013 URISA Track, Deploying Web-GIS Apps on Multiple Platforms, Scott Staffor...
PDF
Providing New Geographic Solutions to the Company
PPTX
6.1 GeospatialWeb101.pptx.pptx
PPT
EGL Conference 2011 - EGL Rich UI
PDF
Introduction to WebGIS- Esri norsk BK 2014
PPTX
Effective Data Collection and Management through Mobile Phone Applications
PDF
Turning data into information - nisXplorer
PPTX
Nearc2011 web state of art presentation
PPTX
Migrating from Desktop to Mobile
Self-adaptive geospatial web applications
An Overview of Web GIS and Location Based Services
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...
Developing for the GeoWeb: Notes From The Field Dev Summit 2009
Netek - On-screen Editing of Map Content via Web Browser in Real Time
Break on Through (To The Java(Script) Side) - Smart Development - Esri UK Ann...
We are the music makers and we are the dreamers of dreams
Developing Efficient Web-based GIS Applications
Volume 2-issue-6-2030-2033
Volume 2-issue-6-2030-2033
Usability in the GeoWeb
2013 URISA Track, Deploying Web-GIS Apps on Multiple Platforms, Scott Staffor...
Providing New Geographic Solutions to the Company
6.1 GeospatialWeb101.pptx.pptx
EGL Conference 2011 - EGL Rich UI
Introduction to WebGIS- Esri norsk BK 2014
Effective Data Collection and Management through Mobile Phone Applications
Turning data into information - nisXplorer
Nearc2011 web state of art presentation
Migrating from Desktop to Mobile
Ad

More from Roberto Messora (17)

PPTX
Azure Synapse: data lake & modern data warehouse dalla A alla Z
PPTX
Azure Data Factory: l'evoluzione della specie della data integration
PPTX
Introduzione a Docker
PPTX
Seminario Big Data
PPTX
Real world Visual Studio Code
PPTX
Architetture a Microservizi con Docker Container
PPTX
Da JavaScript a TypeScript
PPTX
Docker as a hosting target
PPTX
Da imperativo a reattivo: Bacon.JS
PPTX
Event streaming pipeline with Windows Azure and ArcGIS Geoevent extension
PPTX
Code quality e test automatizzati con JavaScript
PPTX
Single Page Applications
PPTX
Javascript Unit Testing
PPTX
Single Page web Application
PPTX
Javascript avanzato: sfruttare al massimo il web
PPTX
Usare Knockout JS
PPTX
MV* presentation frameworks in Javascript: en garde, pret, allez!
Azure Synapse: data lake & modern data warehouse dalla A alla Z
Azure Data Factory: l'evoluzione della specie della data integration
Introduzione a Docker
Seminario Big Data
Real world Visual Studio Code
Architetture a Microservizi con Docker Container
Da JavaScript a TypeScript
Docker as a hosting target
Da imperativo a reattivo: Bacon.JS
Event streaming pipeline with Windows Azure and ArcGIS Geoevent extension
Code quality e test automatizzati con JavaScript
Single Page Applications
Javascript Unit Testing
Single Page web Application
Javascript avanzato: sfruttare al massimo il web
Usare Knockout JS
MV* presentation frameworks in Javascript: en garde, pret, allez!

Recently uploaded (20)

PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
Cloud computing and distributed systems.
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
KodekX | Application Modernization Development
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Digital-Transformation-Roadmap-for-Companies.pptx
Chapter 3 Spatial Domain Image Processing.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
A Presentation on Artificial Intelligence
The Rise and Fall of 3GPP – Time for a Sabbatical?
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Agricultural_Statistics_at_a_Glance_2022_0.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Per capita expenditure prediction using model stacking based on satellite ima...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Cloud computing and distributed systems.
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
NewMind AI Weekly Chronicles - August'25 Week I
KodekX | Application Modernization Development
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication

Web technologies and patterns in HTML5 mapping

  • 2.  Value Lab is a management consulting and IT solutions company specialized in Marketing, Sales and Retailing  Our goal is to help Manufactures, Retailers and Service company to improve their commercial performance and strengthen their competitive positioning, supporting their stratiegic decisions and operational management  Founded in 1990 we have two offices in Milan and Rome and we operate in Italy and abroad
  • 3.  As IT system integrator and italian ESRI Business Partner company we use and customize a wide range of software solutions including ESRI ArcGIS platform  We provide geomarketing and geo-BI solutions to our customers, based on our micro-geographical data (at census and street number level)
  • 5.  We had a geomarketing solution based on ESRI Silverlight API › No browser vendor issues › Great developer experience in terms of technology and productivity › Great third parties support in terms of tools and UI widgets
  • 6.  Then Steve Jobs "invented" a new technology user experience: the mobile touch › iPhone started the smartphone era › iPad started the tablet era  Our customers, the old ones and the new ones, started to ask us to play with our web solution also on that devices
  • 7.  We tried first to support iPad users developing a prototype with ESRI ArcGIS iOS API, but we realized that wasn't possible for us to maintain several different applications, one for every SDK  We decided to try to embrace the "new- wave" and its "write once, run everywhere" promise: HTML5
  • 8.  We know our end user scenario is very particular: › End user is usually a business analyst, he's not a classical GIS user so our solutions are not GIS centric: the map is only another way to show performance KPIs › Our end users usually are not particularly interested in technology, but they ask for usability and high customizations
  • 9.  Yes you're right: "5" stands for HTML5  We decided to develop a web solution with specific features both server side and client side: › Maintainable › Configurable and composable based on user account › Secure › User friendly
  • 10.  Server side GeoIntelligence5 is built on: › Microsoft ASP.NET MVC 3 › Microsoft Enterprise Library 5.0 › Microsoft Entity Framework 4.x › Microsoft WCF REST Services › Managed Extensibility Framework (MEF) › Combres
  • 11.  Client side GeoIntelligence5 is built on: › ArcGIS Javascript API › jQuery › jQuery UI › Knockout JS › Linq JS  But most of all Javascript Design Patterns › Inheritance, Namespace, Module, M-V-VM
  • 12.  GeoIntelligence 5 shares and extends the ArcGIS Server user accountability system based on Microsoft SQL Server  We use Microsoft Entity Framework to access basic membership informations and the extended user configuration settings
  • 13.  GeoIntelligence5 is fully based on Microsoft Enterprise Library at infrastructure level to manage cross-cutting concerns: › Dependency Injection & Interception › Logging › Security › Caching › Validation › Exception handling
  • 14.  We decided to expose application services in the same way ArcGIS Server do: HTTP REST services  Client-Side we can use the same paradigm to access both ArcGIS services and application services  We decided to use Microsoft WCF REST Services because of its no-configuration capability and integration with ASP.NET
  • 15.  GeoIntelligence5 is a plug-in based system: user account configuration contains the plug-in list available for that user  Managed Extensibility Framework is the key factor technology in our plug-in architecture in terms of single plug-in deployment, runtime registration and loading
  • 16.  HTML5 client-side richness means we have to face a large number of CSS and Javascript files  GeoIntelligence5 integrates Combres to streamline client-side resources optimization: › Runtime minification › Caching › Reduced number of client requests
  • 17.  We decided to use jQuery as main Javascript support framework because of: › Wide adoption and documentation › Great third parties plug-in avalaibility › Simplicity › Customization
  • 18.  Linq is one of the most important innovation in software development  Querying arrays and objects (such as the complex user configuration graph) is very easy using Linq JS
  • 19.  One of the most productive UI presentation patterns is Model-View- ViewModel  Knockout JS is a complete M-V-VM implementation in Javascript: › Clean HTML markup › Clear separation between UI and business code › Simple databinding mechanism