SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Application Development Guidelines
             Developing fit for purpose applications



Dr. Kamran Kordi
Deutsche Telekom AG
Group Technology
1 million GSM subscribers
                                                      over 100 million GSM subscribers             1 billion GSM subscribers



                1979   1981      1991        1994 1995               1999          2000     2002       2003          2007 2008




                                                                                                                                        Google
                                                                                                                                        Market,
                                                                                                                         AppStore       OVI, ...




                                                                                                                                                  Apps and gadgets
                                                                                                                                               Device vendors
                                                                                          Blackberry
                                                                                          smartphone               iPhone
                                                                         i-mode
                                                                     WAP




                                                                                                                                               Network operators
Communication




                              First GSM call      1st video call                  GPRS               EDGE
                NTT NMT             data/fax bearer service                                 MMS
                1G networks   GSM                                                                                                       3G
                                                                                                                                    2              2
Why a developer guidelines document? What is it not?!
   Developer Guidelines (Dev Guide) is meant to

        Encourage best practices in developing native mobile applications
        Identify key principles in designing applications using limited resources
        Highlight peculiarities of each target terminal platform
        Create in-depth awareness amongst novice developers for mobile terminals



   Dev Guide does not teach software development




                                                                                     3
Network friendly user experience




                                  It is the end-to-end user experience

Deutsche Telekom AG, Group Technology – PD1   Smartphone Challenge
                                                                         4
User Experience




  Latency                        Asynchrony          Non-modal user interface   Connection loss
                                                                                   and error handling




Deutsche Telekom AG, Group Technology – PD1      Smartphone Challenge
                                                                                                        5
User experience

    Users expect to see results immediately
              Different factors contribute to latency as a user experience
     Manage impact of latency by using:
              Local data or cache instead of the network
              Efficient network connectivity
                       Use the network when necessary
              Select efficient data formats
              Optimise user interface in the context!



    Latency                      Asynchrony         Non-modal user interface   Connection loss
                                                                                  and error handling




Deutsche Telekom AG, Group Technology – PD1     Smartphone Challenge
                                                                                                       6
User experience
Mobile networks are relatively slow

Synchronous requests                                    News feed    Image 1
                                                                     Image 1            Image 2                 Image 3




Asynchronous requests                                   News feed
                                                         e s eed


(ideal)                                                                 Image 1

                                                                        Image 2

                                                                        Image 3




Asynchronous requests                                   e s eed
                                                        News feed


(real mobile network)                                                             Image 1

                                                                        Image 2

                                                                                        Image 3 (no response)                   X




  Latency                        Asynchrony       Non-modal user interface                        Connection loss
                                                                                                           and error handling




Deutsche Telekom AG, Group Technology – PD1   Smartphone Challenge
                                                                                                                                    7
User experience
    User interface should not be blocking
              Network activities should be visible to the end user




    Latency                      Asynchrony       Non-modal user interface   Connection loss
                                                                                and error handling




Deutsche Telekom AG, Group Technology – PD1   Smartphone Challenge
                                                                                                     8
User experience

    Mobile networks are not always reliable
              Response to a request can be delayed or undelivered


    Connection error should be handled based on use case scenarios:
              User initiated or non-user initiated requests
                     Primary or secondary requests
              Resume and retry strategy
              Error notifications



    Latency                      Asynchrony        Non-modal user interface   Connection loss
                                                                                 and error handling




Deutsche Telekom AG, Group Technology – PD1   Smartphone Challenge
                                                                                                      9
Optimising requests to the network




      Local cache                             Media transcoding                Application scaling
   reduce number of requests → signalling         reducing traffic → latency        reducing load on network




Deutsche Telekom AG, Group Technology – PD1          Smartphone Challenge
                                                                                                               10
Network efficiency




   Fast Dormancy                              Compression                   HTTP Cache                   Data formats
     awareness of network specifics           reducing traffic → latency    reducing traffic → latency   reducing traffic → latency
                                                                      Security


Deutsche Telekom AG, Group Technology – PD1                    Smartphone Challenge
                                                                                                                                      11
