O histórico do Java Open-Source na iniciativa
                 privada, no
              governo e o futuro




                       Juarez Barbosa Junior
                       juarez.junior@powerlogic.com.br
                       UFLA - III Semana Acadêmica
Roteiro

   Powerlogic
   Histórico do Java – linha do tempo
   Movimento Open-source
   Open-source 2.0
   Powerlogic jALM Suite
   jCompany Developer Suite
   Projetos Nacionais e que migraram para Open-Source
   Solution Providers e Parcerias
   Evolução e tendências
   Demonstração jCompany
   Q&A
-   De Limitada em 1994…


- Cliente/Servidor Corporativo - Pioneirismo
      PowerBuilder 1o. Certificado América Latina (1994)
       Downsing e Desligamento de Mainframes
       Frameworks e Metodologia
       Soluções de Segurança e Rotinas Batch.
- eBusiness – Pioneirismo!
     CNI - Indicadores Econômicos (1997)
       Java Application Server (1998)
       Portais Corporativos (EIP - 1999)
       J2EE e Open-Source 2.0 (2002)

…a Sociedade Anônima em 2004
• -Em 2003, o BNDES contemplou a Powerlogic com
  aporte de capital dentro do programa PROSOFT, um
  reconhecimento não somente de suas qualidades de
  gestão, contábeis e administrativas, como também
  um aval à capacidade da empresa de engendrar com
  sucesso suas estratégias de produto e marketing.

• Em 2007, a SOFTEX reconheceu a qualidade e
  eficácia dos processos de desenvolvimento Ágeis
  utilizados pela Powerlogic, conferindo-lhe o selo de
  qualidade MPS.Br Nível F (equivalente ao CMMI
  Nível 2).
Java – linha do tempo

  1991
 Início do projeto Green
 MS-DOS é o sistema
operacional
 Telefones celulares
pesam meio Kg
 1992
 Nasce a linguagem
"Oak"
 Nasce o "Duke"
 1993
 O projeto Green muda o
nome para FirstPerson
 Mosaic v1.0 liberado
Java – linha do tempo

•1994
•WebRunner liberado – primeiro

browser suportando objetos em
movimento e conteúdo
•1995

•Tecnologia Java liberada para um

grupo restrito através do site
wicked.neato.org
•O Jornal San Jose Mercury News

publica uma reportagem de capa
sobre a tecnologia Java
technology
•O nome muda oficialmente de

"Oak" para "Java"
•Java anunciada no evento

mundial Sun World - tecnologia
Java é oficialmente anunciada
para o mundo
Java – linha do tempo
  1996
 Primeira conferência JavaOne
 JDKtm 1.0 liberado
 1997
 220,000 downloads do JDK 1.1
em apenas três semanas
 JavaOne atrai 8,000 participantes,
torna-se maior conferência
mundial de desenvolvedores de
software
 Criada tecnologia Java Card 2.0
 1998
 JDK 1.1 atinge 2 milhões de
downloads
 Visa lança primeiro smart card
baseado em Java Card
 Criado o Java Community
Process (JCP)
Java – linha do tempo
 1999
 Código fonte do Java 2 liberado
 JavaOne atrai 20,000 participantes
 J2EE beta liberado
 2000
 Mais de 400 JUGs no mundo
 Java Developer Connection atinge
1.5 milhões de participantes
 2001
 Primeiro JavaOne Japão
 Mais de 1 milhão de downloads do
Java EE SDK
 2002
 J2EE SDK atinge 2 milhões de
downloads
 78% dos executivos aponta J2EE
como a tecnologia mais efetiva para
construir e disponibilizar Web
services
Java – linha do tempo
 2003
 Java está presente em mais de 550
milhões de desktops
 Quase 75% dos desenvolvedores
de software profissionais utiliza
Java como linguagem principal
 2004
 Java 2 Platform, Standard Edition 5
(Tiger) liberado, torna-se Java SE 5
 A sonda espacial Spirit,
desenvolvida com tecnologia Java
pousa em Marte
2005
 Java comemora o décimo
aniversário
 4.5 milhões de desenvolvedores
utilizam tecnologia Java
 Mais de 2.5 bilhões de dispositivos
Java disponíveis mundialmente
Java – linha do tempo
  2006
 Richard Green anuncia no JavaOne
2006 que todo o código do Java será
liberado como Open-Source
 Liberado o NetBeans IDE 5.0, grande
evolução do IDE
 Sun torna libera vários componentes
como Open-source através do projeto
Glassfish
 2007
 Java SE e Java ME também liberados
como Open-source.
 2008
 Java SE e Java ME também liberados
como Open-source.
 Liberado Java SE 6, Java SE 7 beta
 2009
 Oracle anuncia a compra da Sun
Microsystems
Open-source
 Distribuição livre
 Código fonte
 Trabalhos Derivados
 Integridade do autor do código
fonte
 Não discriminação contra
pessoas ou grupos
 Não discriminação contra áreas
de atuação
 Distribuição da Licença
 Licença não específica à um
produto
 Licença não restrinja outros
programas
 Licença neutra em relação a
tecnologia
 http://www.opensource.org
Movimento Open-source
 “Lei de Moore”: a capacidade do
