alta produtividade nalta produtividade no desenvolvimento corporativo em j2ee

Post on 23-Jun-2015

5.098 Views

Category:

Technology

7 Downloads

Preview:

Click to see full reader

TRANSCRIPT

INSTITUCIONAL

Alta produtividade no Alta produtividade no desenvolvimento desenvolvimento

corporativo em J2EEcorporativo em J2EE

AlexAlex Sander Sander ReisReisMSA INFORMSA INFOR

INSTITUCIONAL

AgendaAgenda

•• ContextoContexto•• Arquitetura JavaArquitetura Java

–– Visão GeralVisão Geral

•• Desenvolvendo e Executando um SistemaDesenvolvendo e Executando um Sistema•• Tecnologias / FerramentasTecnologias / Ferramentas

INSTITUCIONAL

Java J2EEJava J2EE

•• Criado para suportar aplicações corporativas: Criado para suportar aplicações corporativas: críticas, alto volume de transaçõescríticas, alto volume de transações

•• Resolve problemas como transações, distribuição, Resolve problemas como transações, distribuição, escalabilidadeescalabilidade, persistência, segurança, persistência, segurança

•• Multiplataforma (Java), Padrão abertoMultiplataforma (Java), Padrão aberto•• Empresas já confiam na solução para migrar seus Empresas já confiam na solução para migrar seus

sistemas críticossistemas críticos•• Complexidade Complexidade �� Baixa Produtividade Baixa Produtividade (média 15 H/PF)(média 15 H/PF)

–– Dados do Dados do InternationalInternational Software Benchmarking Software Benchmarking Standards GroupStandards Group (ISBSG) (ISBSG)

•• Necessidade de profissionais muito qualificados Necessidade de profissionais muito qualificados (caros), conhecedores de diversas tecnologias e (caros), conhecedores de diversas tecnologias e padrões de desenvolvimento além do negóciopadrões de desenvolvimento além do negócio

INSTITUCIONAL

Impacto da ProdutividadeImpacto da Produtividade

•• Projeto típico:Projeto típico:–– 12 meses de duração12 meses de duração–– 9 técnicos já treinados9 técnicos já treinados

•• Produtividade x Resultado financeiroProdutividade x Resultado financeiro–– 13 horas/PF = R$ 1,0013 horas/PF = R$ 1,00–– 12 horas/PF = R$ 1,4012 horas/PF = R$ 1,40

•• Esta produtividadeEsta produtividade é é referente referente a a todo todo o o clico clico de de desenvolvimento desenvolvimento –– produto acabadoproduto acabado

INSTITUCIONAL

AgendaAgenda

•• ContextoContexto•• Arquitetura JavaArquitetura Java

–– Visão GeralVisão Geral

•• Desenvolvendo e Executando um SistemaDesenvolvendo e Executando um Sistema•• Tecnologias / FerramentasTecnologias / Ferramentas

INSTITUCIONAL

Objetivos do ProjetoObjetivos do Projeto

•• Desenvolver estudo de um ambiente de alta Desenvolver estudo de um ambiente de alta produtividade no ambiente J2EEprodutividade no ambiente J2EE–– Simplificar e agilizar desenvolvimento. Simplificar e agilizar desenvolvimento.

•• Utilização de ferramentas Utilização de ferramentas OpenSourceOpenSource•• Auxiliar no desenho das telas, validação de dados, Auxiliar no desenho das telas, validação de dados,

navegação e documentaçãonavegação e documentação•• Gerar automaticamente código padronizado e Gerar automaticamente código padronizado e

arquivos auxiliares necessários para execução no arquivos auxiliares necessários para execução no Servidor de AplicaçõesServidor de Aplicações

•• Lógicas comuns préLógicas comuns pré--definidas (CRUD). definidas (CRUD). DesenvolDesenvol--vedor atua em pontos determinados do códigovedor atua em pontos determinados do código

INSTITUCIONAL

Outras CaracterísticasOutras Características