Network efficiency
   Awareness of how networks work to save battery and reduce signalling




                                                                                               Data transfer
        Data transfer




                                                                                       Power
Power




                                                   Time                                                                         Time




        Fast Dormancy                                     Compression                                      HTTP Cache                  Data formats
                  awareness of network specifics          reducing traffic → latency               reducing traffic → latency          reducing traffic → latency



                                                                                  Security


   Deutsche Telekom AG, Group Technology – PD1                             Smartphone Challenge
                                                                                                                                                                    12
Network efficiency

    HTTP supports compression at a protocol level                                                       80% less
              Most web servers use HTTP compression                                                      volume
              Suitable for text data
              On average saves about 80% of traffic
              Reduced amount of data results in reduced latency




    Fast Dormancy                             Compression                   HTTP Cache                    Data formats
     awareness of network specifics           reducing traffic → latency    reducing traffic → latency   reducing traffic → latency



                                                                      Security


Deutsche Telekom AG, Group Technology – PD1                   Smartphone Challenge
                                                                                                                                      13
Network efficiency
   HTTP protocol can reduce risk of showing out-of-date cached data
              By verifying client’s and server’s versions of content
     Using HTTP cache and conditional requests has beneficial impact on:
              Always up-to-date information
              Content is delivered if there is new data
                       otherwise old version of the local cache is used
              Reduced traffic improves user experience (latency)



    Fast Dormancy                             Compression                   HTTP Cache                   Data formats
     awareness of network specifics           reducing traffic → latency    reducing traffic → latency   reducing traffic → latency



                                                                      Security


Deutsche Telekom AG, Group Technology – PD1                    Smartphone Challenge
                                                                                                                                      14
Network efficiency

   Efficiency of data format is defined by ratio of the actual data to transmitted data
              Ideally, should be 100%, but there is always overhead
              Compression reduces format differences for text information (JSON vs XML)
                       Difference between Web Service and parsing full Web Page will still be significant
                                     For example HTML vs JSON/XML

              Media transcoding (using appropriate media quality/bit-rate) is critical
                       Media files can not be further compressed beyond standard formats



    Fast Dormancy                             Compression                   HTTP Cache                   Data formats
     awareness of network specifics           reducing traffic → latency    reducing traffic → latency   reducing traffic → latency



                                                                      Security


Deutsche Telekom AG, Group Technology – PD1                    Smartphone Challenge
                                                                                                                                      15
Network efficiency

   Mobile devices can be connected to public Wi-Fi hotspots at any time
              Applications should take care of user’s data security
   As a minimum, standard techniques should be used when necessary:
              User Authentication
              Authentication of servers
              Secure data exchange (SSL)
              Secure data storage


    Fast Dormancy                             Compression                   HTTP Cache                   Data formats
     awareness of network specifics           reducing traffic → latency    reducing traffic → latency   reducing traffic → latency



                                                                      Security


Deutsche Telekom AG, Group Technology – PD1                    Smartphone Challenge
                                                                                                                                      16
Detailed recommendations: A brief summary




   Platform constraints
   Highlight visible gaps in the platforms
   Solutions to produce network-friendly applications
              Best practices of using APIs
              Third-party frameworks and platforms




Deutsche Telekom AG, Group Technology – PD1   Smartphone Challenge
                                                                     17
iOS impressions

   Apple defines the level of quality for user interface and user experience
              It supports developers to produce network efficient applications (WWDC)
   APIs are close to ideal:
              Asynchronous design by default
              Secure storage for credentials
              Compression is supported by default
              Background mode is optimised to improve performance/battery/network efficiency

   Gaps:
              Default local cache does not support on-disk storage
              HTTP cache is limited – does not support conditional requests automatically




Deutsche Telekom AG, Group Technology – PD1   Smartphone Challenge
                                                                                                18
Android impressions


    It is mostly up to the developers to deliver good user experience

    Gaps:
              Push notifications came very late (2.2); developers had to poll data instead
                     Fragmentation is an issue: Google Dashboard indicates 36% of devices < 2.2
              Caching is not supported by default
              HTTP Compression is not enabled by default
              Unrestricted background mode
                     May lead to inefficient use of on-device resources
                     Significant effort for developers to create optimal applications
              No strong guidelines from Google on how to build network friendly apps



