On July 21, 2010 by
                                                                       Romin Irani, Principal Architect
                                                                       Xoriant Corporation




                Webinar - Mobile Application
                Porting and Testing




                                                                        www.xoriant.com




July 21, 2010       © 2010 Xoriant Corporation. All rights reserved.                                 1
Agenda
                                                        Agenda


                Mobile Porting
                   The need for porting and challenges
                   Mobile Porting – First Steps
                   Case Studies
                   Recommendations




                Mobile Testing

                 Testing Scope
                 Case Studies
                 Recommendations




July 21, 2010           © 2010 Xoriant Corporation. All rights reserved.   2
Introduction
                                                  Introduction

                Mobilizing your Web / Enterprise Application is a reality.


                Need of mobile application for different mobile platforms.


                Programming application for each platform is a challenge:

                 Different Platform capabilities
                       Android, iPhone have more built in UI components than Blackberry
                 Incompatible versions within the same platform
                        Different screen resolutions between Blackberry Curve 8320 to Blackberry Bold 9000
                 Different programming languages.
                        C#, Java, Objective C, Qt (C++)
                 User Experience needs to be consistent across platforms
                        Customized Table Elements
                 Need to reuse existing code



                Testing applications across devices, networks and carriers.



July 21, 2010          © 2010 Xoriant Corporation. All rights reserved.                                3
Mobile Porting – First Steps
                Mobile Porting – application
                 Analyze the Mobile Our Experience

                 For each platform (or platform version), analyze the following:

                                                               Widgets (UI)
                                                               • Standard UI Controls
                                                               • Custom Controls                Location APIs
                                                                                                  • GPS
                                                                                                  • Google Map




                                                                                            File I/O
                                                                                            • XML files, Various
                                                                                              Data Formats




                                                            External
                                                            Services
                                                               • Networking
                                                               • Web Services
                                             AV /              (SOAP)                   Database
                                          Telephony/           • REST Services          • SQLite, MS SQL CE, etc
                                           Camera              • Social Media Sites




July 21, 2010         © 2010 Xoriant Corporation. All rights reserved.                                         4
Mobile Porting – Case Study 1
                 Mobile Porting – Examples

                Cloud File Storage Application
                       • Existing mobile application is in Blackberry.
                       • Application required to be ported on Android.




                Solution
                      • Cloud APIs were accessible via Web Services, so architecturally both
                        applications used the same Java code for retrieving data.
                      • Java code auto generated via a tool.
                      • Reused a module for encryption/decryption of local data in the
                        application (since both platforms are in Java).
                      • User Interface rewritten for Android.




July 21, 2010              © 2010 Xoriant Corporation. All rights reserved.                    5
Mobile Porting – Recommendations
                Mobile Porting – Our recommendations

                    Decode the Mobile application

                     Significantly cuts down development time
                     Reuse common modules across similar language platforms


                    Use Open Standards for External Integration.
                     Web Services, REST, HTTP, XML


                    Consider a Native Application for extra control and tighter
                    integration with device.
                     Sensor Programming, Audio/Video, GPS, Native UI controls


                    Consider a Mobile Web Application for maximum portability
                    across devices.
                     XHTML-MP, CSS




July 21, 2010            © 2010 Xoriant Corporation. All rights reserved.         6
Mobile Testing – Its not trivial
                 Mobile Testing – Its difficult




                Here are some reasons why?



                 Faster product cycles leading to new devices being added rapidly.

                 Multiple combinations of platforms and OS.

                 Locale specific testing across different countries.




July 21, 2010        © 2010 Xoriant Corporation. All rights reserved.             7
Mobile Testing Areas


                                                                          Network                         Enterprise
                     Device          Browser             Data                              Carrier
                                                                                                              App




                Device Level             Browser & Data Testing                Network & Carrier
                Testing                                                        Testing

                   Screen Size &            Cross browser testing               Mobile application
                    Appearance               Metrics measurement like             compatibility with
                   Conformity to             headers,                             different networks
                    common key                request/response,                    (CDMA 2000, GSM, W-
                    functions                 performance numbers,                 CDMA, GPRS, etc) and
                   Memory                    etc.                                 across various carriers.
                    Consumption,
                    Battery Usage




                   Phone                     User Agent Strings                 DeviceAnywhere.
                    Simulator                 HttpWatch - plug-ins for
                   Device                     IE and Firefox
                    Anywhere




July 21, 2010                   © 2010 Xoriant Corporation. All rights reserved.                                       8
Mobile Testing – Recommendations



                Mobile Testing is an integral part of a Mobile Development Project.



                Use of various tools/services as applicable.



                Incorporate testing scenarios specific to a Marketplace.
                E.g. App Store.



                Focus on Internationalization (I18n) testing for global audience.




July 21, 2010        © 2010 Xoriant Corporation. All rights reserved.           9
Xoriant – Mobile Center of Excellence




                An established Wireless and Mobile CoE.


                Developed applications across domains and platforms.


                Complete lifecycle development from Design, Implementation,
                Testing and Support.




July 21, 2010       © 2010 Xoriant Corporation. All rights reserved.          10
Thank you, do you have any questions?
                              Thank You!
                Contact Details


                Xoriant – Mobile Center of Excellence
                Email: sgosavi@xoriant.com
                http://www.xoriant.com
                Tel: +1 408-743-4404




July 21, 2010       © 2010 Xoriant Corporation. All rights reserved.   11

