SlideShare une entreprise Scribd logo
1  sur  59
Geração Automática e Assistida de Interfaces de Usuário <Título> - <Subtítulo> slide   de xx aluno   Marcelo Mrack orientador   Prof. PhD Álvaro Freitas Moreira co-orientador   Prof. D. Marcelo Soares Pimenta Instituto de Informática – PPGC – Mestrado Universidade Federal do Rio Grande do Sul junho/2008
Sumário ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
PARTE 1 ,[object Object],[object Object],[object Object]
Introdução ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Motivação ,[object Object],[object Object],[object Object],[object Object],Quanto custa a IU nos sistemas em geral Sistema Completo Interface do Usuário 100% 50% User Interface Software Tools; MEYERS (1994,2002)
Interfaces de Usuário ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Interfaces de Usuário ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Interfaces de Usuário ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Interfaces de Usuário ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],Interfaces de Usuário Mapeamento de um objeto de dados para uma IU CRUD simples codigo = “RH0001” : String nome = “Marcelo Mrack” : String ativo = true : boolean dataDeNascimento = 02/10/1977 : Date observacoes = null : String : Funcionario
Interfaces de Usuário ,[object Object],[object Object],[object Object],Abrangência da ferramenta Merlin descrita no trabalho IU CRUD em geral 50% 30% CRUD elementar 18% Sistema completo 100% Merlin: Um Novo Horizonte na Criação de Telas de Cadastro; MRACK (2007)
PARTE 2 ,[object Object]
MBUIDE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MBUIDE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MBUIDE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MBUIDE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MBUIDE ,[object Object],BODART, LEHEUREUX e VANDERDONCKT (1994) e MRACK (2007) Modelos de Apresentação Modelo de Tarefas na TRIDENT DEFINE INTERACTION-OBJECT ID_Label; WORDING IS &quot;Id.&quot;; MNEMONIC IS &quot;I&quot;; PROMPT IS &quot;:&quot;; IS INSTANCE OF Label; IS COMPONENT OF Customer_GroupBox; DEFINE INTERACTION-OBJECT Id_EditBox; MAX-LENGTH IS 6; LINEARITY SIMPLE; IS INSTANCE OF EditBox; IS COMPONENT OF Customer_GroupBox; IS ATTACHED TO Cust_id; @Properties(“mnemonic=I;”) @Group(“Customer”) @Length(max=6) String id; Merlin (2007) TRIDENT (1994) Adaptado de SOUCHON, LIMBOURG e VANDERDONCK (2002) ||| >> >> ||| >> ||| >> ||| Acess and Manage Patient Information Manage Patiente Information Identification Insert Login Insert Password Request Patient File Visualize Pictures Visualize Text Add Information Delete Information Manage Patiente Medical File Visualize Patiente Medical File Modify Patiente Medical File Monitor Real Time Patient Information Close Session
MBUIDE ,[object Object],Adaptado de PINHEIRO (2001) (1) TEALLACH e TADEUS (2) TRIDENT e METAGEN (3) MERLIN e MECANO Conjunto de modelos Gerador de código-fonte Compilador Código principal da aplicação Código gerado para um toolkit gráfico específico Aplicação final Conjunto de modelos Gerador de código intermediário Compilador Código principal da aplicação Subconjunto otimizado dos modelos Aplicação final Conjunto de modelos Compilador Código principal da aplicação Aplicação final Interpretador de tempo de execução Interpretador de tempo de execução Biblioteca do toolkit gráfico específico Biblioteca do toolkit gráfico específico Biblioteca do toolkit gráfico específico Arquitetura geral das MBUIDE em relação ao processo de geração da IU
MBUIDE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MBUIDE ,[object Object],Criação dos modelos Nova IU Adição de funcionalidades Geração de versões preliminares Detalhamentos de mais baixo nível Geração da IU ou código-fonte final Ajustes e integração com o restante do sistema IU Completa Refatoração Processo geral de desenvolvimento de IU usando MBUIDE (notação BPMN) Abstração Maior Menor
MBUIDE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
PARTE 3 ,[object Object],[object Object]
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],Interface CRUD Um-Para-Um de média complexidade gerada pelo Metagen Agrupamentos simples Layout essencialmente tabular Dependências de preenchimento Máscaras e tamanhos Ligação básica de funções de negócio Operações CRUD essenciais
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],[object Object],@Caption(“Cadastro de Cliente Pessoa Física”) class Cliente extends Pessoa implements IPessoaFisica { @Agent( event={“focusLost”}, action={“habilitarCartao”} condition={“length>0”}) float salario; @NotNull boolean cartaoCredito; @Email @Column(length=“40”) @Property(“foreground=Color.blue”) @Order(after=“nome”) String email; @Caption(“UF”) Estado estado; @RenderAs(Lookup.class) Cidade cidade; } 1 2 3 4 5 6 7 8 Uma classe de persistência utilizada como base de um conjunto de modelos 9 10 11 12 13 14 15 16 17 18
Merlin ,[object Object],[object Object],@Caption ( “Cadastro de Cliente Pessoa Física” ) class Cliente extends Pessoa implements IPessoaFisica { @Agent ( event ={ “focusLost” }, action ={ “habilitarCartao” } condition ={ “length>0” }) float salario; @NotNull boolean cartaoCredito; @Email @Column ( length = “40” ) @Property ( “foreground=Color.blue” ) @Order ( after= “nome” ) String email; @Caption ( “UF” ) Estado estado; @RenderAs ( Lookup.class ) Cidade cidade; } 1 2 3 4 5 6 7 8 Uma classe de persistência utilizada como base de um conjunto de modelos 9 10 11 12 13 14 15 16 17 18
[object Object],[object Object],Merlin Aplicação final Estrutura geral de funcionamento do software Merlin Modelos Interpretador de Tempo de Execução IU Gerada Classes da Aplicação Anotações Heurísticas Resolvedores AIO CIO Toolkit Gráfico Histórico Estimativas Meio Externo
[object Object],[object Object],Merlin Desenvolvimento de IU utilizando o software Merlin 2 1 3 4 5 6 7 IDE Aplicação Tempo de execução Tempo de projeto Legenda 1 Programador usa IDE 2 Programador cria classes 3 Programador insere anotações 4 Programador compila sistema 5 Merlin interpreta modelos 6 IU gerada pelo Merlin 7 Usuáirio utiliza o sistema final
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],[object Object],Implementando uma heurística simples em código Java Uma nova anotação public @interface Capitalized  {} Uma classe decorada class Cliente { @Capitalized String nome; } Um resolvedor simples em código Groovy instrumentado + BeanShell @ResolverFor ( Capitalized.class ) class CapitalizedResolver extends AbstractResolver { void resolve(Object source, Object destination) { if (source.contains(annotation)) { set( “destination.text” , StringUtil.capitalize(destination)) } }
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],[object Object],Redefinindo a ordem de controles e a posição de labels na tela A classe de dados A tela class Cliente { @Order ( after =“ observacoes ”) String nome; float salario; @Caption ( pos = Caption.TOP_LEFT ) String observacoes; } Cadastro de Cliente Cadastro de Cliente 1 2 3 4 5 6 Observações 7 2 5 Observações Salário Nome
Merlin ,[object Object],[object Object],Redefinindo a ordem de controles e a posição de labels na tela A classe de dados A tela @Caption ( pos = Caption.TOP_LEFT ) class Cliente { @Order ( after =“ observacoes ”) String nome; float salario; String observacoes; } Cadastro de Cliente Cadastro de Cliente Salário 1 2 3 4 5 6 Nome Observações 7
[object Object],[object Object],Merlin class Cliente { @RenderAs ( JTextArea.class ) String  observacao ; } class Produto { String  observacoes ; } class NotaFiscal { String  obs ; } Modelo de Domínio A Modelo de Domínio B Modelo de Domínio C Sinônimo Similar Utilizando similaridades e sinônimos para geração da IU Observação Cliente Observações Produto Obs Nota Fiscal
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Merlin Assistência de edição de modelos no Eclipse IDE {  “foc o sLost”  } The event focosLost cannot be recognized. Available events are: focusLost focusGain see others... focusLost
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Merlin ,[object Object],[object Object],[object Object],Classloaders em um servidor de aplicação Root LIBs classes S 1 S 2 S n C 1 C 2 C n classes classes classes C = Classloader S = Sistema LIB = Pacote de classes Root = Bootstrap classloader Legenda
Merlin ,[object Object],[object Object],[object Object],Classloaders em um servidor de aplicação Root LIBs classes S 1 S 2 S n C 1 C 2 C n classes classes classes Histórico
Merlin ,[object Object],[object Object],[object Object],Uma base federada distribuída de configurações Grupo 1 S 1 S 2 S 3 Federação 2 Federação 1 Grupo 2 S 1 S 2 S 3 Grupo 3 S 1 S 2 S 3
Estudo de Caso ,[object Object],[object Object],[object Object],[object Object],[object Object]
Estudo de Caso ,[object Object],[object Object],Uma classe simples, base do Modelo de Domínio public class Cliente { String nome; String sexo; Date dataDeNascimento; String descricao; String observacoes; boolean ativo; boolean vip; String email; } 1 2 3 4 5 6 7 8 9 10
[object Object],[object Object],Estudo de Caso Código-fonte da aplicação principal 1 2 3 4 5 6 7 8 9 10 Passo 1 public class TesteMerlin { public static void main(String[] s) { IMerlin m = Merlin.getInstance(SWING); JPanel crud = (JPanel) m.createIU(new Cliente()); JFrame frame = new Frame( “TesteMerlin” ); frame.add(crud,CENTER); frame.setVisible(true); } }'
Estudo de Caso ,[object Object],[object Object],Interface CRUD simples resultante Passo 2 Painel de mensagens Adequação de textos Correção ortográfica Layout tabular Controles de IU por tipo de dado Heurísticas de tamanho Não gerado pela ferramenta TesteMerlin
Estudo de Caso ,[object Object],[object Object],Novas classes, anotações e regras de negócio (classes Sexo e Pessoa) public enum Sexo { NAO_DECLARADO, MASCULINO, FEMININO } public class Pessoa { @Agent ( event  = {  &quot;focusLost&quot;  },  action  = {  &quot;proposeEmail&quot;  }) @NotNull String nome =  &quot;marcelo&quot; ; public Sexo sexo = Sexo.MASCULINO; @Agent ( property  = {  &quot;foreground=Color.blue&quot;  },  binder  =  DateToTextComponentBinder.class) Date dataDeNascimento = new Date(1977-1900,9,02); } 1 2 3 4 5 6 7 8 9 10 11 12
Estudo de Caso ,[object Object],[object Object],Novas classes, anotações e regras de negócio (classe Cliente) @Caption ( &quot;Cadastro de Clientes&quot; ) public class Cliente extends Pessoa { @Agent ( event  = {  &quot;focusLost&quot;  }, action  = {  &quot;isPreferencial&quot;  }) @Caption ( &quot;Salário (R$)&quot; ) int salario; @Order ( after  =  &quot;observacoes&quot; ) String descricao; @RenderAs (CHECKBOX)  @Dependence ( &quot;descricao&quot; ) @Agent ( property  = {  &quot;selected=true&quot;  }) String observacoes; @Dependence ( “[:alnum:]&quot; ) @Order ( Order.FIRST ) @Agent ( property  = {  &quot;selected=true;&quot;  }) boolean ativo; @RenderAs ( value  = JTextField.class,  binder  =  BooleanToTextComponentBinder.class) @Order ( LAST ) boolean vip = true; @Order ( after  =  &quot;nome&quot; )  @NotNull   @Length ( min =12) String email; } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Estudo de Caso ,[object Object],[object Object],Novas classes, anotações e regras de negócio (classe AlgumasRegras) public class AlgumasRegras { @In  Context  ctx ; public void  isPreferencial () { ctx .eval (&quot;$vip.text=$salario.text>1500 ?  'SIM' : 'NÃO' &quot; ); } public void  proposeEmail () { ctx .eval( &quot;$email.text=$nome.text.trim+ '@merlin.com' &quot; ); } } 1 2 3 4 5 6 7 8 9 10 11 12
Estudo de Caso ,[object Object],[object Object],Interface CRUD simples resultante após as refatorações e melhorias Painel de mensagens preenchidas Campo Ativo é o primeiro da tela Preenchimento pela regra associada Formatação de data customizada Campos obrigatórios em destaque Rótulo customizado e regra de negócio Campo Observações agora é CheckBox Desabilitado devido dependência Tipo multivalorado Campo booleano com formatação especial e regra de negócio aplicada TesteMerlin
Estudo de Caso ,[object Object],[object Object],Interfaces CRUD antes (esquerda) e depois (direita) da evolução do sistema TesteMerlin TesteMerlin
PARTE 4 ,[object Object]
Conclusões ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conclusões ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conclusões ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Agradecimentos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Fim <Título> - <Subtítulo> slide   de xx Geração Automática e Assistida de Interfaces de Usuário Marcelo Mrack
Sobre o autor ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Contenu connexe