Deutsche Telekom AG, Group Technology – PD1        Smartphone Challenge
                                                                                                   19
Windows Phone impressions

   Asynchronous design by default
   Silverlight UI has its own asynchronous download manager
   Push Notification Framework
              Supported by default
              Priority notification is supported
                     It improves aggregation and application scaling
   Gaps:
              Caching is not supported by default
              Does not support background services at all
              Compression is not supported by default
              No structured local storage (database) makes it difficult to handle local data
              Resuming of applications (tombstoning) usually causes additional traffic on
               resuming applications


Deutsche Telekom AG, Group Technology – PD1       Smartphone Challenge
                                                                                                20
Next steps

   The draft document is under discussion in GSMA
              The draft version has already been reviewed by a number of companies
              There is a strong backing in the GSMA for this initiative

   Deutsche Telekom leads the activity in GSMA
              Different companies (both MNOs and Vendors) will contribute actively

   We are seeking active contribution from the developers community
              To make the document more relevant and complete in content
   Please email me your contributions for consideration
              All views would be considered with an open mind
              Kamran.kordi@telekom.com



Deutsche Telekom AG, Group Technology – PD1   Smartphone Challenge
                                                                                      21
Thank you
                                                 for not sleeping!

                                                    Kamran Kordi
                                              kamran.kordi@telekom.com




Deutsche Telekom AG, Group Technology – PD1        Smartphone Challenge
                                                                          22

Contenu connexe

Tendances

Bug Labs - Gadget Development Program
Bug Labs - Gadget Development ProgramBug Labs - Gadget Development Program
Bug Labs - Gadget Development Programbuglabs
 
20110918 Mobile-Wireless
20110918 Mobile-Wireless20110918 Mobile-Wireless
20110918 Mobile-Wirelesspetch243
 
Optimizing Email for Mobile Devices
Optimizing Email for Mobile DevicesOptimizing Email for Mobile Devices
Optimizing Email for Mobile DevicesSilverpop
 
Cloud e seus impactos nos testes de software
Cloud e seus impactos nos testes de softwareCloud e seus impactos nos testes de software
Cloud e seus impactos nos testes de softwareCezar Taurion
 
future of mobile media (kienhuis) @ mobile convention amsterdam
future of mobile media (kienhuis) @ mobile convention amsterdamfuture of mobile media (kienhuis) @ mobile convention amsterdam
future of mobile media (kienhuis) @ mobile convention amsterdamHerman Kienhuis
 
Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...
Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...
Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...Kenji Hara
 
Facebook of Things - The importance of End Users within M2M Systems
Facebook of Things - The importance of End Users within M2M SystemsFacebook of Things - The importance of End Users within M2M Systems
Facebook of Things - The importance of End Users within M2M SystemsPeter Decker
 
Facebook Ad Targeting for Mobile Marketers
Facebook Ad Targeting for Mobile MarketersFacebook Ad Targeting for Mobile Marketers
Facebook Ad Targeting for Mobile MarketersStephen Cater
 
Smart_intelligent_and_mobile_The_time_is_now!
Smart_intelligent_and_mobile_The_time_is_now!Smart_intelligent_and_mobile_The_time_is_now!
Smart_intelligent_and_mobile_The_time_is_now!Gemius
 
Enterprise domain sisus 1709
Enterprise domain sisus 1709Enterprise domain sisus 1709
Enterprise domain sisus 1709webhostingguy
 
Future of mobile media @ Future Ideas by h.kienhuis (sanoma)
Future of mobile media @ Future Ideas by h.kienhuis (sanoma)Future of mobile media @ Future Ideas by h.kienhuis (sanoma)
Future of mobile media @ Future Ideas by h.kienhuis (sanoma)Herman Kienhuis
 
Connect M Corporate Overview
Connect M Corporate OverviewConnect M Corporate Overview
Connect M Corporate OverviewShraddha Majali
 
GMobi company profile
GMobi company profileGMobi company profile
GMobi company profile磊 王
 
