Plano de Projeto B.T.I. Corporation Sistema Gerente Fisio Plano de Projeto SG Fisio Versão 1.1
Histórico de Revisões Data Versão Descrição Autor 28/08/2009 1.0 Descrição inicial do plano de projeto - Bruno Sandres - Daniel Costa - Leandro Aguiar - Marcelo Frota 03/09/2009 1.1 Revisão da alocação de recursos humanos e dos riscos - Bruno Sandres - Daniel Costa - Leandro Aguiar - Marcelo Frota B. T. I. C o r p o r a t i o n Página 2 de 16
Conteúdo 1. Objetivos 4 2. Escopo 5 3. Referências 6 4. Fases do plano 4.1. Concepção 4.2. Elaboração 4.3. Construção 4.4. Transição 5. Cronograma 9 6. Riscos 6.1. Problemas pessoais 6.2. Planejamento prematuro do cronograma 6.3. Infra-estrutura 6.4. Competências técnicas 6.5. Erros e bugs 7. Plano de recursos 7.1. Alocação de recursos humanos 7.2. Alocação de recursos de software 7.3. Alocação de recursos de hardware 7.4. Infra-estrutura 7.5. Treinamento dos desenvolvedores 8. Custo 16 7 7 7 8 8 10 10 10 11 11 12 13 13 14 15 15 15 B. T. I. C o r p o r a t i o n Página 3 de 16
1. Objetivos O presente documento tem como objetivos detalhar todo o processo de desenvolvimento, mapear todo o andamento almejado pela equipe e estruturar todo o esqueleto programático do projeto do software. Através deste, estarão fincadas bases como cronograma, alocação de tarefas e recursos, além de avaliação de riscos e necessidades existentes na concepção do mesmo. Com estas informações, torna-se simplificada e padronizada a interação de todos os stakeholders. Além disso, o gerenciamento pode ser feito de forma documentada, facilitando, assim, acompanhamentos de progresso e prazo por parte da equipe de desenvolvimento. B. T. I. C o r p o r a t i o n Página 4 de 16
2. Escopo O plano de projeto descreverá o desenvolvimento de um sistema gerente para a clínica de fisioterapia Forma Fisio & Pilates. A rotina de atividades da clínica envolve marcação de consultas e compromissos, cadastro de pacientes, emissão de prontuários (avaliação, progresso, alta), comprovantes e registro de caixa. Atualmente todo este trabalho é realizado de forma manual, portanto, a implantação de um sistema capaz de gerenciar todas estas atividades visa organizar e padronizar a excessiva quantidade de informação existente, centralizando-a numa estrutura acessível aos responsáveis pela gerência do estabelecimento, garantindo, assim, maior consistência nos dados. Além de automatizar os processos manuais tão burocráticos, o sistema provê conforto através da mobilidade, segurança na manipulação de informações e transparência no uso do programa. A partir dele será possível a obtenção de relatórios de pacientes, prontuários, compromissos agendados e livro caixa do estabelecimento. B. T. I. C o r p o r a t i o n Página 5 de 16
3. Referências 1. SOMMERVILLE, Ian. Engenharia de Software. 8ª ed. São Paulo, Editora Pearson Addison-Wesley, 2007 2. PÁDUA, Wilson de, Engenharia de Software, 2ª edição, LTC, 2004 3. Página da disciplina Engenharia de Software e Sistemas http://www.cin.ufpe.br/~if682 B. T. I. C o r p o r a t i o n Página 6 de 16
4. Fases do plano Seguindo a abordagem iterativa e incremental, o desenvolvimento será subdivido em partes, as quais serão realizadas em ciclos conforme a ilustração: 4.1. Concepção Fase inicial do desenvolvimento do projeto que acontece apenas na primeira iteração. Aqui são definidas as diretrizes do desenvolvimento do sistema, como o problema a ser resolvido, o escopo do projeto, os recursos necessários e os custos envolvidos. Outro fator definido na concepção é a divisão de tarefas entre os membros da equipe, visando, assim, evitar erros e dinamizar o processo de desenvolvimento. 4.2. Elaboração Representada pelos requisitos e análise/arquitetura (no ciclo acima), é nesta parte da iteração que é feita a elicitação dos requisitos e a análise dos mesmos, para assim definir a arquitetura da aplicação além da definição de padrões a ser seguidos durante sua codificação. Através de reuniões com o cliente, os requisitos serão coletados e documentados. Um constante contato com o cliente se faz necessário para assegurar um entendimento correto e completo dos objetivos da aplicação. A partir dos requisitos obtidos, é possível expressar as funcionalidades do sistema através da arquitetura de casos de uso. B. T. I. C o r p o r a t i o n Página 7 de 16
4.3. Construção Corresponde a implementação, teste e avaliação. Nesta etapa alguns dos casos de uso previamente selecionados serão codificados em sua totalidade (desde interação com o usuário até operações envolvendo banco de dados). Com as estruturas implementadas, começa a fase de testes, visando identificação e correção de eventuais bugs para, assim, seguir à próxima etapa, a avaliação. Nesta é feito um retrospecto de todo o progresso alcançado por esta iteração, principalmente, comparando-o com a meta estabelecida no início da mesma. 4.4. Transição Esta é a última parte do ciclo, na qual, após a realização de todas as iterações, com o produto pronto e os testes realizados, é feita a entrega e implantação do sistema no ambiente do cliente. Após implantação, existe a manutenção e eventual atualização do sistema, para modificações que possam surgir e aumento da qualidade, usabilidade e aplicação do sistema. B. T. I. C o r p o r a t i o n Página 8 de 16
5. Cronograma B. T. I. C o r p o r a t i o n Página 9 de 16
6. Riscos 6.1. Problemas pessoais Magnitude Moderada Descrição do risco Problemas familiares, doença, conflitos, dificuldade de comunicação ou abandono de membros da equipe do projeto. Impactos Atraso na conclusão de tarefas. Indicadores Desmotivação da equipe; Aspereza entre os membros; Faltas frequentes às atividades. Estratégia de Mitigação e/ou Plano de Contingência Mitigação: Prover um ambiente saudável, acolhedor e motivador à equipe. Mitigação: Evitar sobrecarga de trabalho, para não estressar os membros da equipe. Contingência: Com o problema solucionado, realocar a tarefa afetada para horários extras. 6.2. Planejamento prematuro do cronograma Magnitude Alta Descrição do risco No início do projeto, por não possuir experiência suficiente sobre o nicho da aplicação, e devido à falta de tempo para uma análise detalhada quanto a requisitos e eventuais obstáculos na implementação dos mesmos, pode-se estimar prazos irreais, os quais acabam não sendo cumpridos comprometendo, assim, a estrutura do cronograma. Impactos Atraso no cronograma inicial; Aumento nos custos. Indicadores Adiamentos frequentes nos milestones do cronograma. B. T. I. C o r p o r a t i o n Página 10 de 16
Estratégia de Mitigação e/ou Plano de Contingência Mitigação: Tendo tempo livre, adiantar atividades futuras. Mitigação: Fundamentar o cronograma numa análise razoavelmente realista. Contingência: Replanejamento do cronograma. Contingência: Fazer uso de horas extras para compensar atrasos. 6.3. Infra-estrutura Magnitude Moderada Descrição do risco Problemas como pane em máquinas, indisponibilidade do servidor de testes, problemas no fornecimento de energia elétrica ou água, na infra-estrutura de transportes urbanos. Impactos Impossibilidade de progressão do projeto, implicando em atraso no cronograma. Indicadores Notícias. Estratégia de Mitigação e/ou Plano de Contingência Mitigação: Manter-se informado para evitar surpresas como greves, indisponibilidade de equipamento. Contingência: Dar início a etapas do projeto independentes do problema ocorrido. 6.4. Competências técnicas Magnitude Baixa Descrição do risco A improficiência ou imperícia dos integrantes da equipe sobre alguma ferramenta ou procedimentos necessários ao desenvolvimento de etapas do projeto. Impactos Atrasos devido à necessidade de treinamento; Aumento de custos. Indicadores Morosidade no desenvolvimento de tarefas. B. T. I. C o r p o r a t i o n Página 11 de 16
Estratégia de Mitigação e/ou Plano de Contingência Mitigação: Analisar constantemente o contexto, avaliando-o sobre as capacidades da equipe. Mitigação: Priorizar o uso de ferramentas familiares à equipe. Contingência: Divisão do trabalho conforme aptidões de cada integrante. Contingência: Em último caso, realizar treinamento nas ferramentas ou procedimentos não familiares. 6.5. Erros e bugs Magnitude Moderada Descrição do risco Caso em que um erro ou bug não consiga ser identificado e/ou corrigido. Impactos Atrasos na conclusão de tarefas; Estresse da equipe de desenvolvimento. Indicadores Módulos do sistema não obtêm sucesso quando submetidos a testes. Estratégia de Mitigação e/ou Plano de Contingência Mitigação: Realizar testes sobre cada módulo do sistema. Mitigação: Realizar testes de integração incremental. Contingência: Localizar e eliminar os erros. B. T. I. C o r p o r a t i o n Página 12 de 16
7. Plano de recursos 7.1. Alocação de recursos humanos A alocação dos membros da equipe visa explorar as habilidades e preferências pessoais de cada um, proporcionando, assim, um andamento coordenado e dinâmico do projeto. A equipe é formada por 4 (quatro) integrantes: Bruno Sandres Gerente de Projeto, Analista de Banco de Dados e Desenvolvedor Planejamento, acompanhamento e gerenciamento do projeto; Definição, Modelagem e Implementação do Banco de Dados; Acompanhamento dos Riscos e do Plano de Projeto; Deliberar sobre mudanças de estratégias dentro do desenvolvimento. Daniel Costa Arquiteto de Software, Desenvolvedor e Engenheiro de Testes Modelagem e definição dos diagramas e arquitetura do sistema; Documentação do Projeto; Modelagem e realização de testes da interface com usuário, de componentes independentes e integrados. Leandro Aguiar Analista de Sistemas, Desenvolvedor e Depurador Implementação da integração dos componentes; Depuração dos erros identificados no código do projeto; Análise de corretude e completude dos módulos desenvolvidos. Marcelo Frota Analista de Requisitos, Desenvolvedor e Engenheiro de Interfaces Desenvolvimento de protótipos de interface com o usuário; Análise do impacto das interfaces com usuários reais; Definição e Filtragem dos Requisitos do projeto. B. T. I. C o r p o r a t i o n Página 13 de 16
7.2. Alocação de recursos de software Listamos, a seguir, os softwares os quais nos auxiliarão no desenvolvimento do projeto. Enfatizando IDEs de Eclipse, ferramentas de edição de imagem (Photoshop), desenvolvimento de interface gráfica (Glade) e software de controle de versão (Subclipse). Desenvolvimento: Windows Vista 32 Bits Java JDK 1.6 ou superior Eclipse EE Ganymede SQL Developer Oracle 10g MySQL JUnit JasperReports HTML, PHP, CSS e JavaScript Adobe Photoshop CS3 ou superior Adobe Dreamweaver CS3 ou superior JUDE JDBC Glade 3 Gerenciamento: OpenProj Google Docs Google Calendar Gerência de Configuração: Controle de Versão - Subversion para Eclipse (Subclipse) B. T. I. C o r p o r a t i o n Página 14 de 16
7.3. Alocação de recursos de hardware São necessários 4 computadores com os softwares já citados e, no mínimo, as seguintes configurações: Pentium Core 2 Duo 1.8 GHz; 2 GB de RAM; HD com 8 GB de espaço livre. Tais recursos serão utilizados, por todos os responsáveis pelo projeto, para diversas tarefas tais como gerenciar, desenvolver, testar, entre outras. 7.4. Infra-estrutura Sala de reunião com mesas, quadro branco e computador; Sala para desenvolvimento contendo (pelo menos) 4 computadores; Servidor dedicado para controle de versões (Google Code). 7.5. Treinamento dos desenvolvedores Para que seja produzido um produto confiável, eficiente, com os requisitos determinados, de boa qualidade e sem atrasos; todos os responsáveis pelo mesmo devem ter domínio sobre as tecnologias utilizadas no desenvolvimento do software. Para isso, farão treinamento sobre os seguintes tópicos: Banco de Dados: Modelagem de Dados Banco de Dados Relacionais JDBC Interfaces Gráficas com XML: Glade 3 B. T. I. C o r p o r a t i o n Página 15 de 16
8. Custo Recurso Tipo Valor Padrão Hora Extra Bruno Sandres Trabalho R$ 10,00/h R$ 15,00/h Daniel Costa Trabalho R$ 10,00/h R$ 15,00/h Leandro Aguiar Trabalho R$ 10,00/h R$ 15,00/h Marcelo Frota Trabalho R$ 10,00/h R$ 15,00/h Alimentação Material R$ 2.250,00 Transporte Material R$ 1.200,00 Servidor Material R$ 500,00 Material de escritório Material R$ 150,00 Telefone Material R$ 200,00 Levando em consideração que, ao longo dos 4 meses, os desenvolvedores e o gerente passarão 300 horas (cada) desenvolvendo o projeto, portanto, o custo dos recursos humanos é de R$ 12.000,00. Somando-se a esse valor o custo dos recursos materiais, obtém-se um custo total de R$ 16.300,00. B. T. I. C o r p o r a t i o n Página 16 de 16