designing data-intensive mobile applications: the mobml approach

14
Università degli Studi dell’Aquila Collaborative Design and Development Data- Intensive Mobile Applications Mirco Franzago, Ivano Malavolta, Henry Muccini DISIM, University of L’Aquila [email protected], @muccinihenry, www.henrymuccini.com @MobileSoft2014, Hyderabad –June2014 App Developer ContentManager Navigation ML Data UI ML UI Designer Business Logic Server Side Developer for for for for

Upload: henry-muccini

Post on 23-Aug-2014

235 views

Category:

Mobile


12 download

DESCRIPTION

How to design mobile applications so to make them encapsulating best practices? Check out the MobML approach and framework. An introductory paper has been published at MobileSoft 2014, http://dl.acm.org/citation.cfm?doid=2593902.2593917

TRANSCRIPT

Page 1: Designing Data-Intensive Mobile Applications: the MobML approach

Università degli Studi dell’Aquila

Collaborative

Design and Development Data-

Intensive Mobile ApplicationsMirco Franzago, Ivano Malavolta, Henry Muccini

DISIM, University of L’Aquila

[email protected], @muccinihenry, www.henrymuccini.com

@MobileSoft 2014, Hyderabad – June 2014

App

Developer

Content Manager

Navigation

MLData

UI ML

UI Designer

Business Logic

Server Side Developer

forforforfor

Page 2: Designing Data-Intensive Mobile Applications: the MobML approach

The problem we want to deal with 2

Recurring issues and challenges in app development

Technical (fragmentation, code reuse, frequent

changes, monitoring analysis and testing, etc.)

Design issues

Limited reasoning in the context

Limited information architecture

engineering

Stakeholder diversity

Best practices for app design and development are available, but mobile

applications are still developed with ad-hoc development processes, and

best practices are still not automated.

Page 3: Designing Data-Intensive Mobile Applications: the MobML approach

Goals of our proposal

To codify best design practices into a Model-

Driven Engineering language and framework

3

An

aly

sis

r

App

Developer

Anal

ysis r

Analysis

results

1

A

1 2

A

2 n

A

n

Content ManagerPlugin developers

Navigation

MLData

UI ML

UI Designer

MobML

Analysis

MobL

Code

The MobML Framework

Business Logic

An

alyACode

Modeling environment for

Mobile Applications

Server Side

Developer

MobML

Testing

Analysis and

Code

Generation

Page 4: Designing Data-Intensive Mobile Applications: the MobML approach

Principles4

Participatory design

Collaborative Design

Multi-view Modeling Languages

Hiding MDE complexities

A

B

C

D

Page 5: Designing Data-Intensive Mobile Applications: the MobML approach

A. Participatory Design

“Participatory design … is an approach to design

attempting to actively involve all

stakeholders (e.g. employees, partners, customers,

citizens, end users) in the design process to help ensure

the result meets their needs and is usable” [Wikipedia]

5

Stakeholder diversity

Page 6: Designing Data-Intensive Mobile Applications: the MobML approach

B. Collaborative Design6

Integration with source codeReal-time collaboration

Tangibility

Page 7: Designing Data-Intensive Mobile Applications: the MobML approach

C. Multi-view Modeling Language7

Separation of concerns

Platform independence

Models Reuse

Extensibility

Page 8: Designing Data-Intensive Mobile Applications: the MobML approach

D. Hiding MDE complexities8

Sliding: go to page 2

Click: go to the

category page

Page 9: Designing Data-Intensive Mobile Applications: the MobML approach

Collaborative Framework

Goals of our proposal

To codify best design practices into a Model-

Driven Engineering language and framework

9

An

aly

sis

r

App

Developer

Anal

ysis r

Analysis

results

1

A

1 2

A

2 n

A

n

Content ManagerPlugin developers

Navigation

MLData

UI ML

UI Designer

MobML

Analysis

MobL

Code

Business Logic

An

alyACode

Modeling environment

Server Side

Developer

MobML

Testing

Analysis and

Code

Generation

Page 10: Designing Data-Intensive Mobile Applications: the MobML approach

The MobML Design Decisions10

Web-based Framework

UI, Navigation, Data, Business Logic views

Only Data-Intensive Mobile apps

Synchronous, Semi-synch, Asynchronous, …

Targeting Apache Cordova (so far)

Page 11: Designing Data-Intensive Mobile Applications: the MobML approach

Related Work11

MobML Quill MD2 IFML WAE

Mobile-specific

Multiple stakeholders

Code generation

Cross-platform code

Analysis (yet)

On-demand deployment

Collaborative

Real-time support

Graphical notation

Page 12: Designing Data-Intensive Mobile Applications: the MobML approach

User-oriented

Technology agnostic

Multiple stakeholders

Domain-specific

Tool: Web-based

Enterprise-oriented

Technology agnostic

Single stakeholder: engineer

Based on UML

Tool: Eclipse-based

12

Page 13: Designing Data-Intensive Mobile Applications: the MobML approach

Future Work

� Formal definition of the proposed languages

� Pre-deployment analysis for enforcing design best practicesand guidelines

� Generic framework for managing real-time collaborative modeling

� Empirical evidence about the effectiveness of the approachand about the quality of hybrid apps w.r.t. native apps

13

Page 14: Designing Data-Intensive Mobile Applications: the MobML approach

Contacts

If you are interested in the proposed approach:

14

Stop by after the presentation

Contact me at [email protected]

Tweet @muccinihenry

Skype me at henry.muccini

Call me ☺☺☺☺

Franzago, Malavolta, Muccini “Towards a Collaborative Framework for the Design

and Development of Data-Intensive Mobile Applications” @MobileSoft2014