Bug Labs - Overview
Bug Labs - OverviewBug Labs - Overview
Bug Labs - Overviewbuglabs
 
Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012
Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012
Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012Juniper Networks
 
The Importance of Integrating Mobile
The Importance of Integrating MobileThe Importance of Integrating Mobile
The Importance of Integrating Mobilefivebyfive
 
Comarch Technology Review, in Focus: Mobile Technologies
Comarch Technology Review, in Focus: Mobile TechnologiesComarch Technology Review, in Focus: Mobile Technologies
Comarch Technology Review, in Focus: Mobile TechnologiesComarch
 

Tendances (19)

Bug Labs - Gadget Development Program
Bug Labs - Gadget Development ProgramBug Labs - Gadget Development Program
Bug Labs - Gadget Development Program
 
20110918 Mobile-Wireless
20110918 Mobile-Wireless20110918 Mobile-Wireless
20110918 Mobile-Wireless
 
Optimizing Email for Mobile Devices
Optimizing Email for Mobile DevicesOptimizing Email for Mobile Devices
Optimizing Email for Mobile Devices
 
Cloud e seus impactos nos testes de software
Cloud e seus impactos nos testes de softwareCloud e seus impactos nos testes de software
Cloud e seus impactos nos testes de software
 
future of mobile media (kienhuis) @ mobile convention amsterdam
future of mobile media (kienhuis) @ mobile convention amsterdamfuture of mobile media (kienhuis) @ mobile convention amsterdam
future of mobile media (kienhuis) @ mobile convention amsterdam
 
Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...
Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...
Hadoop World 2011: Large Scale Log Data Analysis for Marketing in NTT Communi...
 
Facebook of Things - The importance of End Users within M2M Systems
Facebook of Things - The importance of End Users within M2M SystemsFacebook of Things - The importance of End Users within M2M Systems
Facebook of Things - The importance of End Users within M2M Systems
 
Facebook Ad Targeting for Mobile Marketers
Facebook Ad Targeting for Mobile MarketersFacebook Ad Targeting for Mobile Marketers
Facebook Ad Targeting for Mobile Marketers
 
Smart_intelligent_and_mobile_The_time_is_now!
Smart_intelligent_and_mobile_The_time_is_now!Smart_intelligent_and_mobile_The_time_is_now!
Smart_intelligent_and_mobile_The_time_is_now!
 
Enterprise domain sisus 1709
Enterprise domain sisus 1709Enterprise domain sisus 1709
Enterprise domain sisus 1709
 
Future of mobile media @ Future Ideas by h.kienhuis (sanoma)
Future of mobile media @ Future Ideas by h.kienhuis (sanoma)Future of mobile media @ Future Ideas by h.kienhuis (sanoma)
Future of mobile media @ Future Ideas by h.kienhuis (sanoma)
 
Soupal
SoupalSoupal
Soupal
 
Connect M Corporate Overview
Connect M Corporate OverviewConnect M Corporate Overview
Connect M Corporate Overview
 
Situational Web
Situational WebSituational Web
Situational Web
 
GMobi company profile
GMobi company profileGMobi company profile
GMobi company profile
 
Bug Labs - Overview
Bug Labs - OverviewBug Labs - Overview
Bug Labs - Overview
 
Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012
Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012
Juniper Networks IR Investor and Analyst Update - Mobile World Congress 2012
 
The Importance of Integrating Mobile
The Importance of Integrating MobileThe Importance of Integrating Mobile
The Importance of Integrating Mobile
 
Comarch Technology Review, in Focus: Mobile Technologies
Comarch Technology Review, in Focus: Mobile TechnologiesComarch Technology Review, in Focus: Mobile Technologies
Comarch Technology Review, in Focus: Mobile Technologies
 

Similaire à Application Development Guidelines

Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility Robert Sutor
 
3 g be technologized by Dev yusmananda
3 g   be technologized by Dev yusmananda3 g   be technologized by Dev yusmananda
3 g be technologized by Dev yusmanandadev yusmananda
 
ULink: link you and me in the mobile world
ULink: link you and me in the mobile worldULink: link you and me in the mobile world
ULink: link you and me in the mobile worldFudan University
 