Tendances

Ferramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases RelacionaisFerramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases RelacionaisCapgemini
 
Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...
Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...
Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...Lucas Furtado de Oliveira
 
Padrões Arquiteturais de Sistemas
Padrões Arquiteturais de SistemasPadrões Arquiteturais de Sistemas
Padrões Arquiteturais de SistemasVagner Santana
 
Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...
Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...
Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...Charles Fortes
 
Analise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UMLAnalise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UMLRildo (@rildosan) Santos
 
Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...
Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...
Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...Sofia Costa
 
Merlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginasMerlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginasMarcelo Mrack
 
Arquitetura de Software Visão Geral
Arquitetura de Software Visão GeralArquitetura de Software Visão Geral
Arquitetura de Software Visão Geralsergiocrespo
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de SistemasGuilherme
 
A importância da arquitetura de software
A importância da arquitetura de softwareA importância da arquitetura de software
A importância da arquitetura de softwareAdriano Tavares
 
Eng.ª do Software - 7. Desenho arquitectónico
Eng.ª do Software - 7. Desenho arquitectónicoEng.ª do Software - 7. Desenho arquitectónico
Eng.ª do Software - 7. Desenho arquitectónicoManuel Menezes de Sequeira
 
Análise Orientada a Objetos com UML
Análise Orientada a Objetos com UMLAnálise Orientada a Objetos com UML
Análise Orientada a Objetos com UMLEliseu Castelo
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de SoftwareAricelio Souza
 

