Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

Modeling and developing embedded Java applications

with Rational Rose RealTime

Martin C. Brown, Freelance writer
Martin C. Brown, a Studio B author, is a former IT Director with experience in cross-platform integration. A keen developer he has produced dynamic sites for blue-chip customers, including HP and Oracle and is the Technical Director of Foodware.net. Now a freelance writer and consultant, MC, as he is better known, works closely with Microsoft as an SME, is the LAMP Technologies Editor for LinuxWorld magazine, a core member of the AnswerSquad.com team and has written a number of books on topics as diverse as Microsoft Certification, iMacs and open source programming. Despite his best attempts, he remains a regular and voracious programmer on many platforms and numerous environments. MC can be contacted at questions@mcslp.com, or through his Web site at http://www.mcslp.com.

Summary:  Developing an application on a real-time operating system and embedded environment usually requires in-depth knowledge of the embedded environment, even when using the various toolkits available to you. In this tutorial you'll look at Rational Rose RealTime, a visual-modeling system that allows you to model your application and automatically generate all of the code required to build the application. You no longer have to worry about the issues of real-time development, you just concentrate on the model that generates your application.

Date:  06 Aug 2004
Level:  Introductory PDF:  A4 and Letter (483 KB | 29 pages)Get Adobe® Reader®

Activity:  6297 views
Comments:  

Before you start

About this tutorial

Telecoms, data processing and network management all operate using a real-time operating system (RTOS). Unlike the typical desktop application, this means that they need to be able to respond to activity from the user, external device or an internal trigger immediately. There are no hour-glasses in an RTOS.

The problem is that developing in this environment can also be quite complex. Instead of the usual sequential or event driven nature of your typical desktop application, you need to work with concurrent systems and processes and state-based environments. A typical development and modeling system is difficult to use when designing your application because they are incapable of modeling the various systems operating simultaneously within a typical RTOS and application.

Rational Rose RealTime, on the other hand, provides a complete environment for modeling your application. Using UML as a basis, it is able to produce code and your final application directly from within the modeling environment. In this tutorial you're going to look at a basic message passing application designed to work within an RTOS. You'll build the model within RationalRose and then use that to produce a Java application.

The application is a simple alarm system, with different sensors and a simple alarm bell. You'll concentrate on one section of the alarm, a fire alarm, using a smoke detector as the trigger.

Key topics covered in this tutorial include:

  • Specifying a design
  • Translating the design to an application model in Rational Rose RT
  • Extending and updating the structure
  • Generating code and target specification
  • Testing and re-modeling the application

This tutorial is useful for developers interested in using Rational Rose RealTime (RoseRT) to design and model applications using physical diagrams, thus simplifying the functional testing process by avoiding the need to develop the code.


Prerequisites

RoseRT is designed to work on a number of environments and with a range of different platforms. RoseRT is available for Linux, a selection of UNIX variants and Windows NT/2000/XP. You can also use it to develop applications using C, C++, or Java code as the deployment language, and it's possible to migrate a model from one language to another.

In addition to all of this, RoseRT can also work with and create native code for a number of deployment environments. These include Linux, QNX and LynxOS, among many others. As with the target deployment language, the model can be migrated to work with an alternative target environment, so you can use RoseRT to develop a Java application that can be deployed among a number of target environments.

To complete the steps in this tutorial, you should have the following software installed:

  • Rational Rose RealTime.
  • Java compiler, such as the Java SDK from Sun Microsystems.
  • A copy of a make tool, such as GNU make or the Microsoft nmake.

See Resources for more information

1 of 8 | Next

Comments



Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Rational
ArticleID=135480
TutorialTitle=Modeling and developing embedded Java applications
publish-date=08062004
author1-email=
author1-email-cc=

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Try IBM PureSystems. No charge.