SIGECO07 Sistema Integrado de Gestão de Contas Universidade Federal de Lavras PLANO DE PROJETO 23/09/2007 SIGECO07/GERENCIA/PROJETOS/ ModeloPlanoProjeto_2007_04_24 SIGECO07_PlanoProjeto_2007_09_23 Página 1 de 12
Histórico de Alterações Data Responsável Descrição 02/09/2007 Cristiano Lehrer Elaboração da versão inicial do Plano de Projeto. 09/09/2007 Cristiano Lehrer Alteração dos papéis entre os membros da equipe técnica. 15/09/2007 Cristiano Lehrer Alteração da estrutura de diretórios do projeto. 23/09/2007 Cristiano Lehrer Alteração do cronograma do projeto. SIGECO07_PlanoProjeto_2007_09_23 Página 2 de 12
Lista de Aprovadores Nome Ana Cristina Rouiller Weslei A. De T. Marinho Professora Professor Cargo SIGECO07_PlanoProjeto_2007_09_23 Página 3 de 12
Sumário 1. INTRODUÇÃO... 5 1.1. Visão geral deste documento... 5 1.2. Convenções, termos e abreviações... 5 1.2.1. Identificação dos riscos... 5 1.2.2. Probabilidade e impacto dos riscos... 6 2. VISÃO GERAL... 6 3. PROCESSO DE DESENVOLVIMENTO DE SOFTWARE... 6 3.1. O processo de software... 6 3.2. Artefatos gerados... 7 3.3. Padrões adotados... 7 3.4. Ferramentas utilizadas... 7 3.5. Revisões, verificações e validações... 8 4. ENTRADAS E SAÍDAS DO PROJETO... 8 5. ORGANIZAÇÃO DO PROJETO... 8 5.1. Organograma... 8 5.1.1. Capacidades necessárias para o projeto... 8 5.1.2. Recursos humanos... 9 5.2. Infraestrutura... 9 5.2.1. Ferramentas... 10 5.2.2. Equipamentos... 10 5.2.3. Outros itens relevantes... 10 5.3. Interfaces técnicas e organizacionais... 10 5.3.1. Reuniões da equipe técnica... 10 5.3.2. Reuniões de garantia da qualidade... 10 5.3.3. Interface entre a equipe técnica e os usuários (cliente)... 10 5.4. Controle de documentos e dados... 10 5.5. Treinamento... 11 6. ANÁLISE DE RISCOS... 11 RS001 Comunicação... 11 RS001 Conhecimento do Negócio... 11 7. ARMAZENAMENTO, CÓPIA, RECUPERAÇÃO E PRESERVAÇÃO... 11 8. CRONOGRAMA... 12 9. REFERÊNCIAS... 12 SIGECO07_PlanoProjeto_2007_09_23 Página 4 de 12
1. INTRODUÇÃO Este documento compreende as informações pertinentes ao planejamento do projeto Sistema Integrado de Gestão de Contas SIGECO07, incluindo o processo de software adotado, com suas fases e artefatos gerados. Apresenta os padrões e técnicas adotados, além de análise de riscos e planejamento de atividades de revisão, validação e verificação do projeto. O cronograma de atividades, recursos alocados e planos para gerência da configuração, teste e inspeção também são referenciados por este documento. Este documento será utilizado como base para as atividades de acompanhamento, revisão, verificação e validação do projeto deste seu início até sua conclusão, a fim de garantir a análise comparativa do desempenho real versus planejado. Desta forma, ações corretivas e preventivas poderão ser tomadas, sempre que os resultados ou os desempenhos reais se desviarem significativamente do planejado. 1.1. Visão geral deste documento Este documento está dividido em nove seções: Seção 2 Visão Geral do Sistema: apresenta uma visão geral do produto/serviço a ser desenvolvido e uma breve descrição da instituição contratante; Seção 3 Processo de Software: descreve, em linhas gerais, o processo de software adotado para o projeto, suas fases, artefatos gerados, padrões e ferramentas a serem utilizados para suporte ao processo; Seção 4 Entradas e Saídas do Projeto: descreve em linhas gerais as entradas e saídas do projeto; Seção 5 Organização do Projeto: compreende informações a respeito da organização do projeto, descrevendo a infra-estrutura do projeto em termos de pessoas, ambiente computacional entre outros; Seção 6 Análise de Riscos: apresenta uma análise de risco no âmbito do desenvolvimento do projeto; Seção 7 Armazenamento, Cópia, Recuperação e Preservação: apresenta os procedimentos de garantia de prevenção de danificação ou deterioração do produto/serviço; Seção 8 Cronograma: apresenta o cronograma geral do projeto; Seção 9 Referências: apresenta as referências citadas no documento ou necessárias para o entendimento do mesmo. 1.2. Convenções, termos e abreviações A correta interpretação deste documento exige o conhecimento de algumas convenções e termos específicos, que são descritos a seguir. 1.2.1. Identificação dos riscos Por convenção, a referência a riscos é feita através do identificador do risco, de acordo com o esquema abaixo: RS[identificador do risco] Identificador do risco é um número, criado seqüencialmente, que determina que aquele risco é único dentro do projeto. Exemplos: RS001, RS002, RS003. SIGECO07_PlanoProjeto_2007_09_23 Página 5 de 12
1.2.2. Probabilidade e impacto dos riscos Para priorizar os riscos do projeto, a probabilidade e o impacto dos riscos são qualificados como Baixa, Média e Alta, com os seguintes valores semânticos: 1 Baixa: a probabilidade ou impacto de ocorrer o risco é baixa; 3 Média: a probabilidade ou impacto de ocorrer o risco é média; 5 Alta: a probabilidade ou impacto de ocorrer o risco é alta. 2. VISÃO GERAL O Sistema Integrado de Gestão de Contas (SIGECO07) foi concebido como um sistema para controle de custos de uma empresa. O sistema é desenvolvido para ser executado em ambiente Web, e preparado para que haja a possibilidade de customização por parte do usuário para que ele atenda às suas necessidades. 3. PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Esta seção descreve a metodologia de desenvolvimento adotada pelo projeto, descrevendo as atividades de ciclo de vida, atividades de apoio e artefatos gerados. 3.1. O processo de software O processo de desenvolvimento adotado na realização do presente projeto é baseado na metodologia de processo lightweight chamada Extreme Programming (XP), visando alcançar um desenvolvimento rápido e consistente com as reais necessidades do cliente e fácil manutenibilidade, permitindo que o software seja modificado à medida que as necessidades do negócio se alteram ou ampliam. O processo de desenvolvimento de software é composto por seis etapas, repetidas para cada componente desenvolvido. As etapas são: Especificação dos Requisitos: levantamento das funcionalidades a serem implementadas no componente; Especificação dos Testes Funcionais: elaboração dos casos de teste do componente; Especificação do Projeto: elaboração do projeto do componente, englobando a especificação do diagrama de classes e do modelo entidade-relacionamento (MER); Codificação do Componente: implementação do componente; Realização dos Testes Funcionais: execução dos casos de teste sobre o componente implementado; Integração do Componente: inclusão do componente desenvolvido ao restante da aplicação. A figura abaixo apresenta o fluxo do processo de desenvolvimento adotado. As linhas contínuas representam o fluxo normal de trabalho do processo de desenvolvimento, enquanto que as linhas pontilhadas representam as exceções, no qual o processo deve retornar para uma atividade anterior para sua correta finalização. SIGECO07_PlanoProjeto_2007_09_23 Página 6 de 12
Novo Componente Especificação dos Requisitos Especificação dos Testes Funcionais Especificação do Projeto Codificação do Componente Realização dos Testes Funcionais Nova Iteração Integração do Componente 3.2. Artefatos gerados Os seguintes artefatos serão diretamente produzidos pelo processo de desenvolvimento proposto: Especificação de Requisitos ModeloEspecificacaoRequisitos_2007_04_24; Especificação dos Casos de Uso ModeloEspecificacaoUseCases_2007_04_26; Especificação da Arquitetura do Sistema ModeloEspecificacaoArquitetura_2007_04_25; Plano de Testes ModeloPlanoTestes_2007_04_27; Modelo Entidade Relacionamento ModeloEntidadeRelacionamento_2007_04_27; Código Fonte padrão da arquitetura de desenvolvimento PHP; Relatório de Teste ModeloRelatorioTeste_2007_04_30; Os artefatos gerados indiretamente pelo processo de desenvolvimento são: Plano de Projeto ModeloPlanoProjeto_2006_04_25; Ata de Reunião ModeloAtaReuniao_2006_04_29; 3.3. Padrões adotados Para o desenvolvimento do projeto serão adotados os padrões utilizados pela comunidade de software livre, incluindo os padrões de codificação, convenção de nomenclatura, templates para revisões e verificações, entre outros. 3.4. Ferramentas utilizadas O projeto será executado sobre as tecnologias PHP/MySQL, utilizando o ambiente de desenvolvimento integrado (Integrated Development Environment) Eclipse, com suporte a linguagem de programa PHP. A relação completa das ferramentas utilizadas para o desenvolvimento do projeto está disponível na seção 5.2.1. SIGECO07_PlanoProjeto_2007_09_23 Página 7 de 12
3.5. Revisões, verificações e validações As atividades de revisão, verificação e validação do projeto serão realizadas semanalmente entre os membros do projeto. As revisões e verificações estão previstas para serem realizadas nas seguintes datas: 02/09/2007 09/09/2007 15/09/2007 23/09/2007 30/09/2007 06/10/2007 A homologação do projeto, está prevista para ocorrer no período de 05 à 06 de outubro de 2007. 4. ENTRADAS E SAÍDAS DO PROJETO As entradas do projeto serão obtidas através de reuniões regulares entre os membros da equipe técnica para a especificação e detalhamento dos requisitos do sistema. As saídas do projeto disponibilizadas para o cliente serão todos os documentos produzidos no decorrer do desenvolvimento do projeto. 5. ORGANIZAÇÃO DO PROJETO Esta seção apresenta informações a respeito da estrutura organizacional do projeto, incluindo o organograma do projeto, pessoal envolvido e responsabilidades, recursos computacionais alocados ao projeto, ferramentas de apoio, além de descrever como serão realizadas as interfaces organizacionais entre os diferentes grupos envolvidos no desenvolvimento do projeto. 5.1. Organograma Esta seção apresenta o organograma do projeto, detalhando os profissionais envolvidos na execução do projeto. Organograma Empresa Cliente Gerente de Projeto Professor Desenvolvedor Database Designer Testador 5.1.1. Capacidades necessárias para o projeto Papel Gerente de Projeto Database Designer Capacidades Processo de Desenvolvimento de Software Arquitetura de Desenvolvimento PHP Project Management Body of Knowledge (PMBOK) Processo de Desenvolvimento de Software SIGECO07_PlanoProjeto_2007_09_23 Página 8 de 12
Desenvolvedor Testador Papel Capacidades Arquitetura de Desenvolvimento PHP Structured Query Language (SQL) Processo de Desenvolvimento de Software Arquitetura de Desenvolvimento PHP Linguagem de Programação PHP Unified Modeling Language (UML) Processo de Desenvolvimento de Software Arquitetura de Desenvolvimento PHP Linguagem de Programação PHP 5.1.2. Recursos humanos Professor Cliente Professor Cliente Papel Colaborador Atribuições Gerente de Projeto Empresa Database Designer Empresa Desenvolvedor Empresa Testador Empresa 5.2. Infraestrutura Ana Cristina Rouiller Weslei A. De T. Marinho Cristiano Lehrer (ybadoo@gmail.com) Aldo Moura (aldomoura.pe@gmail.com) Aldo Moura (aldomoura.pe@gmail.com) José Henrique (jose.henrique.lins@gmail.com) Fabrício Bispo (fabricio.bispo@gmail.com) responsável pela especificação das diretrizes gerais e pela homologação final do projeto. responsável pela especificação detalhada dos serviços a serem executados, acompanhamento das atividades executadas e homologação final do projeto. responsável pelo gerenciamento do projeto, estando sobre a sua responsabilidade a alocação dos recursos, definição das prioridades e a coordenação das interações com o cliente. responsável pela definição das tabelas, índices, views, constraints, triggers, stored procedures, schemas, ou outras construções específicas de banco de dados necessárias ao armazenamento, obtenção e exclusão de dados ou objetos persistentes. responsável pelo levantamento de requisitos, pela modelagem, especificação e implementação dos casos de uso, identificando as funcionalidades e delimitando as fronteiras do sistema, além de definir as responsabilidades, operações e atributos das classes e módulos do sistema, determinando como estes serão ajustados às necessidades do cliente responsável pelo teste dos componentes de acordo com os padrões estabelecidos para o projeto, de modo que possam ser integrados no sistema preexistente. No caso de houver a necessidade de implementação de componentes para a execução de testes específicos, o testador também é responsável pela implementação destes componentes para a execução de seus respectivos testes. Nesta subseção deve ser descrita a infra-estrutura utilizada para o desenvolvimento do projeto, incluindo equipamentos, software de apoio, materiais, e qualquer outro recurso que seja relevante ser registrado. SIGECO07_PlanoProjeto_2007_09_23 Página 9 de 12
5.2.1. Ferramentas Ferramenta Licenças IDE de Desenvolvimento Eclipse SDK 3.2.2 04 Linguagem de Programação PHP 5.0 04 Servidor de Aplicação Web Apache 2.2.4 04 Banco de Dados MySQL 4.0.20 04 Ferramenta de Banco de Dados MySQL Administrator 1.2.8 04 Ferramenta de Banco de Dados MySQL Query Browser 1.2.8 04 Ferramenta de Escritório BrOffice.org 2.0 04 Modelagem dos Dados DBDesigner 4.0.5.6 04 Modelagem UML ArgoUML 0.24 04 5.2.2. Equipamentos Descrição do equipamento Quantidade AMD Athlon 64 3000, ASUS K8N, 512 Mbytes, 80 Gbytes* 04 *Configuração recomendada. 5.2.3. Outros itens relevantes Não há. 5.3. Interfaces técnicas e organizacionais Esta subseção compreende informações sobre como serão realizadas as interações entre os grupos relacionados com o projeto, tais como reuniões com os usuários, equipe técnica, representantes legais do fornecedor e cliente, entre outros. 5.3.1. Reuniões da equipe técnica Estas reuniões serão realizadas semanalmente entre a equipe de desenvolvimento e o gerente do projeto, a fim de acompanhar o desempenho do projeto, em confronto com o plano estabelecido. 5.3.2. Reuniões de garantia da qualidade Estas reuniões são realizadas semanalmente entre a equipe de desenvolvimento e o gerente de projeto, a fim de garantir a conformidade das atividades e dos artefatos de software com os padrões, procedimentos e requisitos pré-estabelecidos. 5.3.3. Interface entre a equipe técnica e os usuários (cliente) A interface entre a equipe técnica e o cliente será realizada através da ferramenta Moodle disponibilizada pelo cliente, para a realização do levantamento dos requisitos do sistema e validação dos componentes desenvolvidos. 5.4. Controle de documentos e dados Os artefatos produzidos no âmbito do projeto serão controlados pelo padrão de nomeação correspondente ao modelo de cada artefato, e serão armazenados conforme a estrutura de diretórios especificada na seção 7. SIGECO07_PlanoProjeto_2007_09_23 Página 10 de 12
5.5. Treinamento Os colaboradores envolvidos no desenvolvimento do projeto deverão ser capacitados no processo de desenvolvimento e na arquitetura empregada. 6. ANÁLISE DE RISCOS Esta seção compreende um plano de gerência de riscos potenciais para o desenvolvimento do projeto, incluindo análise de riscos, possíveis dependências e problemas associados com o desenvolvimento, que possam comprometer a qualidade do produto final. Risco Probabilidade Impacto P x I RS001 Comunicação 1 5 5 RS002 Conhecimento do negócio 5 5 25 RS001 Comunicação Estratégia de contenção Realização de reuniões semanais entre os membros da equipe técnica. Estratégia de contingência Reduzir o intervalo das reuniões entre os membros da equipes técnica. Disparar plano de contingência Cronograma inicial do projeto atrasado em mais do que 07 dias. RS001 Conhecimento do Negócio Estratégia de contenção Realização de reuniões virtuais entre a equipe técnica e o cliente. Estratégia de contingência Solicitar que ao cliente um detalhamento mais preciso sobre o produto a ser desenvolvido. Disparar plano de contingência Componente refeito mais do que três vezes seguidas. 7. ARMAZENAMENTO, CÓPIA, RECUPERAÇÃO E PRESERVAÇÃO A estrutura de diretórios utilizada para o armazenamento dos artefatos produzidos no desenvolvimento do projeto será composta pela seguinte árvore de diretórios: SIGECO07 Diretório raiz do projeto cliente documentos fornecidos pelo cliente construcao artefatos de codificação do projeto base arquivos-fonte referentes ao modelo (Model) css estilos utilizados na visualização gui arquivos-fontes referentes a visualização (View) imgs imagens utilizadas na visualização javascript scrips utilizados na visualização sql arquivos-fontes referentes ao acesso as base de dados util arquivos-fontes refentes ao controle (Control) SIGECO07_PlanoProjeto_2007_09_23 Página 11 de 12
elaboracao artefatos de análise e design do projeto arquitetura especificação da arquitetura do projeto database modelo entidade/relacionamento teste plano de testes do projeto gerencia documentos administrativos do projeto atas atas de reuniões projeto plano de projeto iniciacao requisitos especificação de requisitos do projeto usecases especificação dos casos de uso do projeto transicao homologação homologação do projeto 8. CRONOGRAMA WBS Atividade Duração Início Fim 1 SIGECO07 37 31/08/2007 06/10/2007 1.1 Iniciação 09 31/08/2007 08/09/2007 1.1.1 Revisão da Especificação de Requisitos 04 31/08/2007 03/09/2007 1.1.2 Revisão da Especificação dos Casos de Uso 05 04/09/2007 08/09/2007 1.1.3 Elaboração do Plano de Projeto 09 31/08/2007 08/09/2007 1.2 Elaboração 07 09/09/2007 15/09/2007 1.2.1 Elaboração da Arquitetura do Sistema 07 09/09/2007 15/09/2007 1.2.2 Elaboração da Base de Dados 07 09/09/2007 15/09/2007 1.2.3 Elaboração da Interface Gráfica do Sistema 07 09/09/2007 15/09/2007 1.3 Construção 19 16/09/2007 04/10/2007 1.3.1 Gerência de Departamentos 10 16/09/2007 25/09/2007 1.3.2 Gerência de Funcionários 10 16/09/2007 25/09/2007 1.3.3 Gerência de Sistema 09 25/09/2007 04/10/2007 1.3.4 Gerência de Movimentações 09 25/09/2007 04/10/2007 1.3.5 Relatórios do Sistema 09 25/09/2007 04/10/2007 1.4 Transição 02 05/10/2007 06/10/2007 1.4.1 Homologação do Sistema 02 05/10/2007 06/10/2007 9. REFERÊNCIAS Não há. SIGECO07_PlanoProjeto_2007_09_23 Página 12 de 12