Tendances (20)

Ferramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases RelacionaisFerramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases Relacionais
 
Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...
Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...
Entendendo a Tríade Model-View-Controller (MVC) Utilizando Padrões de Projeto...
 
Padrões Arquiteturais de Sistemas
Padrões Arquiteturais de SistemasPadrões Arquiteturais de Sistemas
Padrões Arquiteturais de Sistemas
 
Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...
Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...
Apresentação monografia - Proposta de uma Arquitetura para Customização de Si...
 
Analise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UMLAnalise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UML
 
Aula 6 -_casos_de_uso
Aula 6 -_casos_de_usoAula 6 -_casos_de_uso
Aula 6 -_casos_de_uso
 
Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...
Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...
Uma Abordagem Baseada em Modelos para Construção Automática de Interfaces de ...
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Merlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginasMerlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginas
 
Desenvolvendo Interfaces de Usuário Multiplataformas utilizando MDA
Desenvolvendo Interfaces de Usuário Multiplataformas utilizando MDADesenvolvendo Interfaces de Usuário Multiplataformas utilizando MDA
Desenvolvendo Interfaces de Usuário Multiplataformas utilizando MDA
 
Arquitetura de Software Visão Geral
Arquitetura de Software Visão GeralArquitetura de Software Visão Geral
Arquitetura de Software Visão Geral
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas
 
