SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
Alta produtividade no
                  desenvolvimento
                corporativo em J2EE
                    Alex Sander Reis
                      MSA INFOR


INSTITUCIONAL
Agenda
           • Contexto
           • Arquitetura Java
                – Visão Geral
           • Desenvolvendo e Executando um Sistema
           • Tecnologias / Ferramentas




INSTITUCIONAL
Java J2EE
           • Criado para suportar aplicações corporativas:
             críticas, alto volume de transações
           • Resolve problemas como transações, distribuição,
             escalabilidade, persistência, segurança
           • Multiplataforma (Java), Padrão aberto
           • Empresas já confiam na solução para migrar seus
             sistemas críticos
           • Complexidade Baixa Produtividade (média 15 H/PF)
                – Dados do International Software Benchmarking Standards Group (ISBSG)
           • Necessidade de profissionais muito qualificados
             (caros), conhecedores de diversas tecnologias e
             padrões de desenvolvimento além do negócio
INSTITUCIONAL
Impacto da Produtividade
           • Projeto típico:
                – 12 meses de duração
                – 9 técnicos já treinados
           • Produtividade x Resultado financeiro
                – 13 horas/PF = R$ 1,00
                – 12 horas/PF = R$ 1,40

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

INSTITUCIONAL
Agenda
           • Contexto
           • Arquitetura Java
                – Visão Geral
           • Desenvolvendo e Executando um Sistema
           • Tecnologias / Ferramentas




INSTITUCIONAL
Objetivos do Projeto
           • Desenvolver estudo de um ambiente de alta
             produtividade no ambiente J2EE
                – Simplificar e agilizar desenvolvimento.
           • Utilização de ferramentas OpenSource
           • Auxiliar no desenho das telas, validação de dados,
             navegação e documentação
           • Gerar automaticamente código padronizado e
             arquivos auxiliares necessários para execução no
             Servidor de Aplicações
           • Lógicas comuns pré-definidas (CRUD). Desenvol-
             vedor atua em pontos determinados do código
INSTITUCIONAL
Outras Características
           •    Geração de Código em 3 camadas distintas
           •    Possibilidade de regeração do código
           •    Suporte arquitetural para vários métodos de
                persistência
           •    Controle de disponibilidade de operações
           •    (*) Importação/Exportação diagramas em XMI
           •    (*) Importação definição de Banco de Dados


INSTITUCIONAL
Já existe isso!
           • Vários frameworks: Struts, JDO, Xdoclet,
             Velocity
                – Desenvolvedor tem que conhecer detalhes
           • Wizards integrados em ferramentas
                – Gera uma vez e ...
           • Gerar baseado em modelo: androMDA
                – Bom para analista desenvolvedor



INSTITUCIONAL
Visão Geral



                Interface
                            Banco de
                  (web)
                             dados




INSTITUCIONAL
Visão Geral



                            Gerenciador de    Objetos de
                Interface
                             casos de uso      negócio       Banco de
                  (web)     (session bean)   (entity bean)    dados




INSTITUCIONAL
Visão Geral
                                         Servidor de Aplicações J2EE


                            Arquivos de Configuração (deploy)

                                Gerenciador de      Objetos de
                Interface
                                 casos de uso        negócio           Banco de
                  (web)         (session bean)     (entity bean)        dados




INSTITUCIONAL
Visão Geral
                                          Servidor de Aplicações J2EE


                             Arquivos de Configuração (deploy)

                                 Gerenciador de      Objetos de
                Interface
                                  casos de uso        negócio           Banco de
                  (web)          (session bean)     (entity bean)        dados




                            Roteador


                      Adminstração




INSTITUCIONAL
Visão Geral
                                          Servidor de Aplicações J2EE


                             Arquivos de Configuração (deploy)

                                 Gerenciador de      Objetos de
                Interface
                                  casos de uso        negócio           Banco de
                  (web)          (session bean)     (entity bean)        dados




                            Roteador



                Interface         Programa
                 (texto)           Cobol

