90 likes | 212 Views
Mobile Technology and Software Engineering. Travis James, CTO, CloudMetal Software. State of the Technology. Where we came from…. Where we are…. iOS , Android, BlackBerry operating environments Highly capable browser driven by WebKit HTML5 becoming application standard cross platform
E N D
Mobile Technology and Software Engineering Travis James, CTO, CloudMetal Software
State of the Technology Where we came from… Where we are… iOS, Android, BlackBerry operating environments Highly capable browser driven by WebKit HTML5 becoming application standard cross platform Standard hardware, fragmented operating systems (especially Android) • Wireless Access Protocol (WAP) was standard application environment • Limited browsing capability • Low bandwidth • Fragmented hardware • Smart phones not so smart
Explosion in Application Development • Started with release of iPhone 3 in May 2008 • 500,000 apps in AppStore • 200,000 apps in Android Market • Driven by social networking, content delivery/streaming, and games • Location awareness of devices makes software offerings unique • Global mobile data almost tripled (2.6x) in 2010
Mobile Components Hardware Software UNIX style operating systems (BSD, Linux) Sandbox application models WebKit browser with HTML5, CSS3 Microsoft devices have Silverlight-based OS, .NET runtime • ARM Chip Technology (32-bit RISC) • Assisted GPS • Solid State Drives, Micro SD Cards • 512 MB RAM on iPhone 4/4S, Android 2.2 • Flashable boot ROM architecture
The Business of Mobile • Commerce via AppStore, Google Checkout, “Wallet” software, PayPal integration with Near Field Communication coming • App sales models include B2C, Freemium, Ad-Funded, InApp purchase, Subscription • Mobile applications enable brands to maintain presence, relevance, connections with customers • Mobile payment transactions will grow from $250B today to $1 Trillion by 2015
Application Development and Testing • The business of mobile applications forcing much shorter development cycles • Great dependence on highly available, scalable web services • Running apps in emulators is nothing like running on devices • Accounting for speed of networks and bandwidth availability results in different application architecture • Hybrid development allows for efficient consumption of content • Security considerations are different (WiFi exposure, jailbreaking, etc.)
Testing Considerations • Must test for varying bandwidth conditions • Must test on actual devices—especially Android • Must test on multiple operating system versions • Android provides automated testing methods allowing unit tests • Cloud-based testing can allow for testing bandwidth at the same time • Must test the security threat model • Must test service interfaces thoroughly
The Future • Cloud-based automated testing will become essential as emulator technology advances • Device advancements should serve to actually consolidate the mobile marketplace as opposed to further fragmentation • Advancements in operating systems on mobile devices will eventually make devices servers as well as clients • Mobile payments, content streaming, and HTML5 advances (Google’s A8 JavaScript technology, etc.) will make HTML5 the application standard