A importância da arquitetura de software
A importância da arquitetura de softwareA importância da arquitetura de software
A importância da arquitetura de software
 
Eng.ª do Software - 7. Desenho arquitectónico
Eng.ª do Software - 7. Desenho arquitectónicoEng.ª do Software - 7. Desenho arquitectónico
Eng.ª do Software - 7. Desenho arquitectónico
 
Análise Orientada a Objetos com UML
Análise Orientada a Objetos com UMLAnálise Orientada a Objetos com UML
Análise Orientada a Objetos com UML
 
Arquitetura de Software EXPLICADA
Arquitetura de Software EXPLICADAArquitetura de Software EXPLICADA
Arquitetura de Software EXPLICADA
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Framework Miolo
Framework MioloFramework Miolo
Framework Miolo
 
Uml ppoint
Uml ppointUml ppoint
Uml ppoint
 
Introdução à linguagem UML
Introdução à linguagem UMLIntrodução à linguagem UML
Introdução à linguagem UML
 

En vedette

Aula: Gerações de interfaces
Aula: Gerações de interfacesAula: Gerações de interfaces
Aula: Gerações de interfacesJanynne Gomes
 
1º geração dos computadores
1º geração dos computadores1º geração dos computadores
1º geração dos computadoresLagratinhoemTic
 