INSTITUCIONAL
Visão Geral
                                          Servidor de Aplicações J2EE


                             Arquivos de Configuração (deploy)

                                 Gerenciador de      Objetos de
                Interface
                                  casos de uso        negócio           Banco de
                  (web)          (session bean)     (entity bean)        dados




                            Roteador              Gerador


                      Adminstração




INSTITUCIONAL
Visão Geral
                                          Servidor de Aplicações J2EE


                             Arquivos de Configuração (deploy)

                                 Gerenciador de      Objetos de
                Interface
                                  casos de uso        negócio           Banco de
                  (web)          (session bean)     (entity bean)        dados




                            Roteador              Gerador


                      Adminstração                 Cadastramento




INSTITUCIONAL
Visão Geral
                                          Servidor de Aplicações J2EE


                             Arquivos de Configuração (deploy)
                                         GERADO
                                 Gerenciador de      Objetos de
                Interface
                                  casos de uso        negócio           Banco de
                  (web)          (session bean)     (entity bean)        dados




                            Roteador              Gerador


                      Adminstração                 Cadastramento

                 EXECUÇÃO                           DESENVOLVIMENTO
INSTITUCIONAL
Agenda
           • Contexto
           • Arquitetura Java
                – Visão Geral
           • Desenvolvendo e Executando um Sistema
           • Tecnologias / Ferramentas




INSTITUCIONAL
Desenvolvendo um Sistema
           • Criar o Sistema e descrevê-lo
           • Criar uma Classe de Negócio e atributos




                                              Para o Gerador
                                                  (XML)




INSTITUCIONAL
Desenvolvendo um Sistema
           • Escolher as operações desejadas




                                               Para o Gerador
                                                   (XML)




INSTITUCIONAL
Desenvolvendo um Sistema
           • SADS XP gera tela e código padrão

                                                Objetos
                           Gerador (XML)
                                                  de
                                                Negócio


                          Gerenciador      Fluxo Específico
                               de           de Transações
                          Casos de Uso



INSTITUCIONAL
Desenvolvendo um Sistema
           • Desenvolvedor altera Telas e/ou Fluxos




INSTITUCIONAL
Executando um Sistema
                                                      Gerenciador
                                                      Transações
                              Servet
                                                      (Roteador)

                                                               TO
                               TO = Tracod + Dados




                                               TO
                           Obj.Negócio                G.C.U.Cliente
                Tabela     Cliente (EB)              IncluirCliente()
                Cliente     setNome()



                          F.E.Transações – IncluirCliente.java
                              antesXXX(), depoisXXX()
INSTITUCIONAL
Agenda
           • Contexto
           • SADS XP Java
                – Visão Geral
           • Desenvolvendo e Executando um Sistema
           • Tecnologias / Ferramentas




INSTITUCIONAL
Tecnologias
           • Web
                – HTML/JavaScript
                – Servlet (Java, Servidor, Indepente de plataforma)
           • Java / J2EE
                – Aplicações corporativas em Java
           • Padrões de Projeto (Design Patterns)
           • XUL
                – Descrição da Interface em arquivos XML

INSTITUCIONAL
Tecnologia XUL
           •    Descrição da Interface em XML
           •    Mozilla, OpenSource
           •    Clientes Web Ricos
           •    XAML (Microsoft), Flex (Macromedia)
                               quot;#                  $quot;
                                                   %
                               !           !   &#
                               #               #    #
                                   #           '(
                                       #
                                           #   #        '
                                           #   #        )
                                           #   #        )
                                       #
                                   #
                               #




                                                            !   !


INSTITUCIONAL
MAB - Mozilla Amazon Browser




                http://www.faser.net/mab/remote.cfm
INSTITUCIONAL
Infra-estrutura
           Execução                        Desenvolvimento
           • Application Server            • CVS
                – Container J2EE               – Controlador de Versões
                   • JBoss / WebSphere
                                           • Eclipse
                – Container Web/Servlets       – IDE Genérico
                   • TomCat
                                               XDoclet
                                           •
           • SGBD
                                               Velocity
                                           •
                – HyperSonic
                                               Ant
                                           •
                – Oracle