•• Geração de Código em 3 camadas distintasGeração de Código em 3 camadas distintas•• Possibilidade de Possibilidade de regeraçãoregeração do códigodo código•• Suporte arquitetural para vários métodos de Suporte arquitetural para vários métodos de

persistênciapersistência•• Controle de disponibilidade de operaçõesControle de disponibilidade de operações•• (*) Importação/Exportação diagramas em XMI(*) Importação/Exportação diagramas em XMI•• (*) Importação definição de Banco de Dados(*) Importação definição de Banco de Dados

INSTITUCIONAL

Já existe isso!Já existe isso!

•• Vários Vários frameworksframeworks: : StrutsStruts, JDO, , JDO, XdocletXdoclet, , VelocityVelocity–– Desenvolvedor tem que conhecer detalhesDesenvolvedor tem que conhecer detalhes

•• Wizards Wizards integrados em ferramentasintegrados em ferramentas–– Gera uma vez e ... Gera uma vez e ...

•• Gerar baseado em modelo: Gerar baseado em modelo: androMDAandroMDA–– Bom para analista desenvolvedorBom para analista desenvolvedor

INSTITUCIONAL

Visão GeralVisão Geral

Banco de dados

Interface(web)

INSTITUCIONAL

Visão GeralVisão Geral

Banco de dados

Interface(web)

Gerenciador decasos de uso

(session bean)

Objetos denegócio

(entity bean)

INSTITUCIONAL

Visão GeralVisão Geral

Servidor de Aplicações J2EE

Banco de dados

Interface(web)

Gerenciador decasos de uso

(session bean)

Objetos denegócio

(entity bean)

Arquivos de Configuração (deploy)

INSTITUCIONAL

Visão GeralVisão Geral

Servidor de Aplicações J2EE

Banco de dados

Interface(web)

Gerenciador decasos de uso

(session bean)

Objetos denegócio

(entity bean)

Roteador

Arquivos de Configuração (deploy)

Adminstração

INSTITUCIONAL

Visão GeralVisão Geral

Servidor de Aplicações J2EE

Banco de dados

Interface(web)

Gerenciador decasos de uso

(session bean)

Objetos denegócio

(entity bean)

Roteador

Arquivos de Configuração (deploy)

Interface(texto)

ProgramaCobol

INSTITUCIONAL

Servidor de Aplicações J2EE

Arquivos de Configuração (deploy)

Visão GeralVisão Geral

Gerador

Banco de dados

Interface(web)

Gerenciador decasos de uso

(session bean)

Objetos denegócio

(entity bean)

Roteador

Adminstração

INSTITUCIONAL

Visão GeralVisão Geral

Servidor de Aplicações J2EE

Gerador

Banco de dados

Interface(web)

Gerenciador decasos de uso

(session bean)

Objetos denegócio

(entity bean)

Roteador

Arquivos de Configuração (deploy)

CadastramentoAdminstração

INSTITUCIONAL

Visão GeralVisão Geral

Servidor de Aplicações J2EE

Gerador

Banco de dados

Interface(web)

Gerenciador decasos de uso

(session bean)

Objetos denegócio

(entity bean)

Roteador

Arquivos de Configuração (deploy)

CadastramentoAdminstração

EXECUÇÃO DESENVOLVIMENTO

GERADO

INSTITUCIONAL

AgendaAgenda

•• ContextoContexto•• Arquitetura JavaArquitetura Java

–– Visão GeralVisão Geral

•• Desenvolvendo e Executando um SistemaDesenvolvendo e Executando um Sistema•• Tecnologias / FerramentasTecnologias / Ferramentas

INSTITUCIONAL

Desenvolvendo um SistemaDesenvolvendo um Sistema

•• Criar o Sistema e Criar o Sistema e descrevêdescrevê--lolo•• Criar uma Classe de Negócio e atributosCriar uma Classe de Negócio e atributos

Para o Gerador(XML)

INSTITUCIONAL

Desenvolvendo um SistemaDesenvolvendo um Sistema

•• Escolher as operações desejadasEscolher as operações desejadas

Para o Gerador(XML)

