A Dsl Based Rapid Development Platform For Mobile Applications

Read Complete Research Material



A DSL Based Rapid Development Platform for Mobile Applications

By

ACKNOWLEDGEMENT

I would take this opportunity to thank my research supervisor, family and friends for their support and guidance without which this research would not have been possible.

DECLARATION

I, [type your full first names and surname here], declare that the contents of this dissertation/thesis represent my own unaided work, and that the dissertation/thesis has not previously been submitted for academic examination towards any qualification. Furthermore, it represents my own opinions and not necessarily those of the University.

Signed __________________ Date _________________

TABLE OF CONTENTS

ACKNOWLEDGEMENTii

DECLARATIONiii

CHAPTER 1: INTRODUCTION1

Background of the Study1

Unified Modeling Language - 22

Model Driven Engineering3

Domain Specific Language based Mobile Application Development4

Structure of Thesis5

CHAPTER 2: CHALLENGES IN DEVELOPMENT MOBILE APPLICATIONS6

Characteristics of Mobile Application Development6

CHAPTER 3: SOFTWARE DEVELOPMENT METHODOLOGY AND MDE8

Overview of Software Engineering8

Model-Driven Engineering (MDE)9

Characteristics of MDE10

MDA Approach and Meta-Modeling12

Model Transformation and Code Generation14

Model Integration and Animation15

Rapid Development Process15

Existing Tools to Support MDE17

CHAPTER 4: ZOOM APPROACH21

Vision of ZOOM21

Structural models25

Behavioral models26

User Interface models28

ZOOM Model Integration30

Model based approach35

DSLs and General Guideline38

Execution semantics and Interaction with OS39

Application entry point39

Initial screen UI initialization40

User interact with mobile device or system event happen40

CHAPTER 6: DSL DESIGN42

Groovy42

Behavioral model DSL43

UI model DSL45

REFERENCES47

CHAPTER 1: INTRODUCTION

Background of the Study

Mobile phone industry gets boost in recent years, more and more people start using smart phones and mobile internet services. Mobile software development becomes hot topic and attracts many business and developers. In mobile application development, it has its own characteristics which make a difference from traditional desktop software development. Mobile device industry is highly competitive. Mobile device manufacturers used to release new products in 12-24 months cycle, now cut to around 6 month. Mobile application industry therefore requires some rapid development as well. Mobile application typically focuses on interaction between users and mobile devices. From this perspective, it is more close to those UI centric desktop applications. However, mobile devices typically provides different input / output interface, especially quite different screen size. Writing generic application to fit in multiple devices is not easy, especially when considering the software re-use between mobile phones and their tablet counterpart.

Although the number of mobile device OS platform gets a cut during recent year competition, there are still several popular platforms left, such as Android, iOS, Windows Phone and Symbian. Mobile application developers wish to write generic application, which can run in multiple platforms, this will cut the development cost and save time to market. There are some middleware like library to help on this, but still quite a challenge.

Mobile application development is UI centric, but native UI APIs are not easy to use, many tedious codes are needed to define UI component, hook actions and so on. For example, Android provide a visual editor to populate UI XML, but when those UI components are used in application, need to explicitly using API to re-create variable mapping to each element in XML, which is tedious and error-prone. We believe there is a need to have some new approach for mobile applications development, which should make rapid development feasible, and provide mechanisms to ...
Related Ads