Top Banner
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 Compose Maio/2004
33

Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 1 Uma Ferramenta Orientada a Modelos para Geração de Aplicações.

Apr 17, 2015

Download

Documents

Internet User
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

Universidade Federal da Bahia – Centro de Processamento de Dados – Preview Computadores 33

Cordel