INSTITUCIONAL
Ferramentas
           • XDoclet
                – Gera arquivos de configuração automaticamente
                  baseado em comentários do arquivo fonte
           • Velocity
                – Gera código baseado em template
           • Ant
                – “Make” Java, automatiza compilação, empacota
           • Eclipse
                – Ambiente de Desenvolvimento Genérico (IDE)
INSTITUCIONAL
Perguntas ?!?




INSTITUCIONAL

Más contenido relacionado

Destacado

Controladoria e Prestação de contas
Controladoria e Prestação de contasControladoria e Prestação de contas
Controladoria e Prestação de contasMichel Freller
 
Strategic Plan Assignment
Strategic Plan AssignmentStrategic Plan Assignment
Strategic Plan AssignmentBen Blanch
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structureselliando dias
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de containerelliando dias
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScriptelliando dias
 
Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slideselliando dias
 
Planejamento, organização, direcao e controle
Planejamento, organização, direcao e controlePlanejamento, organização, direcao e controle
Planejamento, organização, direcao e controleRodrigo Ribeiro
 

Destacado (7)

Controladoria e Prestação de contas
Controladoria e Prestação de contasControladoria e Prestação de contas
Controladoria e Prestação de contas
 
Strategic Plan Assignment
Strategic Plan AssignmentStrategic Plan Assignment
Strategic Plan Assignment
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structures
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de container
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScript
 
Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slides
 
Planejamento, organização, direcao e controle
Planejamento, organização, direcao e controlePlanejamento, organização, direcao e controle
Planejamento, organização, direcao e controle
 

Similar a Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE

Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Emerson Saito
 
Desenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em JavaDesenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em JavaWaldir R. Pires Jr
 
ODI Series - Treinamento
ODI Series - TreinamentoODI Series - Treinamento
ODI Series - TreinamentoCaio Lima
 
Desenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com JavaDesenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com Javaarmeniocardoso
 
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo CustoJava No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo CustoÉberli Cabistani Riella
 
Desenvolvimento em .Net - Introducao A Framework
Desenvolvimento em .Net - Introducao A FrameworkDesenvolvimento em .Net - Introducao A Framework
Desenvolvimento em .Net - Introducao A FrameworkVitor Silva
 
Anatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer FacesAnatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer Facescejug
 
Teched Brasil 2005 - A Metodologia MSF Agile e o Visual Studio Team System
Teched Brasil 2005 -  A Metodologia MSF Agile e o Visual Studio Team SystemTeched Brasil 2005 -  A Metodologia MSF Agile e o Visual Studio Team System
Teched Brasil 2005 - A Metodologia MSF Agile e o Visual Studio Team SystemFábio Câmara
 
Spring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaSpring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaMariana de Azevedo Santos
 
Demoiselle - Arquitetura
Demoiselle - ArquiteturaDemoiselle - Arquitetura
Demoiselle - ArquiteturaSerge Rehem
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = ProdutividadeAdriano Bertucci
 

Similar a Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE (20)

Serra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EESerra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EE
 
GUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EEGUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EE
 
JavaServer Faces
JavaServer FacesJavaServer Faces
JavaServer Faces
 
Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL
 
Desenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em JavaDesenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em Java
 
ODI Series - Treinamento
ODI Series - TreinamentoODI Series - Treinamento
ODI Series - Treinamento
 
MC - Java Enterprise Edition 6 (Java EE)
MC - Java Enterprise Edition 6 (Java EE)MC - Java Enterprise Edition 6 (Java EE)
MC - Java Enterprise Edition 6 (Java EE)
 
Just java 2011
Just java   2011Just java   2011
Just java 2011
 
Desenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com JavaDesenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com Java
 
Jee6
Jee6Jee6
Jee6
 
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo CustoJava No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
 
Desenvolvimento em .Net - Introducao A Framework
Desenvolvimento em .Net - Introducao A FrameworkDesenvolvimento em .Net - Introducao A Framework
Desenvolvimento em .Net - Introducao A Framework
 
Anatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer FacesAnatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer Faces
 
Teched Brasil 2005 - A Metodologia MSF Agile e o Visual Studio Team System
Teched Brasil 2005 -  A Metodologia MSF Agile e o Visual Studio Team SystemTeched Brasil 2005 -  A Metodologia MSF Agile e o Visual Studio Team System
Teched Brasil 2005 - A Metodologia MSF Agile e o Visual Studio Team System
 
Spring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaSpring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em Java
 
Demoiselle - Arquitetura
Demoiselle - ArquiteturaDemoiselle - Arquitetura
Demoiselle - Arquitetura
 
Netbeans
NetbeansNetbeans
Netbeans
 
EJB
EJBEJB
EJB
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 

Más de elliando dias

Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agilityelliando dias
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Librarieselliando dias
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!elliando dias
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Webelliando dias
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduinoelliando dias
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorceryelliando dias
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Designelliando dias
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makeselliando dias
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.elliando dias
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebookelliando dias
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Studyelliando dias
 
From Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn IntroductionFrom Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn Introductionelliando dias
 
FleetDB A Schema-Free Database in Clojure
FleetDB A Schema-Free Database in ClojureFleetDB A Schema-Free Database in Clojure
FleetDB A Schema-Free Database in Clojureelliando dias
 
Clojure and The Robot Apocalypse
Clojure and The Robot ApocalypseClojure and The Robot Apocalypse
Clojure and The Robot Apocalypseelliando dias
 
Clojure - A new Lisp
Clojure - A new LispClojure - A new Lisp
Clojure - A new Lispelliando dias
 

Más de elliando dias (20)

Geometria Projetiva
Geometria ProjetivaGeometria Projetiva
Geometria Projetiva
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Libraries
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!
 
Ragel talk
Ragel talkRagel talk
Ragel talk
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Web
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
Minicurso arduino
Minicurso arduinoMinicurso arduino
Minicurso arduino
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorcery
 
Rango
RangoRango
Rango
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Design
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makes
 
Hadoop + Clojure
Hadoop + ClojureHadoop + Clojure
Hadoop + Clojure
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebook
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Study
 
From Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn IntroductionFrom Lisp to Clojure/Incanter and RAn Introduction
From Lisp to Clojure/Incanter and RAn Introduction
 
FleetDB A Schema-Free Database in Clojure
FleetDB A Schema-Free Database in ClojureFleetDB A Schema-Free Database in Clojure
FleetDB A Schema-Free Database in Clojure
 
Clojure and The Robot Apocalypse
Clojure and The Robot ApocalypseClojure and The Robot Apocalypse
Clojure and The Robot Apocalypse
 
Clojure - A new Lisp
Clojure - A new LispClojure - A new Lisp
Clojure - A new Lisp
 

Último

Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Dirceu Resende
 
Knowtree - Extração de Dados com o KAPE.
Knowtree - Extração de Dados com o KAPE.Knowtree - Extração de Dados com o KAPE.
Knowtree - Extração de Dados com o KAPE.Thiago lindolfo
 
TI EXAMES - NIST Cybersecurity Framework.pdf
TI EXAMES - NIST Cybersecurity Framework.pdfTI EXAMES - NIST Cybersecurity Framework.pdf
TI EXAMES - NIST Cybersecurity Framework.pdfRodrigoMori7
 
O papel da automação de processos no mundo do trabalho pós-moderno
O papel da automação de processos no mundo do trabalho pós-modernoO papel da automação de processos no mundo do trabalho pós-moderno
O papel da automação de processos no mundo do trabalho pós-modernoDenis Pereira Raymundo
 
PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...
PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...
PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...Priscila Ribeiro Chagas
 
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Dirceu Resende
 
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Dirceu Resende
 

Último (7)

Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
 
Knowtree - Extração de Dados com o KAPE.
Knowtree - Extração de Dados com o KAPE.Knowtree - Extração de Dados com o KAPE.
Knowtree - Extração de Dados com o KAPE.
 
