Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Documentos relacionados
Qualidade de Software

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Desenvolvido pelo Software Engineering Institute-SEI em 1992 Possui representação por estágios (5 níveis)e contínua (6 níveis)

Qualidade de Software (cont)

Normas ISO:

Qualidade de Software: Visão Geral. SSC 121-Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa

Extreme Programming: Valores e Práticas

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

QUALIDADE DE SOFTWARE DEFINIÇÕES / RESUMO. Apostilas de NORMAS, disponíveis no site do professor. Prof. Celso Candido ADS / REDES / ENGENHARIA

Desenvolvimento Ágil de Software. Prof. Edjandir Corrêa Costa

Manifesto Ágil Princípios

Implementando CMMi utilizando uma combinação de Métodos Ágeis. Implementing CMMi using a Combination of Agile Method

Mapeando o Scrum em Relação ao CMMI Níveis 2 e 3

QUALIDADE DE SOFTWARE

DCC / ICEx / UFMG. O Modelo CMMI. Eduardo Figueiredo.

Agilidade & Cia. Engº Adail Muniz Retamal. adail@heptagon.com.br

INTRODUÇÃO A ENGENHARIA DE SOFTWARE

SIGEPRO - Mini Curso sobre Métodos Ágeis de Gestão de Projetos

Unidade VI GOVERNANÇA DE TI. Profa. Gislaine Stachissini

Adoção de metodologia ágil baseada em Scrum - Case da Procergs

Benefícios, aplicação prática de CMMI e MPS.BR e resultados Brasileiros

Qualidade em TIC: Principais normas e modelos

Introdução a Melhoria de Processos de Software. CMMI - Capability Maturity Model Integration MPS.BR - Melhoria de Processo do Software Brasileiro

Elementos Fundamentais para a Melhoria da Qualidade de Software nas Organizações de TI

AULA 02 Qualidade em TI

Processos Ágeis de Desenvolvimento de Software

Nomenclatura usada pela série ISO Série ISO 9000

Aplicação: 11/9/2016 PADRÃO DE RESPOSTA

XP EXTREME PROGRAMMING. AGO106 - Gestão

Marketing Promotions Review

IRINEU AMBROZANO FILHO APLICAÇÃO DE GESTÃO EM PROJETOS QUE UTILIZAM MÉTODOS ÁGEIS - EXTREME PROGRAMMING

Métodos Ágeis e o SCRUM. Bruno Henrique Oliveira

ISO/IEC Processo de ciclo de vida

Melhoria de processos Qualidade. Engenharia de software Profª Karine Sato da Silva

Padrões de Qualidade de Software

Avaliação de Processos de Software Utilizando a Norma ISO/IEC Autor : Anisio Iahn Orientador : Everaldo Artur Grahl

Qualidade de Processo de Software CMM / CMMI

11 de setembro de Copyright ASR Consultoria e Assessoria em Qualidade

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Scrum. Daniel Krauze

Introdução. O Modelo CMM/SEI. Roteiro da Apresentação. Conceitos básicos de qualidade. Conceitos básicos de qualidade de software

ENGENHARIA DE SOFTWARE

Engenharia de Software. Prof. Me. Clodoaldo Brasilino

Maria Cecilia Rebouças

Scrum. Adriano J. Holanda 18/10/2016. [Fundamentos de Sistemas de Informação II]

Engenharia de Software

SCRUM Prof. Jair Galvão

Engenharia de Software DESENVOLVIMENTO ÁGIL

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS. Nome:


Programa. 1. Relato de experiência Integração de modelos CMMI, MPS.BR e ISO 9000 na 7COMm Sergio Esmério (7COMm)

Universidade Estadual de Maringá Centro de Tecnologia Departamento de Engenharia de Produção

TÉCNICO EM AUTOMAÇÃO INDUSTRIAL. Gestão da Qualidade Aula 09 Prof. Ms. Claudemir Claudino Alves

Desenvolvimento ágil de software