INSTITUCIONAL

Desenvolvendo um SistemaDesenvolvendo um Sistema

•• SADS XP gera tela e código padrãoSADS XP gera tela e código padrão

Gerenciadorde

Casos de Uso

Objetosde

Negócio

Fluxo Específico de Transações

Gerador (XML)

INSTITUCIONAL

Desenvolvendo um SistemaDesenvolvendo um Sistema

•• Desenvolvedor altera Telas e/ou FluxosDesenvolvedor altera Telas e/ou Fluxos

INSTITUCIONAL

Executando um SistemaExecutando um Sistema

Servet

G.C.U.ClienteIncluirCliente()

Gerenciador

Transações

(Roteador)

Obj.NegócioCliente (EB)setNome()

TabelaCliente

TO

TO

F.E.Transações – IncluirCliente.javaantesXXX(), depoisXXX()

TO = Tracod + Dados

INSTITUCIONAL

AgendaAgenda

•• ContextoContexto•• SADS XP JavaSADS XP Java

–– Visão GeralVisão Geral

•• Desenvolvendo e Executando um SistemaDesenvolvendo e Executando um Sistema•• Tecnologias / FerramentasTecnologias / Ferramentas

INSTITUCIONAL

TecnologiasTecnologias

•• WebWeb–– HTML/HTML/JavaScriptJavaScript–– Servlet Servlet (Java, Servidor, (Java, Servidor, IndepenteIndepente de plataforma)de plataforma)

•• Java / J2EEJava / J2EE–– Aplicações corporativas em JavaAplicações corporativas em Java

•• Padrões de Projeto (Padrões de Projeto (Design PatternsDesign Patterns))•• XULXUL

–– Descrição da Interface em arquivos XMLDescrição da Interface em arquivos XML

INSTITUCIONAL

Tecnologia XULTecnologia XUL

•• Descrição da Interface em XMLDescrição da Interface em XML•• MozillaMozilla, , OpenSourceOpenSource•• Clientes Web RicosClientes Web Ricos•• XAML (Microsoft), XAML (Microsoft), Flex Flex ((MacromediaMacromedia))

�����������������

���� �

����������������������� ���

����������������������� ����

����� �

��������� �

�����������������������������������

�����������������������

�����������������������

������

��������������������������������

������������ ���������

������

���������� �

���������

��!����!�

�"�#���� ����$%"�

�!����!������&��#����

�#��������#����#����

�#���������'�(�����

�#���������

�#������# �����'������

�#������# �����)�������

�#������# �����)�����

��#���������

��#����

��#�������

INSTITUCIONAL

MAB MAB -- MozillaMozilla Amazon BrowserAmazon Browser

http://www.faser.net/mab/remote.cfm

INSTITUCIONAL

InfraInfra--estruturaestrutura

ExecuçãoExecução•• Application ServerApplication Server

–– ContainerContainer J2EEJ2EE•• JBossJBoss / / WebSphereWebSphere

–– Container Container Web/Web/ServletsServlets•• TomCatTomCat

•• SGBDSGBD–– HyperSonicHyperSonic–– OracleOracle

DesenvolvimentoDesenvolvimento•• CVSCVS

–– Controlador de VersõesControlador de Versões

•• EclipseEclipse–– IDE GenéricoIDE Genérico

•• XDocletXDoclet•• VelocityVelocity•• AntAnt

INSTITUCIONAL

FerramentasFerramentas

•• XDocletXDoclet–– Gera arquivos de configuração automaticamente Gera arquivos de configuração automaticamente

baseado em comentários do arquivo fontebaseado em comentários do arquivo fonte

•• VelocityVelocity–– Gera código baseado em Gera código baseado em templatetemplate

•• AntAnt–– ““MakeMake” Java, automatiza compilação, empacota” Java, automatiza compilação, empacota

•• EclipseEclipse–– Ambiente de Desenvolvimento Genérico (IDE)Ambiente de Desenvolvimento Genérico (IDE)

INSTITUCIONAL

Perguntas ?!?Perguntas ?!?

top related