SlideShare uma empresa Scribd logo
1 de 50
Abrindo caminho para novas tecnologias




                                     Globalcode	
  –	
  Open4education
Consultor	
  Sênior	
  /	
  PM	
  
(Metodologia,	
  Arquitetura,	
  Java)	
  
	
  
Wagner	
  Santos	
  
	
  




       Consultor	
  Arquiteto	
  
       (SCM,	
  Automação	
  de	
  Build	
  ,	
  CI)	
  
       	
  
       Thiago	
  San8ago	
  
       	
  




                                                           Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
DERP
O Desenvolvedor




                  Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
Não aguento mais o usuário reclamando….
       Que o sistema está lento…
    Que o sistema perde informações




                                 O Chefe




                                          Globalcode	
  –	
  Open4education
Chefe, pra resolver isso, nós podemos substituir as
aplicações em VB, adotando NoSQL, porque bla bla bla...
     Big Data também é uma parada que bla bla bla...




                                      O Chefe




                                                 Globalcode	
  –	
  Open4education
•  Você por acaso já viu nosso legado?
•  Qual é o impacto da mudança na arquitetura?
•  Qual é o gargalo hoje nas aplicações?




                                         O Chefe



                                                 Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
O Chefe




   Globalcode	
  –	
  Open4education
Derp, não fica assim!! Você
 já pensou em fazer uma
        auditoria?




                              Globalcode	
  –	
  Open4education
Mas como Auditoria pode me
       ajudar????




                             Globalcode	
  –	
  Open4education
•    Foco pode mudar de acordo com a necessidade
Auditoria em Outros Níveis
                                               •    Recomendações e plano de ação criado para cada visão


         Visão da Arquitetura                         §    Atende as necessidades do negócio?
         §  Arquitetura Funcional                    §    Flexibilidade? Modularidade?
         §  Arquitetura da Aplicação                 §    Interoperabilidade com outras aplicações e sistemas de TI?
         §  Arquitetura Sistêmica e Técnica          §    Riscos de TI?
                                                      §    Benchmark Técnico: sector / market?

         Visão do Aplicativo                          §    Manutenabilidade?
         §  Código                                   §    Performance?
         §  Performance                              §    Escalabilidade?
                                                      §    Securança?
         §  Modelo de Dados
                                                      §    Evolução?
                                                                                                                         Vamos
         Visão dos Processos de
         Desenvolvimento
                                                      §    Produtividade do Desenvolvimento?                             lá!!!
                                                      §    Automação?
         §  Fábrica Construção: build, deploy        §    Rastreabilidade?
         §  Testes : unitário, funcional …           §    Agilidade?
         §  Métricas de Qualidade

         Visão da Organização                         §  Skills do Time versus requisitos do projeto
         §  Tamanho do time & skills                 §  Alta dependência com um membro de um time /
         §  Processo Des.: delivery, bug fixing        ou fornecedor?
                                                      §  Forças do Processo? fraquezas?
                                                      §  Tamanho do time de suporte?


                                                                                                  Globalcode	
  –	
  Open4education
                                                                                                         15
Entendeu?




            Globalcode	
  –	
  Open4education
Huumm, Auditoria!!!              Uiii, ele
Porque não pensei              entendeu!!!
  nisso antes???




                      Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
" Processo




   Objetivos   Planejamento   Execução   Consolidação          Apresentação




                                                   Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
Sumário da Aplicação
                                                              "   Capitalização das informações e questionários
                                                                  preenchidos durante as sessões de
Visão do Software da Aplicação




                                                                  brainstorm
                                 Forças e fraquezas

                                 Cobertura Funcional          "   Planejamento da Missão e Guia de
                                                                  Entrevistas

                                 Integração com outros SI

                                 Aspectos Técnicos

                                 Aspectos de Infraestrutura

                                 Aspectos de Segurança

                                                                                      Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
       23
Globalcode	
  –	
  Open4education
Overview




           Detalhe
                     Globalcode	
  –	
  Open4education
"   Métrica que indica a complexidade de um código, foi definido por
    Thomas J. McCabe.


Complexidade
                                   Mais que
                                   50
                        21 – 50
                                   Instável
                        Complexo
              11 – 20
              Mediano

    01 – 10
    simples




                                                              Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
TreeMap	
  –	
  Código	
  VB	
                              Diagrama	
  de	
  Dependência	
  
Complexidade	
  Ciclomá8ca	
  




 Menos    21 até   51 ou   Tamanho : Volume de código
 que 20     50     mais    Cor : complexidade ciclomática


                                                                           Globalcode	
  –	
  Open4education
TreeMap	
  –	
  SQL	
                                       Uso de tabelas temporárias
                                                            Numero )"