Garantia da Qualidade, Medição e Melhoria. Leonardo Gresta Paulino Murta

APOSTILAS: NORMAS; ABNT NBR ISO; MPS BR

PROJETO EM SISTEMAS DE INFORMAÇÃO. Unidade I - Metodologia de desenvolvimento a ser adotada. Luiz Leão

Scrum e Extreme Programming


CONTPATRI Plano de Garantia de Qualidade. Versão 1.1

Abordagens para Análise de Negócio

PSP Personal Software Process. Maria Cláudia F. P. Emer

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática

PSP: Personal Software Process. PSP- Personal Software Process. PSP: Personal Software Process. PSP: Personal Software Process

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Por Constantino W. Nassel

Agenda. Componentes genéricos de uma fábrica de. Implantar ou melhorar uma fábrica, é um. Outras novidades que merecem atenção

MÉTODOS ÁGEIS SERVEM PARA MIM?

Engenharia de Software Processo de Desenvolvimento de Software

Processo de desenvolvimento

PROVAS DISCURSIVAS P 3 (questões) e P 4 (parecer) RASCUNHO QUESTÃO 1

SCRUM aplicado na Gerência de Projetos

Gestão de Processos Introdução Aula 1. Professor: Osmar A. Machado

ISO/IEC 12207: Verificação, Validação e Testes

Visão Geral da Norma ISO/IEC 12207

Padrões que auxiliam no gerenciamento da qualidade e segurança da informação de uma organização, a figura do profissional qualificado neste contexto

Alessandro Almeida Melhoria de Processos de Software compartilhando experiências e questionando alguns mitos

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES

TCC Resumido: Avaliação e Melhorias no Processo de Construção de Software

Inovação na utilização de Método Ágil aderente ao CMMI. Palestrante: Anderson Donas, PMP, CFPS Consultor Sênior - DISYS

Introdução ao CMM SM Capability Maturity Model

Projeto para o IV semestre TADS

Processos de software

Descrição das Áreas de Processo

Reuso de Software Aula Maio 2012

FORMAÇÃO DE AUDITORES INTERNOS DE GESTÃO DA QUALIDADE PARTE 1

Engenharia de Software

A Engenharia de Requisitos no contexto Ágil FATTO CONSULTORIA E SISTEMAS

Definição e Melhoria de Processo na Produção de Software Web

QUALIDADE DE SOFTWARE ISO/IEC Segunda Edição Prof. Edison A M Morais

GESTÃO DA TECNOLOGIA DA INFORMAÇÃO. 3ª SEMANA ACADÊMICA CSTGTI - Florianópolis CLEVERSON TABAJARA VIANNA

NBR ISO de 2001 (ISO de 1999) Índice

Requisitos para Ferramentas de Gestão de Projetos de Software

O Guia de Contratação de Soluções de Tecnologia da Informação da Instrução Normativa IN/SLTI/MPOG 04/2014 e o Modelo CMMI-DEV: Uma Análise Qualitativa

Uma Abordagem de Disseminação de Conhecimento através de Treinamentos Organizacionais

Introdução CMMI. Qualidade e Teste de Software CMMI 1

Processo de Gerência de Configuração. Maurício Ronny de Almeida Souza

Transcrição:

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 09289 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Especificação e Análise de Requisitos 4. Projeto de Sistema 5. Implementação e Testes 6. Entrega e Manutenção 7. Gerência da Qualidade 8. Gerência de Projetos de Software 9. Tópicos Avançados em 1

9. Tópicos Avançados em Estudos mostram que a qualidade do produto de software depende diretamente da qualidade dos processos adotados no seu desenvolvimento (FUGGETTA, 2000). Cada vez mais, as organizações têm despendido esforços significativos na melhoria contínua de seus processos de software. Algumas iniciativas: ü Normas e modelos de qualidade de processo ü Processos de software padrão ü Desenvolvimento por meio de processos ágeis ü Apoio automatizado ao processo de software. 9. Tópicos Avançados em A) Normas e Modelos de Apoio à Definição de Processos Auxiliam a rechear o arcabouço fornecido pelo modelo de ciclo de vida. Algumas normas e modelos podem ajudar a definição de processos. 2

