2. AGENDA
Sistemas para múltiplas plataformas
Desenvolvimento baseado em modelos
Solução proposta com Model-Driven Architecture
Estudo de caso
Considerações finais
2
3. MÚLTIPLAS PLATAFORMAS
A Plataforma operacional de um sistema deve
levar em consideração os elementos de hardware
de software.
Hardware Software
Processadores Sistemas Op.
Teclado APIs
Telas Ling. de programação
3
4. PROBLEMA PRÁTICO
Desenvolvimento de um sistema para agências
bancárias
Atendimento WEB
Terminal de
Auto-atendimento Atendimento Mobile
4
5. SOLUÇÕES DO MERCADO
Solução Comentários
Desenvolver diferentes versões do Aumenta os custos de desenvolvimento
sistema
Linguagens para múltiplas plataformas ou Não garante adaptabilidade das
baseada na WEB interfaces ao diferentes tipos de tela
5
6. SOLUÇÕES BASEADA EM MODELOS
Fornecem uma descrição mais abstrata da IU
Facilitam a criação de métodos para projetar e
implementar IU de uma forma sistemática
possibilitando:
Modelar IU utilizando diferentes níveis de abstração;
Aperfeiçoar os modelos de forma incremental;
Re-utilizar as especificações de IU;
Surgimento de Ambientes de desenvolvimento de
UI (MBUIDE)
Ferramentas estilo caixa preta 6
7. LINGUAGENS DE DESCRIÇÃO DE INTERFACES
DE USUÁRIO (LDIU)
Proporcionou uma evolução para os MBUIDE
Tomaram força com padrão XML
Metalinguagem de descrição de dados
Fácil de estender e totalmente declarativa
Não exige conhecimento de programação
Final da década de 90 surgiram diversas
linguagens
7
8. SOLUÇÕES BASEADA EM MODELOS
Ambientes de
Modelagem
Modelos
Modelo
Concretos
Abstrato
Transformações
<imml>
<domain-modelo>
...
</domain-
modelo>
</imml>
Transformações
Linguagens de
Definição de UI
8
Código
11. INTERACTIVE MESSAGE MODELING
LANGUAGE (LEITE, 2003)
Linguagem de interface baseada na Eng. Semiótica
Interface como artefato de metacomunicação do
designer para usuário
Quais problemas O que eu faço?
resolver?
Como eu faço?
Como podem ser
resolvidos?
11
Designer
Modelo pretendido Usuário
Modelo percebido
12. INTERACTIVE MESSAGE MODELING
LANGUAGE (LEITE, 2003)
Foco na usabilidade
Funcionalidade – Necessidades funcionais do usuário
(O que?)
Interatividade – Caracteriza a facilidade de uso da
aplicação influenciando na produtividade (Como?)
Comunicabilidade – informar ao usuário quais as
funcionalidade e interatividades da aplicação
Recursos oferecidos
Modelo de Domínio
Modelo de Interação
12
Modelo de Comunicação
16. ESTUDO DE CASO
Tradutor automático de
termos
Translate
Entrada
SourceLanguage:
Idioma de origem SourceTerm:
TargetLanguage:
Termo de origem
Process
Idioma pretendido
TargetTerm: _____________
Saída
Termo traduzido
16
20. CONSIDERAÇÕES FINAIS
Conformidade com o padrão OMG
Integração com a IDE Eclipse
A adoção do padrão MDA permitiu:
Suporte ferramental para construção da solução
Plugins para metamodelagem, transformações M2M 2 M2T
Integração da solução com o mesmo ambiente
Extensão usando plugins para construção dos modelos
Inclusão do modelo de comunicação no processo
de modelagem
Construção de uma ferramenta visual para
20
modelagem