SlideShare a Scribd company logo
Marco Brambilla1, Andrea Mauri1, Eric Umuhoza1,2 
1 Dipartimento di Elettronica, Informazione e Bioingegneria.Politecnico di Milano 
2 AtlanMod team, Ecole des Mines de Nantes 
Extending the Interaction Flow Modeling Language (IFML) for Model Driven Development of Mobile Applications Front End 
Speaker: 
eric.umuhoza@polimi.itEricUmuhoza 
MobiWIS Conference, Barcelona, August 27-29 ,2014
Outline 
Model driven development(MDD) approach & mobile apps development 
The Interaction Flow Modeling Language(IFML) 
Mobile Extension to IFML(mobile IFML) 
Concrete syntax by example 
Mobile IFML & Code Generation 
Conclusions
MDD in mobile apps front end 
Manual coding is the predominant development approach 
–Reuse of design artifacts is low 
–High risks of errors 
–High costs for cross-platform development 
Platform-independent user interaction modeling language can bring several benefits 
–Model once and generate for any platform of choice 
–It improves the development process 
–It enables the communication of interface and interaction design to non-technical stakeholders 
–It allows the early validation of requirements
The Interaction Flow Modeling Language 
An OMG standard designed for expressing: 
–Contentvisualized in the user interfaces 
–User eventsand interaction, and 
–Control behavior of the front-end of SW applications
IFML main concepts 
Container 
ViewComponent 
Event 
Action
IFML main concepts -2 
Navigation flow 
Data flow 
Parameter binding
IFML concrete syntax -example 
View Container 
Parameter Binding 
Event 
View Component 
Action 
Navigation Flow
IFML metamodel -Extensions 
Organized in two main packages: 
–IFML Core 
–IFML Extensions 
and then you can extend it as you want, for different fields and platforms (Web, Mobile, …)
Why IFML? 
It is an OMG Standard for Interaction Flow Modeling 
The composition of mobile apps interface can be expressed with the core IFML concepts of ViewContainers and ViewComponents 
It is extensible 
Our IFML based modeling experience
Mobile IFML 
Two main motivation: 
–Complexityof interaction patterns to better exploit the limited space 
–Interactionwith other hardware and software components(sensors, apps,…)
Mobile IFML -2 
Four main extension definitions : 
–ViewContainers and ViewComponents 
–MobileContext, capturing all dimensions that characterize the user’s intent, device’s capacity and the environment surrounding the user 
–MobileEvents, addressing the capturing of the mobile events 
–MobileAction and MobileActionEvent
Mobile IFML –Container & Components 
Plus <<MobileSystem>> stereotype 
Some concepts may be extended to better reflect the terminology and properties of mobile apps.
Mobile IFML –MobileContext 
It assumes particular relevance in mobile apps 
The context must gather all the dimensions that characterize: 
–The user's intent 
–The capacity of access device 
–The communication network, and etc.
Mobile IFML –MobileEvents 
Three categories of mobile events: 
–Events generated by the interaction of the usersuch as LongPress, swipe, etc. 
–Events triggered by the mobile device featuressuch as sensors, battery, etc. 
–Events triggered by user actions related to the device components such as taking a photo, recording a video or using the microphone
Mobile IFML –MobileViewElementEvent 
Events generated by the interaction of the user
Mobile IFML –MobileSystemEvent 
Events produced by the mobile system
Mobile IFML –MobileActionEvent 
Screen 
MobileViewElementEvent 
MobileComponent 
MobileAction 
MobileActionEvent
Modeling tool -demo 
Open source project http://ifml.github.io 
Eclipse plugin available at https://ifml.github.io/update/site.xml
Code Generation
Conclusions 
A mobile extension of OMG’s standard IFML 
A Sirius based IFML modeling tool 
Prototype of the code generators 
Future works 
–Improvement of the modeling tool 
–Implementation of more refined code generators 
–Study of the design patterns for MD mobile apps design 
Acknowledgement: this work was partially funded by the AutoMobile EU 7th FP SME Research project(http://automobile.webratio.com)

More Related Content

What's hot

Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...
Marco Brambilla
 
IFML - Internet of Things and Internet of People: The Role of User Interactio...
IFML - Internet of Things and Internet of People: The Role of User Interactio...IFML - Internet of Things and Internet of People: The Role of User Interactio...
IFML - Internet of Things and Internet of People: The Role of User Interactio...
Marco Brambilla
 
Model driven development and code generation of software systems
Model driven development and code generation of software systemsModel driven development and code generation of software systems
Model driven development and code generation of software systemsMarco Brambilla
 
Rhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For ReuseRhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For ReuseBill Duncan
 
EMF-REST: Generation of RESTful APIs from Models
EMF-REST: Generation of RESTful APIs from ModelsEMF-REST: Generation of RESTful APIs from Models
EMF-REST: Generation of RESTful APIs from Models
Hamza ED-DOUIBI
 
WebML and WebRatio - Business process modeling (BPM) and web application mode...
WebML and WebRatio - Business process modeling (BPM) and web application mode...WebML and WebRatio - Business process modeling (BPM) and web application mode...
WebML and WebRatio - Business process modeling (BPM) and web application mode...
Marco Brambilla
 
WebML and WebRatio
WebML and WebRatioWebML and WebRatio
WebML and WebRatio
Marco Brambilla
 
Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven Architectures
Lalit Kale
 
Layered Software Architecture
Layered Software ArchitectureLayered Software Architecture
Layered Software Architecture
Lars-Erik Kindblad
 
Model Driven Architecture (MDA): Motivations, Status & Future
Model Driven Architecture (MDA): Motivations, Status & FutureModel Driven Architecture (MDA): Motivations, Status & Future
Model Driven Architecture (MDA): Motivations, Status & Futureelliando dias
 
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Jordi Cabot
 
Model-Driven Software Engineering in Practice - Chapter 2 - MDSE Principles
Model-Driven Software Engineering in Practice - Chapter 2 - MDSE PrinciplesModel-Driven Software Engineering in Practice - Chapter 2 - MDSE Principles
Model-Driven Software Engineering in Practice - Chapter 2 - MDSE Principles
Marco Brambilla
 
Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringPiero Fraternali
 
Modern Software Architectures: Building Solutions for Web, Cloud, and Mobile
Modern Software Architectures: Building Solutions for Web, Cloud, and MobileModern Software Architectures: Building Solutions for Web, Cloud, and Mobile
Modern Software Architectures: Building Solutions for Web, Cloud, and MobileDan Mohl
 
[2015/2016] Introduction to software architecture
[2015/2016] Introduction to software architecture[2015/2016] Introduction to software architecture
[2015/2016] Introduction to software architecture
Ivano Malavolta
 
Funambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry CaseFunambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry CaseFunambol
 
Introduction to MDA
Introduction to MDAIntroduction to MDA
Introduction to MDA
Orçun Dayıbaş
 
Model driven architecture
Model driven architectureModel driven architecture
Model driven architecture
Biruk Mamo
 
Model-Driven Software Engineering in Practice - Chapter 10 - Managing models
Model-Driven Software Engineering in Practice - Chapter 10 - Managing modelsModel-Driven Software Engineering in Practice - Chapter 10 - Managing models
Model-Driven Software Engineering in Practice - Chapter 10 - Managing models
Jordi Cabot
 
The F*star Meta-Pattern (English only)
The F*star Meta-Pattern (English only)The F*star Meta-Pattern (English only)
The F*star Meta-Pattern (English only)eelstork
 

What's hot (20)

Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...
 
IFML - Internet of Things and Internet of People: The Role of User Interactio...
IFML - Internet of Things and Internet of People: The Role of User Interactio...IFML - Internet of Things and Internet of People: The Role of User Interactio...
IFML - Internet of Things and Internet of People: The Role of User Interactio...
 
Model driven development and code generation of software systems
Model driven development and code generation of software systemsModel driven development and code generation of software systems
Model driven development and code generation of software systems
 
Rhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For ReuseRhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For Reuse
 
EMF-REST: Generation of RESTful APIs from Models
EMF-REST: Generation of RESTful APIs from ModelsEMF-REST: Generation of RESTful APIs from Models
EMF-REST: Generation of RESTful APIs from Models
 
WebML and WebRatio - Business process modeling (BPM) and web application mode...
WebML and WebRatio - Business process modeling (BPM) and web application mode...WebML and WebRatio - Business process modeling (BPM) and web application mode...
WebML and WebRatio - Business process modeling (BPM) and web application mode...
 
WebML and WebRatio
WebML and WebRatioWebML and WebRatio
WebML and WebRatio
 
Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven Architectures
 
Layered Software Architecture
Layered Software ArchitectureLayered Software Architecture
Layered Software Architecture
 
Model Driven Architecture (MDA): Motivations, Status & Future
Model Driven Architecture (MDA): Motivations, Status & FutureModel Driven Architecture (MDA): Motivations, Status & Future
Model Driven Architecture (MDA): Motivations, Status & Future
 
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
 
Model-Driven Software Engineering in Practice - Chapter 2 - MDSE Principles
Model-Driven Software Engineering in Practice - Chapter 2 - MDSE PrinciplesModel-Driven Software Engineering in Practice - Chapter 2 - MDSE Principles
Model-Driven Software Engineering in Practice - Chapter 2 - MDSE Principles
 
Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven Engineering
 
Modern Software Architectures: Building Solutions for Web, Cloud, and Mobile
Modern Software Architectures: Building Solutions for Web, Cloud, and MobileModern Software Architectures: Building Solutions for Web, Cloud, and Mobile
Modern Software Architectures: Building Solutions for Web, Cloud, and Mobile
 
[2015/2016] Introduction to software architecture
[2015/2016] Introduction to software architecture[2015/2016] Introduction to software architecture
[2015/2016] Introduction to software architecture
 
Funambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry CaseFunambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry Case
 
Introduction to MDA
Introduction to MDAIntroduction to MDA
Introduction to MDA
 
Model driven architecture
Model driven architectureModel driven architecture
Model driven architecture
 
Model-Driven Software Engineering in Practice - Chapter 10 - Managing models
Model-Driven Software Engineering in Practice - Chapter 10 - Managing modelsModel-Driven Software Engineering in Practice - Chapter 10 - Managing models
Model-Driven Software Engineering in Practice - Chapter 10 - Managing models
 
The F*star Meta-Pattern (English only)
The F*star Meta-Pattern (English only)The F*star Meta-Pattern (English only)
The F*star Meta-Pattern (English only)
 

Similar to Mobile extensions for OMG's IFML modeling language

Model Driven Development of Social Media Environmental Monitoring Applications
Model Driven Development of Social Media Environmental Monitoring ApplicationsModel Driven Development of Social Media Environmental Monitoring Applications
Model Driven Development of Social Media Environmental Monitoring Applications
Andrea Mauri
 
Domain specific modeling for mobile and io t apps
Domain specific modeling for mobile and io t appsDomain specific modeling for mobile and io t apps
Domain specific modeling for mobile and io t apps
Università degli Studi dell'Aquila
 
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...
Marco Brambilla
 
Adopting enterprise mobility using Smartphones
Adopting enterprise mobility using SmartphonesAdopting enterprise mobility using Smartphones
Adopting enterprise mobility using Smartphones
Lalatendu Das
 
IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0
Banking at Ho Chi Minh city
 
A methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application developmentA methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application developmentIAEME Publication
 
A methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application developmentA methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application developmentIAEME Publication
 
On mobile - Product Strategy
On mobile - Product StrategyOn mobile - Product Strategy
On mobile - Product Strategymobiangle
 
Modelling Feature Interaction Patterns in Nokia Mobile Phones.
Modelling Feature Interaction Patterns in Nokia Mobile Phones.Modelling Feature Interaction Patterns in Nokia Mobile Phones.
Modelling Feature Interaction Patterns in Nokia Mobile Phones.
pradeepmondal
 
11.universal mobile application development (umad) on home automation
11.universal mobile application development (umad) on home automation11.universal mobile application development (umad) on home automation
11.universal mobile application development (umad) on home automationAlexander Decker
 
Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application Testing
Sourabh Kasliwal
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testing
sanpalan
 
Mobile testing
Mobile testingMobile testing
Mobile testing
sanpalan
 
Improving university education in nigeria through mobile academic directory
Improving university education in nigeria through mobile academic directoryImproving university education in nigeria through mobile academic directory
Improving university education in nigeria through mobile academic directory
AnthonyOtuonye
 
Test Cases and Testing Strategies for Mobile Apps –A Survey
Test Cases and Testing Strategies for  Mobile Apps  –A SurveyTest Cases and Testing Strategies for  Mobile Apps  –A Survey
Test Cases and Testing Strategies for Mobile Apps –A Survey
IRJET Journal
 
Thorsignia - Custom software development services in india
Thorsignia - Custom software development services in indiaThorsignia - Custom software development services in india
Thorsignia - Custom software development services in india
charan Teja
 
Ibm rational mobile
Ibm rational mobileIbm rational mobile
Ibm rational mobile
Roberto Pozzi
 
Andy Steggles: Social Media on the Go: Crafting a Mobile Strategy
Andy Steggles: Social Media on the Go: Crafting a Mobile StrategyAndy Steggles: Social Media on the Go: Crafting a Mobile Strategy
Andy Steggles: Social Media on the Go: Crafting a Mobile Strategy
Social Media for Nonprofits
 

Similar to Mobile extensions for OMG's IFML modeling language (20)

Model Driven Development of Social Media Environmental Monitoring Applications
Model Driven Development of Social Media Environmental Monitoring ApplicationsModel Driven Development of Social Media Environmental Monitoring Applications
Model Driven Development of Social Media Environmental Monitoring Applications
 
Domain specific modeling for mobile and io t apps
Domain specific modeling for mobile and io t appsDomain specific modeling for mobile and io t apps
Domain specific modeling for mobile and io t apps
 
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...
 
Adopting enterprise mobility using Smartphones
Adopting enterprise mobility using SmartphonesAdopting enterprise mobility using Smartphones
Adopting enterprise mobility using Smartphones
 
On Mobile- Product Strategy
On Mobile- Product StrategyOn Mobile- Product Strategy
On Mobile- Product Strategy
 
IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0
 
presentation-symposium-v4
presentation-symposium-v4presentation-symposium-v4
presentation-symposium-v4
 
A methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application developmentA methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application development
 
A methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application developmentA methodology for model driven multiplatform mobile application development
A methodology for model driven multiplatform mobile application development
 
On mobile - Product Strategy
On mobile - Product StrategyOn mobile - Product Strategy
On mobile - Product Strategy
 
Modelling Feature Interaction Patterns in Nokia Mobile Phones.
Modelling Feature Interaction Patterns in Nokia Mobile Phones.Modelling Feature Interaction Patterns in Nokia Mobile Phones.
Modelling Feature Interaction Patterns in Nokia Mobile Phones.
 
11.universal mobile application development (umad) on home automation
11.universal mobile application development (umad) on home automation11.universal mobile application development (umad) on home automation
11.universal mobile application development (umad) on home automation
 
Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application Testing
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testing
 
Mobile testing
Mobile testingMobile testing
Mobile testing
 
Improving university education in nigeria through mobile academic directory
Improving university education in nigeria through mobile academic directoryImproving university education in nigeria through mobile academic directory
Improving university education in nigeria through mobile academic directory
 
Test Cases and Testing Strategies for Mobile Apps –A Survey
Test Cases and Testing Strategies for  Mobile Apps  –A SurveyTest Cases and Testing Strategies for  Mobile Apps  –A Survey
Test Cases and Testing Strategies for Mobile Apps –A Survey
 
Thorsignia - Custom software development services in india
Thorsignia - Custom software development services in indiaThorsignia - Custom software development services in india
Thorsignia - Custom software development services in india
 
Ibm rational mobile
Ibm rational mobileIbm rational mobile
Ibm rational mobile
 
Andy Steggles: Social Media on the Go: Crafting a Mobile Strategy
Andy Steggles: Social Media on the Go: Crafting a Mobile StrategyAndy Steggles: Social Media on the Go: Crafting a Mobile Strategy
Andy Steggles: Social Media on the Go: Crafting a Mobile Strategy
 

Recently uploaded

Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Orkestra
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 Presentation
Access Innovations, Inc.
 
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
OWASP Beja
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Sebastiano Panichella
 
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
OECD Directorate for Financial and Enterprise Affairs
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control Tower
Vladimir Samoylov
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
Sebastiano Panichella
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
Howard Spence
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Sebastiano Panichella
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
Faculty of Medicine And Health Sciences
 
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
khadija278284
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutes
IP ServerOne
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Matjaž Lipuš
 

Recently uploaded (13)

Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 Presentation
 
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
 
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control Tower
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
 
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutes
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
 

Mobile extensions for OMG's IFML modeling language

  • 1. Marco Brambilla1, Andrea Mauri1, Eric Umuhoza1,2 1 Dipartimento di Elettronica, Informazione e Bioingegneria.Politecnico di Milano 2 AtlanMod team, Ecole des Mines de Nantes Extending the Interaction Flow Modeling Language (IFML) for Model Driven Development of Mobile Applications Front End Speaker: eric.umuhoza@polimi.itEricUmuhoza MobiWIS Conference, Barcelona, August 27-29 ,2014
  • 2. Outline Model driven development(MDD) approach & mobile apps development The Interaction Flow Modeling Language(IFML) Mobile Extension to IFML(mobile IFML) Concrete syntax by example Mobile IFML & Code Generation Conclusions
  • 3. MDD in mobile apps front end Manual coding is the predominant development approach –Reuse of design artifacts is low –High risks of errors –High costs for cross-platform development Platform-independent user interaction modeling language can bring several benefits –Model once and generate for any platform of choice –It improves the development process –It enables the communication of interface and interaction design to non-technical stakeholders –It allows the early validation of requirements
  • 4. The Interaction Flow Modeling Language An OMG standard designed for expressing: –Contentvisualized in the user interfaces –User eventsand interaction, and –Control behavior of the front-end of SW applications
  • 5. IFML main concepts Container ViewComponent Event Action
  • 6. IFML main concepts -2 Navigation flow Data flow Parameter binding
  • 7. IFML concrete syntax -example View Container Parameter Binding Event View Component Action Navigation Flow
  • 8. IFML metamodel -Extensions Organized in two main packages: –IFML Core –IFML Extensions and then you can extend it as you want, for different fields and platforms (Web, Mobile, …)
  • 9. Why IFML? It is an OMG Standard for Interaction Flow Modeling The composition of mobile apps interface can be expressed with the core IFML concepts of ViewContainers and ViewComponents It is extensible Our IFML based modeling experience
  • 10. Mobile IFML Two main motivation: –Complexityof interaction patterns to better exploit the limited space –Interactionwith other hardware and software components(sensors, apps,…)
  • 11. Mobile IFML -2 Four main extension definitions : –ViewContainers and ViewComponents –MobileContext, capturing all dimensions that characterize the user’s intent, device’s capacity and the environment surrounding the user –MobileEvents, addressing the capturing of the mobile events –MobileAction and MobileActionEvent
  • 12. Mobile IFML –Container & Components Plus <<MobileSystem>> stereotype Some concepts may be extended to better reflect the terminology and properties of mobile apps.
  • 13. Mobile IFML –MobileContext It assumes particular relevance in mobile apps The context must gather all the dimensions that characterize: –The user's intent –The capacity of access device –The communication network, and etc.
  • 14. Mobile IFML –MobileEvents Three categories of mobile events: –Events generated by the interaction of the usersuch as LongPress, swipe, etc. –Events triggered by the mobile device featuressuch as sensors, battery, etc. –Events triggered by user actions related to the device components such as taking a photo, recording a video or using the microphone
  • 15. Mobile IFML –MobileViewElementEvent Events generated by the interaction of the user
  • 16. Mobile IFML –MobileSystemEvent Events produced by the mobile system
  • 17. Mobile IFML –MobileActionEvent Screen MobileViewElementEvent MobileComponent MobileAction MobileActionEvent
  • 18. Modeling tool -demo Open source project http://ifml.github.io Eclipse plugin available at https://ifml.github.io/update/site.xml
  • 20. Conclusions A mobile extension of OMG’s standard IFML A Sirius based IFML modeling tool Prototype of the code generators Future works –Improvement of the modeling tool –Implementation of more refined code generators –Study of the design patterns for MD mobile apps design Acknowledgement: this work was partially funded by the AutoMobile EU 7th FP SME Research project(http://automobile.webratio.com)