Complexidade	
  Ciclomá8ca.	
                               tabelas
                                                                    ("

                                                                    '"

                                                                    &"

                                                                    %"

                                                                    $"

                                                                    #"

                                                                    !"
                                                                              #"     $"         )"        ("     %!"         #$#"     *%$"



                                                            Uso de cursores
                                                             Numero *!"
                                                            cursores
                                                                     )!"
                                                                     (!"
                                                                     '!"
                                                                     &!"
                                                                     %!"
                                                                     $!"
                                                                     #!"

 Menos    21 até   51 ou   Tamanho : Volume de código                    !"
 que 20     50     mais    Cor : complexidade ciclomática                      #"   #"    ("         %"   )"   %$"     '+"     $%("   ('&"


                                                                                               Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
"   Manter o repositório de código « clean »

"   Prevenir que desenvolvedores bloqueiem uns aos outros

"   Favorer o uso diário do repositório de fontes para outros artefatos que
    não sejam somente código fonte

                                                     Repositório	
  de	
  
                                                      código	
  fonte	
  




                                                                 Globalcode	
  –	
  Open4education
Source code
            + tests          Automated     Bug and Task     Documentation
                             tests         Management       Repository

Developer




                                             Quality
             Source code     Continuous
                                             assurance
             repository      integration
                                             control




            Source code
            + tests
Developer


                             Artifact                     Automated
               Dependences   repository                   acceptance            A new version
                                                          tests                 for homologation
                                                                       Globalcode	
  –	
  Open4education
Client modifie Client    Client modifie      SAV, MOE/MOA
                                                                      Agent ou                                                                 carto. des déclare undonnées persos        administrent
                                                               gestionnaire est                                                           Client besoins sinistre
                                                                    notifié d’un                                                 s’authentifie                               Client consulte
                                                                changement de                                                                                                ses contrats
                                                                                                                                      Client crée
                                                                données perso                                                             son EC                             Client
                                                                                                                                                                             entreprise
                            Processus de création d’espace                              Journalisation                        Création espace                                gère les E/S
                                        client                                          d’évènements                                client

                             Processus de modification de                                Notification
                                données personnelles                                    d’évènements                                                                                            Admin.
                                                                                                                           Mini-site
                       BPM / EAI                                                    GFI                                    création EC                                                         Generali.fr



                                                                                                                      Écrans données clients et contrat


                                                                                                                       Cartographie des besoins Pro/PE
                                                                                                                                                                                                Generali
                            Services de création de l’espace                                                                                                                                     Front
                                         client
                                                                                                         Affichage données agent               Déclaration de sinistre                           Broker
                            Espace clients, rattachements et
                                      habilitations
                                                                                                         Création d’espace client                 Authentification
                        GEC
                                                                                                   Portail
                                                                                                                                                                                           Gestionnaire
                                                                                                                                                                                            gère les E/S
                        Proxy                   Proxy           Proxy         Proxy               Proxy
                                                                                                                    Proxy DDV           Proxy FUE
                                                                                                                                                            Proxy
                                                                                                                                                                                             entreprise
                        Couche logique           IAM             RCE          Generic            Editique                                                    Gael
 Trajectoire
                                                                                    Espace Client                                                                                               GAEL




                            RCE          GENERIC                          EDITIQUE                IAM                         DDV                          FUE                                 APOGEE

Inspecteur
crée un EC
entreprise



                                                                                                                                                                                  Stockage
                                                                                                                                             Processus               Service      de données            IHM
Données
intermédiaires
                 Données
                 contrats
                                       Données carto.
                                       des besoins
                                                                 Données
                                                                 sécurité
                                                                                   Données
                                                                                   clients
                                                                                                         Données
                                                                                                         sinistres                   Mail                   Globalcode	
  –	
  Open4education
                                                                                                                                                          Données
                                                                                                                                                          courrier
                                                                                                                                                                               Flux
                                                                                                                                                                               synchrone
                                                                                                                                                                                                 Flux
                                                                                                                                                                                                 asynchrone
Globalcode	
  –	
  Open4education
Exchanges / Integration
                                                                              Integra)on	
  «	
  contract	
  first	
  »	
  


  Open	
  source	
         Layout                        Batch                                              Data

    Custom	
                          HTML	
  /	
  
  development	
                      Ac)veX	
  /	
  
                                    Javascript	
                Servlet	
  Controller	
                           Joda-­‐)me	
  1.5.2	
  


Compliant with                                                                                                     Hibernate	
  3.2	
  
standards / state of the
                           Prints
                                                                         Spring	
  1.0	
  
art                                                                                                                    Custom	
  
                                                                                                                      datatypes	
  
-  Custom development
(open source
alternatives available)    Security
-  open source                                                 Custom	
  –	
  database	
  
framework : old version,
small fellowship …         Logs
                                                       Log4j	
  1.0.x	
  

- Obsolete framework
- Development issues       Infrastructure
                                                               STL	
                          Custom	
  Smart	
  Pointers	
  

                             Comparison between applicative architectural choices observed and
                             market standards / best practices

                                                                                                         Globalcode	
  –	
  Open4education
Nós utilizamos esta matriz
para analisar e conceber a
arquitetura sistêmica de TI.