Sip vo ip-ims-convergence-d2-10 at kishore
Sip vo ip-ims-convergence-d2-10 at kishoreSip vo ip-ims-convergence-d2-10 at kishore
Sip vo ip-ims-convergence-d2-10 at kishoreAT Kishore
 
Smartphone Challenge: Guidelines for development of network friendly applicat...
Smartphone Challenge: Guidelines for development of network friendly applicat...Smartphone Challenge: Guidelines for development of network friendly applicat...
Smartphone Challenge: Guidelines for development of network friendly applicat...Daniel Appelquist
 
handling-of-signaling-storms-in-mobile-networks-august
handling-of-signaling-storms-in-mobile-networks-augusthandling-of-signaling-storms-in-mobile-networks-august
handling-of-signaling-storms-in-mobile-networks-augustDaniel Mateos P
 
IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...
IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...
IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...IRJET Journal
 
A Mobile Centric View of Silicon Valley - January 2011
A Mobile Centric View of Silicon Valley - January 2011A Mobile Centric View of Silicon Valley - January 2011
A Mobile Centric View of Silicon Valley - January 2011Lars Kamp
 
Semantic Service Creation for Mobile Users
Semantic Service Creation for Mobile UsersSemantic Service Creation for Mobile Users
Semantic Service Creation for Mobile UsersJosef Noll
 
Secured Way Of Offloading Mobile Cloud Process For Smart Phone
Secured Way Of Offloading Mobile Cloud Process For Smart PhoneSecured Way Of Offloading Mobile Cloud Process For Smart Phone
Secured Way Of Offloading Mobile Cloud Process For Smart PhoneIRJET Journal
 
IRJET - Dual Verification ATM for Blind People
IRJET -  	  Dual Verification ATM for Blind PeopleIRJET -  	  Dual Verification ATM for Blind People
IRJET - Dual Verification ATM for Blind PeopleIRJET Journal
 
A novel approach towards a Smarter DSLR Camera
A novel approach towards a Smarter DSLR CameraA novel approach towards a Smarter DSLR Camera
A novel approach towards a Smarter DSLR CameraHCL Technologies
 
Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...
Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...
Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...Saiful Hidayat
 
Gunnar Florus - Manchester
Gunnar Florus - ManchesterGunnar Florus - Manchester
Gunnar Florus - ManchesterMarit Hendriks
 

Similaire à Application Development Guidelines (20)

Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
 
3 g be technologized by Dev yusmananda
3 g   be technologized by Dev yusmananda3 g   be technologized by Dev yusmananda
3 g be technologized by Dev yusmananda
 
ULink: link you and me in the mobile world
ULink: link you and me in the mobile worldULink: link you and me in the mobile world
ULink: link you and me in the mobile world
 
Sip vo ip-ims-convergence-d2-10 at kishore
Sip vo ip-ims-convergence-d2-10 at kishoreSip vo ip-ims-convergence-d2-10 at kishore
Sip vo ip-ims-convergence-d2-10 at kishore
 
Smartphone Challenge: Guidelines for development of network friendly applicat...
Smartphone Challenge: Guidelines for development of network friendly applicat...Smartphone Challenge: Guidelines for development of network friendly applicat...
Smartphone Challenge: Guidelines for development of network friendly applicat...
 
handling-of-signaling-storms-in-mobile-networks-august
handling-of-signaling-storms-in-mobile-networks-augusthandling-of-signaling-storms-in-mobile-networks-august
handling-of-signaling-storms-in-mobile-networks-august
 
IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...
IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...
IRJET- Smart Home Automated Control and Automatic Doorbell Alert using Androi...
 
Mobile computing
Mobile computingMobile computing
Mobile computing
 
A Mobile Centric View of Silicon Valley - January 2011
A Mobile Centric View of Silicon Valley - January 2011A Mobile Centric View of Silicon Valley - January 2011
A Mobile Centric View of Silicon Valley - January 2011
 
Semantic Service Creation for Mobile Users
Semantic Service Creation for Mobile UsersSemantic Service Creation for Mobile Users
Semantic Service Creation for Mobile Users
 