hardware continua a dobrar a
cada dois anos, sem aumento dos
custos, custos, e com ela também
o espaço de inovação do
software.

 Software é difícil, porque não se
consegue atualizar os
profissionais de desenvolvimento,
na mesma velocidade em que as
possibilidades se atualizam.

 “(...) É por isso que não existe Lei
de Moore para software. Chips
podem dobrar de capacidade a
cada ano ou dois; nossos
cérebros não.” Ref. A1.1. Scott
Resenberg, em Dreaming in Code
[Rosenberg, Scott 2007].
Movimento Open-source
  Empresas cujo foco não seja
desenvolvimento de software têm
partido para a terceirização quase
total desta expertise tecnológica...
O problema é que este modelo de
distanciamento da tecnologia logo
expõe as suas falhas. O ritmo de
evolução dos terceiros também é
limitado; de qualquer modo será
preciso de um bom nível de
domínio técnico, para se gerenciar
terceirizações no nível adequado
de detalhe. Este modelo não
elimina o risco - será preciso
gerenciá-lo, enfrentando o
problema cultural
Movimento Open-source
 Muitos compradores de “Fábricas
de Software” estão hoje recebendo
verdadeiras aplicações “bomba-
relógio” de seus fornecedores,
construídas rapidamente para um
projeto só, mas difíceis ou
impossíveis de serem mantidas
que não por seu criador. Com tal
nível de variabilidade
implementada por cada
desenvolvedor terceirizado, mais
apropriado seria chamarmos estes
modelos de “Artesanatos de
Software”.
Movimento Open-source

  Arquiteturas pobres, falta de
criatividade e de inovação
sinérgica entre tecnologia e
negócios, são outros fatores
sempre presentes, quando a
distância cultural entre as
pessoas de negócio e as de
tecnologia é muito grande... No
fim, não há como nos furtarmos
à pergunta da Era do
Conhecimento: “Como domar
novas tecnologias e convertê-
las em inovação para os
negócios?”
Movimento Open-source

Software se constrói com
outros softwares –
considerar uma solução
madura e homologada,
padrões e soluções de
software que ajudem aos
arquitetos e
desenvolvedores de software
a resolver problemas
corporativos, na velocidade
dos tempos atuais.

Open-Source 2.0
Open-Source 2.0
- Open Source 1.0 - Free and Collaborative Software (“Romântica”)
     GNU Project, Free Software Foundation, Apache Software
        Foundation
     Jakarta, SourceForge
     Oportunidades para quebras de oligarquias, redução de
        dependências e acesso à inovação.

- Open Source 1.5 - Free Software; Commercial Services
 (“Cavalo de Tróia”)




                                                     Fonte: Delphi Group
                                                     Março/2004
Open-Source 2.0
- Open Source 2.0 - Qualidade Comercial, Vantagens do Código
                             Aberto
    De “mais barato” para “melhor”.
    Fornecedor assume responsabilidade para desenvolver
      extensões, testar e homologar produtos Open Source,
      oferecendo embalagem, documentação, suporte e treinamento
      com qualidades comerciais.
    “Free” (Livre) x “Open Source” (Código Aberto).
    Licença “Managed Open Source”
    Exs: RedHat Network, Powerlogic




                                              Fonte: Delphi Group
                                              Março/2004
Open-Source 2.0
- Qualidade Comercial, Vantagens do Código Aberto

                                                     Professional
                                                    J2EE Open Source
                                                    Integração
                                                    Especialização
                                                    Homologação
                                                    Documentação
                                                    Metodologia
                                                    Suporte (Opção 24 x 7)
                                                    Treinamento
                                                    Mentoring
                                                    Fábrica
                                                    Consultoria em Geral
Powerlogic jALM Suite
Powerlogic jALM Suite


                  Comunicação e Colaboração
                  Comunicação e Colaboração



        Processos Corporativos e Gerência de Projetos
        Processos Corporativos e Gerência de Projetos




                                         Segurança e Monitoria
Desenvolvimento
Desenvolvimento    Controle de Qualidade Segurança e Monitoria
                                             em Produção
Powerlogic jALM
Cenário
        Atividade                    Ferramenta                  Envolvido
Processo de                                              Gerente de Qualidade de
                               eCompany Process
desenvolvimento de software                              Processo
Planejamento do projeto        eCompany Process          Gerente de Projeto
Análise: Casos de uso,
                               eCompany Process x EA     Analista de Requisitos
requisitos - Rastreabilidade
Desenvolvimento Design
                               eCompany Process x EA x
Pattern – jCompany                                       Desenvolvedor
                               jCompany Developer
Developer
Desenvolvimento de casos       eCompany Process x
                                                         Analista de Teste e Tester
de teste                       jCompany QA
                                                         Gerente de Qualidade /
Integração Contínua            jCompany QA
                                                         Configuração
Publicação no portal           eCompany Portal x
                                                         Gerente de Projeto
                               eCompany Process
Acompanhamento –               eCompany Process x        Gerente de Projeto e Infra-
estatísticas e monitoria       jMonitor                  estrutura
Acompanhamento - Contact
                               eCompany Portal           Todos - stakeholders
Center
Desenvolvimento sem Framework


               Aplicação A
               Aplicação A                  Aplicação B
                                            Aplicação B         Aplicação C
                                                                Aplicação C        …
                                                                                   …
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …       Módulo N
                                                    Módulo N            Módulo Z
                                                                        Módulo Z
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B


                  Application Server Java EE 5 (Web e EJB Containers)

