SlideShare a Scribd company logo
Mobile applications for your customers
Case study: Brussels community website Customer Brussels hoofdstedelijk gewest CIBG (central IT department of Brussels) Goals Reinforce economy by creating a digital local community Monetise services / platform (in the long term) Must-have features Works offline: permanent presence on the user’s phone Automatic update of content through web services Easy distribution (SMS “MyService” to 3236) Website integration Works on 80% of mobile phones www.citylive.be
Functionality: online city community www.citylive.be
 
 
 
Solution architecture: Citylive Community Services Platform Functionality Service creation Service delivery Service management Technical SOA architecture SQL server 2000 DB MS .NET 3.0 framework backend / ASP.NET frontend Web services (JSON, REST, SOAP) through WCF Session management and telco service integration through Microsoft Connected Services Framework 3.0 www.citylive.be
Solution hardwarde Hosting:Kangaroot datacenter with Global Crossings, Tiscali and FreeBIX 1GB connections Servers: HP cluster with SAN as virtual server host Mobile phones: everything that runs Windows Mobile or Java J2ME  www.citylive.be
Solution software: Hydra Functionality: Collection of enabling services out-of-the-box Central & secure repository for profile and application data Provides abstraction layer for applications & websites using simple API’s Controlled environment handling privacy/authentication/authorization AD based authentication of services (internal or external) Impersonation for non-authenticated service consumers  Authorisation: own service or CSF www.citylive.be
Solution software: Application creation www.citylive.be
Solution software: Mobile Widget engines  Reference implementation on .NET Compact Framework After validation, porting to J2ME, Javascript, Flash Symbian: tried, but too fragmented / difficult process / weird architecture www.citylive.be
Operation / system management Service Operator : Has a web-based management interface Widget authors : publish their apps and remain responsible (are supported through separate glowe.org website and can come to information sessions) Community members : can transfer ownership of data entities in the system to each other. Escalation process with manual intervention if no agreement Users : select their own content & widgets, create their own accounts, distribution by SMS and self-installation Technical operations : regular process monitoring / server monitoring with MOM, regular DB and software maintenance schedules www.citylive.be
Development cycle for mobile Starts on PC prototyping in .NET on desktop before implementing in .NET CF (is one of the bis advantaged of Windows Mobile) Methodology: Scrum++ agility linked with the room to breath for some innovation Tools: Microsoft toolchain Visual studio, team server with sourcesafe, documentation on Sharepoint
Challenges / lessons learned Things to do Make mock-ups FIRST Mobile apps have no set expectation You can’t predict what will work Do extensive user testing Be prepared to change your concept Technical POC alone is not enough Use the internet & its protocols A mobile does not live in your network VPN’s are a thing of the past SOAP is nice when critical, XML is easier Use the universal firewall bypass port (80) Think Multi-platform 1 platform only is not realistic When you can: move up an abstraction layer or two (but web browser might be too thin) Things to avoid Stay out-of-control With mobile, the user is in control You can’t manage his device. Forget it. Give users tools so they can DIY. Avoid the bigger picture Focus on a concrete function with an immediate value add for the user Trying to change work processes, integrate with business intelligence, cover a larger scope: it will all fail Mobile is new: create demand first When it’s time for the bigger picture, current technology will be obsolete Translate the web to mobile In some cases, mobile websites are OK But: don’t just convert existing web tools Mobile has a different usage model then fixed (“browsing” is done on a desk) www.citylive.be
Influence of future evolutions from MS XAML : would make a great open cross-platform mobile abstraction layer (please) SQL server compact : gets you there fast, but needs to open up to other platforms to be viable outside of corporate walls. (e.g. use XML schemes in WCF) Popfly  (mashup dev tool): will really take of if given some mobile service delivery blocks DirectX : user input,video rendering,sound and 3D are big problems in mobile. MS has a nice architecture here Directpush : Don’t keep the magic for Activesync, open up the API to ISV’s. www.citylive.be Whishlist of things Microsoft can do for the mobile application industry
Stay in touch www.citylive.be blog.citylive.be   www.citylive.be

More Related Content

