Model-Driven Development of Mobile Information Systems

Model-Driven Development of Mobile Information Systems

Ralf Bruns, Jürgen Dunkel
DOI: 10.4018/978-1-61520-655-1.ch006
OnDemand:
(Individual Chapters)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Significant improvements in the development of business applications for mobile devices have been made in recent years. However, the state of the art in software development is for mobile computing still not as mature as it is for conventional information systems on desktop computers. Therefore, declarative and code generation approaches should be preferred instead of manually coding. In the BAMOS project an architecture has been designed and implemented for the generic and flexible development of mobile information systems. The architecture is based on the declarative description of the available services and enables the access to service-oriented architecture (SOA) systems for mobile devices. In this chapter, the authors present a model-driven approach for generating almost the complete source code of mobile services. By applying model-driven development, a new service can be conveniently modeled with a graphical modeling tool and the graphical models are then used to generate the corresponding XML descriptions of the mobile user interface and the workflow specification. In order to use such a service no specific source code has to be implemented on the mobile device. In addition, an alternative modeling approach based on a textual representation of the models using a formal grammar expressed in EBNF is presented.
Chapter Preview
Top

2 Architecture Of Mobile Applications

An indispensable prerequisite for applying model-driven development is a powerful architectural base providing the target platform for code generation. The BAMOS platform enables the development of mobile applications by providing two software components. The first component is a so-called Adhoc Client that – similar to a Web browser – enables the mobile device to access information services in spontaneous networks. The second component is a so-called Service Broker that – similar to a Web Server – serves as an interface between the Adhoc Client and the services available in the network.

With the BAMOS platform a mobile device can use different services in diverse local networks. The Adhoc Client is a generic software component that does not require any information about the specific services. It loads the declarative descriptions of the services at run-time and generates a service-specific graphical user interface. The core concept underlying this generic approach is the declarative description of the process flow as well as of the graphical user interface.

Key Terms in this Chapter

Code Generation: Is the process of generating automatically the code of application programs from descriptions of the problem specified in a higher level language rather than by traditional programming, which relies on implementation languages such as C. C++ or Java.

Model-Driven Architecture(MDA): Is an approach to application design and implementation that encourages the use of system models. This approach is a used to organize and manage enterprise software system architectures supported by automated tools and services for both defining the models, enabling transformations between different model types, and generating system implementations.

Metamodel: Is a model that defines the components of a conceptual model, process or system. A schema for semantic data that needs to be exchanged or stored is an example of a metamodel.

Mobile Software Development: Refers to the development of mobile applications.

EBNF: Refers to Extended Backus-Naur Form, which is a variation of the basic Backus-Naur Form (BNF)meta-syntax notation. EBNF is a metalanguage used to describe language syntax.

XForms: Refers to Extensible Markup Language Forms. Xforms is an XML standard used to describe the purpose of a web form and the way it is presented.

Mobile Information Systems: Mobile information systems are systems that rely on wireless communications and support mobile applications that typically run on wireless devices such as smartphones and mobile phones.

Complete Chapter List

Search this Book:
Reset