Segunda geração de computadores (1955 1964)
Segunda geração de computadores (1955 1964)Segunda geração de computadores (1955 1964)
Segunda geração de computadores (1955 1964)Thaís Santos
 
Geração dos computadores
Geração dos computadoresGeração dos computadores
Geração dos computadoresIEFP-Porto
 
Evolução do Computador
Evolução do ComputadorEvolução do Computador
Evolução do ComputadorRui Filipe
 
The Physical Interface
The Physical InterfaceThe Physical Interface
The Physical InterfaceJosh Clark
 

En vedette (6)

Aula: Gerações de interfaces
Aula: Gerações de interfacesAula: Gerações de interfaces
Aula: Gerações de interfaces
 
1º geração dos computadores
1º geração dos computadores1º geração dos computadores
1º geração dos computadores
 
Segunda geração de computadores (1955 1964)
Segunda geração de computadores (1955 1964)Segunda geração de computadores (1955 1964)
Segunda geração de computadores (1955 1964)
 
Geração dos computadores
Geração dos computadoresGeração dos computadores
Geração dos computadores
 
Evolução do Computador
Evolução do ComputadorEvolução do Computador
Evolução do Computador
 
The Physical Interface
The Physical InterfaceThe Physical Interface
The Physical Interface
 

Similaire à Geração automática de interfaces de usuário

I Material de Apoio Sistemas Operacionais
I Material de Apoio Sistemas OperacionaisI Material de Apoio Sistemas Operacionais
I Material de Apoio Sistemas Operacionaisrodfernandes
 
Usabilidade de aplicações
Usabilidade de aplicaçõesUsabilidade de aplicações
Usabilidade de aplicaçõesVitor Julião
 
Middleware Reflexivo
Middleware ReflexivoMiddleware Reflexivo
Middleware Reflexivoelliando dias
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 
Panorama Atual e Tendências do Desenvolvimento de Sistemas para Internet
Panorama Atual e Tendências do Desenvolvimento de Sistemas para InternetPanorama Atual e Tendências do Desenvolvimento de Sistemas para Internet
Panorama Atual e Tendências do Desenvolvimento de Sistemas para InternetElvis Fusco
 
Php Conf08 Enterprise Patterns
Php Conf08 Enterprise PatternsPhp Conf08 Enterprise Patterns
Php Conf08 Enterprise PatternsWildtech
 
Eng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizadorEng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizadorManuel Menezes de Sequeira
 
2010 05-06 b - desenho de interfaces com o utilizador
2010 05-06 b - desenho de interfaces com o utilizador2010 05-06 b - desenho de interfaces com o utilizador
2010 05-06 b - desenho de interfaces com o utilizadorguest8a778
 
Princípios de Sistemas de Informação Unidade II Unip
 Princípios de Sistemas de Informação Unidade II Unip  Princípios de Sistemas de Informação Unidade II Unip
Princípios de Sistemas de Informação Unidade II Unip Heber Gutenberg
 
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...tdc-globalcode
 
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...Marcelo Palladino
 
TEES - MDA Apresentação Final
TEES - MDA Apresentação FinalTEES - MDA Apresentação Final
TEES - MDA Apresentação Finalguestc7f5eb
 
Processo de Desenvolvimento MDA: metodologias e agilidade
Processo de Desenvolvimento MDA: metodologias e agilidadeProcesso de Desenvolvimento MDA: metodologias e agilidade
Processo de Desenvolvimento MDA: metodologias e agilidadeLuiz Matos
 
Aula6 - Estilos, guias, padrões
Aula6 - Estilos, guias, padrõesAula6 - Estilos, guias, padrões
Aula6 - Estilos, guias, padrõesSilvia Dotta
 

Similaire à Geração automática de interfaces de usuário (20)

I Material de Apoio Sistemas Operacionais
I Material de Apoio Sistemas OperacionaisI Material de Apoio Sistemas Operacionais
I Material de Apoio Sistemas Operacionais
 
Usabilidade de aplicações
Usabilidade de aplicaçõesUsabilidade de aplicações
Usabilidade de aplicações
 
Middleware Reflexivo
Middleware ReflexivoMiddleware Reflexivo
Middleware Reflexivo
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 
Panorama Atual e Tendências do Desenvolvimento de Sistemas para Internet
Panorama Atual e Tendências do Desenvolvimento de Sistemas para InternetPanorama Atual e Tendências do Desenvolvimento de Sistemas para Internet
Panorama Atual e Tendências do Desenvolvimento de Sistemas para Internet
 