a                            Java Virtual Machine (JVM 1.5.x)

                        Sistema Operacional (Windows, Linux)
Uso de projetos open-souce sob
                 demanda

                  Aplicação A
                  Aplicação A                  Aplicação B
                                               Aplicação B         Aplicação C
                                                                   Aplicação C         …
                                                                                       …
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …           Módulo N
                                                        Módulo N           Módulo Z
                                                                           Módulo Z
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B


      DOJO/Ajax          CSS              JBoss Seam          EJB3/POJO     Hibernate/JPA
b
    Apache Trinidad Leiautes Tiles         JSF/Struts         Cglib AOP          ...

                     Application Server Java EE 5 (Web e EJB Containers)

a                               Java Virtual Machine (JVM 1.5.x)

                           Sistema Operacional (Windows, Linux)
Desenvolvimento de framework e projeto
                     simultaneamente

                  Aplicação A
                  Aplicação A                  Aplicação B
                                               Aplicação B         Aplicação C
                                                                   Aplicação C         …
                                                                                       …
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …           Módulo N
                                                        Módulo N           Módulo Z
                                                                           Módulo Z
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B


c
    Framework para Reuso Integrado – Generalização Commodity e da Empresa



      DOJO/Ajax          CSS              JBoss Seam          EJB3/POJO     Hibernate/JPA
b
    Apache Trinidad Leiautes Tiles         JSF/Struts         Cglib AOP          ...

                     Application Server Java EE 5 (Web e EJB Containers)

a                               Java Virtual Machine (JVM 1.5.x)

                           Sistema Operacional (Windows, Linux)
Arquitetura Corporativa

                  Aplicação A
                  Aplicação A                  Aplicação B
                                               Aplicação B         Aplicação C
                                                                   Aplicação C         …
                                                                                       …
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …           Módulo N
                                                        Módulo N           Módulo Z
                                                                           Módulo Z
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B

d           Framework para Reuso Integrado – Generalização da Empresa


c           Framework para Reuso Integrado – Generalização Commodity


      DOJO/Ajax          CSS              JBoss Seam          EJB3/POJO     Hibernate/JPA
b
    Apache Trinidad Leiautes Tiles         JSF/Struts         Cglib AOP          ...

                     Application Server Java EE 5 (Web e EJB Containers)

a                               Java Virtual Machine (JVM 1.5.x)

                           Sistema Operacional (Windows, Linux)
jCompany Developer Suite
Solução Multidimensional para maximizar a produtividade
          e a qualidade no desenvolvimento
                Java EE Open-Source
jCompany: Arquitetura Corporativ

                  Aplicação A
                  Aplicação A                  Aplicação B
                                               Aplicação B         Aplicação C
                                                                   Aplicação C          …
                                                                                        …
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …           Módulo N
                                                        Módulo N          Aplicação Z
                                                                          Aplicação Z
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B

d                     Empresa – Camada Bridge (“Última Milha”)


c             jCompany - Framework de Integração (“Penúltima Milha”)


      DOJO/Ajax          CSS              JBoss Seam          EJB3/POJO     Hibernate/JPA
b
    Apache Trinidad Leiautes Tiles         JSF/Struts         Cglib AOP          ...

                     Application Server JavaEE 5 (Web e EJB Containers)

a                               Java Virtual Machine (JVM 1.5.x)

                           Sistema Operacional (Windows, Linux)
jCompany: Arquitetura Corporativ

                  Aplicação A
                  Aplicação A                  Aplicação B
                                               Aplicação B         Aplicação C
                                                                   Aplicação C          …
                                                                                        …
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …           Módulo N
                                                        Módulo N          Aplicação Z
                                                                          Aplicação Z
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B

d                     Empresa – Camada Bridge (“Última Milha”)


c             jCompany - Framework de Integração (“Penúltima Milha”)


      DOJO/Ajax          CSS              JBoss Seam          EJB3/POJO     Hibernate/JPA
b
    Apache Trinidad Laiautes Tiles         JSF/Struts         Cglib AOP          ...

                     Application Server JavaEE 5 (Web e EJB Containers)

a                                        Infra-Estrutura
                                Java Virtual Machine (JVM 1.5.x)

                           Sistema Operacional (Windows, Linux)
jCompany: Arquitetura Corporativ

                  Aplicação A
                  Aplicação A                  Aplicação B
                                               Aplicação B         Aplicação C
                                                                   Aplicação C         …
                                                                                       …
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …           Módulo N
                                                        Módulo N          Módulo Z
                                                                          Módulo Z
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B

d                     Empresa – Camada Bridge (“Última Milha”)


c             jCompany - Framework de Integração (“Penúltima Milha”)
                                          Arquitetura
      DOJO/Ajax          CSS              JBoss Seam          EJB3/POJO    Hibernate/JPA
b
    Apache Trinidad Laiautes Tiles         JSF/Struts         Cglib AOP          ...

                     Application Server JavaEE 5 (Web e EJB Containers)

a                               Java Virtual Machine (JVM 1.5.x)
                                         Infra-Estrutura

                           Sistema Operacional (Windows, Linux)
