Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma...
Transcript of Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma...
![Page 1: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/1.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1
Uma Ferramenta Orientada a Modelos para Geração de Aplicações
Web
Equipe ComposeMaio/2004
![Page 2: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/2.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 2
Roteiro
● Introdução
● Motivação
● Application Nodes Designer
● Cordel
– Objetivos
– Características
– Instalação
– Ambiente do Usuário
– Aplicações Geradas
![Page 3: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/3.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 3
Roteiro
● Documentação
– Manual do usuário
– Site do Cordel
– Documentação técnica
– Artigo
● Perspectivas Comerciais
● Trabalhos Futuros
● Conclusões
![Page 4: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/4.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 4
Introdução
● Panorama atual de desenvolvimento:
– Esforço considerável para o início de novas aplicações;
– Pouca reutilização de código e de projeto;
– Pouca padronização no desenvolvimento;
– Poucas métricas para qualidade, correção, escalabilidade etc.
● Consequentemente:
– Os sistemas construídos são insatisfatórios e implementados com altos custos e produtividade reduzida.
![Page 5: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/5.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 5
Introdução
● O que causa este panorama ?
– Time-to-Market.
– Requisitos mudam constantemente.
– A tecnologia muda constantemente.
– Os custos limitam o investimento no controle do processo de desenvolvimento de sistemas.
– As aplicações se tornaram mais complexas.
![Page 6: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/6.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 6
Introdução
● Algumas tecnologias vêm tentando mudar este cenário:
– Orientação a objetos, componentes distribuídos, padrões de projeto e frameworks.
● Em particular, para geração automática de sistemas:
– Model-Driven Architecture (MDA).
– Executable UML.
● “Começar do zero é difícil, seguir um modelo existente diminui erros potenciais.”
![Page 7: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/7.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 7
Motivação
● Desenvolver sistemas web é uma tarefa custosa e que exige uma integração de tecnologias.
● Desenvolver sistemas do zero é ainda mais custoso, pois:
– Precisa-se conhecer a linguagem de programação.
– Precisa-se conhecer o ambiente: internet, ethernet etc.
– Precisa-se conhecer padrões arquiteturais de software.
![Page 8: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/8.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 8
Motivação
● Projeto Compose CPD/Preview:
– Fase 1: Application Nodes Designer● Estudo das tecnologias subjacentes: EJB, Struts, Velocity,
Ant, JBoss, JSP, JMS, JAAS, JCE etc.● Projeto-piloto: equipe TJBA.● Levantamento de deficiências e possíveis melhorias.
![Page 9: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/9.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 9
Motivação
● Projeto Compose CPD/Preview:
– Fase 2: Cordel● Construção seguindo uma arquitetura realmente
distribuída.● Ambiente Web facilitando a instalação e manutenção do
sistema.● Simplificação do processo de configuração de aplicações.● Arquitetura modular para novos flavours.
![Page 10: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/10.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 10
Application Nodes Designer
● Boas abstrações para configuração.
● A configuração de aplicações era difícil.
● O ambiente era pesado.
● Aplicação não-distribuída.
● Não permitia extensões.
'
![Page 11: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/11.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 11
Application Nodes Designer
● Projeto-piloto (Equipe TJBA):
– Levantou vantagens e desvantagens do Application Nodes Designer.
– Avaliou a qualidade e flexibilidade das aplicações geradas.
![Page 12: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/12.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 12
● Objetivos:
– Propôr uma ferramenta para geração de aplicações Web, com ambiente simplificado, de fácil acesso e com geração flexível de aplicações.
– Concentrar, de forma flexível, as tecnologias atuais para desenvolvimento de sistemas Web.
– Alavancar, de forma produtiva, o desenvolvimento de sistemas Web.
– Padronizar e disponibilizar sistemas em conformidade com arquiteturas já consolidadas.
![Page 13: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/13.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 13
● Características:
– Sistema baseado em componentes distribuídos.
– Editor de aplicações no ambiente Web.
– Construído com ferramentas livres.
– Foco na produtividade.
– Extensível a outras arquiteturas (flavours).
– Requer um modelo UML simplificado.
– Apresenta bom desempenho.
– Requer infra-estrutura modesta para clientes.
![Page 14: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/14.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 14
● Ambiente Web simplificado para geração de aplicações.
● Geração de aplicação já em funcionamento.
● Facilidade de instalação.
![Page 15: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/15.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 15
● Instalação:
– Pré-requisitos:● J2SDK 1.4.2.● JBoss >= 3.2.2.● Ant >= 1.5.4
– Instalação do Cordel:● Implantação (deploy) dos pacotes.● Cópia dos arquivos de configuração.
![Page 16: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/16.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 16
● Componentes do Cordel:
![Page 17: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/17.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 17
● Cordel Editor – O Ambiente do Usuário:
![Page 18: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/18.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 18
● Importando o modelo UML:
![Page 19: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/19.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 19
● Classes importadas:
![Page 20: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/20.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 20
● Relacionamentos entre classes:
![Page 21: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/21.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 21
● Configuração de formulários e ações:
![Page 22: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/22.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 22
● Escolhendo o flavour e gerando a aplicação:
![Page 23: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/23.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 23
● Aplicação gerada:
![Page 24: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/24.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 24
● Características das aplicações geradas:
– Operações básicas de cadastro, consulta, alteração e remoção.
– O flavour default oferecido pela ferramenta consiste no uso do JBoss, Struts, Entities CMP e Hypersonic.
– Camada de apresentação Struts/CSS.
![Page 25: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/25.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 25
● Documentação:
– Manual do usuário:
![Page 26: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/26.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 26
● Documentação:
– Site do Cordel:
http://cordel.dcc.ufba.br
![Page 27: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/27.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 27
● Documentação:
– Documentação técnica
![Page 28: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/28.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 28
● Documentação:
– Artigo
![Page 29: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/29.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 29
Perspectivas Comerciais
● Formas de comercialização:
– Produto completo: pacote com instalação, documentações e, eventualmente, código-fonte.
● Vantagem: aquisição completa da tecnologia.● Desvantagem: necessidade da infra-estrutura de hardware e
pessoal qualificado para manutenção da ferramenta.
– Acesso via Web: o usuário adquire o acesso ao sistema, previamente instalado na empresa oferecedora do serviço.
● Vantagem: a infra-estrutura fica por conta do prestador do serviço.
![Page 30: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/30.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 30
Trabalhos Futuros
● Melhoria do flavour default para inclusão de:
– Autenticação e autorização de usuários;
– Mecanismo inteligente para relacionamento entre objetos;
– Suporte a auditoria e log nas aplicações geradas.
● Melhorias no Cordel Editor:
– Gerência do Controle de Acesso;
– Facilidades para configuração da camada de apresentação.
![Page 31: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/31.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 31
Trabalhos Futuros
● Melhorias no TemplateEngine:
– Geração inteligente de código, mantendo código já alterado pelo desenvolvedor.
● Criação de novos flavours:
– PHP.
– Microsoft .NET.
![Page 32: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/32.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 32
Conclusões
● É uma ferramenta importante e necessária.
● Muita coisa pode ser otimizada nos templates, gerando aplicações cada vez mais inteligentes.
● É um trabalho em sintonia com pesquisas acadêmicas atuais.
● Pode ser explorada pelo mercado.
![Page 33: Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.](https://reader035.fdocument.pub/reader035/viewer/2022070311/552fc10d497959413d8c4ab5/html5/thumbnails/33.jpg)
Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 33
Cordel