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 APPLICATIONS7

Characteristics of Mobile Application Development7

CHAPTER 3: SOFTWARE DEVELOPMENT METHODOLOGY AND MDE10

Overview of Software Engineering10

Model-Driven Engineering (MDE)12

Characteristics of MDE12

MDA Approach and Meta-Modeling15

Model Transformation and Code Generation17

Model Integration and Animation18

Rapid Development Process18

Existing Tools to Support MDE20

CHAPTER 4: ZOOM APPROACH25

Vision of ZOOM25

Structural models29

Behavioral models31

User Interface models33

ZOOM Model Integration35

Model based approach40

DSLs and General Guideline43

Execution semantics and Interaction with OS45

Application entry point45

Initial screen UI initialization46

User interact with mobile device or system event happen46

CHAPTER 6: DSL DESIGN48

Groovy48

Behavioral model DSL49

UI model DSL51

REFERENCES54

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