jCompany: Solução Corporativa

                  Aplicação A
                  Aplicação A                 Aplicação N
                                              Aplicação N          Ferramentas, Utilitários
e
    Módulo Reutilizável Módulo Reutilizável
    Módulo Reutilizável Módulo Reutilizável …
                                            …           Módulo N
                                                        Módulo N        Processo, Padrões
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B

d                     Empresa – Camada Bridge (“Última Milha”)


c             jCompany - Framework de Integração (“Penúltima Milha”)
                                          Arquitetura
      DOJO/Ajax          CSS              JBoss Seam          EJB3/POJO      Hibernate/JPA
b
    Apache Trinidad Laiautes Tiles         JSF/Struts         Cglib AOP            ...

                     Application Server JavaEE 5 (Web e EJB Containers)

a                               Java Virtual Machine (JVM 1.5.x)
                                         Infra-Estrutura

                           Sistema Operacional (Windows, Linux)
jCompany: Arquitetura IDE
                  Aplicação A
                  Aplicação A                 …
                                              …
                                                    Orienta          jCompany
      Módulo Reutilizável Módulo Reutilizável                    Patterns & Methods
      Módulo Reutilizável Módulo Reutilizável
        do Negócio A
         do Negócio A       do Negócio B
                             do Negócio B


                Gera                  Constrói & Libera                      Usa


Templates Customizáveis para Geração de Projetos, Artefatos, Construção e Liberação
  d

  c   Geração de Projetos e Artefatos segundo o Processo
                                                       Construção e Liberação
                                                              Hibernate
             Red Hat Studio                Derby                           Maven Plug-in
                                                               Console
  b
                  WTP                  Quantum DB             Subversive           ...

                                Eclipse IDE                                 Maven 2.x

  a                           Java Virtual Machine (JVM 1.5.x)

                          Sistema Operacional (Windows, Linux)
jCompany Test for Developer

                Aplicação A
                Aplicação A                 …
                                            …
                                                   Testa      Testes de Unidade
    Módulo Reutilizável Módulo Reutilizável                     Da Aplicação
    Módulo Reutilizável Módulo Reutilizável
      do Negócio A
       do Negócio A       do Negócio B
                           do Negócio B


                                                              Produz, Constrói & Libera


c    Framework Light para Testes de Unidade MVC-P                      Stubs

b               JUnit                           EasyMock                Coverage

                              Eclipse IDE                                 Maven 2.x

a                          Java Virtual Machine (JVM 1.5.x)

                        Sistema Operacional (Windows, Linux)
Arquitetura MVC-P
 Qualquer
  Cliente


             Browser        Celular, Palm    XML, Integração


                       Camada de Visualização

Servidor A              Camada de Controle


                         Camada de Modelo
                         Camada de Modelo

Servidor B             Camada de Persistência
                       Camada de Persistência



Qualquer
 SGBD
Arquitetura em Camadas do jCompany
jCompany Free
jCompany FS Framework – Community & Intl Version
Framework de Integração de Alto Nível (Última Milha)
Uma Solução Para Cada Necessidade




     jCompany Developer Professional Suite

     Licença Open-Source Gerenciada POSLv2
     (Comercial com Liberdade & QA)
     R$ 600,00
     (1 licença por CPF/CNPJ, via download)
     Framework + Plugins Eclipse + Gerência
      de Configuração
     Gerência de Configuração diferenciada
     (40 produtos OSS integrados instalados e
      evoluídos como uma única versão)
     Repasses de Responsabilidade e Garantia
     para a Powerlogic
     ...
Uma Solução Para Cada Necessidade




      jCompany Developer Enterprise Suite
      Licença Open-Source Gerenciada POSLv2
      (Comercial com Liberdade & QA)
      Framework + Plugins Eclipse + Gerência
       de Configuração + Testes de Unidade +
       Padrões e Métodos
      Gerência de Configuração diferenciada
      (60 produtos OSS integrados instalados e
       evoluídos como uma única versão)
      Repasses de Responsabilidade e Garantia
      para a Powerlogic
      Suporte e Serviços Especializados
      (Treinamento, Mentoria, Etc.)
      ...
Projetos Nacionais
Case Nacional – TST
Sudeste e Centro Oeste
Sudeste e Centro Oeste
Sudeste e Centro Oeste
Norte e Nordeste
Sul
Solution Provider
Parceria Red Hat
      View                                    Controller                Model/Persistance
                                                                                                            N
                        Aplicação A                                                                         E
                        Aplicação A                                        Aplicação B
                                                                           Aplicação B                 …
                                                                                                       …    G
                                                                                                            Ó
4                                                                                                           C
      Módulo Reutilizável
      Módulo Reutilizável     Módulo Reutilizável (WAR)
                               Módulo Reutilizável (WAR) … Módulo Reutilizável (JAR)
                                                           Módulo Reutilizável (JAR)                        I
                                                         … De Negócio (JAR) A                          …
                                                                                                       …
       de Visão (WAR) A
       de Visão (WAR) A       de Controle (WAR) B
                              de Controle (WAR) B    C
                                                     C     De Negócio (JAR) A    BB                         O


                                                                                                            A
3                               Cliente – Generalização do Contexto                                         R
                                                                                                            Q
                                                                                                            U
                jCompany FS Framework “Core” – Generalização Commodity                                      I
                                                                                                            T
                                                                                                            E
