METODOLOGIA DE DESENVOLVIMENTO DE SISTEMAS - PDF
Igor Brezinski Branco
1 METODOLOGIA DE DESENVOLVIMENTO DE SISTEMAS Versão 1 MDS Metodologia de Desenvolvimento de Sistemas 1
2 Presidente INCRA Rolf Hackbart Diretor de Gestão Estratégica DE - INCRA Roberto Kiel Coordenador Geral de Tecnologia e Gestão da Informação DET - INCRA Francisco Marcelo Marques Lima Chefe de Divisão de Desenvolvimento e Manutenção de Sistemas DET-1 INCRA Marcelo de Paula Sampaio
3 HISTÓRICO DE REVISÕES Data Versão Descrição Autor 07/08/ Criação do documento Maria Rosa Matozo Adriano D angelo Marcelo Sampaio MDS Metodologia de Desenvolvimento de Sistemas 2
4 1. INTRODUÇÃO 4 2. FINALIDADE 4 3. PAPÉIS E RESPONSABILIDADES PAPÉIS 4 4. APRESENTAÇÃO DO MODELO DE PROCESSO DE SOFTWARE 9 5. FASES DE DESENVOLVIMENTO PRÉ-PROJETO - APROVAÇÃO PELO CTI FASE DE INICIAÇÃO FASE ELABORAÇÃO FASE DE CONTRUÇÃO FASE DE TRANSIÇÃO MANUTENÇÃO DE SISTEMAS REFERÊNCIAS ANEXOS ANEXO 1 FLUXO DE NOVA DEMANDA (PROJETO / MANUTENÇÃO) ANEXO 2 FLUXO DA FASE DE PRÉ-PROJETO ANEXO 3 FLUXO DE SOLICITAÇÃO DE PROJETO ANEXO 4 LISTA DE ARTEFATOS 27 MDS Metodologia de Desenvolvimento de Sistemas 3
5 1. INTRODUÇÃO Esta Metodologia de Desenvolvimento de Sistemas visa descrever e normalizar os processos de gerenciamento, desenvolvimento, manutenção e a contratação de sistemas de terceiros adotados pela DET Coordenação Geral de Tecnologia e Gestão da Informação do INCRA. O documento está subdividido em capítulos, fases e atividades do ciclo de vida de sistemas de informação, onde estão descritas as principais atividades, os responsáveis envolvidos em cada processo e os produtos a serem gerados. 2. FINALIDADE A finalidade desta metodologia é o de promover o aumento na eficiência e na eficácia da equipe técnica da DET / INCRA no gerenciamento e desenvolvimento de novos projetos ou desenvolvimento evolutivo de sistemas de informação, nos serviços de manutenção, corretiva e não corretiva de sistemas. 3. PAPÉIS E RESPONSABILIDADES 3.1 PAPÉIS Um papel define o comportamento e responsabilidades de um profissional ou grupo de profissionais que participam do desenvolvimento do projeto. O comportamento é representado através das atividades que cada papel deve desempenhar ao longo do projeto. As responsabilidades normalmente estão associadas aos artefatos que cada papel deve produzir e manter ao longo das atividades que realiza. Na prática, um mesmo papel pode ser desempenhado por mais de uma pessoa, assim como uma mesma pessoa pode assumir vários papéis ao longo do projeto. Gestor da Informação O gestor da Informação deve possuir um perfil gerencial na instituição, sendo o responsável pelo projeto e pelo acompanhamento do: Projeto ou sistema na área usuária; Firmar acordo de serviço com a área de desenvolvimento de sistemas; Fornecer subsídios para o desenvolvimento de sistemas; Participar das reuniões acordadas; Validar produtos elaborados no processo de desenvolvimento; Homologar os produtos finais. Usuário É a pessoa física cadastrada e habilitada nos sistemas para acesso às informações. São usuários dos sistemas informatizados do INCRA. MDS Metodologia de Desenvolvimento de Sistemas 4
6 Tem como responsabilidade: Acessar informações; Efetuar testes e treinamentos. Coordenador Geral de Tecnologia DET / INCRA Responsável pelo planejamento, coordenação, orientação, execução e avaliação do desenvolvimento das ações de informática no âmbito do INCRA. É de sua responsabilidade: Coordenar, supervisionar e propor atos normativos, manuais e procedimentos técnicos relativos à Tecnologia da Informação; Coordenar, supervisionar as áreas de desenvolvimento e manutenção de sistemas, infraestrutura de rede, comunicação de dados, voz e imagem e suporte técnico aos usuários; Interagir com os demais órgãos governamentais no sentido de promover o intercâmbio de conhecimentos e tecnologia; Elaborar proposta de plano de ação e proposta orçamentária anual dos recursos de informática; Chefe da Divisão DET-1 / INCRA Responsável por coordenar e controlar o processo de atendimento das demandas das unidades do INCRA. É de sua responsabilidade: Implantar e coordenar a execução dos processos e projetos de desenvolvimento, manutenção e aquisição de sistemas de informação, de acordo com os requisitos aprovados pelos gestores e demandas dos usuários do INCRA; Coordenar a definição da política de acesso aos sistemas de informação e aos sistemas gerenciadores de banco de dados, de modo a garantir a segurança das informações; Gerenciar os contratos de prestação de serviços relativos aos sistemas e controlar a qualidade dos produtos e serviços prestados; Promover a integração dos sistemas de informação do INCRA e garantir a disponibilidade de acesso às informações; Gerenciar o processo de atendimento das demandas das unidades do INCRA, no que se refere à manutenção corretiva ou evolutiva nos sistemas de informação e banco de dados corporativos. Chefe da Divisão de Infra-Estrutura de rede e Comunicação de Dados DET-2 / INCRA O responsável pela infra-estrutura deverá conhecer a estrutura de servidores e de comunicação existente na autarquia, sendo responsável pelas seguintes atribuições: Definir as políticas e normas de segurança de utilização dos serviços de rede e comunicação de dados do INCRA; Planejar e implantar sistemas de cópias de segurança (backups) e restauração de dados corporativos; Garantir a segurança das informações trafegadas no ambiente de redes do INCRA; Atuar na prospecção de novas tecnologias aderentes as necessidades da DET-2 / INCRA; MDS Metodologia de Desenvolvimento de Sistemas 5
7 Gerenciar os contratos de prestação de serviços e controlar a qualidade dos produtos ou serviços relacionados à infra-estrutura de rede no âmbito da sede do INCRA; Gerente de Projetos Responsável pelo planejamento, acompanhamento, controle e responsabilidade pela entrega de todos os resultados esperados do projeto. É de sua responsabilidade: Planejar, acompanhar, controlar e executar os projetos em conformidade com a Metodologia de Desenvolvimento de Sistemas do INCRA; Elaborar o cronograma, orçamento e plano de trabalho para o projeto; Elaborar e controlar o escopo do projeto (funcionalidades macro do sistema) junto ao cliente; Gerenciar a análise de riscos riscos de desenvolvimento, disponibilidade de recursos e tecnologia; Gerenciar e controlar as mudanças do projeto; Analista de Requisitos É o responsável por atividades como capturar as regras de negócio, os requisitos de sistema, extrair, validar e manter um conjunto de documentos de requisitos conforme as necessidades dos clientes do INCRA, com o objetivo de subsidiar a construção do produto de sistema. É de sua responsabilidade: Efetuar o levantamento de informações, junto ao cliente, e demais interessados, para geração dos produtos de levantamento de requisitos; Elaborar os documentos do projeto sob sua responsabilidade, conforme os prazos estabelecidos e em conformidade com a Metodologia de Desenvolvimento de Sistemas; Validar junto ao cliente e gerente de projetos todos os documentos de requisitos gerados sob sua responsabilidade; Analista de Sistemas Responsável por capturar as regras de negócio, os requisitos de sistema e documentos de apoio, analisá-los e especificá-los em uma linguagem de modelagem de TI. É de sua responsabilidade: Conduzir a construção dos produtos do projeto conforme os prazos estabelecidos; Executar todas as atividades necessárias para geração dos produtos, de acordo com o planejamento e a Metodologia de Desenvolvimento de Sistemas; Apoiar o gestor técnico em relação aos aspectos técnicos e funcionais do projeto ou manutenção; Entregar os produtos gerados e testados para o gestor técnico; Informar ao gestor técnico o andamento e a evolução de suas atividades no projeto ou manutenção. Analista de Testes É o responsável pela garantia da qualidade dos componentes produzidos por meio da MDS Metodologia de Desenvolvimento de Sistemas 6
8 verificação de evidência de testes e utilização de técnicas especializadas em testes de programas e sistemas. É de sua responsabilidade: Garantir a qualidade dos componentes gerados quanto às especificações, padrões definidos e Metodologia de Desenvolvimento de Sistemas; Analisar a documentação do projeto, descrita na solicitação de teste, para a elaboração dos roteiros de testes; Identificar e registrar os erros existentes nos componentes e no Plano de Teste produzido; Apoiar os executores de testes quanto às técnicas de testes; Administrador de Banco de Dados Responsável pela manutenção do repositório e funcionamento do banco de dados. É de sua responsabilidade: Criação, avaliação, gerenciamento e manutenção das estruturas de armazenamento nos bancos de dados (arquivos, tabelas, índices, procedures, views); Garantir o bom funcionamento em todos os ambientes (desenvolvimento, teste, homologação, produção); Determinar e executar, em conjunto com a produção, os procedimentos (backup/recovery, runstats/rebind) para os arquivos e tabelas dos sistemas; Executar as normas de acesso às informações definidas (habilitação de acesso a dados, arquivos, bancos de dados, tabelas); Manter a integridade dos bancos de dados utilizados no INCRA. Administrador de dados É o responsável, juntamente com os desenvolvedores, pela modelagem das funcionalidades levantadas nos sistemas. É o responsável pelo gerenciamento dos modelos de negócios. Determina padrões de nomenclaturas para o banco de dados e seus atributos (tabela, view, procedure e campos). É de sua responsabilidade: Gerenciar todos os modelos de negócios; Criar e manter os modelos de dados solicitados pela Área de Desenvolvimento, em Conformidade com os padrões, normalizações e desempenho; Responder pela arquitetura e estratégia de distribuição de dados; Apoiar a equipe do projeto na definição da arquitetura e estratégia de distribuição de Dados do projeto de acordo as necessidades do cliente e padrões estipulados; Disseminar informações para efeito de reutilização de dados; Manter dicionário de dados. Arquiteto Responsável pela definição dos componentes e da infra-estrutura da aplicação baseado na análise do sistema. MDS Metodologia de Desenvolvimento de Sistemas 7
9 Analista de Produção É o responsável pelo planejamento, execução e acompanhamento das demandas destinadas à área de Produção. Atua também no desenvolvimento de projetos de infra-estrutura de serviços e aplicações. É de sua responsabilidade: Priorizar e acompanhar a execução das demandas destinadas à área de Produção; Garantir a disponibilidade e a continuidade dos serviços em Produção; Garantir a segurança e salvaguarda dos dados; Analisar freqüentemente os riscos à estabilidade das aplicações; Analisar o impacto de mudanças ao ambiente em produção; Desenvolvedor Responsável pela construção e testes unitários dos programas e componentes, de acordo com as especificações recebidas. É de sua responsabilidade: Construir unidades de implementação de acordo com as especificações e prazos estabelecidos; Elaborar massa de testes conforme o Plano de Teste ou complementação a este, para os componentes construídos; Efetuar teste unitário do componente com a massa de testes elaborada; Documentar os resultados dos testes; Criar e testar código de acordo com o padrão de programação estabelecido na DET-1. MDS Metodologia de Desenvolvimento de Sistemas 8
10 4. APRESENTAÇÃO DO MODELO DE PROCESSO DE SOFTWARE Um modelo de processo de desenvolvimento de software, ou simplesmente modelo de processo, pode ser visto como uma representação, ou abstração dos objetos e atividades envolvidas no processo de software. Além disso, oferece uma forma mais abrangente e fácil de representar o gerenciamento de processo de software e conseqüentemente o progresso do projeto. O modelo apresentado é baseado no processo unificado seguindo os conceitos de desenvolvimento evolutivo e incremental e nas práticas de gerência de projetos do Project Management Institute PMI preconizadas no Project Management Body of knowledge PMBOK. O modelo em questão é composto pelas fases de Iniciação, Elaboração, Construção e Transição e pelas disciplinas de Gerência de Projetos, Requisitos, Análise / Modelagem, Implementação e Teste. A figura abaixo ilustra as fases e suas disciplinas assim como os marcos relacionados a cada fase. As disciplinas apresentadas em cada fase representam visualmente a intensidade de sua atuação em todas suas iterações. O pré-projeto que consiste da aprovação pelo Comitê de Tecnologia da Informação da demanda solicitada, constante no item 5.1, é uma fase que antecede a este modelo de processo de software, por isso não constando na figura abaixo. FASES MARCO Escopo do projeto aprovado Arquitetura validada Sistema codificado e testado Projeto aceito pelo demandante MDS Metodologia de Desenvolvimento de Sistemas 9
11 5. FASES DE DESENVOLVIMENTO 5.1 PRÉ-PROJETO - APROVAÇÃO PELO CTI Fluxo da Fase de Pré-Projeto (Modelo anexo 1) Nesta pré-fase deverá ter como entrada o formulário de demanda com a solicitação do cliente para desenvolvimento de novo sistema. É realizada uma ou mais reuniões com o requisitante para levantar os dados necessários para a elaboração do Plano de Sustentação, Estratégia da Contratação, Análise de Risco e Análise de Viabilidade da Contratação, com o objetivo de apresentar subsídios técnicos e financeiros para a tomada de decisão pelo Comitê de Tecnologia da Informação (CTI). Nesta pré-fase ocorrerá a solicitação à Contratada de uma proposta de projeto que, quando aprovada, irá gerar a Ordem de Serviço para que seja dado início ao desenvolvimento do projeto. Marco Ordem de Serviço encaminhada à contratada para início do projeto. Etapas e atores envolvidos nesta fase: ETAPAS DESCRIÇÃO ATORES ENVOLVIDOS Iniciar Solicitação de Demanda Nesta etapa o demandante encaminhará à DET formulário de solicitação de demanda. A DET recebe e encaminha a solicitação à DET-1 para análise e estudo preliminar de viabilidade do desenvolvimento da nova demanda. Demandante Coordenador DET Chefia DET-1 Gerente de Projetos MDS Metodologia de Desenvolvimento de Sistemas 10
12 Reuniões com os gestores serão realizadas para o estudo da viabilidade. Analisar recebimento da solicitação de demanda pelo gestor do sistema; Realizar reuniões de levantamento inicial junto aos gestores; Realizar o registro inicial da demanda nas ferramentas de controle e gestão da DET. Analista de requisitos Gerar Documentação de Viabilidade Nesta etapa, com base nos levantamentos preliminares realizados com os gestores do sistema serão elaborados os documentos a serem encaminhados ao Comitê de Tecnologia da Informação (CTI). Elaborar o Plano de Sustentação (PS); Elaborar o documento Estratégia de Contratação (EC); Elaborar o documento Análise de Risco (AR); Elaborar o documento de Análise de Viabilidade da Contratação (AVC); Contagem estimada do custo do projeto; Gerente de Projetos Chefia DET-1 Analista de Métrica Aprovação pelo Comitê de Tecnologia da Informação (CTI) O Comitê de posse das documentações de viabilidade recebidas irá analisar e aprovar, se estiver em acordo. Analisar documentação recebida; Se em acordo, emitir o Termo de Aprovação; Encaminhar à DET. CTI Efetivação do Início do Projeto Nesta etapa, após aprovação pelo CTI, a DET encaminhará à Contratante solicitação de uma Proposta de Projeto. Estando a proposta aprovada deverá ser emitida uma Ordem de Serviço à Contratante para que seja dado início ao desenvolvimento do sistema. Emitir solicitação de Proposta de Projeto à Contratada; Receber e aprovar a Proposta de Projeto; Emitir Ordem de Serviço à Contratada. Coordenação da DET Chefia da DET Gerente de Projetos MDS Metodologia de Desenvolvimento de Sistemas 11
13 Artefatos utilizados ARTEFATOS TEMPLATE (TP) DESCRIÇÃO Formulário de Demanda TP Sigla Projeto FD.doc Constará um resumo com os dados principais para a solicitação de desenvolvimento pelo cliente. Plano de Sustentação PS Estratégia da Contratação EC TP Sigla Projeto PS.doc Ex: SISPAD - PS.doc TP Sigla Projeto EC.doc Descrever os subsídios para a tomada de decisão pelo CTI, quanto a controle de acesso, segurança, recursos materiais e humanos, documentações necessárias, transição, entre outros. Descrever os subsídios para a tomada de decisão pelo CTI, quanto à: tipo de serviço, termos contratuais, estimativa do volume de serviço, regras para aplicação de multas, garantias, cronograma, responsabilidades contratuais, entre outros. Análise de Risco AR TP Sigla Projeto AR.doc Descrever os subsídios para a tomada de decisão pelo CTI, quanto aos riscos que poderá afetar a contratação dos serviços. Análise de Viabilidade de Contratação AVC TP Sigla Projeto AVC.doc Proposta de Projeto TP Sigla do Projeto Proposta de Projeto.doc Ordem de Serviço Ata de Reunião TP Sigla do Projeto Ordem de Serviço.doc TP Sigla Projeto Ata de Reunião.doc Descrever os subsídios para a tomada de decisão pelo CTI, quanto à: avaliação da necessidade, explicitação da motivação, especificação de requisitos, prazo, segurança, entre outros Descrever os subsídios para manter um acordo de serviço entre contratada e contratante. Descreve os dados necessários para a solicitação de início do desenvolvimento da demanda junto à contratada e aprovação por ambos (Contratante e Contratada). Descrever os assuntos tratados na reunião inicial, com assinatura dos participantes. MDS Metodologia de Desenvolvimento de Sistemas 12
14 5.2 FASE DE INICIAÇÃO Fluxo da Fase de Iniciação Esta fase marca o início do projeto de desenvolvimento, após aprovação pelo Comitê de Tecnologia da Informação da documentação de viabilidade técnica. O objetivo da fase de Iniciação é o estabelecimento de um acordo formal, entre a equipe de desenvolvimento e usuários do projeto para o escopo do produto a ser desenvolvido. A partir da viabilização a equipe do projeto dá início ao detalhamento do escopo do produto. Ao término de cada fase do ciclo de vida do projeto deverá haver uma recontagem dos pontos de função, visando adequar a estimativa de complexidade do software fabricado ao aumento de conhecimento do processo de negócio envolvido. Deverá haver uma verificação contínua de qualidade de produto e de processo no decorrer de todas as fases. Marco Escopo do projeto aprovado Etapas e atores envolvidos nesta fase: ETAPAS DESCRIÇÃO ATORES ENVOLVIDOS Preparar Ambiente do Projeto Nesta etapa deverá ser criado o repositório de armazenamento junto ao SVN e atualizar as ferramentas de gestão e controle do projeto. Criar repositório de armazenamento junto ao SVN Analista de sistemas Gerente de Projetos MDS Metodologia de Desenvolvimento de Sistemas 13
15 Definir Escopo do Projeto Identificar Casos de Uso Atualizar ferramentas de gestão e controle do projeto Com base nas documentações aprovadas na pré- Projeto e reuniões complementares com o gestor deverão ser identificados os requisitos do sistema. Identificar requisitos Elaborar o Visão Elaborar o Plano de Desenvolvimento de Software Elaborar Plano de Iteração Com base nas informações levantadas referentes aos requisitos funcionais, não-funcionais, regras de negócio, riscos e demais dados necessários serão identificados os casos de uso do sistema. Elaborar a Especificação de Requisitos Preparar protótipo não-funcional (detalhar as telas do sistema e suas regras de apresentação) Gerente de Projetos Analista de requisitos Analista de sistemas Gestor do Sistema Analista de requisitos Analista de sistemas Definir Arquitetura Inicial Nesta etapa é definida uma arquitetura inicial do sistema. Será definido o grupo inicial de elementos significantes para serem utilizados como base de análise a fim de identificar as realizações de casos de uso. Elaborar o Documento de Arquitetura do projeto. Analista de requisitos Arquiteto Recontagem dos Pontos de Função Ao término de cada fase do ciclo de vida do projeto deverá haver uma recontagem dos pontos de função, visando adequar a estimativa de complexidade do software fabricado ao aumento de conhecimento do processo de negócio envolvido. Analista de Métrica Gerenciar Iteração Essa atividade é realizada durante todo o ciclo de vida do projeto. A meta desta atividade consiste em identificar riscos e gerenciar as mudanças de forma que possam ser atenuadas, estabelecendo metas da iteração e apoiando a equipe de desenvolvimento para alcançar essas metas. Gerenciar as mudanças ocorridas Gerenciar os riscos detectados Atualizar o Plano de Iteração Gerente de Projetos MDS Metodologia de Desenvolvimento de Sistemas 14
16 Artefatos utilizados ARTEFATOS Especificação de Requisitos Especificação de Telas TEMPLATE (TP) TP Sigla Projeto Especificação de requisitos TP - Sigla Projeto ET - Nome do Caso de Uso.doc DESCRIÇÃO Visa detalhar a descrição dos requisitos funcionais, aplicáveis ao projeto como um todo e requisitos não funcionais, que descrevem atributos que o sistema deve possuir ou restrições sob as quais ele deve operar. Descreve em detalhes todas as ações, controles, regras e exceções relacionadas às funcionalidades representadas pelas telas. Visão TP - Sigla Projeto Visão.doc Visa fornecer uma visão geral de todo o projeto, como: finalidade, escopo, resumo do negócio, usuários, entre outros Plano de Projeto de Software TP - Sigla Projeto Plano de Projeto de Software.doc Define todas as ações do projeto, para que o mesmo possa atender as necessidades do cliente com qualidade, tempo e custos previstos. Plano de Iteração - PI TP - Sigla Projeto PI.doc Consiste em uma decomposição funcional do sistema baseada nas funcionalidades que queremos disponibilizar. Documento de Arquitetura Relatório de Controle de Mudanças Ata de Reunião TP Sigla do Projeto Documento de Arquitetura.doc TP Sigla do Projeto Relatório de Controle de Mudança.doc TP Sigla Projeto Ata de Reunião.doc Este artefato será atualizado em todas as fases do projeto. Este documento descreve uma visão inicial da arquitetura do sistema, empregando diferentes visões arquiteturais para abordar diferentes aspectos do sistema. Descreve detalhadamente a solicitação da mudança, enfatizando os motivos, condições, restrições e premissas para a implementação das mudanças e aprovações. Este artefato será utilizado em todas as fases do projeto. Descrever os assuntos tratados na reunião, com assinatura dos participantes. Este artefato será utilizado em todas as fases do projeto. MDS Metodologia de Desenvolvimento de Sistemas 15
17 5.3 FASE ELABORAÇÃO Fluxo da Fase de Elaboração Segunda fase do processo de desenvolvimento de sistemas, cujo objetivo é eliminar os principais riscos e estabelecer uma arquitetura estável a partir da qual o sistema poderá ser construído. Esta fase envolve uma análise detalhada sobre as necessidades e problemas gerais do projeto e a definição de como o sistema será desenvolvido em termos tecnológicos, considerando os requisitos, limitações e restrições identificadas durante a fase de Iniciação. O objetivo da fase de Elaboração é o estabelecimento e validação de uma arquitetura de hardware e software que suporte de forma adequada os requisitos funcionais e não-funcionais do sistema. Marco Arquitetura validada. Etapas e atores envolvidos nesta fase: ETAPAS DESCRIÇÃO ATORES ENVOLVIDOS Elaborar Casos de Uso Com base nos dados levantados serão elaborados os artefatos de Especificação de Caso de Uso, contendo as regras de negócio, fluxos de evento, glossário, Diagrama de Caso de Uso e Diagrama de Atividades. Especificar os Casos de Uso Analista de requisitos Refinar Requisitos Nesta etapa deve ser verificado se algum requisito sofreu alteração, procedendo no refinamento das especificações de caso de uso e Analista de requisitos MDS Metodologia de Desenvolvimento de Sistemas 16
18 Projetar Arquitetura Modelagem de Banco de Dados Planejar Testes Recontagem dos Pontos de Função do diagrama de caso de uso. Refinar as especificações de caso de uso; Refinar o diagrama de caso de uso Refinar a Especificação de requisitos Nesta etapa o arquiteto analisa as restrições arquitetônicas, identifica os recursos disponíveis para construir o sistema, define como o sistema será estruturado e identifica as primeiras abstrações e mecanismos que devem ser fornecidas pela arquitetura. Refinar o documento de Arquitetura Refinar os protótipos não-funcionais Esta atividade tem como objetivo a elaboração do projeto de banco de dados, mais especificamente dos elementos necessários para suportar a implementação dos cenários de casos de uso selecionados para validação da arquitetura do sistema. Gerar o modelo conceitual lógico Gerar o modelo conceitual físico Nesta etapa o Plano de Testes é elaborado com vistas a definir as abordagens de testes, identificando o nível, tipo e técnicas de testes a serem aplicadas a cada produto ou componente do produto. Elaborar o Plano de Testes Ao término de cada fase do ciclo de vida do projeto deverá haver uma recontagem dos pontos de função, visando adequar a estimativa de complexidade do software fabricado ao aumento de conhecimento do processo de negócio envolvido. Arquiteto Analista de requisitos DBA Arquiteto Analista de testes Analista de Métrica Gerenciar Iteração Essa atividade é realizada durante todo o ciclo de vida do projeto. A meta desta atividade consiste em identificar riscos e gerenciar as mudanças de forma que possam ser atenuadas, estabelecendo metas da iteração e apoiando a equipe de desenvolvimento para alcançar essas metas. Gerenciar as mudanças ocorridas Gerente de Projetos MDS Metodologia de Desenvolvimento de Sistemas 17
19 Gerenciar os riscos detectados Atualizar o Plano de Iteração Artefatos utilizados ARTEFATOS Especificação de Caso de Uso TEMPLATE (TP) TP Sigla Projeto UCS - Nome do Caso de Uso.doc DESCRIÇÃO Visa detalhar as atividades a ser executadas por intermédio da descrição dos tópicos do fluxo principal, fluxo alternativo, regras de negócio, glossário, diagrama de casos de uso, diagrama de atividades. Modelo de Dados Plano de Testes TP Sigla do Projeto Modelo de Dados Físico TP Sigla do Projeto Plano de Testes.doc Detalha a nomenclatura dos objetos do Modelo de Dados (Tabelas, Views, Stored Procedures, Trigger, Constraints, etc). Define os objetivos gerais esperados e as expectativas do projeto de testes. Neste documento são identificados os itens que serão e os que não serão testados, a abordagem dos testes e as necessidades ambientais. MDS Metodologia de Desenvolvimento de Sistemas 18
20 5.4 FASE DE CONTRUÇÃO Fluxo da Fase de Construção Na fase de construção ocorre o processo de desenvolvimento de sistemas em que um produto é desenvolvido de maneira iterativa até que esteja pronto para ser avaliado pelo Gestor da Informação. Ocorrerá o desenvolvimento do código fonte, componentes, consultas e chamadas (views/stored procedures), o desenvolvedor efetuará os testes de componentes e integração, conforme especificados na documentação do sistema e seguindo os padrões da DET/INCRA. Essa fase exige a integração entre desenvolvedor, analista de sistemas, analista de requisitos, analista de testes e administrador de dados para a análise, construção e testes do sistema. Marco Sistema codificado e testado. Etapas e atores envolvidos nesta fase: ETAPAS DESCRIÇÃO ATORES ENVOLVIDOS Identificar / Refinar Requisitos Nesta etapa deve ser verificado se algum requisito sofreu alteração, procedendo no refinamento das especificações de caso de uso e do diagrama de caso de uso. Analista de requisitos MDS Metodologia de Desenvolvimento de Sistemas 19
21 Construção de Bases de Dados Refinar as especificações de caso de uso; Refinar o diagrama de caso de uso Refinar a Especificação de requisitos Nesta etapa serão criadas as tabelas, colunas e atributos para cada entidade identificada na modelagem de banco de dados. Implementação de modelagem de banco Implementação de procedures DBA Implementação dos Casos de Uso Esta atividade tem como objetivo a geração de códigos-fontes para os diversos elementos componentes do sistema, visando uma versão operacional do sistema. Implementação dos requisitos funcionais Implementação dos requisitos não-funcionais Implementação da arquitetura Elaborar o Plano de Implementação/Integração Elaborar Lista de Verificação de Funcionalidade / Integridade Desenvolvedores Implementação de Interfaces De posse do protótipo navegável de interface, dos diagramas de interação de usuário e da definição dos serviços (interface dos componentes), o desenvolvedor deverá realizar a codificação das interfaces (telas), integrando as mesmas aos componentes que foram codificados. Codificação de telas Implementação de protótipos Verificação das funcionalidade/integridades dos protótipos Disponibilizar o Build para teste Desenvolvedores Implementação dos Casos de Teste Após a codificação, o produto gerado (sistema ou parte do mesmo) deverá ser testado com a finalidade de encontrar possíveis erros de codificação ou mesmo de interpretação da documentação de análise e de projeto. De posse da documentação de Análise e de Projeto, os analistas de sistemas responsáveis pelos testes da aplicação deverão verificar se o produto gerado atende aos requisitos de forma adequada. Analista de teste MDS Metodologia de Desenvolvimento de Sistemas 20
22 Elaborar Roteiros de Testes Realizar testes Elaborar Relatório de Testes Recontagem dos Pontos de Função Ao término de cada fase do ciclo de vida do projeto deverá haver uma recontagem dos pontos de função, visando adequar a estimativa de complexidade do software fabricado ao aumento de conhecimento do processo de negócio envolvido. Analista de Métrica Gerenciar Iteração Essa atividade é realizada durante todo o ciclo de vida do projeto. A meta desta atividade consiste em identificar riscos e gerenciar as mudanças de forma que possam ser atenuadas, estabelecendo metas da iteração e apoiando a equipe de desenvolvimento para alcançar essas metas. Gerenciar as mudanças ocorridas Gerenciar os riscos detectados Atualizar o Plano de Iteração Gerente de Projetos Artefatos utilizados ARTEFATOS Roteiro de Teste Relatório de Resultado de Testes Lista de Verificação de Funcionalidade/Integridade Plano de implementação / Integração TEMPLATE (TP) TP Sigla Projeto Roteiro de Teste Nome do Caso de Uso.doc TP Sigla Projeto Resultado de Teste Nome do Caso de Uso.doc LV - Sigla Projeto Verificação de Funcionalidade.doc TP Sigla Projeto Plano de Implementação DESCRIÇÃO Documento que reúne um grupo de casos de testes que devem ser executados em uma seqüência lógica para cada Caso de Uso. Reúne os casos de teste que foram executados e não produziram o resultado esperado. Serve de base para que o desenvolvedor verifique o que deve ser corrigido. Documento que tem como objetivo verificar se o componente possui as condições mínimas para ser liberado para a equipe de testes. Contém a organização e estilo do código e ambiente de integração MDS Metodologia de Desenvolvimento de Sistemas 21
23 5.5 FASE DE TRANSIÇÃO Fluxo da Fase de Transição Nesta fase o software é testado no geral, com todos os módulos integrados e então avaliado, para verificar se os requisitos foram atendidos. O foco da Fase de Transição é assegurar que o sistema esteja disponível para seus usuários finais, buscando a homologação junto ao cliente. Quando os objetivos da fase de Transição são alcançados, o projeto está pronto para ser encerrado. Três etapas são distintas nesta fase: 1. Homologação 2. Implantação 3. Encerramento Etapa de Homologação o sistema é aprovado internamente e posteriormente é encaminhado para a homologação pelo cliente. Etapa de Implantação consiste em publicar a aplicação em ambiente de produção. Etapa de Encerramento pode proceder após a liberação de uma iteração ou a homologação de todas as fases do projeto; Marco Projeto aceito pelo demandante. MDS Metodologia de Desenvolvimento de Sistemas 22
24 Etapas e atores envolvidos nesta fase: ETAPAS DESCRIÇÃO ATORES ENVOLVIDOS Homologação Sistema do Nesta etapa o projeto é aprovado internamente e, após, é encaminhado para a homologação pelo cliente. Esta homologação pode ocorrer por fase ou iteração ou no encerramento total de entrega de todas as fases do sistema. Emissão e envio ao cliente do Termo de Homologação / Aceite Elaborar os manuais de Ajuda e do Sistema Gerente de Projetos Chefia da DET-1 Analista de sistemas Cliente Implantação Sistema do Nesta etapa será planejada de que forma o sistema deverá ser implantado, como e quando serão realizados os treinamentos aos usuários. Elaborar o Plano de Implantação Implantar o sistema no ambiente de produção Treinar os usuários do sistema DBA Analista de produção Analista de sistemas Gerente de projetos Gerenciar Iteração Encerramento Essa atividade é realizada durante todo o ciclo de vida do projeto. A meta desta atividade consiste em identificar riscos e gerenciar as mudanças de forma que possam ser atenuadas, estabelecendo metas da iteração e apoiando a equipe de desenvolvimento para alcançar essas metas. Gerenciar as mudanças ocorridas Gerenciar os riscos detectados Atualizar o Plano de Iteração A etapa de encerramento pode ocorrer por fase ou iteração do projeto ou quando todos os produtos pertencentes ao escopo do projeto forem homologados. O Gerente de Projetos elabora o Termo de Encerramento do Projeto e o envia para aprovação do Cliente, identificando todos os produtos e fases homologadas, de acordo com os Termos de Homologação de Produtos. Obter aprovação do Termo de Encerramento do Projeto; Realizar uma nova contagem detalhada e obter a aprovação do Cliente; Gerente de Projetos Gerente de Projetos Chefe da DET-1 Coordenador da DET Cliente Equipe MDS Metodologia de Desenvolvimento de Sistemas 23
25 Encaminhar e obter a resposta do Cliente ao Questionário de Satisfação do Cliente, contendo a avaliação do serviço prestado até o momento; Realizar reuniões de encerramento com o cliente; Realizar reuniões de encerramento com o Coordenador e chefia da DET/DET-1; Realizar reunião de encerramento com a equipe; Avaliar e registrar as Lições Aprendidas do projeto; Registrar o encerramento nas ferramentas de gerenciamento de projetos; Arquivar toda a documentação do projeto; Artefatos utilizados ARTEFATOS Termo de Homologação ou Aceite Plano de Implantação TEMPLATE (TP) TP Sigla Projeto Termo de Homologação.doc TP - Sigla Projeto Plano de Implantação.doc DESCRIÇÃO Descreve os produtos a serem homologados pelo cliente. Descrever o planejamento feito com o cliente para a implantação do sistema. Manual do Sistema TP - Sigla Projeto Manual do Sistema.doc Elaborar um guia de procedimentos para a utilização do sistema pelo gestor. Ajuda Ajuda on-line Ajuda on-line para os usuários do sistema. Questionário de Satisfação Termo de Encerramento TP - Sigla Projeto Questionário de Satisfação.doc TP - Sigla Projeto Termo de Encerramento.doc Questionar o cliente sobre sua satisfação quanto ao desenvolvimento e entrega do sistema. Descrever os produtos entregues, resultado do projeto e o aceite do cliente. para apresentação às chefias da DET. MDS Metodologia de Desenvolvimento de Sistemas 24
26 6. MANUTENÇÃO DE SISTEMAS Este item visa orientar sobre a manutenção de sistemas em que a DET/INCRA seja a responsável pela sua atualização. Quando da solicitação de demanda pelo cliente a DET/INCRA realiza uma análise desta solicitação verificando, em caso de manutenção, a complexidade da mesma (vide ilustração em anexo item 8.2). Se a manutenção é do tipo corretiva, adaptativa ou evolutiva, desde que não tenha grandes impactos na estrutura do sistema, a solicitação é encaminhada à equipe da DET-1 para o devido desenvolvimento. A documentação gerada nas fases da MDS citadas nos itens Iniciação, 5.3 Elaboração, 5.4 Construção e 5.5 Transição será utilizada para a fase de manutenção do sistema. Dependendo do caso, algumas documentações serão atualizadas outras poderão ser criadas. A descrição das etapas, atores envolvidos e artefatos constantes nas fases acima citadas, quando aplicável, farão parte deste item de manutenção de sistemas. Para cada fase da MDS estão citadas as principais rotinas a serem seguidas. Fase 1 Iniciação O foco encontra-se no entendimento da alteração a ser realizada no sistema, de forma a avaliar se o pedido de correção do cliente ou a anomalia encontrada pela equipe técnica; consiste em uma manutenção e seguirá o processo do fluxo de um projeto de melhoria; ou ainda se será considerada desnecessária. As ferramentas de controle deverão ser atualizadas com os ajustes a serem feitos. Fase 2 Elaboração São realizados os levantamentos dos requisitos da manutenção de forma detalhada, para identificação de todas as alterações que ocorrerão no sistema. O artefato de Controle de Mudanças deverá ser preenchido com: os requisitos necessários para efetuar as alterações solicitadas pelo cliente; identificando quais documentos do sistema deverão ser criados ou alterados; a estimativa de tempo a ser gasto para cada uma das fases da manutenção; e a atualização e encaminhamento dos artefatos para aprovação do cliente. Deverão ser observados os possíveis ajustes no sistema, que possam alterar os diagramas do sistema e os modelos da construção do banco de dados. Fase 4 Construção Deve ser realizada a atualização do código do sistema e a atualização do ambiente de teste, bem como, os artefatos de Plano de Teste e os Roteiros de Teste. Novos testes serão realizados, registrando as anomalias encontradas e gerando os relatórios de testes. MDS Metodologia de Desenvolvimento de Sistemas 25
27 Fase 6 Transição Homologação O ambiente de homologação é atualizado, o cliente valida a manutenção no sistema e assina o Termo de Homologação e Aceite do sistema. Implantação Deverão ser atualizados o Manual do Usuário e o ambiente de produção do sistema. Encerramento Elabora o Termo de Encerramento da manutenção realizada do Projeto e o envia para aprovação do Cliente, identificando todos os produtos e fases que foram alteradas, de acordo com os Termos de Homologação de Produtos. Devem ser registradas todas as atividades nas ferramentas de controle da DET/INCRA. MDS Metodologia de Desenvolvimento de Sistemas 26
28 7. REFERÊNCIAS OpenUP - Processo iterativo para projeto e desenvolvimento de software; PMBOOK - Compêndio do PMI, consagrado para viabilizar a gerência de projetos; CMM e CMMI - Modelo de maturidade para processos de desenvolvimento de software. RUP - Rational Unified Process disciplinas e fases do RUP. 8. ANEXOS 8.1 ANEXO 1 FLUXO DE NOVA DEMANDA (PROJETO / MANUTENÇÃO) Neste anexo é ilustrado o fluxo de solicitações de novos projetos e serviços de manutenção. 8.2 ANEXO 2 FLUXO DA FASE DE PRÉ-PROJETO Neste anexo é ilustrado o fluxo da fase de Pré-projeto. 8.3 ANEXO 3 FLUXO DE SOLICITAÇÃO DE PROJETO Neste anexo é ilustrado o fluxo para a solicitação de demandas. Apresenta desde a sua solicitação até o encaminhamento à contratada para dar início ao projeto. 8.4 ANEXO 4 LISTA DE ARTEFATOS Neste anexo é apresentada uma lista dos artefatos que serão utilizados no desenvolvimento do projeto. MDS Metodologia de Desenvolvimento de Sistemas 27
29 8.1 - ANEXO 1 Fluxo de Solicitação de Demanda (Novo Projeto / Manutenções) MDS Metodologia de Desenvolvimento de Sistemas 28
30 8.2 - ANEXO 2 Fluxo da Fase de Pré-projeto LEGENDA: PS - Plano de Sustentação; EC - Estratégia de Contratação; AR - Análise de Risco; AVC - Análise de Viabilidade da Contratação; MDS Metodologia de Desenvolvimento de Sistemas 29
31 8.3 - ANEXO 3 Fluxo de Solicitação de Projeto LEGENDA: PS - Plano de Sustentação; EC - Estratégia de Contratação; AR - Análise de Risco; AVC - Análise de Viabilidade da Contratação; OS Ordem de Serviço MDS Metodologia de Desenvolvimento de Sistemas 30
32 8.4 - ANEXO 4 Lista dos Artefatos a serem utilizados ARTEFATOS DE GERÊNCIA DE PROJETO ABORDAGEM PP I E C T Plano de Projeto de Software Gerenciamento, Riscos, Cronograma, WBS, métrica X X Relatório de Controle de Mudança - RCM Descrição da mudança, impacto, justificativa, aprovação X X X X Plano de iteração Casos de uso, marcos, cronograma X X X X Proposta de Projeto Ata de reunião Ordem de serviço Subsídios para manter um acordo de serviço entre contratada e contratante Registro das ações tomadas nas reuniões e aprovação dos participantes Artefato para solicitação de início de projeto a ser encaminhado à Contratada. X X X X X X ARTEFATOS DE REQUISITOS PP I E C T Documento de visão Especificação de caso de uso Especificação de Requisitos Descreve uma visão geral do projeto, seus produtos e suas características RN, fluxos de evento, glossário, Diagrama UC, Diagrama de Atividades Especificação dos requisitos (Funcionais, não funcionais e de interface) Mapa de rastreabilidade X X X X X ARTEFATOS DE ANÁLISE E DESIGN PP I E C T Documento de arquitetura de software Dados arquiteturais do sistema (diagramas) X X Protótipo não funcional Layout das telas e suas regras de apresentação X X Modelagem de Dados Modelo Físico e Dicionário de dados X MDS Metodologia de Desenvolvimento de Sistemas 31
33 ARTEFATOS DE IMPLEMENTAÇÃO PP I E C T Plano de implementação / Integração Organização e estilo do código, ambiente de integração X Código Fonte Desenvolvimento do código fonte e componentes X Build Versão compilada do software disponibilizada para teste X ARTEFATOS DE TESTE PP I E C T Plano de teste Itens que serão e os que não serão testados, a abordagem dos testes e as necessidades ambientais X X X Roteiro de teste Conjunto de procedimentos a serem aplicados á um item de teste X X X Relatórios de teste Especifica os erros detectados para que o desenv0olvedor faça as correções ARTEFATOS DE IMPLANTAÇÃO PP I E C T Plano de implantação Recursos de instalação, hardware, software, treinamento X X X Termo de Homologação Homologação pelo cliente para os produtos elaborados (Este Termo pode ser utilizado durante todas as fases do projeto, sempre que for necessária a homologação de artefato) X X X X X X Manual Do Sistema e ajuda On-line X Termo de Encerramento Obter a aprovação junto ao cliente para o encerramento do projeto. X Legenda: PP Pré-Projeto I - Iniciação E Elaboração C Construção T - Transição MDS Metodologia de Desenvolvimento de Sistemas 32
METODOLOGIA DE DESENVOLVIMENTO DE SISTEMAS VERSÃO 2.0 MDS 12/3/2013 2.0 1/79 SUMÁRIO 1. INTRODUÇÃO... 4 2. OBJETIVO... 4 3. TIPOS DE DEMANDA DE SISTEMA DA DET... 5 3.1 Novo Sistema... 5 3.2 Sustentação