21
Introdução à M[B,D]UID Rômulo Jales <[email protected]>

Introdução a Model Based User Interface Design

Embed Size (px)

DESCRIPTION

Uma breve intrudução aos modelos de desenho de interfaces de usuários humano computador.

Citation preview

Page 1: Introdução a Model Based User Interface Design

Introdução  à  M[B,D]-­‐UID  

Rômulo  Jales  <[email protected]>  

Page 2: Introdução a Model Based User Interface Design

Model-­‐based/driven  design/development  of  user  interfaces  

...ufa  

Page 3: Introdução a Model Based User Interface Design

Cenário  

•  Onde  a  tela  final  será  exibida?  celular,  pc,  tablet...  

•  Quem  executará  o  sistema?  criança,  adulto,  idoso?  

•  Que  linguagem  será  usada?  Flash,  Html,  Java,  GTK..  ?  

Page 4: Introdução a Model Based User Interface Design

Modelos  

•  Uma  representação  incompleta  da  realidade  •  Uma  abstração  que  precisa  passar  por  ferramentas  em  geral  automaWzadas  para  chegar  a  um  objeto  real.    

Código  fonte  -­‐>  Código  de  máquina    

ajuda  a  manter  a  sanidade!    

Page 5: Introdução a Model Based User Interface Design

M[B,D]-­‐UID  

Page 6: Introdução a Model Based User Interface Design

M[B,D]-­‐UID  

•  Desenvolvimento  das  interfaces  do  sistema  para  possibilitar  a  conclusão  efeWva  segundo  a  IHC  de  uma  tarefa  pelo  usuário  

Page 7: Introdução a Model Based User Interface Design

MB-­‐UID  

Model-­‐Based  User  Interface  Development  

Page 8: Introdução a Model Based User Interface Design

MB-­‐UID  

•  Re-­‐uso  de  modelos  •  Uma  abordagem  parecida  com  OO  

Page 9: Introdução a Model Based User Interface Design

MB-­‐UID  

•  Aplica  as  técnicas  de  MB  na  IHC  •  Modelos  – Apresentação  – Diálogos  – Tarefas  

•  Transforma  uma  base  de  conhecimento  num  código  minimamente  executável.  

Page 10: Introdução a Model Based User Interface Design

Gerações  

•  1ª  1990  ~  1996  – Centrada  na  geração  automáWca  de  componentes  

•  2ª  1995  ~  2000  –  Integração  do  modelo  de  tarefas  e  iteração  de  Uis  

•  3ª  2000  ~  2004  –  Integração  dos  modelos  de  plataformas  

•  4ª  2004...  –  Integração  de  contexto  (Processo  passa  a  ser  chamado  Model  Driven)  

Page 11: Introdução a Model Based User Interface Design

MB-­‐UID  Processo  (um  case)  

•  Um  sistema  para  controle  de  entradas  numa  festa  baseada  em  compra  prévia  de  entradas.  O  cliente  chega  no  local  com  um  papel  com  um  número  de  série,  que  pode  ser  uma  cadeia  de  dígitos  ou  um  código  de  barras.  

•  O  controlador  pode  ter  um  celular  com  uma  câmera  acoplada  ou  um  notebook.  

 

Page 12: Introdução a Model Based User Interface Design

MB-­‐UID  Processo  (um  case)  

•  Se  for  um  celular:  – Só  pode  ler  o  código  de  barras  usando  a  câmera  – ConecWvidade  por  3G,  Wi-­‐Fi  ou  nula  

•  Notebook:  – Só  pode  digitar  o  código  – Conexão  via  WiFi,  cabeada,  3G,  discada,  pendrives...  

Page 13: Introdução a Model Based User Interface Design

MB-­‐UID  Processo  (um  case)  

•  Imaginemos  usar  modelos  para  desenhar  este  sistema.  – Apresentação  – Tarefas  – Diálogos  

 Eisenstein,  J.;  Vanderdonckt,  J.;  Puerta,  A.  (2001)  Applying  model-­‐based  techniques  to  the  development  of  UIs  for  mobile  computers.  In  Proceedings  of  the  6th  internaWonal  conference  on  Intelligent  user  interfaces,  IUI  2001.  New  York,  NY:  ACM,  69-­‐76.    

Page 14: Introdução a Model Based User Interface Design

+  vs  -­‐  •  Abstração  •  ProduWvidade  •  Qualidade  •  Menos  Erros  •  Processo  

•  Manutenção  •  Escalabilidade  *  •  Integração  •  Qualidade  de  código  gerado  •  Padrões  

A  Review  to  Model-­‐Based  User  Interface    Development  Technology    Available  at:    h|p://}p.informaWk.rwth-­‐aachen.de/PublicaWons/CEUR-­‐WS/Vol-­‐103/molina-­‐moreno.pdf  

Page 15: Introdução a Model Based User Interface Design

Big  Issue  

•  “Automa(c  Programming  is  defined  as  the  synthesis  of  a  program  from  a  specifica(on.  If  automa(c  programming  is  to  be  useful,  the  specifica(on  must  be  smaller  and  easier  to  write  than  the  program  would  be  if  wri>en  in  a  conven(onal  programming  language.”    

•  Novak’s  rule     A  Review  to  Model-­‐Based  User  Interface    Development  Technology    

Available  at:    h|p://}p.informaWk.rwth-­‐aachen.de/PublicaWons/CEUR-­‐WS/Vol-­‐103/molina-­‐moreno.pdf  

Page 16: Introdução a Model Based User Interface Design

MD-­‐UID  

Model  Driven  User  Interface  Development  

Page 17: Introdução a Model Based User Interface Design

MD-­‐UID  

•  […]The  Poten(al  is  large,  and  it  may  represent  the  first  true  genera(onal  shiE  in  basic  programming  technology  since  the  introduc(on  of  compilers  

   

B.Selic,"The  PragmaWcs  of  Model-­‐Driven  Development",  IEEE  So}ware,  Vol.20,  No.  5,  September/October  2003,  pp.  19-­‐25.      

Page 18: Introdução a Model Based User Interface Design

MD-­‐UID  

•  A  necessidade  primário  do  desenvolvimento  é  o  modelo  e  não  o  so}ware  

•  Facilita  a  especificação  do  modelo  •  Geração  de  código  a  parWr  do  modelo  •  Proposta  de  uma  arquitetura    

Page 19: Introdução a Model Based User Interface Design

MD-­‐UID  

•  Diferentes  linguagens  de  modelagem  para  cada  stakeholder    

•  Separação  do  design  do  dado  a  ser  exibido  

Page 20: Introdução a Model Based User Interface Design

Conclusão  

•  MB  e  MD  aWvidades  maduras  da  Eng  clássica  são  aplicáveis  a  UID  

•  Apesar  de  madura  ainda  enfrenta  dificuldades  de  adoção  na  indústria.    

Page 21: Introdução a Model Based User Interface Design

Próximos    Trabalhos    

•  Estudar  +  •  Aprofundar  nos  metas  modelos  da  IHC  para  o  MDA  (MDD)