2       Ajax/DOJO        CSS      BIRT               JSF 1.2                 EJB3          JPA/Hibernate    T
                                                                                                            U
         JSF -                                                                                              R
                    Tiles              ...       JBoss Seam       ...        jBPM                ...        A
    Apache Trinidad

                                             JBoss Application Server                                       I
                                                                                                            N
1                                    Java Virtual Machine (JVM 1.5.x)                                       F
                                                                                                            R
                            Sistema Operacional (Red Hat Enterprise Linux)                                  A


1. Red Hat: Infra-Estrutura 2. Powerlogic: Arq. Básica     3. Cliente: Arq. Avançada     4. Componentes Negócio
Evolução e Tendências

  “Futurologia em TI é algo tão
difícil quanto em qualquer outra
área, com uma diferença: em TI
o futuro chega mais cedo”
 Previsões de curto prazo
(próximos 2 anos)
  IDEs para ALM – além de
integrar atividades básicas de
construção em si (edição,
compilação, montagem,
liberação e depuração), deverá
integrar todas as interações do
desenvolvedor com o Processo
de Desenvolvimento de
Software (PDS) organizacional.
Evolução e Tendências
 Filosofia extensível de plugins do
Eclipse - redefiniu o poder de
alcance de IDEs
 IDEs Java++ (além do Java) -
suporte a SOA (SCA, SDO,
Composite Apps), Web (Ruby on
Rails, Ajax, Flash), Mobile, etc
 IDEs Open-Source para ALM
 IDEs auto-configuráveis - Manter
as centenas de plugins e
componentes reutilizados em um
“IDE para ALM” será um grande
desafio
 IDEs “nas nuvens”: “Cloud
computing”, “SaaS”, “Web 2.0” -
IDEs “remotas” com “configuração
inteligente”, gestão e
armazenamento centralizados e
homologados

