Designing an Android Domain Specific Modeling Language using EMF, GEF and GMF

Angel Roman, Bruce Trask

Frameworks - Mobile And Embedded · Long - one hour
Tuesday, 10:10, 50 minutes | Room 206

7
·
8
·
9
·
10
·
11
·
12
·
13
·
14
·
15
·
16
·
17
·
18

Google and T-Mobile released the revolutionary G1 phone in 2008. Google and the Open Handset Alliance provide a powerful SDK and Application Framework for developing Android Applications.

The Android Application Framework provides an infrastructure that facilitates the re-use and creation of software components targeted to Android. Among the framework's capabilities are facilities for the application developer to select whether to reuse existing UI components (Maps, Contact lists, Message Lists, etc.) or create their own. In addition, applications are encouraged to delegate common actions like selecting an item from a contact list or viewing a map to pre-existing components.

As powerful as this framework is, the developer is tasked to mold their application by tediously editing several XML files and writing glue code. These tasks have very little to do with the application logic. Domain specific tools and languages can provide a higher level of expressive power to handle the creation of Android applications, enabling the user to concentrate on the application logic. Eclipse's modeling frameworks, EMF, GEF and GMF are perfectly suited to providing these domain tools and languages.

The tutorial will include the end to end development of an Android Domain Specific Modeling Language.

The tutorial will cover exactly how to to use the Eclipse EMF, GEF, and GMF frameworks together to tackle the complexities and increase developer productivity of Android Applications

Intended Audience:

Attendees can include anyone interested in seeing a real-life application of Model Driven Engineering and Domain Specific Modeling techniques using Eclipse Modeling Framework as well as those interested in Android application development.

Tutorial Outline:
  • Overview of Model Driven Development
  • General overview
  • Eclipse as a Language Workbench
  • Overview of the Android Platform
    • Activities
    • Views
    • ContentProviders
    • Services
    • BroadcastReceivers
    • Intents, Intent Filters and IntentReceivers
  • The creation of an example Android application from scratch (Android Development Tools Plugin)
  • Defining a meta-model for Android Applications using EMF
  • Defining generators for Android Applications
  • Defining Graphical Editors (GEF, GMF) for Android Applications
Previous incarnations of tutorial:
  • Tutorial: "Model Driven Java Development Using Eclipse"
    Bruce Trask, Angel Roman.
    EclipseWorld 2008, October 28-30 Reston Virginia 2008.
    http://www.eclipseworld.net/programday2pm.html#401
    One of the top 9 hottest classes to attend at EclipseWorld
    http://ztrek.blogspot.com/2008/09/9-hottest-classes-at-eclipseworld.html

  • Tutorial: "Introduction to Model Driven Engineering using Eclipse Frameworks"
    Bruce Trask, Angel Roman.
    EclipseCon 2008, March 17th – 20th Santa Clara California 2008. http://www.eclipsecon.org/2008/?page=sub/&id=282

  • Tutorial: "Effective Model Driven Engineering Patterns Principles and Practices in Action"
    Bruce Trask, Angel Roman.
    ACM/IEEE 11th International Conference on Model Driven Engineering Languages and Systems, MoDELS 2008.
    Toulouse France.
    http://www.irit.fr/models/tutorials.html#HdP

  • Tutorial: "Leveraging Model Driven Engineering in Software Product Line Architectures"
    Bruce Trask, Angel Roman.
    12th International Software Product Line Conference, SPLC 2008. September 8 -12th Limerick Ireland.
    http://www.lero.ie/splc2008/tutorialleveragingmdeinspla.html

  • Tutorial: "Introduction to Model Driven Development with examples using Eclipse Frameworks"
    Bruce Trask, Angel Roman.
    ACM Conference on Object-Oriented Programming, Systems, Languages & Applications, OOPSLA 2008. October 19th - 23rd Nashville, TN 2008
    http://www.oopsla.org/oopsla2008/tutorials.html

  • Tutorial: "Effective Model Driven Engineering for Creating Domain Specific Languages"
    Bruce Trask, Angel Roman.
    Seventh International Conference on Generative Programming and Component Engineering GPCE 2008. October 19th – 23rd Nashville, TN 2008.

  • Short Talk: "Effective Model Driven Development Using Eclipse"
    Bruce Trask, Angel Roman.
    EclipseCon 2007. March 5th – 8th, Santa Clara, California. "http://www.eclipsecon.org/2007/index.php?page=sub/&id=4177"

  • Tutorial: "Effective Model Driven Engineering Patterns, Principles, and Practices in Action"
    Bruce Trask, Angel Roman.
    ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MoDELS 2007. September 30th – October 5th 2007, Nashville, TN.
    http://models2007.isis.vanderbilt.edu/tutorials.html

  • Tutorial: "Patterns Principles and Practices of Tool Development using Model Driven Engineering and Domain Specific Languages"
    Bruce Trask, Angel Roman.
    International Conference on Objects, Models, Components, Patterns, TOOLS 2007, Zurich Switzerland.
    http://tools.ethz.ch/tools2007/callfortutorials.html#t5

  • Tutorial: "Leveraging Model Driven Engineering in Software Product Line Architectures with Specific Examples using Eclipse Frameworks EMG, GEF and GMF"
    Bruce Trask, Angel Roman.
    11th International Software Product Line Conference, SPLC 2007. September 10th – 14th Kyoto, Japan. http://splc2007.jaist.ac.jp/tutorials.html

  • Tutorial: "Model Driven Development Basics using Eclipse"
    Bruce Trask, Angel Roman.
    ACM 5th International Conference on Generative Programming and Component Engineering, GPCE 2006. Portland Oregon, October 23rd 2006.
    http://www.gpce.org/06/
    http://www.program-transformation.org/GPCE06/TutorialGPCE1

Angel Roman is the Chief Software Architect of MDE Systems and an expert on the Eclipse Development environment and its application frameworks. He has presented at various industry conferences on topics such as Software Defined Radios, MDE Technologies and Embedded Linux. He is currently involved with projects concerning Eclipse Development, Embedded Linux Systems and OSGi.

Bruce Trask has been working on complex Distributed Real-Time Embedded systems for over 20 years specializing in SPL and MDE as applied to these systems in the last 7 years. He has been teaching C++, Object Orientation, Design Patterns, UML, CORBA and Framework courses for over 10 years. He has lead multiple study groups in the New York, New Jersey, Connecticut area on various topics ranging from design patterns to middleware. He is a regular speaker/presenter at software industry conferences all year long. He has delivered tutorials at the OMG. Bruce Trask is the CEO of MDE Systems.

Gold sponsors

IBM Corporation

Windriver logo

JBoss

Sun Microsystems

SOPERA

BLU AGE

BIRT Exchange by Actuate

Silver sponsors

Innovations Software Technology

Google

Genuitec

Instantiations

itemis

EclipseSource

Innovent Solutions

SAP Business Objects

Hardware Sponsor

Cisco

Lanyard Sponsor

Intel logo



report a problem with this page