Microsoft Architect Council Mobile Applications

  • 1. Mobile applications for your customers
  • 2. Case study: Brussels community website Customer Brussels hoofdstedelijk gewest CIBG (central IT department of Brussels) Goals Reinforce economy by creating a digital local community Monetise services / platform (in the long term) Must-have features Works offline: permanent presence on the user’s phone Automatic update of content through web services Easy distribution (SMS “MyService” to 3236) Website integration Works on 80% of mobile phones www.citylive.be
  • 3. Functionality: online city community www.citylive.be
  • 4.  
  • 5.  
  • 6.  
  • 7. Solution architecture: Citylive Community Services Platform Functionality Service creation Service delivery Service management Technical SOA architecture SQL server 2000 DB MS .NET 3.0 framework backend / ASP.NET frontend Web services (JSON, REST, SOAP) through WCF Session management and telco service integration through Microsoft Connected Services Framework 3.0 www.citylive.be
  • 8. Solution hardwarde Hosting:Kangaroot datacenter with Global Crossings, Tiscali and FreeBIX 1GB connections Servers: HP cluster with SAN as virtual server host Mobile phones: everything that runs Windows Mobile or Java J2ME www.citylive.be
  • 9. Solution software: Hydra Functionality: Collection of enabling services out-of-the-box Central & secure repository for profile and application data Provides abstraction layer for applications & websites using simple API’s Controlled environment handling privacy/authentication/authorization AD based authentication of services (internal or external) Impersonation for non-authenticated service consumers Authorisation: own service or CSF www.citylive.be
  • 10. Solution software: Application creation www.citylive.be
  • 11. Solution software: Mobile Widget engines Reference implementation on .NET Compact Framework After validation, porting to J2ME, Javascript, Flash Symbian: tried, but too fragmented / difficult process / weird architecture www.citylive.be
  • 12. Operation / system management Service Operator : Has a web-based management interface Widget authors : publish their apps and remain responsible (are supported through separate glowe.org website and can come to information sessions) Community members : can transfer ownership of data entities in the system to each other. Escalation process with manual intervention if no agreement Users : select their own content & widgets, create their own accounts, distribution by SMS and self-installation Technical operations : regular process monitoring / server monitoring with MOM, regular DB and software maintenance schedules www.citylive.be
  • 13. Development cycle for mobile Starts on PC prototyping in .NET on desktop before implementing in .NET CF (is one of the bis advantaged of Windows Mobile) Methodology: Scrum++ agility linked with the room to breath for some innovation Tools: Microsoft toolchain Visual studio, team server with sourcesafe, documentation on Sharepoint
  • 14. Challenges / lessons learned Things to do Make mock-ups FIRST Mobile apps have no set expectation You can’t predict what will work Do extensive user testing Be prepared to change your concept Technical POC alone is not enough Use the internet & its protocols A mobile does not live in your network VPN’s are a thing of the past SOAP is nice when critical, XML is easier Use the universal firewall bypass port (80) Think Multi-platform 1 platform only is not realistic When you can: move up an abstraction layer or two (but web browser might be too thin) Things to avoid Stay out-of-control With mobile, the user is in control You can’t manage his device. Forget it. Give users tools so they can DIY. Avoid the bigger picture Focus on a concrete function with an immediate value add for the user Trying to change work processes, integrate with business intelligence, cover a larger scope: it will all fail Mobile is new: create demand first When it’s time for the bigger picture, current technology will be obsolete Translate the web to mobile In some cases, mobile websites are OK But: don’t just convert existing web tools Mobile has a different usage model then fixed (“browsing” is done on a desk) www.citylive.be
  • 15. Influence of future evolutions from MS XAML : would make a great open cross-platform mobile abstraction layer (please) SQL server compact : gets you there fast, but needs to open up to other platforms to be viable outside of corporate walls. (e.g. use XML schemes in WCF) Popfly (mashup dev tool): will really take of if given some mobile service delivery blocks DirectX : user input,video rendering,sound and 3D are big problems in mobile. MS has a nice architecture here Directpush : Don’t keep the magic for Activesync, open up the API to ISV’s. www.citylive.be Whishlist of things Microsoft can do for the mobile application industry
  • 16. Stay in touch www.citylive.be blog.citylive.be www.citylive.be