1 AutoGraL: Java API for configurable electronic dashboards ALESSANDRO DE GLORIA, FRANCESCO BELLOTTI and ALESSANDRO VILLAMAINA DIBE - Department of Electronic and Biophysical Engineering University of Genoa Via Opera Pia 11a, 16145 ITALY Abstract: - Future generation cars will provide a wide range of services to driver and passengers. An important role for the success of such services will be played by the user interface. In view of this, we have realized AutoGraL, a set of Java graphics APIs for developing configurable automotive dashboards. The paper describes in detail the library, that provides the instruments to join the familiar analog look of traditional dashboards with the advantages of software programming. Key-Words: Java, API, graphics, automotive dashboard, software components, Object Oriented programming, software documentation. 1 Introduction The automotive market of the next few years will be characterized by a wide number of services offered to drivers and passengers [1, 2]. The services will range from safety systems to personal communication, from entertainment to provision of location-aware information. All this amount of services and information will have to be provided without distracting the driver from her/his main goal, that is to safely drive the car. On the contrary, novel systems will have to enhance the driving conditions by providing drivers with the right information at the right moment. These simple considerations suggest the importance that the Human Machine Interface (HMI) modules will play in the future generation cars. In this paper we present the AutoGraL (Automotive Graphics Library) Java package, a library of graphics objects for automotive dashboards. These objects are directly related to the corresponding objects of traditional dashboards, like speedometers, odometers, light indicators, etc. They maintain the same analog look but live within a software application able to manage various dashboard configurations. As mentioned before, the display of variables characterizing the current state of the car (e.g. speed, fuel consumption, etc.) will probably not be the only service provided by the new dashboard interface. In view of this the AutoGraL classes have been thought and designed as components usable to build more complex structures. The remainder of the package is organized as follows. section 2 presents the motivations for implementing a library of Java dashboard APIs. Section 3 describes in detail the AutoGraL APIs, while section 4 shows how to develop an autoGraL application. The conclusions of the work are reported in the final section. 2 Why a Java library? The high cost and complexity of the today software projects have fostered the adoption of development techniques aimed at making the best use of the existing software resources. The Object Oriented (OO) technology has allowed significant advances by promoting the concepts of code re-usability and extension [3]. AutoGraL, implemented in the Java purely OO language [4, 5, 6], introduces the OO technology in the development of automotive dashboards. In fact, it provides a set of APIs (Application Programming Interfaces) that implement the functionality (and some extensions) provided by the current instrument panels. Although the implemented services are numerous and general, the classes can be further extended for full customization. An important advantage of using the library consists in the simple relationship between the software objects and their counterpart in traditional dashboards, like speedometers, fuel gauges, etc. This relationship has been strengthened by the adoption of an accurate choice of the names of the classes and of the methods in order to make the software package meet the actual technical background of technicians involved in the automotive sector. We think that this feature has an important impact in the whole cycle of life of the software, from the development to the maintenance. In fact, code is more comprehensible, facilitating debugging and production/exploitation of the