Baixe o app para aproveitar ainda mais
Prévia do material em texto
� Introdução � Etapas genéricas � Atividades de apoio � Ferramentas de apoio � Modelos genéricos � Modelos de mercado � Modelos de melhoria Agenda Introdução Processo de software é o conjunto de ferramentas, métodos e práticas utilizadas para produzir e manter sistemas de software. OBJETIVOS � Cumprir o prazo do projeto � Cumprir o custo do projeto � Entregar um sistema de qualidade Introdução Introdução CONDIÇÕES 1. ANÁLISE 2. PROJETO 3. IMPLEMENTAÇÃO 4. TESTES 5. IMPLANTAÇÃO 6. MANUTENÇÃO Etapas genéricas 1: ANÁLISE Quem faz? Analista de Sistemas O que faz? Descobre o que o cliente precisa através de entrevistas, reuniões, leitura de documentos, etc Quando? Principalmente no início, podendo se estender por todo o projeto Qual o resultado? Documento de especificação do sistema Etapas genéricas 2: PROJETO Quem faz? Projetista, Arquiteto ou Engenheiro de Software O que faz? Projeta a melhor forma de criar um sistema que atenda as necessidades do usuário Quando? Logo após a análise do sistema ou parte dele Qual o resultado? Diagramas Etapas genéricas 3: IMPLEMENTAÇÃO Quem faz? Programador / Desenvolvedor O que faz? Desenvolve (programa) o sistema de acordo com o projeto e a especificação do mesmo Quando? Logo após o projeto do sistema ou parte dele Qual o resultado? Executável e código-fonte Etapas genéricas 4: TESTES Quem faz? Testador O que faz? Planeja e executa os testes no sistema e registra os problemas encontrados Quando? Logo após o desenvolvimento do sistema ou parte dele Qual o resultado? Relatório de problemas Etapas genéricas 5: IMPLANTAÇÃO Quem faz? Analista de suporte O que faz? Instala e configura o sistema para o uso no cliente Quando? Após o sistema ou parte dele passar nos testes Qual o resultado? Sistema ou parte dele pronto para o uso Etapas genéricas 6: MANUTENÇÃO Quem faz? Toda a equipe O que faz? Corrige ou cria novas funções no sistema Quando? Sempre que necessário Qual o resultado? Nova versão do sistema Etapas genéricas � GERÊNCIA DE PROJETO � GERÊNCIA DE CONFIGURAÇÃO � GARANTIA DA QUALIDADE Atividades de apoio GERÊNCIA DO PROJETO Quem faz? Gerente de projetos O que faz? Basicamente planeja e controla toda a execução do projeto Quando? Desde o início até o final do projeto Qual o resultado? Plano do projeto e relatórios de acompanhamento Atividades de apoio GERÊNCIA DE CONFIGURAÇÃO Quem faz? Gerente de configuração O que faz? Planeja, armazena e controla as mudanças e versões de tudo que é criado ao longo do projeto Quando? Desde o início até o final do projeto Qual o resultado? Todas as versões de todos os artefados devidamente armazenadas e controladas Atividades de apoio GARANTIA DA QUALIDADE Quem faz? Gerente de qualidade O que faz? Executa auditorias nos projetos em andamento Quando? Em momentos variados Qual o resultado? Relatório de não conformidades Atividades de apoio Ferramentas de apoio Ferramentas CASE Computer-Aided Software Engineering são softwares cujo objetivo é apoiar o desenvolvimento de software e o processo de evolução Ferramentas de apoio Categorias Modelos genéricos Modelo de processo ���� Um modelo de processo de software é uma representação abstrata de um processo. ���� Ele apresenta uma descrição de um processo a partir de uma perspectiva específica Modelos genéricos Cascata� desenvolvimento linear e sequencial, sendo que uma nova etapa só inicia quanto a anterior estiver completamente encerrada Evolucionário� desenvolvimento particionado do sistema a partir dos requisitos melhor entendidos Formal���� modelo matemático do sistema é transformado formalmente em uma implementação Baseado em reuso���� sistema é montado a partir de componentes já existentes Modelos genéricos Incremental� desenvolvimento particionado do sistema, a partir dos requisitos prioritários para o cliente, com entregas parciais Espiral� processo representado como uma espiral, em vez de uma seqüência de atividades com caminhos de retorno. Não há fases fixas, tais como análise ou projeto. Cada volta na espiral representa uma fase no processo. Modelos de mercado PSP - Personal Software Process � Melhora a estimativa de prazo e esforço para o desenvolvimento individual de software e cria um comprometimento pessoal com a qualidade e com a melhoria contínua do processo; Modelos de mercado TSP - Team Software Process � Melhora a gerência e os resultados de pequenas e médias equipes de programadores que utilizam o PSP Modelos de mercado RUP – Rational Unified Process � Modelo completo para o desenvolvimento de software orientado a objetos projetados e documentados através da UML Modelos de mercado XP – eXtreme Programming � metodologia ágil para equipes pequenas e médias e que irão desenvolver software com requisitos vagos e em constante mudança Modelos de mercado SCRUM � metodologia ágil para o gerenciamento de projetos que pode ser aplicado em qualquer contexto no qual um grupo de pessoas necessitem trabalhar juntas para atingir um objetivo comum Modelos de melhoria �TODO O PROCESSO PODE E DEVE SER MELHORADO CONTINUAMENTE � um modelo de melhoria não diz exatamente como fazer, mas sim o que deve ser feito (melhores práticas) Modelos de melhoria ISO 12207 ���� propõe um processo para o ciclo de vida do software ISO 15504 ���� modelo para a avaliação do processo de software CMM ���� propõe um processo de software baseado em 5 níveis de maturidade CMMI ���� ampliação do CMM MPS.Br���� modelo para melhoria de processo do software brasileiro baseado em 7 níveis de maturidade
Compartilhar