Collaborative and agile development of mobile applications


Published on

This is the presentation I used in the 16 December IBM India webcast on mobile development and also the Dr. Dobb's webcast I did in November.
It talks about mobile industry trends and technologies and shows how IBM Rational tools can help in developing and testing native or hybrid or web based mobile applications. It also talks about new technologies such as Phonegap and Dojo mobile.

Published in: Technology
  • Mobile apps are hot today. But hiring a programmer is too expensive. I used to make apps. It's really easy, the web service allows to make mobile apps in minutes, and without programming skills at all.
    Are you sure you want to  Yes  No
    Your message goes here

    My name is Blessing
    i am a young lady with a kind and open heart,
    I enjoy my life,but life can't be complete if you don't have a person to share it

    Hoping To Hear From You
    Yours Blessing
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Collaborative and agile development of mobile applications

  1. 1. Ayushman Jain – System Software EngineerCollaborative and agile development ofmobile applications © 2011 IBM Corporation
  2. 2. Agenda Evolution of the Mobile industry. Mobile industry trends and insights. Kinds of mobile applications. Using Rational tools in different scenarios. Mobile app testing and security. IBM Resources for mobile development.2 © 2011 IBM Corporation
  3. 3. IBM Presentation Template Full VersionEvolution of Mobile phones 20 years ago – calling, texting. Now- everything (well almost!). Technology has advanced rapidly. Some problems on the way: – lack of powerful mobile platforms and operating systems. – Porting apps to new phones and operating systems coming out in rapid succession. JAVA MIDlets – first solution – restricted access to hardware. iPhones with iOS came next – but proprietary. Android – access device hardware, share apps, etc. – by far the most flexible.3 © 2011 IBM Corporation
  4. 4. The Mobile Age Mobile computing growing exponentially. By the end of 2014, Gartner forecast over 185 billion applications will have been downloaded from mobile app stores, since the launch of the first one in July 2008.4 © 2011 IBM Corporation
  5. 5. The Mobile Age Mobile in B2C – Enable banking, insurance, retail, trading anytime anywhere. Mobile in B2E and B2B – Empower field employees. – Increase efficiency in supply chain. – Exchange business information. Mobile in M2M – Enable exchange of information between businesses and machines.5 © 2011 IBM Corporation
  6. 6. Market view: In what technologies will CIOs be investing? -2011 IBM CIO study6 © 2011 IBM Corporation
  7. 7. Different kinds of mobile applications7 © 2011 IBM Corporation
  8. 8. Challenges for mobile development teams Manage ever-increasing complexity of mobile applications – Rapidly evolving mobile hardware and user interface – Security, communication, data, social interactions, touch-friendly UI, multiple platforms. Manage multiple disciplines – stakeholders, developers, testers, project managers. Manage activities that span the entire lifecycle - gather requirements, model and design mobile apps, develop, test and deploy. Visibility and traceability across the board. Efficient communication and coordination. Using tools that facilitate and enable, rather than inhibit. IBM Rational tools such as Rhapsody, Rational Team Concert, and Rational Application Developer help address these challenges.8 © 2011 IBM Corporation
  9. 9. Using Rational tools for collaborative and agile development9 © 2011 IBM Corporation
  10. 10. Rational Team Concert10 © 2011 IBM Corporation
  11. 11. Rational Rhapsody Collaborative design and development for systems engineers and software developers. Modeling capabilities for Android applications. Visual representation of the Android framework API that developers can reference from within Rational Rhapsody. Code generation from model, model generation from code. Runtime animation of the class diagrams created for an Android application. Integrates with Rational Team Concert.11 © 2011 IBM Corporation
  12. 12. 12 © 2011 IBM Corporation
  13. 13. 13 © 2011 IBM Corporation
  14. 14. • Rhapsody provides models for all android classes and widgets. • Drag and drop widgets into the model. • Navigate to source code from model and vice versa.14 © 2011 IBM Corporation
  15. 15. • Classes can be updated in the model - source code automatically generated and vice versa. • Enables code centric development and model centric development.15 © 2011 IBM Corporation
  16. 16. • Use-case diagrams can be added, linked to requirements imported from another tool such as Rational DOORS.16 © 2011 IBM Corporation
  17. 17. • Source code can be shared using Jazz source control in RTC. • Change sets can be associated with RTC work items.17 © 2011 IBM Corporation
  18. 18. • Emulator configurations can also be shared under source control – ensures consistency across the team.18 © 2011 IBM Corporation
  19. 19. How to maintain records of relevant mobile device configurations? • Include the information in fields in the work items. • Helps bug filing and tracking – include info about problem as seen in a device configuration.19 © 2011 IBM Corporation
  20. 20. • RTC Snapshot tool – take snapshots of expected emulator output, models, buggy UI.• Snapshots can be attached to work items for reference or bug demonstration.20 © 2011 IBM Corporation
  21. 21. • Rhapsody DiffMerge tool – compare your model with the one in central repository and merge changes using the visual editor.21 © 2011 IBM Corporation
  22. 22. • RTC Junit integration – create defects from failing tests. • Duplicate stack traces automatically found by RTC.22 © 2011 IBM Corporation
  23. 23. • RTC Web UI – for non-coding tasks. • View project dashboard, plans, work items, builds, reports, etc all in the browser. • Windows mobile development can be done using RTC Visual Studio client.23 © 2011 IBM Corporation
  24. 24. Develop Blackberry applications too! The Blackberry JDE (Java Development Environment) can be installed on the latest RTC distro. Latest simulators can be downloaded and different configurations can be released into RTC source control.24 © 2011 IBM Corporation
  25. 25. Customize your development experience25 © 2011 IBM Corporation
  26. 26. Using Rational Application Developer(RAD) and Maqetta to develop web based mobile applications26 © 2011 IBM Corporation
  27. 27. What is A dojo based widget set for creating mobile applications. – Available since dojo 1.5. Aims to provide lightweight UI widgets. – Cannot do native device functionality. Allows customization of app look and feel. – Device-specific or device-neutral. – Comes with iOS, Android and Blackberry themes currently. Server technology agnostic.27 © 2011 IBM Corporation
  28. 28. Maqetta Open source project hosted by Dojo foundation. Enables WYSIWYG visual authoring of HTML5 and dojo applications. Easily modify the stylesheet. View the same app for differentplatforms. Test the app on the browser itself.28 © 2011 IBM Corporation
  29. 29. • RAD offers a Rich Page editor that uses browsers as rendering engines. • A visual editing experience with drag-and-drop and direct page manipulation.29 © 2011 IBM Corporation
  30. 30. • RAD also offers browser-based test emulators – helps testing the mobile app on various platforms.30 © 2011 IBM Corporation
  31. 31. • RAD integrates with Maqetta .• Only a few clicks to customize look and feel of the application.31 © 2011 IBM Corporation
  32. 32. Developing hybrid mobile applications Example - web-based movie ticket booking application that lets you invite friends from the phone contact book. How can you query the platforms contact book from within your web app? How can you do so in a platform agnostic way? Phonegap shows the way - provides javascript APIs which abstract the platforms native services. Phonegap plugin for Eclipse integrates well with Rational tools. Develop an app using HTML5, Dojo, javascript once. Package it for various platforms using Phonegap. Use any UI toolkit –, Sencha touch, Titanium, etc. Facebook connect plugin NEW32 © 2011 IBM Corporation
  33. 33. Developing Java ME applications Android, iOS getting popular, but majority of people still own older handsets. Developer Economics 2010 and Beyond - Java ME as a platform has an installed base of 3,000 million devices: – 150 times that of Android, – 50 times that of iOS. Mobile Tools for Java (MTJ) is an Eclipse plugin, which powers RTC for Java ME applications.33 © 2011 IBM Corporation
  34. 34. Test mobile applications with Rational Quality Manager • RQM integrates with DeviceAnywhere. • Write a single automated test script. • Test applications on a device cloud/device farm. • Failures with screenshots captured in a defect by RQM and routed to developers.34 © 2011 IBM Corporation
  35. 35. Mobile application security with Appscan35 © 2011 IBM Corporation
  36. 36. IBM Mobile Technology Preview DOWNLOAD FREE! Provides sample code and documentation that demonstrate capabilities such as notification and the ability to build hybrid application. Includes –an application server runtime that uses the WebSphere Liberty Profile of the WebSphere Application Server 8.5 Alpha (runs on Linux, Mac, and Windows). –a notification framework. –a hybrid app development model using HTML, CSS, and JavaScript. –basic management functions. –location-based security. –several samples featuring notifications, Dojo, PhoneGap, and a starter insurance app for handling car accidents.36 © 2011 IBM Corporation
  37. 37. Jazzhub –  Rational Team Concert – in the cloud.  Develop directly on the website.  No download or installation required.  Start a new project in under a minute!  All of the features of Rational Team Concert!  Currently a beta program for professors, students, and academic researchers.  Extends IBM commitment to academia.37 © 2011 IBM Corporation
  38. 38. Many have already started… JazzHub Charter Members Paolo Maresca Charter members from 8 different countries already Associate Professor making progress Faculty of Engineering Hosting “Software for a Cause” in Fall 2011 University of Naples Federico II Alexander Chatzigeorgiou Communicate with other beta users in forums Professor University of Macedonia Dept. of Applied Informatics Tao Xie Associate Professor North Carolina State University Computer Science Jim Yuill Professor North Carolina State University Computer Science Ken Bauer Professor Tecnológico de Monterrey38 © 2011 IBM Corporation Computer Sciences
  39. 39. Getting started… To create projects in the JazzHub, you must have a project creation code. Codes can be requested from the JazzHub login screen. Invitations are sent to qualified academics as we continue to grow the beta program Project creation code: 6ER1OPGKIP39 © 2011 IBM Corporation
  40. 40. Further reading Jazz website IBM Mobile Frontier Blog Developing applications for Android™ using IBM Rational Team Concert in an agile way Developing applications for Android™ using IBM Rational Team Concert and IBM Rational Rhapsody in an agile way Agile Development of mobile applications using IBM Rational Team Concert and Phonegap for Android, iOS and others Developing Java ME applications using Rational Team Concert in an agile way Maqetta website IBM Mobile Technology Preview40 © 2011 IBM Corporation
  41. 41. THANK YOU!41 © 2011 IBM Corporation