Esta matriz, nos assegura
que fizemos uma cobertura
completa de todos os tópicos
relacionados a arquitetura de
TI.




                                Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
Show me the
  code!!!!




              Globalcode	
  –	
  Open4education
TreeMap	
  –	
  Código	
  VB	
                              Diagrama	
  de	
  Dependência	
  
Complexidade	
  Ciclomá8ca	
  




 Menos    21 até   51 ou   Tamanho : Volume de código
 que 20     50     mais    Cor : complexidade ciclomática


                                                                           Globalcode	
  –	
  Open4education
,56789!:;!0/:5</!;=59>;6>;!   ,56789!:;!0/:5</!?98:/!0/@!0;.>;A8!

!)($%$$$!!
!)'$%$$$!!
!)&$%$$$!!
!)#$%$$$!!
!)$$%$$$!!
  !($%$$$!!
  !'$%$$$!!
  !&$%$$$!!
  !#$%$$$!!
       !"!!!!
                 *+,!-./0!                      12'!                             34!




                                                                           Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
•  Você por acaso já viu nosso legado?
•  Qual é o impacto da mudança na arquitetura?
•  Qual é o gargalo hoje nas aplicações?




                                         O Chefe



                                                 Globalcode	
  –	
  Open4education
Status             Observações                  Impactos & Consequencias


         Uso correto de comunicação
                                           Sistema de Informação bem estruturado
         assíncrona



         Os serviços expostos pelo         Chamadas excessivas entre os sistemas
                                           distribuídos e o mainframe, ocasionando
         mainframe estão com               problemas de performance em pontos
         granularidade muito baixa         críticos do Sistema


                                           •  É muito caro assegurar a não regressão
         Ausência de uma estratégia para   da plataforma
         automação de testes de aceite     •  Alto risco na manutenabilidade da
                                           aplicação




                                                              Globalcode	
  –	
  Open4education
Globalcode	
  –	
  Open4education
Technical choices
                                              5

                                              4

                                              3

                                              2

                                              1

                                              0



            Development                                                Architecture &
          industrialization                                               Design
                                               Legenda
              1.  Ponto Crítico. Requer um plano de ação urgentemente
              2.  Insuficiente dado o estado de arte. Precisa de um upgrade
              3.  Aceitável. Um plano de progresso é desejável
              4.  Ponto Forte
              5.  Aderente as melhores práticas conhecidas.




             Nenhum risco técnico foi identificado
Do ponto de vista técnico, o pacote do software XYZ está aderente ao
                         requisitos da XPTO

                                                                                  Globalcode	
  –	
  Open4education
Ok!!! Vamos mudar
  nosso legado.




                    Globalcode	
  –	
  Open4education
Entrem em contato conosco




  Wagner	
  Santos	
           Thiago	
  San8ago	
  
   @wrsantos	
                   @thiagos25	
  
  wds@octo.com	
                tsr@octo.com	
  




                         Globalcode	
  –	
  Open4education
Apresentação	
  

                                                      “There is a better way!”	


                         	
                                                   Bruxelles!
§  Empresa	
  de	
  Consultoria	
  de	
  TI,	
  
    especializada	
  em:	
  	
                                    Paris!
      •  Arquitetura	
                                                             Lausanne!
      •  Metodologias	
  	
  
      •  Auditorias	
                                Sao Paulo!
§  160	
  colaboradores	
  
§  14	
  anos	
  de	
  experiência	
  
§  Faturamento	
  2011:	
  19,5	
  	
  M€	
  	
  
§  Crescimento	
  interno	
  conPnuo	
  	
  
§  Forte	
  cultura	
  corpora8va	
  
                                                                           Globalcode	
  –	
  Open4education
Em	
  A8vidades	
  de	
  Consultoria,	
  os	
  consultores	
  Octo	
  têm	
  em	
  média	
  mais	
  de	
  8	
  
           anos	
  de	
  experiência	
  no	
  ramo	
  e	
  especializações

            Gestão	
  de	
  SI	
                               Arquitetura	
  e	
  Tecnologia	
  

„    Auditoria de Sistema de                            „    Arquitetura	
  (estudo,	
  desenho,	
  padrões)	
  
      Informação                                         „    Bufete	
  de	
  Arquitetos	
  
„    Plano Geral de Investimento em                     „    Redução	
  da	
  divida	
  	
  técnica	
  e	
  escolhas	
  de	
  tecnologia	
  
      TI                                                 „    Estratégia	
  tecnológica	
  
„    Programa de transformação                          „    Industrialização	
  dos	
  desenvolvimentos	
  
                                                         „    ExperPse	
  :	
  RIA,	
  SOA/BPM,	
  Cloud,	
  NoSql…	
  
„    Organização e melhoria dos
      processos da diretoria de
      Sistemas                                                  Metodologia	
  e	
  gestão	
  de	
  mudanças	
  
„    Gestão da inovação com TI
                                                         „    Auditoria/melhoria	
  de	
  processos	
  de	
  desenvolvimento	
  
„    Enquadramento de projetos                          „    Acompanhamento	
  com	
  metodologia	
  Ágil	
  
      críticos
                                                         „    Lean	
  TI	
  
                                                         „    Desenvolvimento	
  orientado	
  Test	
  (TDD)	
  
                                                         „    Processo	
  de	
  Entrega	
  con_nua	
  (“ConPnuous	
  Delivery”)	
  
                                                                                                             Globalcode	
  –	
  Open4education
OCTO	
  é	
  parceiro	
  dos	
  seus	
  clientes	
  nos	
  projetos	
  críPcos	
  e/ou	
  inovadores	
  	
  
              oferecendo	
  um	
  suporte	
  técnico	
  altamente	
  especializado	
  e	
  	
  com	
  um	
  compromisso	
  
              total	
  
            Inovar/	
  conceber	
                      Definir	
  e	
  entregar	
  soluções	
  de	
  forma	
  ágil	
  

„    Contribuir	
  para	
  o	
                         „    Nossos	
  valores	
  
      surgimento	
  de	
  ideias	
  	
                           §    CompromePmento	
  	
  
      inovadoras	
  com	
  uso	
  da	
  TI	
                     §    Agilidade	
  
                                                                 §    Desenvolvimento	
  orientado	
  ao	
  usuário	
  (User	
  Experience)	
  
„    Alinhar	
  os	
  disPntos	
  atores	
  em	
  
      uma	
  visão	
  do	
  uso	
  da	
                          §    Qualidade	
  não	
  é	
  negociável	
  
      tecnologia	
  para	
  seu	
  negocio	
            „    Enquadramento	
  de	
  soluções	
  e	
  projetos	
  
                                                                 §  Desenvolver	
  a	
  visão,	
  a	
  arquitetura	
  meta	
  e	
  a	
  road-­‐map	
  
„    Promover	
  inovação	
  técnica	
  
      para	
  o	
  serviço	
  do	
  negocio	
                    §  Alinhar	
  toda	
  a	
  equipe	
  e	
  preparar	
  o	
  início	
  do	
  projeto	
  
                                                                 §  Necessariamente	
  “Time	
  boxed”	
  para	
  acelerar	
  a	
  entrega	
  
„    Tirar	
  proveito	
  da	
  tecnologia	
  e	
      „    Acompanhamento/suporte	
  ou	
  projetos	
  turn-­‐key	
  (“Chave	
  na	
  mão”)	
  
      dos	
  aPvos	
  disponíveis
                                                                 §    Gerenciamento	
  de	
  projetos	
  
           Aplica8vos	
  	
                                      §    Suporte	
  metodológico	
  ou	
  técnico	
  
          Web	
  e	
  moveis	
                                   §    Concepção	
  e	
  desenvolvimento	
  
                                                                 §    Deploy	
  e	
  sustentação	
  

                                                                                                                           Globalcode	
  –	
  Open4education

Mais conteúdo relacionado

Mais procurados

Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwarePablo Dall'Oglio
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwarePablo Dall'Oglio
 
Gerenciamento Ágil de Projetos
Gerenciamento Ágil de ProjetosGerenciamento Ágil de Projetos
Gerenciamento Ágil de ProjetosEdivandro Conforto
 
Design for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPDesign for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPPablo Dall'Oglio
 
O Papel do Product Owner
O Papel do Product OwnerO Papel do Product Owner
O Papel do Product OwnerMarcia Maia
 
Metodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de ProjetosMetodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de ProjetosLeandro Faria
 
Agile PMI: o que é a PMI-ACP?
Agile PMI: o que é a PMI-ACP?Agile PMI: o que é a PMI-ACP?
Agile PMI: o que é a PMI-ACP?Massimus CT
 
Desenvolvimento Ágil de Software
Desenvolvimento Ágil de SoftwareDesenvolvimento Ágil de Software
Desenvolvimento Ágil de SoftwareMassimus CT
 
Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...
Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...
Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...Macrosolutions SA
 
Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...
Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...
Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...Macrosolutions SA
 
Gestão de Programas com o Program Model Canvas
Gestão de Programas com o Program Model CanvasGestão de Programas com o Program Model Canvas
Gestão de Programas com o Program Model CanvasMaria Angelica Castellani
 
Competências IPMA em Gestão de Projetos
Competências IPMA em Gestão de ProjetosCompetências IPMA em Gestão de Projetos
Competências IPMA em Gestão de ProjetosLuciano Kolotelo
 
Tg460 project modelcanvas
Tg460 project modelcanvasTg460 project modelcanvas
Tg460 project modelcanvasAlexsander Fim
 
Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...
Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...
Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...Macrosolutions SA
 

Mais procurados (20)

Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um Software
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um Software
 
GP nas Organizações
GP nas OrganizaçõesGP nas Organizações
GP nas Organizações
 
Projeto de Software
Projeto de SoftwareProjeto de Software
Projeto de Software
 
Certificações Java
Certificações JavaCertificações Java
Certificações Java
 
Apostila de gestao de projetos
Apostila de gestao de projetosApostila de gestao de projetos
Apostila de gestao de projetos
 
Nós, consultores especialistas v 0
Nós, consultores especialistas v 0Nós, consultores especialistas v 0
Nós, consultores especialistas v 0
 
Gerenciamento Ágil de Projetos
Gerenciamento Ágil de ProjetosGerenciamento Ágil de Projetos
Gerenciamento Ágil de Projetos
 
Design for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPDesign for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHP
 
O Papel do Product Owner
O Papel do Product OwnerO Papel do Product Owner
O Papel do Product Owner
 
Dívida Técnica
Dívida TécnicaDívida Técnica
Dívida Técnica
 
Metodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de ProjetosMetodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de Projetos
 
Agile PMI: o que é a PMI-ACP?
Agile PMI: o que é a PMI-ACP?Agile PMI: o que é a PMI-ACP?
Agile PMI: o que é a PMI-ACP?
 
Desenvolvimento Ágil de Software
Desenvolvimento Ágil de SoftwareDesenvolvimento Ágil de Software
Desenvolvimento Ágil de Software
 
Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...
Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...
Macrosolutions Consultoria: Estruturação dos Processos de Gerenciamento de Ri...
 
Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...
Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...
Macrosolutions Consultoria: Implantação de Métodos Quantitativos e Simuladore...
 
Gestão de Programas com o Program Model Canvas
Gestão de Programas com o Program Model CanvasGestão de Programas com o Program Model Canvas
Gestão de Programas com o Program Model Canvas
 
Competências IPMA em Gestão de Projetos
Competências IPMA em Gestão de ProjetosCompetências IPMA em Gestão de Projetos
Competências IPMA em Gestão de Projetos
 
Tg460 project modelcanvas
Tg460 project modelcanvasTg460 project modelcanvas
Tg460 project modelcanvas
 
Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...
Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...
Macrosolutions Consultoria: Gerenciamento de Portfólio de Projetos e Investim...
 

Semelhante a [Tdc2012] Auditoria Sistêmica - Processos, Práticas e Ferramentas

TDC 2012 - Métricas de código na arquitetura
TDC 2012 - Métricas de código na arquiteturaTDC 2012 - Métricas de código na arquitetura
TDC 2012 - Métricas de código na arquiteturaLeandro Daniel
 
Dos requisitos à implantação em uma palestra
Dos requisitos à implantação em uma palestraDos requisitos à implantação em uma palestra
Dos requisitos à implantação em uma palestraRafael Chaves
 
TDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutos
TDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutosTDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutos
TDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutosRafael Chaves
 
tdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdftdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdfDouglas Siviotti
 
Construindo um micro-serviço Java 100% funcional em 15 minutos
Construindo um micro-serviço Java 100% funcional em 15 minutosConstruindo um micro-serviço Java 100% funcional em 15 minutos
Construindo um micro-serviço Java 100% funcional em 15 minutosRafael Chaves
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Softwareeros.viggiano
 
Automação de testes em projetos ágeis
Automação de testes em projetos ágeisAutomação de testes em projetos ágeis
Automação de testes em projetos ágeisCristiano Caetano
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começouJose Wilker
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013André Borgonovo
 
TDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestraTDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestraRafael Chaves
 
Delphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no CódigoDelphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no CódigoJosé Araújo
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Durotdc-globalcode
 
Visao geraldorup 20slides
Visao geraldorup 20slidesVisao geraldorup 20slides
Visao geraldorup 20slideshoraciosila
 
Através do espelho
Através do espelhoAtravés do espelho
Através do espelhoAna Coli
 

Semelhante a [Tdc2012] Auditoria Sistêmica - Processos, Práticas e Ferramentas (20)

TDC 2012 - Métricas de código na arquitetura
TDC 2012 - Métricas de código na arquiteturaTDC 2012 - Métricas de código na arquitetura
TDC 2012 - Métricas de código na arquitetura
 
Dos requisitos à implantação em uma palestra
Dos requisitos à implantação em uma palestraDos requisitos à implantação em uma palestra
Dos requisitos à implantação em uma palestra
 
TDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutos
TDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutosTDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutos
TDC SP 2016 - Construindo um microserviço Java 100% funcional em 30 minutos
 
tdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdftdc-2022-poa-quem-tem-medo-low-code.pdf
tdc-2022-poa-quem-tem-medo-low-code.pdf
 
Construindo um micro-serviço Java 100% funcional em 15 minutos
Construindo um micro-serviço Java 100% funcional em 15 minutosConstruindo um micro-serviço Java 100% funcional em 15 minutos
Construindo um micro-serviço Java 100% funcional em 15 minutos
 
ALM focado em resultados
ALM focado em resultadosALM focado em resultados
ALM focado em resultados
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Automação de testes em projetos ágeis
Automação de testes em projetos ágeisAutomação de testes em projetos ágeis
Automação de testes em projetos ágeis
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começou
 
Clean Architecture com .NET Core
Clean Architecture com .NET CoreClean Architecture com .NET Core
Clean Architecture com .NET Core
 
Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013
 
Macro Arquitetura de Software
Macro Arquitetura de SoftwareMacro Arquitetura de Software
Macro Arquitetura de Software
 
TDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestraTDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestra
 
DevOps
DevOpsDevOps
DevOps
 
Delphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no CódigoDelphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no Código
 
Machine Learning Black Boxes
Machine Learning Black BoxesMachine Learning Black Boxes
Machine Learning Black Boxes
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
 
Visao geraldorup 20slides
Visao geraldorup 20slidesVisao geraldorup 20slides
Visao geraldorup 20slides
 
Através do espelho
Através do espelhoAtravés do espelho
Através do espelho
 

Mais de Wagner Roberto dos Santos

Mais de Wagner Roberto dos Santos (7)

Tdc2013 Inspecionando antes da adoção
Tdc2013 Inspecionando antes da adoçãoTdc2013 Inspecionando antes da adoção
Tdc2013 Inspecionando antes da adoção
 
TDC2013 Escalando Aplicações Java com In Memory Datagrids
TDC2013 Escalando Aplicações Java com In Memory DatagridsTDC2013 Escalando Aplicações Java com In Memory Datagrids
TDC2013 Escalando Aplicações Java com In Memory Datagrids
 
Infinispan - Distribuição de Dados com Java
Infinispan - Distribuição de Dados com JavaInfinispan - Distribuição de Dados com Java
Infinispan - Distribuição de Dados com Java
 
Continuous Delivery e DevOps
Continuous Delivery e DevOpsContinuous Delivery e DevOps
Continuous Delivery e DevOps
 
Como Se Dar Bem Com Java
Como Se Dar Bem Com JavaComo Se Dar Bem Com Java
Como Se Dar Bem Com Java
 
De Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações MashupDe Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações Mashup
 
Como me dei bem com Java
Como me dei bem com JavaComo me dei bem com Java
Como me dei bem com Java
 

[Tdc2012] Auditoria Sistêmica - Processos, Práticas e Ferramentas

  • 1. Abrindo caminho para novas tecnologias Globalcode  –  Open4education
  • 2. Consultor  Sênior  /  PM   (Metodologia,  Arquitetura,  Java)     Wagner  Santos     Consultor  Arquiteto   (SCM,  Automação  de  Build  ,  CI)     Thiago  San8ago     Globalcode  –  Open4education
  • 5. DERP O Desenvolvedor Globalcode  –  Open4education
  • 8. Não aguento mais o usuário reclamando…. Que o sistema está lento… Que o sistema perde informações O Chefe Globalcode  –  Open4education
  • 9. Chefe, pra resolver isso, nós podemos substituir as aplicações em VB, adotando NoSQL, porque bla bla bla... Big Data também é uma parada que bla bla bla... O Chefe Globalcode  –  Open4education
  • 10. •  Você por acaso já viu nosso legado? •  Qual é o impacto da mudança na arquitetura? •  Qual é o gargalo hoje nas aplicações? O Chefe Globalcode  –  Open4education
  • 12. O Chefe Globalcode  –  Open4education
  • 13. Derp, não fica assim!! Você já pensou em fazer uma auditoria? Globalcode  –  Open4education
  • 14. Mas como Auditoria pode me ajudar???? Globalcode  –  Open4education
  • 15. •  Foco pode mudar de acordo com a necessidade Auditoria em Outros Níveis •  Recomendações e plano de ação criado para cada visão Visão da Arquitetura §  Atende as necessidades do negócio? §  Arquitetura Funcional §  Flexibilidade? Modularidade? §  Arquitetura da Aplicação §  Interoperabilidade com outras aplicações e sistemas de TI? §  Arquitetura Sistêmica e Técnica §  Riscos de TI? §  Benchmark Técnico: sector / market? Visão do Aplicativo §  Manutenabilidade? §  Código §  Performance? §  Performance §  Escalabilidade? §  Securança? §  Modelo de Dados §  Evolução? Vamos Visão dos Processos de Desenvolvimento §  Produtividade do Desenvolvimento? lá!!! §  Automação? §  Fábrica Construção: build, deploy §  Rastreabilidade? §  Testes : unitário, funcional … §  Agilidade? §  Métricas de Qualidade Visão da Organização §  Skills do Time versus requisitos do projeto §  Tamanho do time & skills §  Alta dependência com um membro de um time / §  Processo Des.: delivery, bug fixing ou fornecedor? §  Forças do Processo? fraquezas? §  Tamanho do time de suporte? Globalcode  –  Open4education 15
  • 16. Entendeu? Globalcode  –  Open4education
  • 17. Huumm, Auditoria!!! Uiii, ele Porque não pensei entendeu!!! nisso antes??? Globalcode  –  Open4education
  • 19. " Processo Objetivos Planejamento Execução Consolidação Apresentação Globalcode  –  Open4education
  • 21. Sumário da Aplicação " Capitalização das informações e questionários preenchidos durante as sessões de Visão do Software da Aplicação brainstorm Forças e fraquezas Cobertura Funcional " Planejamento da Missão e Guia de Entrevistas Integração com outros SI Aspectos Técnicos Aspectos de Infraestrutura Aspectos de Segurança Globalcode  –  Open4education
  • 25. Overview Detalhe Globalcode  –  Open4education
  • 26. "   Métrica que indica a complexidade de um código, foi definido por Thomas J. McCabe. Complexidade Mais que 50 21 – 50 Instável Complexo 11 – 20 Mediano 01 – 10 simples Globalcode  –  Open4education
  • 28. TreeMap  –  Código  VB   Diagrama  de  Dependência   Complexidade  Ciclomá8ca   Menos 21 até 51 ou Tamanho : Volume de código que 20 50 mais Cor : complexidade ciclomática Globalcode  –  Open4education
  • 29. TreeMap  –  SQL   Uso de tabelas temporárias Numero )" Complexidade  Ciclomá8ca.   tabelas (" '" &" %" $" #" !" #" $" )" (" %!" #$#" *%$" Uso de cursores Numero *!" cursores )!" (!" '!" &!" %!" $!" #!" Menos 21 até 51 ou Tamanho : Volume de código !" que 20 50 mais Cor : complexidade ciclomática #" #" (" %" )" %$" '+" $%(" ('&" Globalcode  –  Open4education
  • 31. " Manter o repositório de código « clean » " Prevenir que desenvolvedores bloqueiem uns aos outros "   Favorer o uso diário do repositório de fontes para outros artefatos que não sejam somente código fonte Repositório  de   código  fonte   Globalcode  –  Open4education
  • 32. Source code + tests Automated Bug and Task Documentation tests Management Repository Developer Quality Source code Continuous assurance repository integration control Source code + tests Developer Artifact Automated Dependences repository acceptance A new version tests for homologation Globalcode  –  Open4education
  • 33. Client modifie Client Client modifie SAV, MOE/MOA Agent ou carto. des déclare undonnées persos administrent gestionnaire est Client besoins sinistre notifié d’un s’authentifie Client consulte changement de ses contrats Client crée données perso son EC Client entreprise Processus de création d’espace Journalisation Création espace gère les E/S client d’évènements client Processus de modification de Notification données personnelles d’évènements Admin. Mini-site BPM / EAI GFI création EC Generali.fr Écrans données clients et contrat Cartographie des besoins Pro/PE Generali Services de création de l’espace Front client Affichage données agent Déclaration de sinistre Broker Espace clients, rattachements et habilitations Création d’espace client Authentification GEC Portail Gestionnaire gère les E/S Proxy Proxy Proxy Proxy Proxy Proxy DDV Proxy FUE Proxy entreprise Couche logique IAM RCE Generic Editique Gael Trajectoire Espace Client GAEL RCE GENERIC EDITIQUE IAM DDV FUE APOGEE Inspecteur crée un EC entreprise Stockage Processus Service de données IHM Données intermédiaires Données contrats Données carto. des besoins Données sécurité Données clients Données sinistres Mail Globalcode  –  Open4education Données courrier Flux synchrone Flux asynchrone
  • 35. Exchanges / Integration Integra)on  «  contract  first  »   Open  source   Layout Batch Data Custom   HTML  /   development   Ac)veX  /   Javascript   Servlet  Controller   Joda-­‐)me  1.5.2   Compliant with Hibernate  3.2   standards / state of the Prints Spring  1.0   art Custom   datatypes   -  Custom development (open source alternatives available) Security -  open source Custom  –  database   framework : old version, small fellowship … Logs Log4j  1.0.x   - Obsolete framework - Development issues Infrastructure STL   Custom  Smart  Pointers   Comparison between applicative architectural choices observed and market standards / best practices Globalcode  –  Open4education
  • 36. Nós utilizamos esta matriz para analisar e conceber a arquitetura sistêmica de TI. Esta matriz, nos assegura que fizemos uma cobertura completa de todos os tópicos relacionados a arquitetura de TI. Globalcode  –  Open4education
  • 38. Show me the code!!!! Globalcode  –  Open4education
  • 39. TreeMap  –  Código  VB   Diagrama  de  Dependência   Complexidade  Ciclomá8ca   Menos 21 até 51 ou Tamanho : Volume de código que 20 50 mais Cor : complexidade ciclomática Globalcode  –  Open4education
  • 40. ,56789!:;!0/:5</!;=59>;6>;! ,56789!:;!0/:5</!?98:/!0/@!0;.>;A8! !)($%$$$!! !)'$%$$$!! !)&$%$$$!! !)#$%$$$!! !)$$%$$$!! !($%$$$!! !'$%$$$!! !&$%$$$!! !#$%$$$!! !"!!!! *+,!-./0! 12'! 34! Globalcode  –  Open4education
  • 42. •  Você por acaso já viu nosso legado? •  Qual é o impacto da mudança na arquitetura? •  Qual é o gargalo hoje nas aplicações? O Chefe Globalcode  –  Open4education
  • 43. Status Observações Impactos & Consequencias Uso correto de comunicação Sistema de Informação bem estruturado assíncrona Os serviços expostos pelo Chamadas excessivas entre os sistemas distribuídos e o mainframe, ocasionando mainframe estão com problemas de performance em pontos granularidade muito baixa críticos do Sistema •  É muito caro assegurar a não regressão Ausência de uma estratégia para da plataforma automação de testes de aceite •  Alto risco na manutenabilidade da aplicação Globalcode  –  Open4education
  • 45. Technical choices 5 4 3 2 1 0 Development Architecture & industrialization Design Legenda 1.  Ponto Crítico. Requer um plano de ação urgentemente 2.  Insuficiente dado o estado de arte. Precisa de um upgrade 3.  Aceitável. Um plano de progresso é desejável 4.  Ponto Forte 5.  Aderente as melhores práticas conhecidas. Nenhum risco técnico foi identificado Do ponto de vista técnico, o pacote do software XYZ está aderente ao requisitos da XPTO Globalcode  –  Open4education
  • 46. Ok!!! Vamos mudar nosso legado. Globalcode  –  Open4education
  • 47. Entrem em contato conosco Wagner  Santos   Thiago  San8ago   @wrsantos   @thiagos25   wds@octo.com   tsr@octo.com   Globalcode  –  Open4education
  • 48. Apresentação   “There is a better way!”   Bruxelles! §  Empresa  de  Consultoria  de  TI,   especializada  em:     Paris! •  Arquitetura   Lausanne! •  Metodologias     •  Auditorias   Sao Paulo! §  160  colaboradores   §  14  anos  de  experiência   §  Faturamento  2011:  19,5    M€     §  Crescimento  interno  conPnuo     §  Forte  cultura  corpora8va   Globalcode  –  Open4education
  • 49. Em  A8vidades  de  Consultoria,  os  consultores  Octo  têm  em  média  mais  de  8   anos  de  experiência  no  ramo  e  especializações Gestão  de  SI   Arquitetura  e  Tecnologia   „  Auditoria de Sistema de „  Arquitetura  (estudo,  desenho,  padrões)   Informação „  Bufete  de  Arquitetos   „  Plano Geral de Investimento em „  Redução  da  divida    técnica  e  escolhas  de  tecnologia   TI „  Estratégia  tecnológica   „  Programa de transformação „  Industrialização  dos  desenvolvimentos   „  ExperPse  :  RIA,  SOA/BPM,  Cloud,  NoSql…   „  Organização e melhoria dos processos da diretoria de Sistemas Metodologia  e  gestão  de  mudanças   „  Gestão da inovação com TI „  Auditoria/melhoria  de  processos  de  desenvolvimento   „  Enquadramento de projetos „  Acompanhamento  com  metodologia  Ágil   críticos „  Lean  TI   „  Desenvolvimento  orientado  Test  (TDD)   „  Processo  de  Entrega  con_nua  (“ConPnuous  Delivery”)   Globalcode  –  Open4education
  • 50. OCTO  é  parceiro  dos  seus  clientes  nos  projetos  críPcos  e/ou  inovadores     oferecendo  um  suporte  técnico  altamente  especializado  e    com  um  compromisso   total   Inovar/  conceber   Definir  e  entregar  soluções  de  forma  ágil   „  Contribuir  para  o   „  Nossos  valores   surgimento  de  ideias     §  CompromePmento     inovadoras  com  uso  da  TI   §  Agilidade   §  Desenvolvimento  orientado  ao  usuário  (User  Experience)   „  Alinhar  os  disPntos  atores  em   uma  visão  do  uso  da   §  Qualidade  não  é  negociável   tecnologia  para  seu  negocio   „  Enquadramento  de  soluções  e  projetos   §  Desenvolver  a  visão,  a  arquitetura  meta  e  a  road-­‐map   „  Promover  inovação  técnica   para  o  serviço  do  negocio   §  Alinhar  toda  a  equipe  e  preparar  o  início  do  projeto   §  Necessariamente  “Time  boxed”  para  acelerar  a  entrega   „  Tirar  proveito  da  tecnologia  e   „  Acompanhamento/suporte  ou  projetos  turn-­‐key  (“Chave  na  mão”)   dos  aPvos  disponíveis §  Gerenciamento  de  projetos   Aplica8vos     §  Suporte  metodológico  ou  técnico   Web  e  moveis   §  Concepção  e  desenvolvimento   §  Deploy  e  sustentação   Globalcode  –  Open4education