Sunday, July 24, 2011

Developing applications for Android™ using IBM Rational Team Concert and IBM Rational Rhapsody in an agile way

In an earlier library article I wrote - Developing applications for Android™ using IBM Rational Team Concert in an agile way, we saw how to leverage the power of planning, collaboration, process, source control, build management, etc that IBM Rational Team Concert (RTC) has to offer, to develop and manage Android applications in a team working across geographies and across different platforms. Now what if the team also wants to model the application, specify UML class diagrams, use case diagrams, and link them with the requirements? Such software architecture and modeling capabilities can easily become a part of the development process with IBM Rational Rhapsody.

IBM Rational Rhapsody integrates with Rational Team Concert to offer modeling capabilities for Android applications and the visual representation of the Android framework API that developers can reference from within Rational Rhapsody. The references are then generated into Java code to automate the manual coding task. Additionally, Rational Rhapsody can read the AndroidManifest.xml file to visualize activities, services, broadcast receivers, main activity and content provides specified for better understanding of the application. The Rational Rhapsody Debugger also enables runtime animation of the class diagrams created for an Android application.
This article, with the help of a demo video embedded below, shows how RTC and Rhapsody can be together used to design, model, develop and test a mobile application.

Download and installation

1) OS: Windows x86 / Linux x86 .

2) IBM Rational Team Concert: Download/buy from the download page. RTC can also be installed directly on Eclipse 3.6.x (see Note that if you're using an existing Eclipse installation to install RTC, make sure you have Eclipse 3.6 or lower (Eclipse 3.7 is not yet supported for Android development).

Android SDK: Download the SDK from Android developer website.

Android Development Tools(ADT): This is an eclipse plugin- the equivalent of JDT(Java Development Tools)- for Android Development. ADT can be downloaded and installed using instructions given at Please follow the detailed instructions on this page for installing the ADT plugin, and also for setting the location of Android SDK in Eclipse.

5) It is a good idea to read through the following step by step guide to set up RTC and prepare it for Android Development:

6) IBM Rational Rhapsody: Download and install IBM Rational Rhapsody Developer 7.5.3 from the Rhapsody Downloads page.

7) Including Rhapsody in the RTC Eclipse workbench: In the IBM Rational Team Concert Eclipse Client, go to Help>Install New Software> Add Software Site, and then add the <Rhapsody Installation path>\Eclipse as a local repository.
8) Once the installation is complete, you should be able to use Rhapsody's capabilities inside the RTC Eclipse client.
*Note: You can similarly develop Windows mobile applications using RTC's Visual Studio client and Rhapsody's Visual Studio integration

Creating a new Rhapsody Android project and linking it with an Android project

This step is necessary to create the model elements for an Android project.

  1. Using the Java perspective, create a new Android project. In the demo below, the project is called Test1Project.
  2. Switch to the Rhapsody Modeling perspective, and create a new Rhapsody Android project (You can also read the Rhapsody Help page to read about how to work with Android projects).  This will become the current active project. In the demo, this is called Test1Model.
  3. Switch back to the Java package explorer view, right click on Test1Project, and choose Export.... In the “Export” dialog, select “Rhapsody Model” and click next. The Export to Rhapsody Model Dialog is now displayed. You can choose what elements you want to export into the model. Once this is done, projects Test1Project and Test1Model are now linked.

The Demo

The demo showcases how a distributed team working on an Android application can leverage the functionality provided by IBM Rational tools, namely IBM RTC and IBM Rational Rhapsody (let's call it the Rational Solution) through the complete lifecycle of the application, right from planning, design to implementation to design and testing, and even defect tracking. 
Using the Rational solution, a development team can work in either or both of the following 2 ways:

a. Code centric development: Ability to generate code from UML abstraction and state charts.

b. Model centric development: Ability to reverse engineer code into UML abstractions without changing the code layout and to synchronize the changes as they're done.

See the video below:

To see IBM Rational Team Concert and IBM Rational Rhapsody in action, and to know more about the rich features they have to offer, do attend IBM Rational Innovate India 2011 at The Leela, Bangalore from 9-11 August, 2011. You can catch me at the Rational Team Concert solution center. 

For more information

Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.


  1. I like your Instruction.This is one of the reliable post.I got good knowledge about Android by read your post.This is one of the suitable Information.Android app developers

  2. Thanks for sharing your info. I really appreciate your efforts and I will be waiting for your further write ups thanks once again.
    Vee Eee Technologies

  3. I beyond doubt appreciate your articles and blogs
    android root apps

  4. this is in actuality a terrific webpage. I undeniably will undoubtedly revisit.Really looking forward to read more. Really Cool.That is really amazing dear buddy keep it up.

  5. Nice Post, Thanks a lot for providing valuable information. This looks perfect. There are many mobile apps development companies in India. On Graph Technologies is the top Mobile Apps Development Company India. Inquire Now

  6. This is an awesome idea, i saw your youtube, it was easy to understand..Thanks

  7. Great article with excellent idea!Thank you for such a valuable article.
    facetime for android phones

  8. Thank for sharing about these useful tips. Also check out some of the best mobile apps development company here