Php Conf08 Enterprise Patterns
Php Conf08 Enterprise PatternsPhp Conf08 Enterprise Patterns
Php Conf08 Enterprise Patterns
 
Asp net mvc
Asp net mvcAsp net mvc
Asp net mvc
 
Eng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizadorEng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizador
 
2010 05-06 b - desenho de interfaces com o utilizador
2010 05-06 b - desenho de interfaces com o utilizador2010 05-06 b - desenho de interfaces com o utilizador
2010 05-06 b - desenho de interfaces com o utilizador
 
Princípios de Sistemas de Informação Unidade II Unip
 Princípios de Sistemas de Informação Unidade II Unip  Princípios de Sistemas de Informação Unidade II Unip
Princípios de Sistemas de Informação Unidade II Unip
 
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...TDC2016POA | Trilha Arquetetura -  Revitalizando aplicações desktop usando Ce...
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
 
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...TDC2016SP  Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
 
TEES - MDA Apresentação Final
TEES - MDA Apresentação FinalTEES - MDA Apresentação Final
TEES - MDA Apresentação Final
 
Corbawebserves
CorbawebservesCorbawebserves
Corbawebserves
 
Processo de Desenvolvimento MDA: metodologias e agilidade
Processo de Desenvolvimento MDA: metodologias e agilidadeProcesso de Desenvolvimento MDA: metodologias e agilidade
Processo de Desenvolvimento MDA: metodologias e agilidade
 
Aula6 - Estilos, guias, padrões
Aula6 - Estilos, guias, padrõesAula6 - Estilos, guias, padrões
Aula6 - Estilos, guias, padrões
 
Sql01 final
Sql01 finalSql01 final
Sql01 final
 
Introdução aos Padrões Web e Tecnologias para o Ambiente Digital - Aula 02 - ...
Introdução aos Padrões Web e Tecnologias para o Ambiente Digital - Aula 02 - ...Introdução aos Padrões Web e Tecnologias para o Ambiente Digital - Aula 02 - ...
Introdução aos Padrões Web e Tecnologias para o Ambiente Digital - Aula 02 - ...
 
Arquitetura de sistemas web
Arquitetura de sistemas webArquitetura de sistemas web
Arquitetura de sistemas web
 
Eng.ª do Software - 1. Introdução
Eng.ª do Software - 1. IntroduçãoEng.ª do Software - 1. Introdução
Eng.ª do Software - 1. Introdução
 

Plus de Marcelo Mrack

Atlassian Confluence and Google Search Appliance Integration
Atlassian Confluence and Google Search Appliance IntegrationAtlassian Confluence and Google Search Appliance Integration
Atlassian Confluence and Google Search Appliance IntegrationMarcelo Mrack
 
Atlassian Crucible pela 3layer Tecnologia
Atlassian Crucible pela 3layer TecnologiaAtlassian Crucible pela 3layer Tecnologia
Atlassian Crucible pela 3layer TecnologiaMarcelo Mrack
 
Atlassian Crowd pela 3layer Tecnologia
Atlassian Crowd pela 3layer TecnologiaAtlassian Crowd pela 3layer Tecnologia
Atlassian Crowd pela 3layer TecnologiaMarcelo Mrack
 
Atlassian Confluence pela 3layer Tecnologia
Atlassian Confluence pela 3layer TecnologiaAtlassian Confluence pela 3layer Tecnologia
Atlassian Confluence pela 3layer TecnologiaMarcelo Mrack
 
Atlassian Bamboo pela 3layer Tecnologia
Atlassian Bamboo pela 3layer TecnologiaAtlassian Bamboo pela 3layer Tecnologia
Atlassian Bamboo pela 3layer TecnologiaMarcelo Mrack
 
Folders dos produtos Atlassian em portugues
Folders dos produtos Atlassian em portuguesFolders dos produtos Atlassian em portugues
Folders dos produtos Atlassian em portuguesMarcelo Mrack
 
Plataforma Atlassian Na Gestao De Horas E Timesheet De Atividades
Plataforma Atlassian Na Gestao De Horas E Timesheet De AtividadesPlataforma Atlassian Na Gestao De Horas E Timesheet De Atividades
Plataforma Atlassian Na Gestao De Horas E Timesheet De AtividadesMarcelo Mrack
 