Secured Way Of Offloading Mobile Cloud Process For Smart Phone
Secured Way Of Offloading Mobile Cloud Process For Smart PhoneSecured Way Of Offloading Mobile Cloud Process For Smart Phone
Secured Way Of Offloading Mobile Cloud Process For Smart Phone
 
3g basic
3g basic3g basic
3g basic
 
Mohamed Said
Mohamed SaidMohamed Said
Mohamed Said
 
3 g and 4g final ppt
3 g and 4g final ppt3 g and 4g final ppt
3 g and 4g final ppt
 
IRJET - Dual Verification ATM for Blind People
IRJET -  	  Dual Verification ATM for Blind PeopleIRJET -  	  Dual Verification ATM for Blind People
IRJET - Dual Verification ATM for Blind People
 
120
120120
120
 
REPORTOF MEMS2
REPORTOF MEMS2REPORTOF MEMS2
REPORTOF MEMS2
 
A novel approach towards a Smarter DSLR Camera
A novel approach towards a Smarter DSLR CameraA novel approach towards a Smarter DSLR Camera
A novel approach towards a Smarter DSLR Camera
 
Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...
Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...
Saiful Hidayat Trend Teknologi Digital Dan Dalam Pendidikan Bagimu Guru Kuper...
 
Gunnar Florus - Manchester
Gunnar Florus - ManchesterGunnar Florus - Manchester
Gunnar Florus - Manchester
 

Plus de Daniel Appelquist

Why we need a more Ethical Web
Why we need a more Ethical Web   Why we need a more Ethical Web
Why we need a more Ethical Web Daniel Appelquist
 
You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...
You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...
You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...Daniel Appelquist
 
"The Web - You're Doing it Wrong" for Forum Oxford May 2014
"The Web - You're Doing it Wrong" for Forum Oxford May 2014"The Web - You're Doing it Wrong" for Forum Oxford May 2014
"The Web - You're Doing it Wrong" for Forum Oxford May 2014Daniel Appelquist
 
What is a Capability URL (and why do I care?)
What is a Capability URL (and why do I care?)What is a Capability URL (and why do I care?)
What is a Capability URL (and why do I care?)Daniel Appelquist
 
What's new in web standards?
What's new in web standards?What's new in web standards?
What's new in web standards?Daniel Appelquist
 
Rise of Mobile and Web Runtimes - for Standards-Next
Rise of Mobile and Web Runtimes - for Standards-NextRise of Mobile and Web Runtimes - for Standards-Next
Rise of Mobile and Web Runtimes - for Standards-NextDaniel Appelquist
 
SXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web RuntimesSXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web RuntimesDaniel Appelquist
 
Emerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer CampEmerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer CampDaniel Appelquist
 
Nokia Web-Runtime Presentation (Phong Vu)
Nokia Web-Runtime Presentation (Phong Vu)Nokia Web-Runtime Presentation (Phong Vu)
Nokia Web-Runtime Presentation (Phong Vu)Daniel Appelquist
 
Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)
Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)
Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)Daniel Appelquist
 
Mobile Ajax and the Future of the Web
Mobile Ajax and the Future of the WebMobile Ajax and the Future of the Web
Mobile Ajax and the Future of the WebDaniel Appelquist
 
Over The Air Keynote - Dan Appelquist
Over The Air Keynote - Dan AppelquistOver The Air Keynote - Dan Appelquist
Over The Air Keynote - Dan AppelquistDaniel Appelquist
 

Plus de Daniel Appelquist (12)

Why we need a more Ethical Web
Why we need a more Ethical Web   Why we need a more Ethical Web
Why we need a more Ethical Web
 
You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...
You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...
You're Doing it Wrong – How App Developers Can Leverage the Web (June 2015 fo...
 
"The Web - You're Doing it Wrong" for Forum Oxford May 2014
"The Web - You're Doing it Wrong" for Forum Oxford May 2014"The Web - You're Doing it Wrong" for Forum Oxford May 2014
"The Web - You're Doing it Wrong" for Forum Oxford May 2014
 
