Research Group for Applied Software Engineering
Forschungsgruppe für Angewandte Softwaretechnik


October 2001-February 2002



The TRAMP system (Traveling Repair and Maintenance Platform) was developed in a Praktikum with 50 student participants. The realized scenario was to guide a mechanic who is equipped with a wearable computer to a customer who has a car breakdown. The mechanic is also instructed by the system on the actual repair process to fix the car.



The businessman Anton is driving his car on the motorway to a meeting. On the way he has a breakdown, which prevents him from driving on. He calls with his UMTS mobile the hotline of his car manufacturer, who in turn notify the nearest garage. The garage assigns its mechanic Manfred to drive to Anton and to bring his car back into course.

Manfred needs information about Antons auto. These were already transmitted by Antons auto wirelessly to his UMTS telephone , which then sent the information further to the hotline. From the data Manfred concludes that a defect in the ignition distributor probably occurred, he can thus take the suitable spare part to Anton. Manfred departs and arrives shortly after at Anton, who waits in his car for assistance. Manfred examines Antons car and the suspicion of the defective ignition distributor is verified.

Now however some points are to be considered with the installation of a new ignition distributor due to the high complexity of Antons auto, which is usually to be found in manuals at the garage. These manuals can hardly be carried around, since they can be very extensive and thus heavy to carry around on the one hand and on the other hand they are not really designed for the hard environmental condition of a repair on the road.

Manfred uses his portable computer system, in order to load the needed data via the wide-band UMTS infrastructure such as exploded views, wiring diagrams and the optimal work order, from a Help Desk system. That information is displayed to him on an external display or a Head-Mounted Display.

With these information Manfred is able to repair the car in only 10 minutes and Anton pays with his credit card the required spare parts and the time Manfred had to work. Anton arrives punctually at his Meeting.





  • A short movie showing the view through a Head-mounted Display. The mechanic is navigated to the car that had a break-down. (Download)
  • Same movie as above, but showing the complete sequence. (Download)


Team Structure

The project was done in a team-based structure.

We had several teams that were responsible for the TRAMP subsystems:

  • The Application Team was responsible for modeling the overall application and integrating and configuring the reusable components developed by the other teams. This team was coached by JoergTraub.
  • The Context Team developed components that used sensor data from devices such as GPS and Gyroscopes to provide implicit context to the rest of the system, i.e. the user's current position. This team was coached by MartinWagner.
  • The Network Team developed the underlying CORBA-based middleware that was used as a communication means for all components developed within TRAMP. This team was coached by AsaMacWilliams.
  • The Session Management modeled the maintenance taskflow and its persistent storage that allowed to handover a maintenance session from one mechanic to another. This team was coached byVinkoNovak.
  • The User Interface Team prototyped brand-new UIs that helped the mechanic to perform his task. An example is shown below. This team was coached by ChristianSandor.

Some other teams provided the overall infrastructure that is needed to handle a project as complex as TRAMP:

  • The Wearable Team evaluated the Compaq iPAQ and its usability for mobile maintenance. This team was coached by BernhardZaun.
  • The Global Software Engineering Team developed a tool for remote presentations. Based on open source standards, this allowed us to discuss the current project status with clients and other developers distributed on different time zones. This team was coached by OliverCreighton.
  • The Testing Team evaluated and maintained unit testing frameworks that were used by other developers to make sure their code performed as expected. This team was coached by JoergDolak.

Every student was a memebr of one of the teams just mentioned. In addition, every team sent a representative to each of the two cross-functional teams:

  • The Architecture Team defined the overall system architecture and served as a steering board for the whole TRAMP system. This team was coached by ChristianSandor.
  • The Documentation Team decided on how to create the various written artefacts of the project. This team was coached by BerndBruegge.


Communication Infrastructure

In a project of TRAMP's size, communication is crucial. We used a Lotus Notes based solution that greatly simplified distributed collaboration within and between the project teams. Every team had its own bulletin board.