Enviar pesquisa
Carregar
Multichannel User Interfaces
•
2 gostaram
•
1,427 visualizações
Pedro J. Molina
Seguir
UI Development
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 44
Recomendados
Vanet ppt
Vanet ppt
Akash Raghunath
Distributed objects & components of corba
Distributed objects & components of corba
Mayuresh Wadekar
Design concept -Software Engineering
Design concept -Software Engineering
Varsha Ajith
Underlying principles of parallel and distributed computing
Underlying principles of parallel and distributed computing
GOVERNMENT COLLEGE OF ENGINEERING,TIRUNELVELI
Taxonomy for bugs
Taxonomy for bugs
Harika Krupal
Software Reuse
Software Reuse
prince mukherjee
IOT - Design Principles of Connected Devices
IOT - Design Principles of Connected Devices
Devyani Vasistha
Sign language recognizer
Sign language recognizer
Bikash Chandra Karmokar
Recomendados
Vanet ppt
Vanet ppt
Akash Raghunath
Distributed objects & components of corba
Distributed objects & components of corba
Mayuresh Wadekar
Design concept -Software Engineering
Design concept -Software Engineering
Varsha Ajith
Underlying principles of parallel and distributed computing
Underlying principles of parallel and distributed computing
GOVERNMENT COLLEGE OF ENGINEERING,TIRUNELVELI
Taxonomy for bugs
Taxonomy for bugs
Harika Krupal
Software Reuse
Software Reuse
prince mukherjee
IOT - Design Principles of Connected Devices
IOT - Design Principles of Connected Devices
Devyani Vasistha
Sign language recognizer
Sign language recognizer
Bikash Chandra Karmokar
Emotion recognition using image processing in deep learning
Emotion recognition using image processing in deep learning
vishnuv43
Control Flow Testing
Control Flow Testing
Hirra Sultan
Unified process model
Unified process model
RyndaMaala
Formal Approaches to SQA.pptx
Formal Approaches to SQA.pptx
KarthigaiSelviS3
Software component reuse repository
Software component reuse repository
Sandeep Singh
Multichannel User Interfaces
Multichannel User Interfaces
Icinetic
Unit 5 usability and satisfaction test
Unit 5 usability and satisfaction test
gopal10scs185
I.t in space
I.t in space
nunna09
USER INTERFACE DESIGN PPT
USER INTERFACE DESIGN PPT
vicci4041
Architectural structures and views
Architectural structures and views
Dr Reeja S R
Hci in software process
Hci in software process
rida mariam
Human Computer Interaction Unit III Part 2
Human Computer Interaction Unit III Part 2
ashodhiyavipin
Design Concept software engineering
Design Concept software engineering
Darshit Metaliya
Project control and process instrumentation
Project control and process instrumentation
Kuppusamy P
HCI 3e - Ch 6: HCI in the software process
HCI 3e - Ch 6: HCI in the software process
Alan Dix
Statistical Software Quality Assurance.pptx
Statistical Software Quality Assurance.pptx
KarthigaiSelviS3
Architecture of Mobile Computing
Architecture of Mobile Computing
JAINIK PATEL
Chapter 15 software product metrics
Chapter 15 software product metrics
SHREEHARI WADAWADAGI
Pawan111
Pawan111
ranjeetdon
Issues in routing protocol
Issues in routing protocol
Pradeep Kumar TS
Hivepod: Casos de uso en OpenData
Hivepod: Casos de uso en OpenData
Pedro J. Molina
TDD+CI con Teamcity
TDD+CI con Teamcity
Pedro J. Molina
Mais conteúdo relacionado
Mais procurados
Emotion recognition using image processing in deep learning
Emotion recognition using image processing in deep learning
vishnuv43
Control Flow Testing
Control Flow Testing
Hirra Sultan
Unified process model
Unified process model
RyndaMaala
Formal Approaches to SQA.pptx
Formal Approaches to SQA.pptx
KarthigaiSelviS3
Software component reuse repository
Software component reuse repository
Sandeep Singh
Multichannel User Interfaces
Multichannel User Interfaces
Icinetic
Unit 5 usability and satisfaction test
Unit 5 usability and satisfaction test
gopal10scs185
I.t in space
I.t in space
nunna09
USER INTERFACE DESIGN PPT
USER INTERFACE DESIGN PPT
vicci4041
Architectural structures and views
Architectural structures and views
Dr Reeja S R
Hci in software process
Hci in software process
rida mariam
Human Computer Interaction Unit III Part 2
Human Computer Interaction Unit III Part 2
ashodhiyavipin
Design Concept software engineering
Design Concept software engineering
Darshit Metaliya
Project control and process instrumentation
Project control and process instrumentation
Kuppusamy P
HCI 3e - Ch 6: HCI in the software process
HCI 3e - Ch 6: HCI in the software process
Alan Dix
Statistical Software Quality Assurance.pptx
Statistical Software Quality Assurance.pptx
KarthigaiSelviS3
Architecture of Mobile Computing
Architecture of Mobile Computing
JAINIK PATEL
Chapter 15 software product metrics
Chapter 15 software product metrics
SHREEHARI WADAWADAGI
Pawan111
Pawan111
ranjeetdon
Issues in routing protocol
Issues in routing protocol
Pradeep Kumar TS
Mais procurados
(20)
Emotion recognition using image processing in deep learning
Emotion recognition using image processing in deep learning
Control Flow Testing
Control Flow Testing
Unified process model
Unified process model
Formal Approaches to SQA.pptx
Formal Approaches to SQA.pptx
Software component reuse repository
Software component reuse repository
Multichannel User Interfaces
Multichannel User Interfaces
Unit 5 usability and satisfaction test
Unit 5 usability and satisfaction test
I.t in space
I.t in space
USER INTERFACE DESIGN PPT
USER INTERFACE DESIGN PPT
Architectural structures and views
Architectural structures and views
Hci in software process
Hci in software process
Human Computer Interaction Unit III Part 2
Human Computer Interaction Unit III Part 2
Design Concept software engineering
Design Concept software engineering
Project control and process instrumentation
Project control and process instrumentation
HCI 3e - Ch 6: HCI in the software process
HCI 3e - Ch 6: HCI in the software process
Statistical Software Quality Assurance.pptx
Statistical Software Quality Assurance.pptx
Architecture of Mobile Computing
Architecture of Mobile Computing
Chapter 15 software product metrics
Chapter 15 software product metrics
Pawan111
Pawan111
Issues in routing protocol
Issues in routing protocol
Destaque
Hivepod: Casos de uso en OpenData
Hivepod: Casos de uso en OpenData
Pedro J. Molina
TDD+CI con Teamcity
TDD+CI con Teamcity
Pedro J. Molina
Modeling and Code Generation in the Cloud for Citizen Developers and Beyond
Modeling and Code Generation in the Cloud for Citizen Developers and Beyond
Pedro J. Molina
Introducción a StackOverflow
Introducción a StackOverflow
Pedro J. Molina
Scaling MDD for production: enabling SoC at model time
Scaling MDD for production: enabling SoC at model time
Pedro J. Molina
Modelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at Icinetic
Pedro J. Molina
CG2010 Tailored Code Generators
CG2010 Tailored Code Generators
Pedro J. Molina
MDD: Models, frameworks, & code generation
MDD: Models, frameworks, & code generation
Pedro J. Molina
SVQDC 2017 Tecnologías para Microservicios
SVQDC 2017 Tecnologías para Microservicios
Pedro J. Molina
Microservicios sobre MEAN Stack
Microservicios sobre MEAN Stack
Pedro J. Molina
Tecnologías para microservicios
Tecnologías para microservicios
Pedro J. Molina
Modeling on the Web
Modeling on the Web
Pedro J. Molina
Modelling the User Interface
Modelling the User Interface
Pedro J. Molina
Code Generation for Conceptual User Interface Patterns
Code Generation for Conceptual User Interface Patterns
Pedro J. Molina
The PISA Project: a MDD case study
The PISA Project: a MDD case study
Pedro J. Molina
Opensouthcode: Microservicios sobre MEAN Stack
Opensouthcode: Microservicios sobre MEAN Stack
Pedro J. Molina
Introducción a Angular
Introducción a Angular
Pedro J. Molina
CG2010 Introducing MDSD
CG2010 Introducing MDSD
Pedro J. Molina
Introducing MDSD
Introducing MDSD
Pedro J. Molina
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
Jordi Cabot
Destaque
(20)
Hivepod: Casos de uso en OpenData
Hivepod: Casos de uso en OpenData
TDD+CI con Teamcity
TDD+CI con Teamcity
Modeling and Code Generation in the Cloud for Citizen Developers and Beyond
Modeling and Code Generation in the Cloud for Citizen Developers and Beyond
Introducción a StackOverflow
Introducción a StackOverflow
Scaling MDD for production: enabling SoC at model time
Scaling MDD for production: enabling SoC at model time
Modelling and code generation in .NET at Icinetic
Modelling and code generation in .NET at Icinetic
CG2010 Tailored Code Generators
CG2010 Tailored Code Generators
MDD: Models, frameworks, & code generation
MDD: Models, frameworks, & code generation
SVQDC 2017 Tecnologías para Microservicios
SVQDC 2017 Tecnologías para Microservicios
Microservicios sobre MEAN Stack
Microservicios sobre MEAN Stack
Tecnologías para microservicios
Tecnologías para microservicios
Modeling on the Web
Modeling on the Web
Modelling the User Interface
Modelling the User Interface
Code Generation for Conceptual User Interface Patterns
Code Generation for Conceptual User Interface Patterns
The PISA Project: a MDD case study
The PISA Project: a MDD case study
Opensouthcode: Microservicios sobre MEAN Stack
Opensouthcode: Microservicios sobre MEAN Stack
Introducción a Angular
Introducción a Angular
CG2010 Introducing MDSD
CG2010 Introducing MDSD
Introducing MDSD
Introducing MDSD
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
Semelhante a Multichannel User Interfaces
Introduction to Reddo Webinar
Introduction to Reddo Webinar
Reddo Mobility
Redefining Perspectives 4 - Metro ui Session 1
Redefining Perspectives 4 - Metro ui Session 1
sapientindia
ANDROID presentation prabal
ANDROID presentation prabal
Prabal Tyagi
Cerutti--Web Information Systems (postgrad seminar @ University of Brescia)
Cerutti--Web Information Systems (postgrad seminar @ University of Brescia)
Federico Cerutti
The Promise of Interoperability
The Promise of Interoperability
Real-Time Innovations (RTI)
UGIdotNET App Modernisation Keynote
UGIdotNET App Modernisation Keynote
Lorenzo Barbieri
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
VitulChauhan
Collaborative and agile development of mobile applications
Collaborative and agile development of mobile applications
Ayushman Jain
Introduction of operating system(latest)
Introduction of operating system(latest)
JacksonKong
The App Evolution Continues
The App Evolution Continues
Paula Peña (She, Her, Hers)
Integration solution: Instant access to Web Services into IMS applications
Integration solution: Instant access to Web Services into IMS applications
Virtel - SysperTec
Designing Rich Mobile Apps in a Fragmented World
Designing Rich Mobile Apps in a Fragmented World
Worklight
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
Pedro J. Molina
Linda maleki
Linda maleki
NASAPMC
Ionic App Platform Overview
Ionic App Platform Overview
Ionic Framework
2012.09.11 w3 c html5 mobile paradies
2012.09.11 w3 c html5 mobile paradies
Stephan Haux
Native vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile application
Loic Ortola
INT Inc | Benefits of a Microservices Architecture
INT Inc | Benefits of a Microservices Architecture
Thelma Gros
Web based, mobile enterprise applications
Web based, mobile enterprise applications
Manish Garg
Mobileuidevchallengesinnovate2012a 120607124912-phpapp02
Mobileuidevchallengesinnovate2012a 120607124912-phpapp02
Alexander Muse
Semelhante a Multichannel User Interfaces
(20)
Introduction to Reddo Webinar
Introduction to Reddo Webinar
Redefining Perspectives 4 - Metro ui Session 1
Redefining Perspectives 4 - Metro ui Session 1
ANDROID presentation prabal
ANDROID presentation prabal
Cerutti--Web Information Systems (postgrad seminar @ University of Brescia)
Cerutti--Web Information Systems (postgrad seminar @ University of Brescia)
The Promise of Interoperability
The Promise of Interoperability
UGIdotNET App Modernisation Keynote
UGIdotNET App Modernisation Keynote
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
Collaborative and agile development of mobile applications
Collaborative and agile development of mobile applications
Introduction of operating system(latest)
Introduction of operating system(latest)
The App Evolution Continues
The App Evolution Continues
Integration solution: Instant access to Web Services into IMS applications
Integration solution: Instant access to Web Services into IMS applications
Designing Rich Mobile Apps in a Fragmented World
Designing Rich Mobile Apps in a Fragmented World
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
Linda maleki
Linda maleki
Ionic App Platform Overview
Ionic App Platform Overview
2012.09.11 w3 c html5 mobile paradies
2012.09.11 w3 c html5 mobile paradies
Native vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile application
INT Inc | Benefits of a Microservices Architecture
INT Inc | Benefits of a Microservices Architecture
Web based, mobile enterprise applications
Web based, mobile enterprise applications
Mobileuidevchallengesinnovate2012a 120607124912-phpapp02
Mobileuidevchallengesinnovate2012a 120607124912-phpapp02
Mais de Pedro J. Molina
MDE en la industria
MDE en la industria
Pedro J. Molina
Terraform
Terraform
Pedro J. Molina
dotnetMalaga-2020 Gestión de la configuración en aplicaciones Web
dotnetMalaga-2020 Gestión de la configuración en aplicaciones Web
Pedro J. Molina
Infrastructure as Code with Terraform
Infrastructure as Code with Terraform
Pedro J. Molina
LangDev 2022 Metamodeling on the Web with Essential
LangDev 2022 Metamodeling on the Web with Essential
Pedro J. Molina
Are Startups for me?
Are Startups for me?
Pedro J. Molina
Meow Demo
Meow Demo
Pedro J. Molina
Essential as the base for Web DSLs
Essential as the base for Web DSLs
Pedro J. Molina
Esencia de Web Components
Esencia de Web Components
Pedro J. Molina
Esencia de web components
Esencia de web components
Pedro J. Molina
OpenAPI 3.0.2
OpenAPI 3.0.2
Pedro J. Molina
Quid
Quid
Pedro J. Molina
Securizando por construcción mediante MDE
Securizando por construcción mediante MDE
Pedro J. Molina
Building APIs with the OpenApi Spec
Building APIs with the OpenApi Spec
Pedro J. Molina
Micro vs Nano (servicios)
Micro vs Nano (servicios)
Pedro J. Molina
Diseño de APIs con OpenAPI
Diseño de APIs con OpenAPI
Pedro J. Molina
Mais de Pedro J. Molina
(16)
MDE en la industria
MDE en la industria
Terraform
Terraform
dotnetMalaga-2020 Gestión de la configuración en aplicaciones Web
dotnetMalaga-2020 Gestión de la configuración en aplicaciones Web
Infrastructure as Code with Terraform
Infrastructure as Code with Terraform
LangDev 2022 Metamodeling on the Web with Essential
LangDev 2022 Metamodeling on the Web with Essential
Are Startups for me?
Are Startups for me?
Meow Demo
Meow Demo
Essential as the base for Web DSLs
Essential as the base for Web DSLs
Esencia de Web Components
Esencia de Web Components
Esencia de web components
Esencia de web components
OpenAPI 3.0.2
OpenAPI 3.0.2
Quid
Quid
Securizando por construcción mediante MDE
Securizando por construcción mediante MDE
Building APIs with the OpenApi Spec
Building APIs with the OpenApi Spec
Micro vs Nano (servicios)
Micro vs Nano (servicios)
Diseño de APIs con OpenAPI
Diseño de APIs con OpenAPI
Último
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Neo4j
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
The Digital Insurer
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
V3cube
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Rafal Los
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
naman860154
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
apidays
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
Paola De la Torre
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
Allon Mureinik
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
Puma Security, LLC
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Michael W. Hawkins
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
debabhi2
Último
(20)
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Multichannel User Interfaces
1.
Multichannel
User Interfaces Pedro J. Molina, PhD. pjmolina@icinetic.com @pmolinam Rubén Jiménez rjimenez@icinetic.com @rubenjmarrufo
2.
Contents
Introduction UIs and multichannel UI Technologies UI Model & Code Generation Demos Conclusions Q&A © Icinetic 2012 2
3.
Introduction We do
MDSD Tools for developers Focused on .NET technologies & Architecture services HQ in Seville, Spain, EU © Icinetic 2012 3
4.
Introduction Pervasive User
Interfaces Contextual Services across devices Costs of making and distributing Software © Icinetic 2012 4
5.
UIs and multichannel
© Icinetic 2012 5
6.
UIs and multichannel
One day in the future: There could be a unique SW language And a unique HW platform Able to drive all your gadgets and devices Contextual Able to follow you across changing your context, location or device © Icinetic 2012 6
7.
UIs and multichannel
However, in the meanwhile, we have: Many devices Many HW choices Many SW platforms to build for Difficult choice: Where to invest? © Icinetic 2012 7
8.
UIs and multichannel
Businesses need to provide Access to product and services to the great market- share as possible Different platforms: fragment the market when launching a new product or service Technology is just a commodity Technology diversity increases the costs of market acquisition © Icinetic 2012 8
9.
UI Technologies Choose
your flavour: ? Smartphone Smartphone Tablet Tablet v 3.1.3 v 4.2.1 v 5.1 © Icinetic 2012 9
10.
UI Development Then
Hire a good development team Don’t forget designers and UX Keep them focused and happy! © Icinetic 2012 10
11.
Required UI programming
skills Main platforms: Platform Languages IDE The Web HTML5 + CSS3 + JavaScript None/Many + Server side lang. Windows XAML + C# Visual Studio, Expression Blend Apple Objective-C + Cocoa XCode Java / Android Java + UI toolkit Eclipse Difficult to master all of them! © Icinetic 2012 11
12.
UI Technologies Variable
and moving target Hardware: new devices every 6 months Software: new OS mobile versions every year APIs: new APIs, all the time! Not an easy train to follow! © Icinetic 2012 12
13.
UI Style-guides iOS
Android WP7 / W8 Metro © Icinetic 2012 13
14.
UI Style-guides Each
platform provides a differentiated one Involving not only aesthetics aspects But also UX aspects on device accordingly to the style of interaction Application on a device should behave coherent with the platform Not all applications fits well on each device © Icinetic 2012 14
15.
Is there space
for modelling and code generated UIs? Probably not for “radically original” games and not for new interaction styles But convenient and efficient for day to day Information Systems Information production / consumption needs Business Software © Icinetic 2012 15
16.
Once again: Art
or Engineering? © Icinetic 2012 16
17.
Once again: Art
or Engineering? Both! © Icinetic 2012 17
18.
© Icinetic
18 2012
19.
© Icinetic
19 2012
20.
UIs and plumbing
Behind a good User Interface There is a lot of plumbing Definition: (Developer) Plumbing Repetitive infrastructure code with small variations Boring to write, source of bugs Low added value But: needed to run the full application © Icinetic 2012 20
21.
Plumbing samples: UI
Architecture UI frameworks MVC MVVM MVP Supervising Controller Passive View © Icinetic 2012 21
22.
Plumbing sample: Comms
Service invocation RPC / Binary Web Services / SOAP REST / JSON HTTP / HTTPS / SPEEDY / WebSockets © Icinetic 2012 22
23.
UI Modelling Hypothesis
So: 1. Can we raise the level of abstraction and capture the essence of the UI in a model? 2. Can we alleviate the developers plumbing pain? 3. Can we expose this UI on multiple channels and technologies? © Icinetic 2012 23
24.
What’s changes in
a UI? Technology Style guides Widgets and concrete interaction Plumbing: platform/tech specific © Icinetic 2012 24
25.
What’s remains immutable
in a UI? Patterns & UX principles A Master-Detail will be always a Master-Detail A Filter A collection of objects Navigation Command Selection Task … © Icinetic 2012 25
26.
Conceptual UI Patterns
Login Instance Population Master/Detail Service Wizard Filter … pjmolina.com/cuip © Icinetic 2012 26
27.
CUIP: Population Set
of objects Rendering Filter Grid Order criteria Table Display set List Actions Navigation © Icinetic 2012 27
28.
CUIP: Population Set
of objects Rendering Filter Grid Order criteria Table Display set List Actions Navigation © Icinetic 2012 28
29.
CUIP: Population Set
of objects Rendering Filter Grid Order criteria Table Display set List Actions Navigation © Icinetic 2012 29
30.
CUIP: Population Set
of objects Rendering Filter Grid Order criteria Table Display set List Actions Navigation © Icinetic 2012 30
31.
A sample: Personal
Banking Oriented to: banking end users Easy to use Targeting frequent operations Check accounts balance Order a transfer Review account entries Multi-device: pc, mobile, tablet, etc. © Icinetic 2012 31
32.
Structure: Class Model
© Icinetic 2012 32
33.
UI Navigational Model
© Icinetic 2012 33
34.
Code Generation
© Icinetic 2012 34
35.
Demo Time Modelling
domain Generated Services Modelling UI Generated UI © Icinetic 2012 35
36.
So far, we
have seen: Default UI/Inferred (when nothing was specified) Graphical and textual notations combined for UI Services consumption and composition From a model exposed by a system in runtime Device independent UI modelling WYSIWYG modelling approach © Icinetic 2012 36
37.
Applications UI prototyping
“Wizard of Oz” Technique Rapid multichannel Service delivery UIs via Service composition (Mashups) Ubiquitous & contextual interfaces © Icinetic 2012 37
38.
Multi-channel
Datatabase Data Access Layer Business Logic Layer Services Layer App 1 User Interface User Interface Layer Layer Views Views Controllers Controllers View Models View Models UI-1 UI-2 © Icinetic 2012 38
39.
MD Composed UIs
(Mashups) Datatabase Datatabase Data Access Data Access Layer Layer Business Logic Business Logic Layer Layer Services Layer Services Layer App 1 App 2 User Interface Layer Views Controllers View Models Composed App UI © Icinetic 2012 39
40.
Conclusions Pervasive devices
are already here to stay While we found “the platform” to rule them’all we need to deal with diversity of HW, SW and APIs © Icinetic 2012 40
41.
Conclusions So far,
today we have seen: 1. How to raise the level of abstraction and capture the essence of a User Interface in a model 2. How to alleviate the developer plumbing pain 3. How to target multiple channels and technologies © Icinetic 2012 41
42.
Conclusions MDSD applied
to UI can makes the difference in terms of time to market, quality & productivity provide new forms of UIs not possible in the traditional way i.e. contextual ones © Icinetic 2012 42
43.
Conclusions Looking for
flights to Seychelles on the bathroom Finishing the purchase, later, in the car © Icinetic 2012 43
44.
Questions &
(might be) Answers www.radarc.net pjmolina.com/essential pjmolina.com/cuip © Icinetic 2012 44