What is a Capability URL (and why do I care?)
What is a Capability URL (and why do I care?)What is a Capability URL (and why do I care?)
What is a Capability URL (and why do I care?)
 
What's new in web standards?
What's new in web standards?What's new in web standards?
What's new in web standards?
 
Rise of Mobile and Web Runtimes - for Standards-Next
Rise of Mobile and Web Runtimes - for Standards-NextRise of Mobile and Web Runtimes - for Standards-Next
Rise of Mobile and Web Runtimes - for Standards-Next
 
SXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web RuntimesSXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
 
Emerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer CampEmerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer Camp
 
Nokia Web-Runtime Presentation (Phong Vu)
Nokia Web-Runtime Presentation (Phong Vu)Nokia Web-Runtime Presentation (Phong Vu)
Nokia Web-Runtime Presentation (Phong Vu)
 
Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)
Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)
Yahoo Blueprint for Mobile Widget Aamp Austin (Markus Spiering)
 
Mobile Ajax and the Future of the Web
Mobile Ajax and the Future of the WebMobile Ajax and the Future of the Web
Mobile Ajax and the Future of the Web
 
Over The Air Keynote - Dan Appelquist
Over The Air Keynote - Dan AppelquistOver The Air Keynote - Dan Appelquist
Over The Air Keynote - Dan Appelquist
 

Dernier

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 