9. Tópicos Avançados em Normas e Modelos de Apoio à Definição de Processos A Série ISO 9000 Desenvolvida para apoiar organizações, de todos os tipos e tamanhos, na implementação e operação de sistemas eficazes de gestão da qualidade. NBR ISO 9000: 2015 - Sistemas de Gestão da Qualidade - Conceitos e Terminologia: descreve os fundamentos de sistemas de gestão da qualidade e estabelece a terminologia para esses sistemas; NBR ISO 9001:2015 - Sistemas de Gestão da Qualidade Requisitos: especifica os requisitos para um sistema de gestão da qualidade com enfoque na satisfação do cliente. Para uma organização ser certificada ISO 9001, ela precisa demonstrar sua capacidade para fornecer produtos que atendam aos requisitos do cliente (explícitos e implícitos) e os requisitos regulamentares aplicáveis; NBR ISO 9004:2009 - Gestão para o sucesso sustentado de uma organização Uma Abordagem da Gestão da Qualidade: fornece diretrizes que ampliam os requisitos estabelecidos pela ISO 9001, buscando melhoria contínua de desempenho e sucesso sustentável. NBR ISO 19011:2011 - Diretrizes para Auditoria de SGQ e/ou Ambiental: fornece diretrizes para a condução das auditorias e determinação da competência dos auditores. 9. Tópicos Avançados em ISO 9001 - Processo de Certificação 1. A empresa estabelece o seu sistema da qualidade. 2. A empresa faz uma solicitação formal a um órgão certificador. 3. O órgão certificador faz uma primeira visita à empresa para colher mais dados e explicar o processo de certificação. 4. O órgão certificador verifica se a documentação do sistema da qualidade está de acordo com a ISO. 5. O órgão certificador envia uma equipe à empresa com fins de auditoria. Podem ocorrer três situações: l l l Qualificada sem discrepâncias Qualificada com pequenas discrepâncias, que devem ser corrigidas em um prazo pré-estabelecido antes da certificação Não qualificada 6. O órgão certificador realiza visitas periódicas à empresa para assegurar que o sistema continua sendo efetivo. 3

9. Tópicos Avançados em Certificados ISO 9001 (exemplos) 9. Tópicos Avançados em ISO/IEC/IEEE 12207: 2017 Tecnologia de Informação - Processos de Ciclo de Vida de Software 30 processos + um processo de adaptação. 4 grupos: - Processos relacionados a Acordos (Contratos) - Processos relacionados à Habilitação Organizacional para Projetos - Processos de Gerenciamento Técnico - Processos Técnicos 4

9. Tópicos Avançados em 9. Tópicos Avançados em CMMI - Capability Maturity Model Integration Definido pelo Software Engineering Institute (SEI) - Carnegie Mellon University, com o intuito de quantificar a capacidade de uma organização produzir produtos de software de alta qualidade, de forma previsível e consistente. Descreve princípios e práticas dos quais depende a maturidade do processo de software. Define 5 níveis de maturidade para o processo de desenvolvimento que são caracterizados por PA s (Process Areas). Tem como objetivo auxiliar as organizações a aumentarem a maturidade de seus processos por um caminho evolutivo. Pode ser usado por empresas contratantes para identificar as características do processo utilizado por seus fornecedores. Oferece duas abordagens para melhoria de processos: contínua ou por estágios. 5