Powerlogic java ee open-source

  • 1.
    O histórico doJava Open-Source na iniciativa privada, no governo e o futuro Juarez Barbosa Junior juarez.junior@powerlogic.com.br UFLA - III Semana Acadêmica
  • 2.
    Roteiro  Powerlogic  Histórico do Java – linha do tempo  Movimento Open-source  Open-source 2.0  Powerlogic jALM Suite  jCompany Developer Suite  Projetos Nacionais e que migraram para Open-Source  Solution Providers e Parcerias  Evolução e tendências  Demonstração jCompany  Q&A
  • 3.
    - De Limitada em 1994… - Cliente/Servidor Corporativo - Pioneirismo  PowerBuilder 1o. Certificado América Latina (1994)  Downsing e Desligamento de Mainframes  Frameworks e Metodologia  Soluções de Segurança e Rotinas Batch. - eBusiness – Pioneirismo!  CNI - Indicadores Econômicos (1997)  Java Application Server (1998)  Portais Corporativos (EIP - 1999)  J2EE e Open-Source 2.0 (2002) …a Sociedade Anônima em 2004
  • 4.
    • -Em 2003,o BNDES contemplou a Powerlogic com aporte de capital dentro do programa PROSOFT, um reconhecimento não somente de suas qualidades de gestão, contábeis e administrativas, como também um aval à capacidade da empresa de engendrar com sucesso suas estratégias de produto e marketing. • Em 2007, a SOFTEX reconheceu a qualidade e eficácia dos processos de desenvolvimento Ágeis utilizados pela Powerlogic, conferindo-lhe o selo de qualidade MPS.Br Nível F (equivalente ao CMMI Nível 2).
  • 5.
    Java – linhado tempo 1991 Início do projeto Green MS-DOS é o sistema operacional Telefones celulares pesam meio Kg 1992 Nasce a linguagem "Oak" Nasce o "Duke" 1993 O projeto Green muda o nome para FirstPerson Mosaic v1.0 liberado
  • 6.
    Java – linhado tempo •1994 •WebRunner liberado – primeiro browser suportando objetos em movimento e conteúdo •1995 •Tecnologia Java liberada para um grupo restrito através do site wicked.neato.org •O Jornal San Jose Mercury News publica uma reportagem de capa sobre a tecnologia Java technology •O nome muda oficialmente de "Oak" para "Java" •Java anunciada no evento mundial Sun World - tecnologia Java é oficialmente anunciada para o mundo
  • 7.
    Java – linhado tempo 1996 Primeira conferência JavaOne JDKtm 1.0 liberado 1997 220,000 downloads do JDK 1.1 em apenas três semanas JavaOne atrai 8,000 participantes, torna-se maior conferência mundial de desenvolvedores de software Criada tecnologia Java Card 2.0 1998 JDK 1.1 atinge 2 milhões de downloads Visa lança primeiro smart card baseado em Java Card Criado o Java Community Process (JCP)
  • 8.
    Java – linhado tempo 1999 Código fonte do Java 2 liberado JavaOne atrai 20,000 participantes J2EE beta liberado 2000 Mais de 400 JUGs no mundo Java Developer Connection atinge 1.5 milhões de participantes 2001 Primeiro JavaOne Japão Mais de 1 milhão de downloads do Java EE SDK 2002 J2EE SDK atinge 2 milhões de downloads 78% dos executivos aponta J2EE como a tecnologia mais efetiva para construir e disponibilizar Web services
  • 9.
    Java – linhado tempo 2003 Java está presente em mais de 550 milhões de desktops Quase 75% dos desenvolvedores de software profissionais utiliza Java como linguagem principal 2004 Java 2 Platform, Standard Edition 5 (Tiger) liberado, torna-se Java SE 5 A sonda espacial Spirit, desenvolvida com tecnologia Java pousa em Marte 2005 Java comemora o décimo aniversário 4.5 milhões de desenvolvedores utilizam tecnologia Java Mais de 2.5 bilhões de dispositivos Java disponíveis mundialmente
  • 10.
    Java – linhado tempo 2006 Richard Green anuncia no JavaOne 2006 que todo o código do Java será liberado como Open-Source Liberado o NetBeans IDE 5.0, grande evolução do IDE Sun torna libera vários componentes como Open-source através do projeto Glassfish 2007 Java SE e Java ME também liberados como Open-source. 2008 Java SE e Java ME também liberados como Open-source. Liberado Java SE 6, Java SE 7 beta 2009 Oracle anuncia a compra da Sun Microsystems
  • 11.
    Open-source Distribuição livre Código fonte Trabalhos Derivados Integridade do autor do código fonte Não discriminação contra pessoas ou grupos Não discriminação contra áreas de atuação Distribuição da Licença Licença não específica à um produto Licença não restrinja outros programas Licença neutra em relação a tecnologia http://www.opensource.org
  • 12.
    Movimento Open-source “Leide Moore”: a capacidade do hardware continua a dobrar a cada dois anos, sem aumento dos custos, custos, e com ela também o espaço de inovação do software. Software é difícil, porque não se consegue atualizar os profissionais de desenvolvimento, na mesma velocidade em que as possibilidades se atualizam. “(...) É por isso que não existe Lei de Moore para software. Chips podem dobrar de capacidade a cada ano ou dois; nossos cérebros não.” Ref. A1.1. Scott Resenberg, em Dreaming in Code [Rosenberg, Scott 2007].
  • 13.
    Movimento Open-source Empresas cujo foco não seja desenvolvimento de software têm partido para a terceirização quase total desta expertise tecnológica... O problema é que este modelo de distanciamento da tecnologia logo expõe as suas falhas. O ritmo de evolução dos terceiros também é limitado; de qualquer modo será preciso de um bom nível de domínio técnico, para se gerenciar terceirizações no nível adequado de detalhe. Este modelo não elimina o risco - será preciso gerenciá-lo, enfrentando o problema cultural
  • 14.
    Movimento Open-source Muitoscompradores de “Fábricas de Software” estão hoje recebendo verdadeiras aplicações “bomba- relógio” de seus fornecedores, construídas rapidamente para um projeto só, mas difíceis ou impossíveis de serem mantidas que não por seu criador. Com tal nível de variabilidade implementada por cada desenvolvedor terceirizado, mais apropriado seria chamarmos estes modelos de “Artesanatos de Software”.
  • 15.
    Movimento Open-source Arquiteturas pobres, falta de criatividade e de inovação sinérgica entre tecnologia e negócios, são outros fatores sempre presentes, quando a distância cultural entre as pessoas de negócio e as de tecnologia é muito grande... No fim, não há como nos furtarmos à pergunta da Era do Conhecimento: “Como domar novas tecnologias e convertê- las em inovação para os negócios?”
  • 16.
    Movimento Open-source Software seconstrói com outros softwares – considerar uma solução madura e homologada, padrões e soluções de software que ajudem aos arquitetos e desenvolvedores de software a resolver problemas corporativos, na velocidade dos tempos atuais. Open-Source 2.0
  • 17.
    Open-Source 2.0 - OpenSource 1.0 - Free and Collaborative Software (“Romântica”)  GNU Project, Free Software Foundation, Apache Software Foundation  Jakarta, SourceForge  Oportunidades para quebras de oligarquias, redução de dependências e acesso à inovação. - Open Source 1.5 - Free Software; Commercial Services (“Cavalo de Tróia”) Fonte: Delphi Group Março/2004
  • 18.
    Open-Source 2.0 - OpenSource 2.0 - Qualidade Comercial, Vantagens do Código Aberto  De “mais barato” para “melhor”.  Fornecedor assume responsabilidade para desenvolver extensões, testar e homologar produtos Open Source, oferecendo embalagem, documentação, suporte e treinamento com qualidades comerciais.  “Free” (Livre) x “Open Source” (Código Aberto).  Licença “Managed Open Source”  Exs: RedHat Network, Powerlogic Fonte: Delphi Group Março/2004
  • 19.
    Open-Source 2.0 - QualidadeComercial, Vantagens do Código Aberto Professional J2EE Open Source Integração Especialização Homologação Documentação Metodologia Suporte (Opção 24 x 7) Treinamento Mentoring Fábrica Consultoria em Geral
  • 20.
  • 21.
    Powerlogic jALM Suite Comunicação e Colaboração Comunicação e Colaboração Processos Corporativos e Gerência de Projetos Processos Corporativos e Gerência de Projetos Segurança e Monitoria Desenvolvimento Desenvolvimento Controle de Qualidade Segurança e Monitoria em Produção
  • 22.
  • 23.
    Cenário Atividade Ferramenta Envolvido Processo de Gerente de Qualidade de eCompany Process desenvolvimento de software Processo Planejamento do projeto eCompany Process Gerente de Projeto Análise: Casos de uso, eCompany Process x EA Analista de Requisitos requisitos - Rastreabilidade Desenvolvimento Design eCompany Process x EA x Pattern – jCompany Desenvolvedor jCompany Developer Developer Desenvolvimento de casos eCompany Process x Analista de Teste e Tester de teste jCompany QA Gerente de Qualidade / Integração Contínua jCompany QA Configuração Publicação no portal eCompany Portal x Gerente de Projeto eCompany Process Acompanhamento – eCompany Process x Gerente de Projeto e Infra- estatísticas e monitoria jMonitor estrutura Acompanhamento - Contact eCompany Portal Todos - stakeholders Center
  • 24.
    Desenvolvimento sem Framework Aplicação A Aplicação A Aplicação B Aplicação B Aplicação C Aplicação C … … e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Módulo Z Módulo Z do Negócio A do Negócio A do Negócio B do Negócio B Application Server Java EE 5 (Web e EJB Containers) a Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 25.
    Uso de projetosopen-souce sob demanda Aplicação A Aplicação A Aplicação B Aplicação B Aplicação C Aplicação C … … e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Módulo Z Módulo Z do Negócio A do Negócio A do Negócio B do Negócio B DOJO/Ajax CSS JBoss Seam EJB3/POJO Hibernate/JPA b Apache Trinidad Leiautes Tiles JSF/Struts Cglib AOP ... Application Server Java EE 5 (Web e EJB Containers) a Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 26.
    Desenvolvimento de frameworke projeto simultaneamente Aplicação A Aplicação A Aplicação B Aplicação B Aplicação C Aplicação C … … e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Módulo Z Módulo Z do Negócio A do Negócio A do Negócio B do Negócio B c Framework para Reuso Integrado – Generalização Commodity e da Empresa DOJO/Ajax CSS JBoss Seam EJB3/POJO Hibernate/JPA b Apache Trinidad Leiautes Tiles JSF/Struts Cglib AOP ... Application Server Java EE 5 (Web e EJB Containers) a Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 27.
    Arquitetura Corporativa Aplicação A Aplicação A Aplicação B Aplicação B Aplicação C Aplicação C … … e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Módulo Z Módulo Z do Negócio A do Negócio A do Negócio B do Negócio B d Framework para Reuso Integrado – Generalização da Empresa c Framework para Reuso Integrado – Generalização Commodity DOJO/Ajax CSS JBoss Seam EJB3/POJO Hibernate/JPA b Apache Trinidad Leiautes Tiles JSF/Struts Cglib AOP ... Application Server Java EE 5 (Web e EJB Containers) a Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 29.
    jCompany Developer Suite SoluçãoMultidimensional para maximizar a produtividade e a qualidade no desenvolvimento Java EE Open-Source
  • 30.
    jCompany: Arquitetura Corporativ Aplicação A Aplicação A Aplicação B Aplicação B Aplicação C Aplicação C … … e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Aplicação Z Aplicação Z do Negócio A do Negócio A do Negócio B do Negócio B d Empresa – Camada Bridge (“Última Milha”) c jCompany - Framework de Integração (“Penúltima Milha”) DOJO/Ajax CSS JBoss Seam EJB3/POJO Hibernate/JPA b Apache Trinidad Leiautes Tiles JSF/Struts Cglib AOP ... Application Server JavaEE 5 (Web e EJB Containers) a Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 31.
    jCompany: Arquitetura Corporativ Aplicação A Aplicação A Aplicação B Aplicação B Aplicação C Aplicação C … … e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Aplicação Z Aplicação Z do Negócio A do Negócio A do Negócio B do Negócio B d Empresa – Camada Bridge (“Última Milha”) c jCompany - Framework de Integração (“Penúltima Milha”) DOJO/Ajax CSS JBoss Seam EJB3/POJO Hibernate/JPA b Apache Trinidad Laiautes Tiles JSF/Struts Cglib AOP ... Application Server JavaEE 5 (Web e EJB Containers) a Infra-Estrutura Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 32.
    jCompany: Arquitetura Corporativ Aplicação A Aplicação A Aplicação B Aplicação B Aplicação C Aplicação C … … e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Módulo Z Módulo Z do Negócio A do Negócio A do Negócio B do Negócio B d Empresa – Camada Bridge (“Última Milha”) c jCompany - Framework de Integração (“Penúltima Milha”) Arquitetura DOJO/Ajax CSS JBoss Seam EJB3/POJO Hibernate/JPA b Apache Trinidad Laiautes Tiles JSF/Struts Cglib AOP ... Application Server JavaEE 5 (Web e EJB Containers) a Java Virtual Machine (JVM 1.5.x) Infra-Estrutura Sistema Operacional (Windows, Linux)
  • 33.
    jCompany: Solução Corporativa Aplicação A Aplicação A Aplicação N Aplicação N Ferramentas, Utilitários e Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável … … Módulo N Módulo N Processo, Padrões do Negócio A do Negócio A do Negócio B do Negócio B d Empresa – Camada Bridge (“Última Milha”) c jCompany - Framework de Integração (“Penúltima Milha”) Arquitetura DOJO/Ajax CSS JBoss Seam EJB3/POJO Hibernate/JPA b Apache Trinidad Laiautes Tiles JSF/Struts Cglib AOP ... Application Server JavaEE 5 (Web e EJB Containers) a Java Virtual Machine (JVM 1.5.x) Infra-Estrutura Sistema Operacional (Windows, Linux)
  • 34.
    jCompany: Arquitetura IDE Aplicação A Aplicação A … … Orienta jCompany Módulo Reutilizável Módulo Reutilizável Patterns & Methods Módulo Reutilizável Módulo Reutilizável do Negócio A do Negócio A do Negócio B do Negócio B Gera Constrói & Libera Usa Templates Customizáveis para Geração de Projetos, Artefatos, Construção e Liberação d c Geração de Projetos e Artefatos segundo o Processo Construção e Liberação Hibernate Red Hat Studio Derby Maven Plug-in Console b WTP Quantum DB Subversive ... Eclipse IDE Maven 2.x a Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 35.
    jCompany Test forDeveloper Aplicação A Aplicação A … … Testa Testes de Unidade Módulo Reutilizável Módulo Reutilizável Da Aplicação Módulo Reutilizável Módulo Reutilizável do Negócio A do Negócio A do Negócio B do Negócio B Produz, Constrói & Libera c Framework Light para Testes de Unidade MVC-P Stubs b JUnit EasyMock Coverage Eclipse IDE Maven 2.x a Java Virtual Machine (JVM 1.5.x) Sistema Operacional (Windows, Linux)
  • 36.
    Arquitetura MVC-P Qualquer Cliente Browser Celular, Palm XML, Integração Camada de Visualização Servidor A Camada de Controle Camada de Modelo Camada de Modelo Servidor B Camada de Persistência Camada de Persistência Qualquer SGBD
  • 37.
  • 38.
    jCompany Free jCompany FSFramework – Community & Intl Version Framework de Integração de Alto Nível (Última Milha)
  • 39.
    Uma Solução ParaCada Necessidade jCompany Developer Professional Suite Licença Open-Source Gerenciada POSLv2 (Comercial com Liberdade & QA) R$ 600,00 (1 licença por CPF/CNPJ, via download) Framework + Plugins Eclipse + Gerência de Configuração Gerência de Configuração diferenciada (40 produtos OSS integrados instalados e evoluídos como uma única versão) Repasses de Responsabilidade e Garantia para a Powerlogic ...
  • 40.
    Uma Solução ParaCada Necessidade jCompany Developer Enterprise Suite Licença Open-Source Gerenciada POSLv2 (Comercial com Liberdade & QA) Framework + Plugins Eclipse + Gerência de Configuração + Testes de Unidade + Padrões e Métodos Gerência de Configuração diferenciada (60 produtos OSS integrados instalados e evoluídos como uma única versão) Repasses de Responsabilidade e Garantia para a Powerlogic Suporte e Serviços Especializados (Treinamento, Mentoria, Etc.) ...
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
    Parceria Red Hat View Controller Model/Persistance N Aplicação A E Aplicação A Aplicação B Aplicação B … … G Ó 4 C Módulo Reutilizável Módulo Reutilizável Módulo Reutilizável (WAR) Módulo Reutilizável (WAR) … Módulo Reutilizável (JAR) Módulo Reutilizável (JAR) I … De Negócio (JAR) A … … de Visão (WAR) A de Visão (WAR) A de Controle (WAR) B de Controle (WAR) B C C De Negócio (JAR) A BB O A 3 Cliente – Generalização do Contexto R Q U jCompany FS Framework “Core” – Generalização Commodity I T E 2 Ajax/DOJO CSS BIRT JSF 1.2 EJB3 JPA/Hibernate T U JSF - R Tiles ... JBoss Seam ... jBPM ... A Apache Trinidad JBoss Application Server I N 1 Java Virtual Machine (JVM 1.5.x) F R Sistema Operacional (Red Hat Enterprise Linux) A 1. Red Hat: Infra-Estrutura 2. Powerlogic: Arq. Básica 3. Cliente: Arq. Avançada 4. Componentes Negócio
  • 50.
    Evolução e Tendências “Futurologia em TI é algo tão difícil quanto em qualquer outra área, com uma diferença: em TI o futuro chega mais cedo” Previsões de curto prazo (próximos 2 anos) IDEs para ALM – além de integrar atividades básicas de construção em si (edição, compilação, montagem, liberação e depuração), deverá integrar todas as interações do desenvolvedor com o Processo de Desenvolvimento de Software (PDS) organizacional.
  • 51.
    Evolução e Tendências Filosofia extensível de plugins do Eclipse - redefiniu o poder de alcance de IDEs IDEs Java++ (além do Java) - suporte a SOA (SCA, SDO, Composite Apps), Web (Ruby on Rails, Ajax, Flash), Mobile, etc IDEs Open-Source para ALM IDEs auto-configuráveis - Manter as centenas de plugins e componentes reutilizados em um “IDE para ALM” será um grande desafio IDEs “nas nuvens”: “Cloud computing”, “SaaS”, “Web 2.0” - IDEs “remotas” com “configuração inteligente”, gestão e armazenamento centralizados e homologados