Dernier (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 

Application Development Guidelines

  • 1. Application Development Guidelines Developing fit for purpose applications Dr. Kamran Kordi Deutsche Telekom AG Group Technology
  • 2. 1 million GSM subscribers over 100 million GSM subscribers 1 billion GSM subscribers 1979 1981 1991 1994 1995 1999 2000 2002 2003 2007 2008 Google Market, AppStore OVI, ... Apps and gadgets Device vendors Blackberry smartphone iPhone i-mode WAP Network operators Communication First GSM call 1st video call GPRS EDGE NTT NMT data/fax bearer service MMS 1G networks GSM 3G 2 2
  • 3. Why a developer guidelines document? What is it not?!  Developer Guidelines (Dev Guide) is meant to  Encourage best practices in developing native mobile applications  Identify key principles in designing applications using limited resources  Highlight peculiarities of each target terminal platform  Create in-depth awareness amongst novice developers for mobile terminals  Dev Guide does not teach software development 3
  • 4. Network friendly user experience It is the end-to-end user experience Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 4
  • 5. User Experience Latency Asynchrony Non-modal user interface Connection loss and error handling Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 5
  • 6. User experience  Users expect to see results immediately  Different factors contribute to latency as a user experience  Manage impact of latency by using:  Local data or cache instead of the network  Efficient network connectivity  Use the network when necessary  Select efficient data formats  Optimise user interface in the context! Latency Asynchrony Non-modal user interface Connection loss and error handling Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 6
  • 7. User experience Mobile networks are relatively slow Synchronous requests News feed Image 1 Image 1 Image 2 Image 3 Asynchronous requests News feed e s eed (ideal) Image 1 Image 2 Image 3 Asynchronous requests e s eed News feed (real mobile network) Image 1 Image 2 Image 3 (no response) X Latency Asynchrony Non-modal user interface Connection loss and error handling Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 7
  • 8. User experience  User interface should not be blocking  Network activities should be visible to the end user Latency Asynchrony Non-modal user interface Connection loss and error handling Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 8
  • 9. User experience  Mobile networks are not always reliable  Response to a request can be delayed or undelivered  Connection error should be handled based on use case scenarios:  User initiated or non-user initiated requests  Primary or secondary requests  Resume and retry strategy  Error notifications Latency Asynchrony Non-modal user interface Connection loss and error handling Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 9
  • 10. Optimising requests to the network Local cache Media transcoding Application scaling reduce number of requests → signalling reducing traffic → latency reducing load on network Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 10
  • 11. Network efficiency Fast Dormancy Compression HTTP Cache Data formats awareness of network specifics reducing traffic → latency reducing traffic → latency reducing traffic → latency Security Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 11
  • 12. Network efficiency Awareness of how networks work to save battery and reduce signalling Data transfer Data transfer Power Power Time Time Fast Dormancy Compression HTTP Cache Data formats awareness of network specifics reducing traffic → latency reducing traffic → latency reducing traffic → latency Security Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 12
  • 13. Network efficiency  HTTP supports compression at a protocol level 80% less  Most web servers use HTTP compression volume  Suitable for text data  On average saves about 80% of traffic  Reduced amount of data results in reduced latency Fast Dormancy Compression HTTP Cache Data formats awareness of network specifics reducing traffic → latency reducing traffic → latency reducing traffic → latency Security Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 13
  • 14. Network efficiency  HTTP protocol can reduce risk of showing out-of-date cached data  By verifying client’s and server’s versions of content  Using HTTP cache and conditional requests has beneficial impact on:  Always up-to-date information  Content is delivered if there is new data  otherwise old version of the local cache is used  Reduced traffic improves user experience (latency) Fast Dormancy Compression HTTP Cache Data formats awareness of network specifics reducing traffic → latency reducing traffic → latency reducing traffic → latency Security Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 14
  • 15. Network efficiency  Efficiency of data format is defined by ratio of the actual data to transmitted data  Ideally, should be 100%, but there is always overhead  Compression reduces format differences for text information (JSON vs XML)  Difference between Web Service and parsing full Web Page will still be significant  For example HTML vs JSON/XML  Media transcoding (using appropriate media quality/bit-rate) is critical  Media files can not be further compressed beyond standard formats Fast Dormancy Compression HTTP Cache Data formats awareness of network specifics reducing traffic → latency reducing traffic → latency reducing traffic → latency Security Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 15
  • 16. Network efficiency  Mobile devices can be connected to public Wi-Fi hotspots at any time  Applications should take care of user’s data security  As a minimum, standard techniques should be used when necessary:  User Authentication  Authentication of servers  Secure data exchange (SSL)  Secure data storage Fast Dormancy Compression HTTP Cache Data formats awareness of network specifics reducing traffic → latency reducing traffic → latency reducing traffic → latency Security Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 16
  • 17. Detailed recommendations: A brief summary  Platform constraints  Highlight visible gaps in the platforms  Solutions to produce network-friendly applications  Best practices of using APIs  Third-party frameworks and platforms Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 17
  • 18. iOS impressions  Apple defines the level of quality for user interface and user experience  It supports developers to produce network efficient applications (WWDC)  APIs are close to ideal:  Asynchronous design by default  Secure storage for credentials  Compression is supported by default  Background mode is optimised to improve performance/battery/network efficiency  Gaps:  Default local cache does not support on-disk storage  HTTP cache is limited – does not support conditional requests automatically Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 18
  • 19. Android impressions  It is mostly up to the developers to deliver good user experience  Gaps:  Push notifications came very late (2.2); developers had to poll data instead  Fragmentation is an issue: Google Dashboard indicates 36% of devices < 2.2  Caching is not supported by default  HTTP Compression is not enabled by default  Unrestricted background mode  May lead to inefficient use of on-device resources  Significant effort for developers to create optimal applications  No strong guidelines from Google on how to build network friendly apps Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 19
  • 20. Windows Phone impressions  Asynchronous design by default  Silverlight UI has its own asynchronous download manager  Push Notification Framework  Supported by default  Priority notification is supported  It improves aggregation and application scaling  Gaps:  Caching is not supported by default  Does not support background services at all  Compression is not supported by default  No structured local storage (database) makes it difficult to handle local data  Resuming of applications (tombstoning) usually causes additional traffic on resuming applications Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 20
  • 21. Next steps  The draft document is under discussion in GSMA  The draft version has already been reviewed by a number of companies  There is a strong backing in the GSMA for this initiative  Deutsche Telekom leads the activity in GSMA  Different companies (both MNOs and Vendors) will contribute actively  We are seeking active contribution from the developers community  To make the document more relevant and complete in content  Please email me your contributions for consideration  All views would be considered with an open mind  Kamran.kordi@telekom.com Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 21
  • 22. Thank you for not sleeping! Kamran Kordi kamran.kordi@telekom.com Deutsche Telekom AG, Group Technology – PD1 Smartphone Challenge 22