TI EXAMES - NIST Cybersecurity Framework.pdf
TI EXAMES - NIST Cybersecurity Framework.pdfTI EXAMES - NIST Cybersecurity Framework.pdf
TI EXAMES - NIST Cybersecurity Framework.pdf
 
O papel da automação de processos no mundo do trabalho pós-moderno
O papel da automação de processos no mundo do trabalho pós-modernoO papel da automação de processos no mundo do trabalho pós-moderno
O papel da automação de processos no mundo do trabalho pós-moderno
 
PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...
PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...
PRODUCT OPS - COMO APROVEITAR O MÁXIMO DESTA NOVA TENDÊNCIA - Priscila Chagas...
 
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
 
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
Apresentação Power Embedded - Descubra uma nova forma de compartilhar relatór...
 

Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE

  • 1. Alta produtividade no desenvolvimento corporativo em J2EE Alex Sander Reis MSA INFOR INSTITUCIONAL
  • 2. Agenda • Contexto • Arquitetura Java – Visão Geral • Desenvolvendo e Executando um Sistema • Tecnologias / Ferramentas INSTITUCIONAL
  • 3. Java J2EE • Criado para suportar aplicações corporativas: críticas, alto volume de transações • Resolve problemas como transações, distribuição, escalabilidade, persistência, segurança • Multiplataforma (Java), Padrão aberto • Empresas já confiam na solução para migrar seus sistemas críticos • Complexidade Baixa Produtividade (média 15 H/PF) – Dados do International Software Benchmarking Standards Group (ISBSG) • Necessidade de profissionais muito qualificados (caros), conhecedores de diversas tecnologias e padrões de desenvolvimento além do negócio INSTITUCIONAL
  • 4. Impacto da Produtividade • Projeto típico: – 12 meses de duração – 9 técnicos já treinados • Produtividade x Resultado financeiro – 13 horas/PF = R$ 1,00 – 12 horas/PF = R$ 1,40 • Esta produtividade é referente a todo o clico de desenvolvimento – produto acabado INSTITUCIONAL
  • 5. Agenda • Contexto • Arquitetura Java – Visão Geral • Desenvolvendo e Executando um Sistema • Tecnologias / Ferramentas INSTITUCIONAL
  • 6. Objetivos do Projeto • Desenvolver estudo de um ambiente de alta produtividade no ambiente J2EE – Simplificar e agilizar desenvolvimento. • Utilização de ferramentas OpenSource • Auxiliar no desenho das telas, validação de dados, navegação e documentação • Gerar automaticamente código padronizado e arquivos auxiliares necessários para execução no Servidor de Aplicações • Lógicas comuns pré-definidas (CRUD). Desenvol- vedor atua em pontos determinados do código INSTITUCIONAL
  • 7. Outras Características • Geração de Código em 3 camadas distintas • Possibilidade de regeração do código • Suporte arquitetural para vários métodos de persistência • Controle de disponibilidade de operações • (*) Importação/Exportação diagramas em XMI • (*) Importação definição de Banco de Dados INSTITUCIONAL
  • 8. Já existe isso! • Vários frameworks: Struts, JDO, Xdoclet, Velocity – Desenvolvedor tem que conhecer detalhes • Wizards integrados em ferramentas – Gera uma vez e ... • Gerar baseado em modelo: androMDA – Bom para analista desenvolvedor INSTITUCIONAL
  • 9. Visão Geral Interface Banco de (web) dados INSTITUCIONAL
  • 10. Visão Geral Gerenciador de Objetos de Interface casos de uso negócio Banco de (web) (session bean) (entity bean) dados INSTITUCIONAL
  • 11. Visão Geral Servidor de Aplicações J2EE Arquivos de Configuração (deploy) Gerenciador de Objetos de Interface casos de uso negócio Banco de (web) (session bean) (entity bean) dados INSTITUCIONAL
  • 12. Visão Geral Servidor de Aplicações J2EE Arquivos de Configuração (deploy) Gerenciador de Objetos de Interface casos de uso negócio Banco de (web) (session bean) (entity bean) dados Roteador Adminstração INSTITUCIONAL
  • 13. Visão Geral Servidor de Aplicações J2EE Arquivos de Configuração (deploy) Gerenciador de Objetos de Interface casos de uso negócio Banco de (web) (session bean) (entity bean) dados Roteador Interface Programa (texto) Cobol INSTITUCIONAL
  • 14. Visão Geral Servidor de Aplicações J2EE Arquivos de Configuração (deploy) Gerenciador de Objetos de Interface casos de uso negócio Banco de (web) (session bean) (entity bean) dados Roteador Gerador Adminstração INSTITUCIONAL
  • 15. Visão Geral Servidor de Aplicações J2EE Arquivos de Configuração (deploy) Gerenciador de Objetos de Interface casos de uso negócio Banco de (web) (session bean) (entity bean) dados Roteador Gerador Adminstração Cadastramento INSTITUCIONAL
  • 16. Visão Geral Servidor de Aplicações J2EE Arquivos de Configuração (deploy) GERADO Gerenciador de Objetos de Interface casos de uso negócio Banco de (web) (session bean) (entity bean) dados Roteador Gerador Adminstração Cadastramento EXECUÇÃO DESENVOLVIMENTO INSTITUCIONAL
  • 17. Agenda • Contexto • Arquitetura Java – Visão Geral • Desenvolvendo e Executando um Sistema • Tecnologias / Ferramentas INSTITUCIONAL
  • 18. Desenvolvendo um Sistema • Criar o Sistema e descrevê-lo • Criar uma Classe de Negócio e atributos Para o Gerador (XML) INSTITUCIONAL
  • 19. Desenvolvendo um Sistema • Escolher as operações desejadas Para o Gerador (XML) INSTITUCIONAL
  • 20. Desenvolvendo um Sistema • SADS XP gera tela e código padrão Objetos Gerador (XML) de Negócio Gerenciador Fluxo Específico de de Transações Casos de Uso INSTITUCIONAL
  • 21. Desenvolvendo um Sistema • Desenvolvedor altera Telas e/ou Fluxos INSTITUCIONAL
  • 22. Executando um Sistema Gerenciador Transações Servet (Roteador) TO TO = Tracod + Dados TO Obj.Negócio G.C.U.Cliente Tabela Cliente (EB) IncluirCliente() Cliente setNome() F.E.Transações – IncluirCliente.java antesXXX(), depoisXXX() INSTITUCIONAL
  • 23. Agenda • Contexto • SADS XP Java – Visão Geral • Desenvolvendo e Executando um Sistema • Tecnologias / Ferramentas INSTITUCIONAL
  • 24. Tecnologias • Web – HTML/JavaScript – Servlet (Java, Servidor, Indepente de plataforma) • Java / J2EE – Aplicações corporativas em Java • Padrões de Projeto (Design Patterns) • XUL – Descrição da Interface em arquivos XML INSTITUCIONAL
  • 25. Tecnologia XUL • Descrição da Interface em XML • Mozilla, OpenSource • Clientes Web Ricos • XAML (Microsoft), Flex (Macromedia) quot;# $quot; % ! ! &# # # # # '( # # # ' # # ) # # ) # # # ! ! INSTITUCIONAL
  • 26. MAB - Mozilla Amazon Browser http://www.faser.net/mab/remote.cfm INSTITUCIONAL
  • 27. Infra-estrutura Execução Desenvolvimento • Application Server • CVS – Container J2EE – Controlador de Versões • JBoss / WebSphere • Eclipse – Container Web/Servlets – IDE Genérico • TomCat XDoclet • • SGBD Velocity • – HyperSonic Ant • – Oracle INSTITUCIONAL
  • 28. Ferramentas • XDoclet – Gera arquivos de configuração automaticamente baseado em comentários do arquivo fonte • Velocity – Gera código baseado em template • Ant – “Make” Java, automatiza compilação, empacota • Eclipse – Ambiente de Desenvolvimento Genérico (IDE) INSTITUCIONAL