9. Tópicos Avançados em CMMI - Capability Maturity Model Integration 5 4 3 Foco na melhoria contínua do processo Desempenho do processo controlado estatisticamente Processo caracterizado para a organização e próativo Definido Em Otimização (CAR) Análise de Causas e Resolução (OPM) Gerência do Desempenho Organizacional Gerenciado Quantitativamente (QPM) Gerência Quantitativa do Projeto (OPP) Desempenho do Processo Organizacional (IPM) Gerência Integrada de Projetos (OPD) Definição do Processo Organizacional (OPF) Foco no Processo Organizacional (OT) Treinamento Organizacional (RD) Desenvolvimento de Requisitos (TS) Solução Técnica, ((PI) Integração do Produto (VER) Verificação (VAL) Validação (RSKM) Gerência de Riscos (DAR) Análise de Decisão e Resolução 2 1 Processo caracterizado para projetos e muitas vezes reativo Processo imprevisível, fracamente controlado e reativo Gerenciado (REQM) Gerência de Requisitos (PP) Planejamento de Projeto (PMC) Monitoração e Controle de Projeto Inicial (PPQA) Garantia da Qualidade do Processo e do Produto (SAM) Gerência de Acordo com Fornecedores (CM) Gerência de Configuração (MA) Medição e Análise 9. Tópicos Avançados em MR MPS.BR - Modelo de Referência para Melhoria de Processo de Software Brasileiro ISO/IEC 12207 CMMI-DEV ISO/IEC 15504 CMMI-SVC ISO/IEC 20000 Modelo MPS.BR Modelo de Referência MPS para Software (MR-MPS-SW) Modelo de Referência MPS para Serviços (MR-MPS-SV) Método de Avaliação (MA-MPS) Modelo de Negócio (MN-MPS) Guia Geral MPS de Software Guias de Implementação Guia de Aquisição Guia Geral MPS de Serviços Guia de Avaliação Documento do Programa 6

9. Tópicos Avançados em MR-MPS-SW 9. Tópicos Avançados em B) Definição de Processos de Software em Níveis Embora diferentes projetos requeiram processos com características específicas para atender às suas particularidades, é possível estabelecer um conjunto de ativos de processo* a ser utilizado na definição de processos de software de uma organização. As normas e modelos preconizam a definição e institucionalização de processos padrão nas organizações. Normas e Modelos de Qualidade Processo Padrão Cultura Organizacional, Política Organizacional, Características da Organização etc * Subprocessos, atividades, subatividades, artefatos, recursos e procedimentos, dentre outros. 7

