Integração de Práticas a Ambientes de Desenvolvimento de Software Ricardo Leal [email protected] Estudo Orientado Prof. Arndt von Staa Agenda • Objetivo e Metas deste Seminário • Linha de Pesquisa • Pesquisa de Mercado • Resultados Parciais • Necessidades • Iniciativas de Mercado • Oportunidades e Desafios Acadêmicos • Proposta de Dissertação de Mestrado • Benefícios e Riscos 05/11/2015 Ricardo Leal © LES/PUC-Rio 2 Objetivo e Metas deste Seminário Objetivo • Definir problema a ser solucionado pela Dissertação Metas • Apresentar resultados parciais do Estudo Orientado • Identificar oportunidades de pesquisa e trabalho • Obter opiniões, sugestões, críticas e orientações da comunidade do Laboratório de Engenharia de Software 05/11/2015 Ricardo Leal © LES/PUC-Rio 3 Linha de Pesquisa • Processos e Ambientes de Desenvolvimento de Software • Processos Rígidos – Personal Software Process – Team Software Process – CMMI • Métodos Ágeis – XP – SCRUM • Medição de Software e Tempo de Desenvolvimento – Hackystat • Arquitetura de Software – Requisitos funcionais – Requisitos não-funcionais 05/11/2015 Ricardo Leal © LES/PUC-Rio 4 Pesquisa de Mercado • Contexto – Equipes de TI de Micro, Pequena e Média Empresa • Critérios de Seleção – Segmentos de Atuação • Fundo de Investimento • Inteligência Competitiva • Marketing Online • Segurança – Relacionamento • Sócio • Diretor de TI • Gerência de TI • Requisitos: Confidencialidade e Acompanhamento do Estudo • Plano de Trabalho: Coleta e Análise 05/11/2015 Ricardo Leal © LES/PUC-Rio 5 Pesquisa de Mercado • Metodologia de Coleta 1. Fase Aberta - Entrevistas • Orientada por – Perfil do Profissional: Gerente, Coordenador, Desenvolvedor. – Processos: Tratamento de Requisições e Desenvolvimento. – Práticas: Programação em Par, Gerência de Configuração… – Tipos de Ferramentas: Controle de Versão, Testes Unitários… 2. Fase de Revisão • Resultado da entrevista é apresentado ao entrevistado 3. Fase Fechada – Questionário • 05/11/2015 Orientada por – Perfil do Profissional – Práticas de XP, SCRUM, PSP, TSP e CMMI Ricardo Leal © LES/PUC-Rio 6 Pesquisa de Mercado • Parâmetros de Análise – Processos de Atendimento e Desenvolvimento – Práticas de Engenharia de Software – Tipos de ferramentas e sistemas – Integração entre ferramentas e sistemas – Integração entre práticas, ferramentas e sistemas – Tipos de informação – Fluxo de informação – Artefatos produzidos – Relação entre artefatos e etapas de processos 05/11/2015 Ricardo Leal © LES/PUC-Rio 7 Pesquisa de Mercado Acompanhamento do Plano Fundo Inteligência Marketing Segurança Entrevista Revisão Questionário Análise Plano de Trabalho - Etapas x Equipe de TI Legenda: Não iniciada Em andamento Concluída 05/11/2015 Ricardo Leal © LES/PUC-Rio 8 Resultados Parciais • Processos – Falta de conhecimento sobre o processo. – Falta de modelo de processo. – Falta de etapas claramente definidas. – Falta de perfis de trabalho claramente caracterizados. • Projetos – Falta de visão de todo o projeto. – Falta de relacionamento entre tarefas de projetos distintos. – Falta de responsabilidade explicitamente atribuída. – Falta de medição de produtividade. – Falta de controle de alocação de recursos. – Falta de relacionamento entre artefatos e as etapas do processo. – Falta de identificação de problemas e demandas do cliente. – Falta de padronização no atendimento e no acompanhamento. 05/11/2015 Ricardo Leal © LES/PUC-Rio 9 Resultados Parciais • Produção – Falta de padronização de codificação. – Falta de padronização de documentação. – Vários meios de armazenamento de informação. • Colaboração – Conhecimento tácito. – Passagem de conhecimento e orientação informal. – Falta de treinamento. – Falta de padronização na cooperação, coordenação e na comunicação. 05/11/2015 Ricardo Leal © LES/PUC-Rio 10 Necessidades • Processo – Desenvolvimento iterativo e incremental. – Registro de práticas. • Projeto – Gerência de múltiplos projetos. – Acompanhamento do fluxo de trabalho (negociação e produção). – Controle de pendências. – Integração com ferramentas de relatórios. – Proveniência. – Análise de Impacto. – Interação controlada com o cliente. – Registro de tempo estimado e realizado. – Controle de tempo e recursos gastos por tarefa. 05/11/2015 Ricardo Leal © LES/PUC-Rio 11 Necessidades • Produção – Documentação suficiente. – Documentação variável de acordo com o tamanho do projeto. – Documentação incrementa gradativamente ao londo do processo. – Controle de versão de todos os artefatos. • Colaboração – Base de conhecimento compartilhada. 05/11/2015 Ricardo Leal © LES/PUC-Rio 12 Iniciativas de Mercado • Soluções Comerciais – Microsoft Visual Studio Team System – Polarion • Soluções de Código Aberto – Trac & Subversion • IT Infrastructure Library (ITIL) – Central Computing and Telecommunication Agency (UK) 05/11/2015 Ricardo Leal © LES/PUC-Rio 13 Microsoft Visual Studio Team System 05/11/2015 Ricardo Leal © LES/PUC-Rio 14 Microsoft Visual Studio Team System 05/11/2015 Ricardo Leal © LES/PUC-Rio 15 Polarion • Integra diferentes ferramentas – Gerência de requisitos – Planejamento, acompanhamento e gerência de projeto – Gerência de defeitos e problemas – Gerência de configuração – Métricas e auditoria – Gerência de integração • Utiliza soluções de código aberto – Subversion – Apache Maven – Apache WebServer – OpenSymphony – Quartz • Utiliza um único repositório de artefatos 05/11/2015 Ricardo Leal © LES/PUC-Rio 16 Polarion 05/11/2015 Ricardo Leal © LES/PUC-Rio 17 Trac • Sistema de Acompanhamento de Requisições – Retrata o fluxo de trabalho de uma tarefa – Estrutura de Wiki • Controle de Versão - Subversion 05/11/2015 Ricardo Leal © LES/PUC-Rio 18 ITIL Service Support Service Delivery Configuration Management Service Level Management Help Desk Capacity Management Problem Management IT Service Continuity Manament Change Management Availability Management Release Management Financial Management for IT Services 05/11/2015 Ricardo Leal © LES/PUC-Rio 19 Oportunidades e Desafios Acadêmicos • Departamento de Informática e Engenharia de Software – Capacitação Executiva – Capacitação Profissional – Revisão dos Cursos de Graduação • Engenharia de Requisitos – Rastreabilidade – Análise de Impacto • Interação Humano Computador – Usabilidade das Ferramentas – Exposição de Informações sem Sobrecarregar a Análise 05/11/2015 Ricardo Leal © LES/PUC-Rio 20 Oportunidades e Desafios Acadêmicos • Banco de Dados – Integração de informações • Agentes – Confiabilidade e Proveniência • Atuação em parceria com outros grupos de pesquisa – Grupo de Estudos do Casanova – Universidade de Southampton • Componentes – Frameworks para integração de ferramentas 05/11/2015 Ricardo Leal © LES/PUC-Rio 21 Dissertação de Mestrado • Definição do Problema “Como acompanhar o fluxo de trabalho e informação de uma equipe de desenvolvimento provendo indicadores de controle gerencial, de time e de indivíduo, alinhados aos artefatos produzidos? Como conciliar numa possível solução questões como versionamento, análise de impacto e mudanças de requisitos? Como introduzir novos conceitos e práticas trazidos por esta solução de forma gradativa? Como identificar os fatores que influenciam na produtividade de uma equipe de desenvolvedores utilizando informações provenientes da gerência de configuração e da gerência de problemas?” 05/11/2015 Ricardo Leal © LES/PUC-Rio 22 Benefícios e Riscos • Benefícios – Identificar problemas no ciclo de desenvolvimento – Identificar necessidades e oportunidades para capacitação e treinamento • Riscos – ??? 05/11/2015 Ricardo Leal © LES/PUC-Rio 23