How It Should BeData Sources Server Service DevicesContent Provider Content Consumer
How It Should Be• Clear separation of concerns• Data• Service• Consumption Device• Device Agnostic• Requires well thought out architecture and API• Non-trivial effort
Common SLG ScenarioData Sources Server DevicesContent Provider Content ConsumerWeb Site• This scenario is not limited to SLG, smaller organizations do not havebudget to build out a more web-aware SOA system.
Many SLG Public Sector Scenarios• Virtually every locality has a web site• Few have a fully built out web-rich SOA architecture• Access to content is via browser• Non-native experience• Website may not be optimized for mobile• Less than perfect experience• There “no app for that”• No app means they are not on our platform• Missed opportunities• For Citizens• For Governments
Screen Scraper Utility Kit Takes unstructured data and gives it structure Designed was targeting Web based scenarios Virtually every agency/town/locality/etc has a web site HTML by nature has some structure The SSUK leverages that Flexible approach to screen scraping Can be made change resilient Already available Over 1100 downloads for WinRT version / Over 1700 for WP7 / .NET version
Case Study: Vietnam Wall WP7 App• Data source: http://virtualwall.org/valor.htm• WP7 App: http://www.windowsphone.com/en-US/apps/0b758fa2-6414-4381-923e-557172cb3edc?wa=wsignin1.0
Basic Screen ScrapingSource PageApp on DeviceApp Pulls in Data fromSource Page and Parses itinto View Model.
Definitions-Based Screen ScrapingSource PageApp on DeviceApp Pulls in Data fromSource Page. Parses itinto View Model based oninstructions in aDefinition file.Definition FileCloud
Definitions Change the GameDefinition files make a screen scraping solution:• Resilient to change• Changing definition file hosted in the cloud would not require changes tothe app• Viable• Increased resilience and flexibility• Use developer friendly formats:• XML (WinRT, WP7, & .NET)• JSON (WinRT)
What the Scraper MakesData Sources Server Scraper DevicesContent Provider Content ConsumerWeb Site The Screen Scraper Utility Kit takes un-structured data and converts it into astructured data source locally on the device.
Bridging the Gap Between Ideal Architecture& What’s Actually Out in the Field
What Azure Integration Will Look LikeData SourcesServer Scraper DevicesContent Provider Content ConsumerWeb Site The Screen Scraper Utility Kit takes un-structured data and converts it into astructured data source locally on the device.ServiceAzure Data Adapter