9. Tópicos Avançados em Normas e Modelos de Qualidade, Cultura Organizacional, Características da Organização Definição Processo Padrão Tipo de Software, Domínio do Problema, Paradigma e Tecnologia de Desenvolvimento Especialização Processo Especializado 1 Processo Especializado n Particularidades do Projeto, Modelo de Ciclo de Vida Instanciação Processo de Projeto 1 Processo de Projeto m 9. Tópicos Avançados em C) Processos Ágeis O Manifesto Ágil Estamos descobrindo maneiras melhores de desenvolver software fazendo-o nós mesmos e ajudando outros a fazê-lo. Através deste trabalho, passamos a valorizar: Indivíduos e interação entre eles mais que processos e ferramentas Software em funcionamento mais que documentação abrangente Colaboração com o cliente mais que negociação de contratos Responder a mudanças mais que seguir um plano Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda. (http://manifestoagil.com.br/) 8

9. Tópicos Avançados em XP extreme Programming Abordagem para desenvolvimento de software que busca assegurar que o cliente receba o máximo de valor a cada dia de trabalho da equipe de desenvolvimento. Parte da premissa de que o cliente aprende sobre suas necessidades na medida em que é capaz de manipular o sistema sendo produzido. Com base no uso do sistema, o cliente reavalia suas necessidades e prioridades, gerando mudanças que devem ser incorporadas ao software pela equipe de desenvolvimento. XP é voltado para: ü Projetos cujos requisitos são vagos e podem mudar com frequência ü Desenvolvimento de sistemas orientados a objetos ü Equipes pequenas (até 12 desenvolvedores) ü Desenvolvimento iterativo/incremental (o sistema começa a ser implementado logo no início e vai ganhando novas funcionalidades ao longo do tempo). 9. Tópicos Avançados em XP é organizado em torno de um conjunto de valores e práticas que devem atuar de maneira coesa e harmônica. Valores do XP: ü Feedback: quando o cliente aprende com o sistema que utiliza, ele reavalia as suas necessidades e dá feedback para a equipe de desenvolvimento. ü Comunicação: a comunicação entre o cliente e a equipe permite que todos os detalhes do projeto sejam tratados com a atenção e agilidade que merecem. ü Simplicidade: a simplicidade advoga que só deve ser implementado aquilo que é suficiente para atender as necessidades do cliente. ü Coragem: a equipe precisa ter coragem e acreditar que, usando as práticas e valores do XP, será capaz de fazer o software evoluir com segurança e agilidade. 9

9. Tópicos Avançados em O XP não possui uma figura padrão que represente a metodologia como um processo (sequência de passos). A figura clássica do XP é conhecida como 3 loops e apresenta suas 13 práticas. 9. Tópicos Avançados em SCRUM Método ágil para gerenciamento de projetos, cuja aplicação não está limitada a projetos de software. O nome foi inspirado em um trabalho publicado na Harward Business Review em 1986, intitulado The New New Product Development Game, de Hirotaka Takeuchi e Ikujiro Nonaka, que propunha uma abordagem e a comparava com a formação Scrum no rugby. Foi formalmente criado no artigo Scrum and the Perfect Storm (www.controlcaos.com/my-articles) escrito por Ken Schwaber na década de 90, baseado no desenvolvimento iterativo e incremental e novas estratégias de criação de produtos. O nome foi inspirado em uma jogada de Rugby. Após uma reunião (agrupamento em torno da bola), o objetivo é retirar os obstáculos à frente do jogador que correrá com a bola, para que possa avançar o máximo possível no campo e marcar pontos. 10

9. Tópicos Avançados em Ciclo do SCRUM 9. Tópicos Avançados em Como funciona: 1. Os projetos são divididos em ciclos (tipicamente mensais) chamados de Sprints. A Sprint representa uma janela de tempo dentro da qual um conjunto de atividades deve ser executado. Normalmente uma sprint dura de 2 a 4 semanas. 2. As funcionalidades a serem implementadas em um projeto são mantidas em uma lista chamada Product Backlog. 3. No início de cada Sprint, faz-se uma reunião de planejamento inicial (Sprint Planning Meeting) na qual Product Owner prioriza os itens do Product Backlog e a equipe seleciona as atividades que ela será capaz de implementar durante a Sprint que se inicia. 4. As atividades alocadas em uma Sprint são transferidas do Product Backlog para o Sprint Backlog. 5. A cada dia de uma Sprint, a equipe faz uma breve reunião (normalmente de manhã), chamada Daily Scrum (também é conhecida como Stand up Meeting) para disseminar conhecimento sobre o que foi feito no dia anterior, identificar impedimentos e priorizar o trabalho do dia que se inicia. 6. Ao final de uma Sprint, a equipe apresenta as funcionalidades implementadas em uma Sprint Review Meeting. 7. Finalmente, faz-se uma Sprint Retrospective e a equipe parte para o planejamento da próxima Sprint. 11

9. Tópicos Avançados em D) Automatização de Processo de Software Com o aumento da complexidade dos processos de software, tornou-se imprescindível utilizar ferramentas e ambientes de apoio à realização de suas atividades, visando, sobretudo, a atingir níveis mais altos de qualidade e produtividade. Ferramentas CASE (Computer Aided Software Engineering) apoiam a realização de atividades específicas, tais como planejamento e análise e especificação de requisitos. Atualmente, o elevado número e a variedade de ferramentas CASE levou os engenheiros de software a pensarem em trabalhar com diversas ferramentas que interajam entre si e forneçam suporte a todo ciclo de vida do desenvolvimento, dando origem aos Ambientes de Desenvolvimento de Software (ADSs). Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 09289 Prof.: (monalessa@inf.ufes.br) 12