Merlin Um Novo Horizonte Na Criacao Das Telas De Cadastro
Merlin Um Novo Horizonte Na Criacao Das Telas De CadastroMerlin Um Novo Horizonte Na Criacao Das Telas De Cadastro
Merlin Um Novo Horizonte Na Criacao Das Telas De CadastroMarcelo Mrack
 
Workshop Hibernate Com Comentarios
Workshop Hibernate Com ComentariosWorkshop Hibernate Com Comentarios
Workshop Hibernate Com ComentariosMarcelo Mrack
 

Plus de Marcelo Mrack (9)

Atlassian Confluence and Google Search Appliance Integration
Atlassian Confluence and Google Search Appliance IntegrationAtlassian Confluence and Google Search Appliance Integration
Atlassian Confluence and Google Search Appliance Integration
 
Atlassian Crucible pela 3layer Tecnologia
Atlassian Crucible pela 3layer TecnologiaAtlassian Crucible pela 3layer Tecnologia
Atlassian Crucible pela 3layer Tecnologia
 
Atlassian Crowd pela 3layer Tecnologia
Atlassian Crowd pela 3layer TecnologiaAtlassian Crowd pela 3layer Tecnologia
Atlassian Crowd pela 3layer Tecnologia
 
Atlassian Confluence pela 3layer Tecnologia
Atlassian Confluence pela 3layer TecnologiaAtlassian Confluence pela 3layer Tecnologia
Atlassian Confluence pela 3layer Tecnologia
 
Atlassian Bamboo pela 3layer Tecnologia
Atlassian Bamboo pela 3layer TecnologiaAtlassian Bamboo pela 3layer Tecnologia
Atlassian Bamboo pela 3layer Tecnologia
 
Folders dos produtos Atlassian em portugues
Folders dos produtos Atlassian em portuguesFolders dos produtos Atlassian em portugues
Folders dos produtos Atlassian em portugues
 
Plataforma Atlassian Na Gestao De Horas E Timesheet De Atividades
Plataforma Atlassian Na Gestao De Horas E Timesheet De AtividadesPlataforma Atlassian Na Gestao De Horas E Timesheet De Atividades
Plataforma Atlassian Na Gestao De Horas E Timesheet De Atividades
 
Merlin Um Novo Horizonte Na Criacao Das Telas De Cadastro
Merlin Um Novo Horizonte Na Criacao Das Telas De CadastroMerlin Um Novo Horizonte Na Criacao Das Telas De Cadastro
Merlin Um Novo Horizonte Na Criacao Das Telas De Cadastro
 
Workshop Hibernate Com Comentarios
Workshop Hibernate Com ComentariosWorkshop Hibernate Com Comentarios
Workshop Hibernate Com Comentarios
 

Geração automática de interfaces de usuário

  • 1. Geração Automática e Assistida de Interfaces de Usuário <Título> - <Subtítulo> slide de xx aluno Marcelo Mrack orientador Prof. PhD Álvaro Freitas Moreira co-orientador Prof. D. Marcelo Soares Pimenta Instituto de Informática – PPGC – Mestrado Universidade Federal do Rio Grande do Sul junho/2008
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58. Fim <Título> - <Subtítulo> slide de xx Geração Automática e Assistida de Interfaces de Usuário Marcelo Mrack
  • 59.

Notes de l'éditeur

  1. Autoria e Conteúdo AUTOR: Marcelo Mrack – mmrack@gmail.com. Universidade Federal do Rio Grande do Sul (UFRGS) – Porto Alegre, RS – Brasil. 2008. CONTEÚDO: Apresentação criada para Defesa de Mestrado de Marcelo Mrack na Universidade Federal do Rio Grande do Sul (UFRGS) em 27-06-2008 sob o título Geração Automática e Assistida de Interfaces de Usuário, pesquisa esta que representa o detalhamento teórico do projeto Merlin e das ferramentas Model Based User Interface Development Environment (MBUIDE) em geral. Sobre os Direitos Autorais Essa apresentação pode ser copiada e impressa, sendo que qualquer parte de seu conteúdo pode ser reutilizada em outras obras, públicas ou privadas. Em qualquer caso é necessário manter a referência para o autor e instituição acima identificado. É expressamente proibida a exibição em público desse documento, seja na forma de palestra, workshop, feira ou qualquer outro evento similar sem o consentimento do autor.