Processos de Software. O que é modelo de processo? Vantagens. Modelos de Processo Gerais. O que é um processo de software?



Documentos relacionados
Qualidade de Software. Qualidade de Software. Adequado à Especificação. Alguns Atributos de Qualidade. Equipe de Qualidade

Perguntas da Aula 2. Respostas da Pergunta 2. Respostas da Pergunta 1. Respostas da Pergunta 4. Respostas da Pergunta 3. Processos de Software

Processos de Software

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída

Processos de Software

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída

Histórico: Linha de Produção. Linha de Produtos de Software. Reuso vs. Customização. Mercado Competitivo. Linha de Produtos de Software

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão

Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr

Modelos de Processo (métodos)

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Introdução ao Processo Unificado (PU)

DCC / ICEx / UFMG. O que é anunciado. Falha de Comunicação no Desenvolvimento de Software. Eduardo Figueiredo.

25/05/2015. Um pouco de história. O Modelo CMMI. Capability Maturity Model Integration (CMMI) Capability Maturity Model (CMM)

Introdução à Engenharia de Software. Prof.ª Erika E. Freire Miranda

Tópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.

Processo de Software - Revisão

Visão Geral Parte 1. O que é engenharia de software?

Engenharia de Software

Professor: Curso: Disciplina:

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

Qualidade de Software

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite (81 )

MODELOS DE PROCESSO. Isac Aguiar isacaguiar.com.br

Introdução à. Engenharia de Software. Givanaldo Rocha de Souza

Objetivos. Teoria de Filas. Teoria de Filas

Análise e Projeto de Software

Roteiro SENAC. Análise de Riscos. Planejamento do Gerenciamento de Riscos. Planejamento do Gerenciamento de Riscos

Eduardo Bezerra. Editora Campus/Elsevier. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS

Desenvolvimento de Sistemas Tolerantes a Falhas

Reutilização de Software

Engenharia de Software II

Projeto de Desenvolvimento de Software

Principalmente facilita o processo de gestão do projeto nos seguintes pontos:

PROFESSOR: CRISTIANO MARIOTTI

Introdução à Engenharia de Software. Profª Jocelma Rios

Profa. Dra. Ana Paula Gonçalves Serra

Capítulo 7: Engenharia de Software

AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE. Prof. Msc. Hélio Esperidião

Qualidade de Software

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT

Processo de Desenvolvimento de Software Workshop de Engenharia de Software

Apresentar os conceitos básicos da metodologia de desenvolvimento Processo Unificado, utilizando como aporte o Processo Unificado Rational RUP

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva.

Reuso de Software Aula Maio 2012

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software.

Conjunto de recursos (humanos e materiais), processos e metodologias estruturados de forma semelhante à indústria tradicional.

Engenharia de Software

PROJETO (OU DESIGN) DO SOFTWARE Diagrama de Estrutura

QUALIDADE DE SOFTWARE

Probabilidade e Estatística I Antonio Roque Aula 11 Probabilidade Elementar: Novos Conceitos

Gerenciamento de Projetos Modulo II Clico de Vida e Organização

Motivação. O Uso de Jogos. Problems & Programmers (PnP) Visão Geral do PnP. Exemplo. Jogos para Simulação em Engenharia de Software

Requisitos de Software

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com

Engenharia de Software

REPRESENTAÇÃO DE REQUISITOS VARIÁVEIS COM UML, SEGUINDO O MÉTODO ICONIX

Paradigmas de Engenharia de Software

Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização

Engenharia de Software

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Riscos

Objetivo do trabalho 4

Gerenciamento dos Riscos de um Projeto

Os Estilos de Pesquisa na Computação. TCC Profº Carlos José Maria Olguín

SOFTWARE PROCESSES. Ian Sommerville, 8º edição Capítulo 4 Aula de Luiz Eduardo Guarino de Vasconcelos

Análise e Projeto de Sistemas

Introdução à Engenharia de. Software. Introdução à Engenharia de. Software. O que é a Engenharia de Software? Software

Metodologias de Apoio ao Planejamento Estratégico. Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília

Requisitos para Gestão de Requisitos no Desenvolvimento de Software que Utilizam Prática Ágeis

UNIVERSIDADE PRESBITERIANA MACKENZIE PLANO DE ENSINO

Engenharia de Software

Sumário. Deadlock. Definição. Recursos. M. Sc. Luiz Alberto

Princípios da Engenharia de Software Aula 02. Prof.: Franklin M. Correia