Mobile porting and testing - Xoriant

  • 1.
    On July 21,2010 by Romin Irani, Principal Architect Xoriant Corporation Webinar - Mobile Application Porting and Testing www.xoriant.com July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 1
  • 2.
    Agenda Agenda Mobile Porting  The need for porting and challenges  Mobile Porting – First Steps  Case Studies  Recommendations Mobile Testing  Testing Scope  Case Studies  Recommendations July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 2
  • 3.
    Introduction Introduction Mobilizing your Web / Enterprise Application is a reality. Need of mobile application for different mobile platforms. Programming application for each platform is a challenge:  Different Platform capabilities  Android, iPhone have more built in UI components than Blackberry  Incompatible versions within the same platform  Different screen resolutions between Blackberry Curve 8320 to Blackberry Bold 9000  Different programming languages.  C#, Java, Objective C, Qt (C++)  User Experience needs to be consistent across platforms  Customized Table Elements  Need to reuse existing code Testing applications across devices, networks and carriers. July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 3
  • 4.
    Mobile Porting –First Steps Mobile Porting – application Analyze the Mobile Our Experience  For each platform (or platform version), analyze the following: Widgets (UI) • Standard UI Controls • Custom Controls Location APIs • GPS • Google Map File I/O • XML files, Various Data Formats External Services • Networking • Web Services AV / (SOAP) Database Telephony/ • REST Services • SQLite, MS SQL CE, etc Camera • Social Media Sites July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 4
  • 5.
    Mobile Porting –Case Study 1 Mobile Porting – Examples Cloud File Storage Application • Existing mobile application is in Blackberry. • Application required to be ported on Android. Solution • Cloud APIs were accessible via Web Services, so architecturally both applications used the same Java code for retrieving data. • Java code auto generated via a tool. • Reused a module for encryption/decryption of local data in the application (since both platforms are in Java). • User Interface rewritten for Android. July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 5
  • 6.
    Mobile Porting –Recommendations Mobile Porting – Our recommendations Decode the Mobile application  Significantly cuts down development time  Reuse common modules across similar language platforms Use Open Standards for External Integration.  Web Services, REST, HTTP, XML Consider a Native Application for extra control and tighter integration with device.  Sensor Programming, Audio/Video, GPS, Native UI controls Consider a Mobile Web Application for maximum portability across devices.  XHTML-MP, CSS July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 6
  • 7.
    Mobile Testing –Its not trivial Mobile Testing – Its difficult Here are some reasons why?  Faster product cycles leading to new devices being added rapidly.  Multiple combinations of platforms and OS.  Locale specific testing across different countries. July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 7
  • 8.
    Mobile Testing Areas Network Enterprise Device Browser Data Carrier App Device Level Browser & Data Testing Network & Carrier Testing Testing  Screen Size &  Cross browser testing  Mobile application Appearance  Metrics measurement like compatibility with  Conformity to headers, different networks common key request/response, (CDMA 2000, GSM, W- functions performance numbers, CDMA, GPRS, etc) and  Memory etc. across various carriers. Consumption, Battery Usage  Phone  User Agent Strings  DeviceAnywhere. Simulator  HttpWatch - plug-ins for  Device IE and Firefox Anywhere July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 8
  • 9.
    Mobile Testing –Recommendations Mobile Testing is an integral part of a Mobile Development Project. Use of various tools/services as applicable. Incorporate testing scenarios specific to a Marketplace. E.g. App Store. Focus on Internationalization (I18n) testing for global audience. July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 9
  • 10.
    Xoriant – MobileCenter of Excellence An established Wireless and Mobile CoE. Developed applications across domains and platforms. Complete lifecycle development from Design, Implementation, Testing and Support. July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 10
  • 11.
    Thank you, doyou have any questions? Thank You! Contact Details Xoriant – Mobile Center of Excellence Email: sgosavi@xoriant.com http://www.xoriant.com Tel: +1 408-743-4404 July 21, 2010 © 2010 Xoriant Corporation. All rights reserved. 11

Editor's Notes

  • #2 Mobile Application Porting and Testing – Webinar by Xoriant Corporation
  • #3 Agenda Mobile Porting The need for porting and challenges Mobile Porting – First Steps Case Studies Recommendations Mobile Testing Testing Scope Case Studies Recommendations
  • #4 Introduction Mobilizing your Web / Enterprise Application is a reality Need of mobile application for different mobile platforms. Programming application for each platform is a challenge Different Platform capabilities Android, iPhone have more built in UI components than Blackberry Incompatible versions within the same platform Different screen resolutions between Blackberry Curve 8320 to Blackberry Bold 9000 Different programming languages. C#, Java, Objective C, Qt (C++) User Experience needs to be consistent across platforms Customized Table Elements Need to reuse existing code Testing applications across devices, networks and carriers.
  • #5 Mobile Porting – First Steps Analyze the Mobile Application
  • #6 Mobile Porting – Case Study 1 Cloud File Storage Application
  • #7 Mobile Porting – Recommendations Decode the Mobile application Use Open Standards for External Integration Consider a Native Application for extra control and tighter integration with device Consider a Mobile Web Application for maximum portability across devices.
  • #8 Mobile Testing – Its not trivial Faster product cycles leading to new devices being added rapidly. Multiple combinations of platforms and OS. Locale specific testing across different countries.
  • #9 Mobile Testing Areas Device Level Testing Browser & Data Testing Network & Carrier Testing
  • #10 Mobile Testing – Recommendations Mobile Testing is an integral part of a Mobile Development Project Use of various tools/services as applicable. Incorporate testing scenarios specific to a Marketplace. E.g. App Store. Focus on Internationalization (I18n) testing for global audience.
  • #11 Xoriant – Mobile Center of Excellence An established Wireless and Mobile CoE. Developed applications across domains and platforms. Complete lifecycle development from Design, Implementation, Testing and Support.
  • #12 Contact Details Xoriant – Mobile Center of Excellence Email: sgosavi@xoriant.com http://www.xoriant.com Tel: +1 408-743-4404