Princípios do teste de software

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ENG1000 Introdução à Engenharia

Sistemas de Informação I

Prontuário de Instalações Elétricas

O Processo Unificado

PARTICIPAÇÃO DA AGRICULTURA FAMILIAR PARTICIPAÇÃO DA AGRICULTURA FAMILIAR. R$ 54 bilhões VALOR BRUTO DA PRODUÇÃO TOTAL DE ESTABELECIMENTOS

Anexo IX METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE. 1. FINALIDADE. O objetivo deste documento é apresentar uma visão resumida do processo RUP-BNB.

Engenharia de Software Processo de Desenvolvimento de Software

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

3. Fase de Planejamento dos Ciclos de Construção do Software

Até o final de década de 70, os sistemas operacionais suportavam apenas processos com um único thread;

Transcrição:

DCC / ICEx / UFMG O que é um processo de software? Processos de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Conjunto de atividades que leva ao desenvolvimento do produto software Um processo define Quem faz, o que faz e quando fazer Nem sempre diz como fazer Não existe um processo ideal Organizações desenvolvem seus próprios processos O que é modelo de processo? Descrição simplificada do processo Definem As atividades para o desenvolvimento do software Especificam os produtos de cada atividade Indicam os papéis das pessoas envolvidas Oferecem um roteiro útil para o trabalho de engenharia de software Mas, nenhum modelo de processo é perfeito Outras vantagens Padronização dos artefatos Melhor comunicação da equipe Menos treinamento de pessoal Exemplos de Modelos de Processo Modelos mais gerais Eng. de Software orientada a Reuso Os modelos mais gerais não são mutuamente exclusivos Organizações tendem a combinar partes de diferentes modelos

Atividades sequenciais Uma fase deve ser terminada para a outra começar Raramente ocorre na prática Definição de Projeto Implementação Testes Manutenção do Documentação rígida (idealmente completa) em cada atividade Reflete abordagens adotadas em outras engenharias Aderência a outros modelos de processo Pode ser combinado a outros modelos do Projetos reais raramente seguem um fluxo sequencial Em geral, é difícil para o cliente estabelecer todos os requisitos à priori Difícil se adequar a mudanças inevitáveis de requisitos Uma versão executável somente ficará pronta na fase final do projeto Quando Aplicar o? s críticos Quando os requisitos são bem compreendidos Quando há pouca probabilidade dos requisitos mudarem

Atividades são intercaladas Objetivo: dar feedback rápido ao cliente Descrição do Escopo Desenvolvimento Versão Inicial Versões Intermediárias Permite trabalhar com o cliente o entendimento dos requisitos Pode-se começar o sistema pelas partes melhor entendidas Feedback rápido ao cliente Validação Versão Final O processo pode não ser muito claro A gerência do software é complicada O sistema não é completamente especificado à priori O produto final é frequentemente mal estruturado A mudança contínua tende a corromper a modularidade do sistema O processo não é muito claro Os problemas do O desenvolvimento sistema não é completamente especificado à priori incremental se tornam A gerência do software é complicada Os sistemas são frequentemente mal estruturados mais graves em A mudança contínua tende a corromper sistemas críticos. a modularidade Processo Orientado ao Reuso Baseia-se na existência de um número significativo de componentes reusáveis O processo se concentra na integração dos componentes reusáveis Inspirado na analogia com componentes de hardware Exemplo: componentes elétricos / eletrônicos

Representação Baseia-se na existência de um número significativo de componentes reusáveis O processo se concentra na integração dos componentes Alinhar componentes aos requisitos Dada uma especificação, encontrar componentes que a atendam Se possível, os requisitos são adaptados aos componentes existentes de de dos Se necessário, projeta-se novos componentes reusáveis Desenvolvimento de novos componentes de todos os componentes Reduz a quantidade de software a ser desenvolvido Espera-se reduzir os custos e os riscos de Espera-se uma entrega do produto mais rápida ao cliente Qual modelo de processo usar? Pode-se desenvolver um produto que não atenda aos requisitos do cliente Pode ser mais difícil evoluir os sistemas de terceiros A gerência de versões dos componentes pode ser complexa s Críticos Sugerido um modelo de processo mais estruturado / rigoroso como o Modelo Cascata s de Negócios (requisitos mudam com frequência) Sugerido um modelo de processo ágil e flexível como o Desenvolvimento Incremental ou o

Bibliografia Ian Sommerville. Engenharia de Software, 9ª Edição. Pearson Education, 2011. Seção 2.1 Modelos de Processo