SlideShare uma empresa Scribd logo
1 de 55
Engenharia do Software I Manuel Menezes de Sequeira DCTI, ISCTE-IUL Manuel.Sequeira@iscte.pt, D6.02 As apresentações desta série baseiam-se nas apresentações disponibilizadas por IanSommerville, tendo sido alteradas e adaptadas primeiro por  Anders Lyhne Christensen e finalmente por Manuel Menezes de Sequeira.
Sumário Processos de software Modelos de processos de software Iteração de processos Actividades de processo RUP (RationalUnifiedProcess) CASE (Computer-Aided Software Engineering) 2009/2010 Engenharia do Software I 2
Processos de Software 2009/2010 3 Engenharia do Software I
Na aula anterior Processo da engenharia de requisitos Estudos de viabilidade Eliciação e análise de requisitos Validação de requisitos Gestão de requisitos 2009/2010 4 Engenharia do Software I
Processo de software Conjunto estruturado de actividades necessárias para desenvolver sistema de software Especificação Desenho Validação Evolução Modelo de processo de software é representação abstracta de processo, descrevendo-o sob um ponto de vista particular 2009/2010 5 Engenharia do Software I
Modelos genéricos de processo de software Há muitas variantes destes modelos. Por exemplo, o desenvolvimento formal, que usa um processo semelhante ao do modelo em cascata, mas em que a especificação, que é formal, é refinada ao longo de várias etapas até se atingir um desenho implementável. 2009/2010 6 Engenharia do Software I
Modelo em cascata Definição de requisitos Etapas Desenho do sistema e do software Implementação e testes unitários Integração e testes de sistema O principal inconveniente deste modelo é que dificulta lidar com mudanças depois do processo estar em andamento. Tem de se completar cada uma das fases antes de avançar para a fase seguinte. Operação e manutenção 2009/2010 7 Engenharia do Software I
Problemas do modelo em cascata Segmentação inflexível do projecto em etapas distintas dificulta resposta a modificações nos requisitos do cliente Apropriado apenas quando requisitos são bem compreendidos e modificações se previrem bastante limitadas Sobretudo grandes projectos de engenharia de sistemas com sistema desenvolvido em vários locais Poucos negócios têm requisitos estáveis. 2009/2010 8 Engenharia do Software I
Desenvolvimento evolutivo 2009/2010 9 Engenharia do Software I
Actividades concorrentes Desenvolvimento evolutivo Especificação Versão inicial Descrição geral Desenvolvimento Versões intermédias Validação Versão final 2009/2010 10 Engenharia do Software I
Desenvolvimento evolutivo Problemas Fala de visibilidade do processo Sistemas muitas vezes mal estruturados Podem ser necessárias competências especiais (e.g., em linguagens de prototipagem rápida) Aplicabilidade Sistemas interactivos de pequena ou média dimensão Partes de sistemas de grande dimensão (e.g., interface com utilizador) Sistemas com tempo de vida curto 2009/2010 11 Engenharia do Software I
Engenharia do software baseada em componentes Baseia-se em reutilização sistemática Sistemas integrados a partir de componentes existentes ou sistemas comerciais prontos a usar Etapas do processo Análise de componentes Modificação de requisitos Desenho do sistema com reutilização Desenvolvimento e integração Abordagem mais usada à medida que a normalização de componentes vai progredindo. COTS (Commercial-Off-The-Shelf) 2009/2010 12 Engenharia do Software I
Desenvolvimento orientado pela reutilização Especificação de requisitos Análise de componentes Modificação de requisitos Desenho do sistema com reutilização Desenvolvimento e integração Validação do sistema 2009/2010 13 Engenharia do Software I
Iteração de processos Requisitos do sistema evoluem sempre ao longo de um projecto… …logo, para sistemas de grande dimensão, iterações do processo são sempre parte desse processo Iterações são repetições das etapas iniciais do processo 2009/2010 14 Engenharia do Software I
Iteração de processos Iteração aplica-se a qualquer modelo genérico de processo Duas abordagens (relacionadas) Entrega incremental Desenvolvimento em espiral 2009/2010 15 Engenharia do Software I
Entrega incremental Em vez de entrega única, desenvolvimento e entrega divididos em incrementos, cada um entregando parte da funcionalidade Requisitos do utilizador prioritizados; requisitos prioritários desenvolvidos primeiro Logo que se inicia desenvolvimento de um incremento, seus requisitos são congelados; requisitos de incrementos posteriores continuam a evoluir 2009/2010 16 Engenharia do Software I
Desenvolvimento incremental Definir visão geral dos requisitos Atribuir requisitos a incrementos Desenhar arquitectura do sistema Desenvolver incremento do sistema Validar incremento Integrar incremento Validar sistema Sistema final Sistema incompleto 2009/2010 17 Engenharia do Software I
Vantagens do desenvolvimento incremental Cada incremento entrega valor ao cliente; funcionalidade do sistema disponível mais cedo Incrementos iniciais como protótipos ajudam eliciação de requisitos para novos incrementos Menor risco de falha global do projecto Serviços prioritários do sistema tendem a ser os mais testados 2009/2010 18 Engenharia do Software I
XP – Extreme Programming Abordagem ao desenvolvimento Baseada no desenvolvimento e entrega de pequenos incrementos de funcionalidade Assenta em  Melhorias constantes do código Utilizador envolvido na equipa de desenvolvimento Programação em pares Capítulo 17 do livro. Ver também http://www.extremeprogramming.org/. 2009/2010 19 Engenharia do Software I
Desenvolvimento em espiral Processo como espiral e não sequência de actividades com retrocesso Espiras representam fases do processo Sem fases fixas como especificação ou desenho – espiras escolhidas segundo necessário Riscos avaliados e resolvidos explicitamente ao longo do processo 2009/2010 20 Engenharia do Software I
Modelo em espiral 2009/2010 21 Engenharia do Software I Custo cumulativo Progresso ao longo dos passos Avaliação de alternativas, identificação e resolução de riscos. Determinação de objectivos, alternativas e restrições Análise de risco Análise de risco Análise de risco Protótipo operacional Partição de compromisso Protótipo3 AnálISE risco Protótipo2 Protótipo1 Revisão Simulações Plan-Req. e ciclo vida Modelos Conceito de operação Benchmarks Requisitos do software Planeamento de desenvolvimento Desenho de pormenor Desenho do produto de software Validação de requisitos Código Planeamento de  integração e testes Validação e verificação do desenho TESTES UNITÁRIOS Planeamento das próximas fases TESTES de integração Desenvolvimento e verificação do produto do próximo nível TESTES de aceitação Implemen-tação
Sectores do modelo espiral 2009/2010 22 Engenharia do Software I
Actividades do processo Especificação de software Desenho e implementação de software Validação de software Evolução de software 2009/2010 23 Engenharia do Software I
Especificação do software Processo de estabelecer serviços requeridos e restrições à operação e desenvolvimento do sistema Processo de engenharia de requisitos Estudo de viabilidade Eliciação e análise de requisitos Especificação de requisitos Validação de requisitos 2009/2010 24 Engenharia do Software I
Desenho e implementação do software Processo de converter especificação do sistema em sistema executável Desenho de software – Desenhar estrutura de software realizando especificação Implementação – Traduzir estrutura de software em programa executável Estas actividades estão intimamente relacionadas e podem ser entrelaçadas 2009/2010 25 Engenharia do Software I
Actividades do processo de desenho Desenho arquitectural Especificação abstracta Desenho de interfaces Desenho de componentes Desenho de estruturas de dados Desenho de algoritmos 2009/2010 Engenharia do Software I 26
Processo de desenho de software 2009/2010 27 Engenharia do Software I Especificação de requisitos Desenho arquitectural Especificação abstracta Actividades de desenho Arquitectura do sistema Desenho de interfaces Especificação do software Desenho de componentes Especificação da interface Desenho de estruturas de dados Especificação dos componentes Produtos de desenho Desenho de algoritmos Especificação das estruturas de dados Especificação dos algoritmos
Métodos estruturados Abordagens sistemáticas ao desenvolvimento de desenhos de software Desenho normalmente documentados como conjunto de modelos gráficos Modelo de objectos Modelo de sequência Modelo de transição de estados Modelo estrutural Modelo de fluxo de dados 2009/2010 Engenharia do Software I 28
Programação e depuração Tradução de desenho em programa e remoção de erros do programa Programação é actividade pessoal – não há processo genérico de programação Programadores efectuam alguns testes para revelar falhas no programa e as remover no processo de depuração 2009/2010 Engenharia do Software I 29 No entanto, XP prescreve programação em pares e TDD.
Processo de depuração 2009/2010 30 Engenharia do Software I Desenhar correcção do erro Testar programa de novo Localizar erro Corrigir erro
Validação de software Verificação e validação (V & V) mostra que sistema está conforme especificação e cumpre requisitos do cliente Inclui processos de verificação e revisão, bem como testes de sistema Testes de sistema incluem execução do sistema com casos de teste resultantes da especificação dos dados reais a processar 2009/2010 Engenharia do Software I 31
Processo de teste 2009/2010 32 Engenharia do Software I Testes de componentes Testes de sistema Testes de aceitação
Etapas de teste 2009/2010 Engenharia do Software I 33
Especificação de requisitos Serviço Testes de aceitação Fases de teste (modelo em V) 2009/2010 34 Engenharia do Software I Especificação de sistema Desenho de sistema Testes de integração de sistema Plano de testes de integração de subsistemas Plano de testes de integração de sistemas Plano de testes de aceitação Desenho de pormenor Testes de integração de subsistemas Codificação e teste de módulos e unidades
Evolução de software Software inerentemente flexível e mutável Requisitos mudam devido a alterações nas circunstâncias do negócio, logo software de suporte tem de evoluir e mudar também Demarcação entre desenvolvimento e evolução (manutenção) torna-se menos clara à medida que há menos sistemas totalmente novos 2009/2010 Engenharia do Software I 35
Evolução de sistema 2009/2010 36 Engenharia do Software I Aferição dos sistemas existentes Definição de requisitos do sistema Proposta de modificações ao sistema Modificação dos sistemas Sistemas existentes Novo sistema
Rational Unified Process Modelo moderno de processo com origem no trabalho no UML e processo associado Descrito normalmente segundo três perspectivas Dinâmica – Mostra fases ao longo do tempo Estática – Mostra as actividades do processo Prática – Sugere boas práticas 2009/2010 Engenharia do Software I 37
Rational Unified Process Produto/infra-estrutura que organizações de desenvolvimento de software podem personalizar Combina os três modelos de processo de software genéricos Em cascata Evolutivo Baseado em componentes 2009/2010 Engenharia do Software I 38
Modelo de fases do RUP 2009/2010 39 Engenharia do Software I Iteração de fase Começo Elaboração Construção Transição
Fases do RUP 2009/2010 Engenharia do Software I 40
O RUP 2009/2010 Engenharia do Software I 41
Boas práticas RUP Desenvolver o software iterativamente Gerir os requisitos Usar arquitecturas baseadas em componentes Modelar visualmente o software Verificar a qualidade do software Controlar modificações ao software 2009/2010 Engenharia do Software I 42
Fluxos de trabalho estáticos 2009/2010 Engenharia do Software I 43
Fluxos de trabalho estáticos 2009/2010 Engenharia do Software I 44
CASE (Computer-Aided Software Engineering) Software de suporte aos processos de desenvolvimento e evolução de software Automação de actividades Editores gráficos para desenvolvimento de modelos do sistema Dicionários de dados para gestão das entidades de desenho Construtores de interfaces gráficas com o utilizador Depuradores para suportar a descoberta de falhas nos programas Tradutores automatizados para gerar novas versões de um programa 2009/2010 Engenharia do Software I 45
Tecnologia CASE Levou a melhorias significativas no processo de software, mas não tão grandes se havia previsto Engenharia do software exige pensamento criativo, que não se automatiza facilmente Engenharia do software é uma actividade de equipa passando-se muito tempo em interacções dentro da equipa quando o projecto é de grande dimensão. A tecnologia CASE não suporta estas interacções. 2009/2010 Engenharia do Software I 46
Classificação CASE 2009/2010 Engenharia do Software I 47
Classificação funcional 2009/2010 Engenharia do Software I 48
Classificação funcional 2009/2010 Engenharia do Software I 49
Classificação por actividade 2009/2010 Engenharia do Software I 50
Classificação por integração 2009/2010 Engenharia do Software I 51
A reter Processos de software são actividades envolvidas na produção e evolução de sistemas de software Modelos de processos de software são representações abstractas desses processos Actividades gerais são especificação, desenho e implementação, validação e evolução Modelos genéricos de processos descrevem organização dos processos de software. Exemplos: em cascata, desenvolvimento evolutivo e engenharia do software baseada em componentes 2009/2010 Engenharia do Software I 52
A reter Modelos de processos iterativos descrevem processo de software como ciclo de actividades Engenharia de requisitos é processo de desenvolvimento de especificações de software Processos de desenho e implementação transformam especificação em programa executável Validação envolve verificar que sistema satisfaz especificação e necessidades dos utilizadores 2009/2010 Engenharia do Software I 53
A reter Evolução respeita a modificações no sistema depois de em produção RUP é modelo genérico de processo que separa actividades de fases Tecnologia CASE suporta actividades do processo de software 2009/2010 Engenharia do Software I 54
A ler IanSommerville, Software Engineering, 8.ª edição, Addison-Wesley, 2006 Capítulo 4 2009/2010 55 Engenharia do Software I

Mais conteúdo relacionado

Mais procurados

Introdução à Lógica de Programação
Introdução à Lógica de ProgramaçãoIntrodução à Lógica de Programação
Introdução à Lógica de ProgramaçãoAndré Agostinho
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareCloves da Rocha
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Mariana Camargo
 
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosElaine Cecília Gatto
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Sérgio Souza Costa
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAislan Rafael
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareÁlvaro Farias Pinheiro
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Leinylson Fontinele
 
Analise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UMLAnalise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UMLRildo (@rildosan) Santos
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugolGabriel Faustino
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosMario Jorge Pereira
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Softwareeros.viggiano
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonPriscila Mayumi
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de softwareRondinelli Mesquita
 
Lógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicionalLógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicionalWesley R. Bezerra
 

Mais procurados (20)

Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
Introdução à Lógica de Programação
Introdução à Lógica de ProgramaçãoIntrodução à Lógica de Programação
Introdução à Lógica de Programação
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de Algoritmos
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
 
Algoritmo aula 01-f
Algoritmo   aula 01-fAlgoritmo   aula 01-f
Algoritmo aula 01-f
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de Software
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
 
Analise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UMLAnalise e Desenho Orientado a Objetos com UML
Analise e Desenho Orientado a Objetos com UML
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugol
 
Algoritmos em portugol
Algoritmos em portugolAlgoritmos em portugol
Algoritmos em portugol
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Gráfico de gantt
Gráfico de ganttGráfico de gantt
Gráfico de gantt
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 
Aula 7 - Modelagem de Software
Aula 7 - Modelagem de SoftwareAula 7 - Modelagem de Software
Aula 7 - Modelagem de Software
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de software
 
Lógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicionalLógica de Programação - Estrutura condicional
Lógica de Programação - Estrutura condicional
 

Destaque

Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentaçãoerysonsi
 
A Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de SoftwareA Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de SoftwareRobson Silva Espig
 
Modelos de ciclo de vida de software
Modelos de ciclo de vida de softwareModelos de ciclo de vida de software
Modelos de ciclo de vida de softwareYuri Garcia
 
PROCESS SPECIFICATION - FI-CO MODULES
PROCESS SPECIFICATION - FI-CO MODULES PROCESS SPECIFICATION - FI-CO MODULES
PROCESS SPECIFICATION - FI-CO MODULES Patricia Batisti
 
Visão Geral Arquiteturade Software
Visão Geral Arquiteturade SoftwareVisão Geral Arquiteturade Software
Visão Geral Arquiteturade Softwareelliando dias
 
Processo Unificado(RUP)
Processo Unificado(RUP)Processo Unificado(RUP)
Processo Unificado(RUP)elliando dias
 
Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...
Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...
Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...braquehais
 
Engenharia de Software para Jogos
Engenharia de  Software para JogosEngenharia de  Software para Jogos
Engenharia de Software para JogosRicardo Leite
 
Desenvolvimento Iterativo-Incremental
Desenvolvimento Iterativo-IncrementalDesenvolvimento Iterativo-Incremental
Desenvolvimento Iterativo-IncrementalRuan Carvalho
 
UnP Eng. Software - Aula 3
UnP Eng. Software - Aula 3UnP Eng. Software - Aula 3
UnP Eng. Software - Aula 3Hélio Medeiros
 
Es capítulo 2 - processos de software
Es   capítulo 2  - processos de softwareEs   capítulo 2  - processos de software
Es capítulo 2 - processos de softwareFelipe Oliveira
 

Destaque (20)

Modelos de processos de software
Modelos de processos de softwareModelos de processos de software
Modelos de processos de software
 
Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentação
 
A Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de SoftwareA Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de Software
 
Aula2 paradigmas
Aula2 paradigmasAula2 paradigmas
Aula2 paradigmas
 
Prototipação
PrototipaçãoPrototipação
Prototipação
 
Modelos de Processo de Software
Modelos de Processo de SoftwareModelos de Processo de Software
Modelos de Processo de Software
 
Modelos de ciclo de vida de software
Modelos de ciclo de vida de softwareModelos de ciclo de vida de software
Modelos de ciclo de vida de software
 
PROCESS SPECIFICATION - FI-CO MODULES
PROCESS SPECIFICATION - FI-CO MODULES PROCESS SPECIFICATION - FI-CO MODULES
PROCESS SPECIFICATION - FI-CO MODULES
 
Visão Geral Arquiteturade Software
Visão Geral Arquiteturade SoftwareVisão Geral Arquiteturade Software
Visão Geral Arquiteturade Software
 
Processo Unificado(RUP)
Processo Unificado(RUP)Processo Unificado(RUP)
Processo Unificado(RUP)
 
Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...
Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...
Apresentacao Cap 3 BPM CBOK - Modelagem de Processos - Antonio Braquehais, cb...
 
Rational Unified Process (RUP)
Rational Unified Process (RUP)Rational Unified Process (RUP)
Rational Unified Process (RUP)
 
Introdução ao RUP
Introdução ao RUPIntrodução ao RUP
Introdução ao RUP
 
Engenharia de Software para Jogos
Engenharia de  Software para JogosEngenharia de  Software para Jogos
Engenharia de Software para Jogos
 
Desenvolvimento Iterativo-Incremental
Desenvolvimento Iterativo-IncrementalDesenvolvimento Iterativo-Incremental
Desenvolvimento Iterativo-Incremental
 
Aula2 processos sw
Aula2 processos swAula2 processos sw
Aula2 processos sw
 
Aula 3
Aula 3Aula 3
Aula 3
 
UnP Eng. Software - Aula 3
UnP Eng. Software - Aula 3UnP Eng. Software - Aula 3
UnP Eng. Software - Aula 3
 
Es capítulo 2 - processos de software
Es   capítulo 2  - processos de softwareEs   capítulo 2  - processos de software
Es capítulo 2 - processos de software
 
Modelos de processos de software
Modelos de processos de softwareModelos de processos de software
Modelos de processos de software
 

Semelhante a Eng.ª do Software - 4. Processos de software

Eng.ª do Software - 5. Desenvolvimento rápido de software
Eng.ª do Software - 5. Desenvolvimento rápido de softwareEng.ª do Software - 5. Desenvolvimento rápido de software
Eng.ª do Software - 5. Desenvolvimento rápido de softwareManuel Menezes de Sequeira
 
Introdução a engenharia de software aula 02
Introdução a engenharia de software   aula 02Introdução a engenharia de software   aula 02
Introdução a engenharia de software aula 02Franklin Matos Correia
 
Introdução a engenharia de software aula 01
Introdução a engenharia de software   aula 01Introdução a engenharia de software   aula 01
Introdução a engenharia de software aula 01Franklin Matos Correia
 
Eng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validaçãoEng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validaçãoManuel Menezes de Sequeira
 
Eng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitosEng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitosManuel Menezes de Sequeira
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De SoftwareCursoSENAC
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaLucasBastos305659
 
Modelo plano de_testes
Modelo plano de_testesModelo plano de_testes
Modelo plano de_testesIsaias Silva
 
Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9wilsonguns
 
03 Modelo de processo de software
03 Modelo de processo de software03 Modelo de processo de software
03 Modelo de processo de softwareWaldemar Roberti
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioAdriano Bertucci
 
Es2 modelo de processo de software
Es2 modelo de processo de softwareEs2 modelo de processo de software
Es2 modelo de processo de softwareluacal
 
Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4Elaine Cecília Gatto
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Erivelton Silva Rocha
 

Semelhante a Eng.ª do Software - 4. Processos de software (20)

Eng.ª do Software - 5. Desenvolvimento rápido de software
Eng.ª do Software - 5. Desenvolvimento rápido de softwareEng.ª do Software - 5. Desenvolvimento rápido de software
Eng.ª do Software - 5. Desenvolvimento rápido de software
 
Eng.ª do Software - 1. Introdução
Eng.ª do Software - 1. IntroduçãoEng.ª do Software - 1. Introdução
Eng.ª do Software - 1. Introdução
 
ES4.ppt
ES4.pptES4.ppt
ES4.ppt
 
Introdução a engenharia de software aula 02
Introdução a engenharia de software   aula 02Introdução a engenharia de software   aula 02
Introdução a engenharia de software aula 02
 
Introdução a engenharia de software aula 01
Introdução a engenharia de software   aula 01Introdução a engenharia de software   aula 01
Introdução a engenharia de software aula 01
 
Eng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validaçãoEng.ª do Software - 9. Verificação e validação
Eng.ª do Software - 9. Verificação e validação
 
Eng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitosEng.ª do Software - 3. Processos da engenharia de requisitos
Eng.ª do Software - 3. Processos da engenharia de requisitos
 
152191 11993
152191 11993152191 11993
152191 11993
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software Moderna
 
Modelo plano de_testes
Modelo plano de_testesModelo plano de_testes
Modelo plano de_testes
 
Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9
 
03 Modelo de processo de software
03 Modelo de processo de software03 Modelo de processo de software
03 Modelo de processo de software
 
Aula1 eng software
Aula1 eng softwareAula1 eng software
Aula1 eng software
 
Aula1 introducao engsw
Aula1 introducao engswAula1 introducao engsw
Aula1 introducao engsw
 
IBM Rational Unified Process
IBM Rational Unified ProcessIBM Rational Unified Process
IBM Rational Unified Process
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual Studio
 
Es2 modelo de processo de software
Es2 modelo de processo de softwareEs2 modelo de processo de software
Es2 modelo de processo de software
 
Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1
 

Mais de Manuel Menezes de Sequeira

14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...Manuel Menezes de Sequeira
 
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...Manuel Menezes de Sequeira
 
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...Manuel Menezes de Sequeira
 
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...Manuel Menezes de Sequeira
 
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...Manuel Menezes de Sequeira
 
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...Manuel Menezes de Sequeira
 
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de ProgramaçãoManuel Menezes de Sequeira
 
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...Manuel Menezes de Sequeira
 
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...Manuel Menezes de Sequeira
 
4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de Programação4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de ProgramaçãoManuel Menezes de Sequeira
 
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...Manuel Menezes de Sequeira
 
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...Manuel Menezes de Sequeira
 
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...Manuel Menezes de Sequeira
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...Manuel Menezes de Sequeira
 
Semana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instânciasSemana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instânciasManuel Menezes de Sequeira
 
Semana 9: toString, classes, instâncias e objectos, Scanner
Semana  9: toString, classes, instâncias e objectos, ScannerSemana  9: toString, classes, instâncias e objectos, Scanner
Semana 9: toString, classes, instâncias e objectos, ScannerManuel Menezes de Sequeira
 
Semana 8: Classes e instâncias, cadeias de caracteres
Semana  8: Classes e instâncias, cadeias de caracteresSemana  8: Classes e instâncias, cadeias de caracteres
Semana 8: Classes e instâncias, cadeias de caracteresManuel Menezes de Sequeira
 
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana  6: Matrizes multidimensionais, estratégias de resolução de problemasSemana  6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemasManuel Menezes de Sequeira
 
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referênciaSemana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referênciaManuel Menezes de Sequeira
 
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana  4: Atribuições especiais, matrizes, ciclos, classes pacoteSemana  4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacoteManuel Menezes de Sequeira
 

Mais de Manuel Menezes de Sequeira (20)

14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
 
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
 
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
 
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
 
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
 
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
 
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
 
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
 
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
 
4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de Programação4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de Programação
 
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
 
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
 
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
 
Semana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instânciasSemana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
 
Semana 9: toString, classes, instâncias e objectos, Scanner
Semana  9: toString, classes, instâncias e objectos, ScannerSemana  9: toString, classes, instâncias e objectos, Scanner
Semana 9: toString, classes, instâncias e objectos, Scanner
 
Semana 8: Classes e instâncias, cadeias de caracteres
Semana  8: Classes e instâncias, cadeias de caracteresSemana  8: Classes e instâncias, cadeias de caracteres
Semana 8: Classes e instâncias, cadeias de caracteres
 
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana  6: Matrizes multidimensionais, estratégias de resolução de problemasSemana  6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemas
 
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referênciaSemana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
 
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana  4: Atribuições especiais, matrizes, ciclos, classes pacoteSemana  4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacote
 

Último

Conflitos entre: ISRAEL E PALESTINA.pdf
Conflitos entre:  ISRAEL E PALESTINA.pdfConflitos entre:  ISRAEL E PALESTINA.pdf
Conflitos entre: ISRAEL E PALESTINA.pdfjacquescardosodias
 
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfamarianegodoi
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxLuizHenriquedeAlmeid6
 
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...andreiavys
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...MariaCristinaSouzaLe1
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLidianePaulaValezi
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docPauloHenriqueGarciaM
 
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedAula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedJaquelineBertagliaCe
 
QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralAntonioVieira539017
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptRogrioGonalves41
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfAutonoma
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxMarcosLemes28
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxAntonioVieira539017
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticash5kpmr7w7
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeitotatianehilda
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptssuser2b53fe
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdfmarlene54545
 
classe gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxclasse gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxLuciana Luciana
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do séculoBiblioteca UCS
 

Último (20)

Conflitos entre: ISRAEL E PALESTINA.pdf
Conflitos entre:  ISRAEL E PALESTINA.pdfConflitos entre:  ISRAEL E PALESTINA.pdf
Conflitos entre: ISRAEL E PALESTINA.pdf
 
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...E a chuva ...  (Livro pedagógico para ser usado na educação infantil e trabal...
E a chuva ... (Livro pedagógico para ser usado na educação infantil e trabal...
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretação
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedAula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
 
QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geral
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.ppt
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
classe gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxclasse gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptx
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 

Eng.ª do Software - 4. Processos de software

  • 1. Engenharia do Software I Manuel Menezes de Sequeira DCTI, ISCTE-IUL Manuel.Sequeira@iscte.pt, D6.02 As apresentações desta série baseiam-se nas apresentações disponibilizadas por IanSommerville, tendo sido alteradas e adaptadas primeiro por  Anders Lyhne Christensen e finalmente por Manuel Menezes de Sequeira.
  • 2. Sumário Processos de software Modelos de processos de software Iteração de processos Actividades de processo RUP (RationalUnifiedProcess) CASE (Computer-Aided Software Engineering) 2009/2010 Engenharia do Software I 2
  • 3. Processos de Software 2009/2010 3 Engenharia do Software I
  • 4. Na aula anterior Processo da engenharia de requisitos Estudos de viabilidade Eliciação e análise de requisitos Validação de requisitos Gestão de requisitos 2009/2010 4 Engenharia do Software I
  • 5. Processo de software Conjunto estruturado de actividades necessárias para desenvolver sistema de software Especificação Desenho Validação Evolução Modelo de processo de software é representação abstracta de processo, descrevendo-o sob um ponto de vista particular 2009/2010 5 Engenharia do Software I
  • 6. Modelos genéricos de processo de software Há muitas variantes destes modelos. Por exemplo, o desenvolvimento formal, que usa um processo semelhante ao do modelo em cascata, mas em que a especificação, que é formal, é refinada ao longo de várias etapas até se atingir um desenho implementável. 2009/2010 6 Engenharia do Software I
  • 7. Modelo em cascata Definição de requisitos Etapas Desenho do sistema e do software Implementação e testes unitários Integração e testes de sistema O principal inconveniente deste modelo é que dificulta lidar com mudanças depois do processo estar em andamento. Tem de se completar cada uma das fases antes de avançar para a fase seguinte. Operação e manutenção 2009/2010 7 Engenharia do Software I
  • 8. Problemas do modelo em cascata Segmentação inflexível do projecto em etapas distintas dificulta resposta a modificações nos requisitos do cliente Apropriado apenas quando requisitos são bem compreendidos e modificações se previrem bastante limitadas Sobretudo grandes projectos de engenharia de sistemas com sistema desenvolvido em vários locais Poucos negócios têm requisitos estáveis. 2009/2010 8 Engenharia do Software I
  • 9. Desenvolvimento evolutivo 2009/2010 9 Engenharia do Software I
  • 10. Actividades concorrentes Desenvolvimento evolutivo Especificação Versão inicial Descrição geral Desenvolvimento Versões intermédias Validação Versão final 2009/2010 10 Engenharia do Software I
  • 11. Desenvolvimento evolutivo Problemas Fala de visibilidade do processo Sistemas muitas vezes mal estruturados Podem ser necessárias competências especiais (e.g., em linguagens de prototipagem rápida) Aplicabilidade Sistemas interactivos de pequena ou média dimensão Partes de sistemas de grande dimensão (e.g., interface com utilizador) Sistemas com tempo de vida curto 2009/2010 11 Engenharia do Software I
  • 12. Engenharia do software baseada em componentes Baseia-se em reutilização sistemática Sistemas integrados a partir de componentes existentes ou sistemas comerciais prontos a usar Etapas do processo Análise de componentes Modificação de requisitos Desenho do sistema com reutilização Desenvolvimento e integração Abordagem mais usada à medida que a normalização de componentes vai progredindo. COTS (Commercial-Off-The-Shelf) 2009/2010 12 Engenharia do Software I
  • 13. Desenvolvimento orientado pela reutilização Especificação de requisitos Análise de componentes Modificação de requisitos Desenho do sistema com reutilização Desenvolvimento e integração Validação do sistema 2009/2010 13 Engenharia do Software I
  • 14. Iteração de processos Requisitos do sistema evoluem sempre ao longo de um projecto… …logo, para sistemas de grande dimensão, iterações do processo são sempre parte desse processo Iterações são repetições das etapas iniciais do processo 2009/2010 14 Engenharia do Software I
  • 15. Iteração de processos Iteração aplica-se a qualquer modelo genérico de processo Duas abordagens (relacionadas) Entrega incremental Desenvolvimento em espiral 2009/2010 15 Engenharia do Software I
  • 16. Entrega incremental Em vez de entrega única, desenvolvimento e entrega divididos em incrementos, cada um entregando parte da funcionalidade Requisitos do utilizador prioritizados; requisitos prioritários desenvolvidos primeiro Logo que se inicia desenvolvimento de um incremento, seus requisitos são congelados; requisitos de incrementos posteriores continuam a evoluir 2009/2010 16 Engenharia do Software I
  • 17. Desenvolvimento incremental Definir visão geral dos requisitos Atribuir requisitos a incrementos Desenhar arquitectura do sistema Desenvolver incremento do sistema Validar incremento Integrar incremento Validar sistema Sistema final Sistema incompleto 2009/2010 17 Engenharia do Software I
  • 18. Vantagens do desenvolvimento incremental Cada incremento entrega valor ao cliente; funcionalidade do sistema disponível mais cedo Incrementos iniciais como protótipos ajudam eliciação de requisitos para novos incrementos Menor risco de falha global do projecto Serviços prioritários do sistema tendem a ser os mais testados 2009/2010 18 Engenharia do Software I
  • 19. XP – Extreme Programming Abordagem ao desenvolvimento Baseada no desenvolvimento e entrega de pequenos incrementos de funcionalidade Assenta em Melhorias constantes do código Utilizador envolvido na equipa de desenvolvimento Programação em pares Capítulo 17 do livro. Ver também http://www.extremeprogramming.org/. 2009/2010 19 Engenharia do Software I
  • 20. Desenvolvimento em espiral Processo como espiral e não sequência de actividades com retrocesso Espiras representam fases do processo Sem fases fixas como especificação ou desenho – espiras escolhidas segundo necessário Riscos avaliados e resolvidos explicitamente ao longo do processo 2009/2010 20 Engenharia do Software I
  • 21. Modelo em espiral 2009/2010 21 Engenharia do Software I Custo cumulativo Progresso ao longo dos passos Avaliação de alternativas, identificação e resolução de riscos. Determinação de objectivos, alternativas e restrições Análise de risco Análise de risco Análise de risco Protótipo operacional Partição de compromisso Protótipo3 AnálISE risco Protótipo2 Protótipo1 Revisão Simulações Plan-Req. e ciclo vida Modelos Conceito de operação Benchmarks Requisitos do software Planeamento de desenvolvimento Desenho de pormenor Desenho do produto de software Validação de requisitos Código Planeamento de integração e testes Validação e verificação do desenho TESTES UNITÁRIOS Planeamento das próximas fases TESTES de integração Desenvolvimento e verificação do produto do próximo nível TESTES de aceitação Implemen-tação
  • 22. Sectores do modelo espiral 2009/2010 22 Engenharia do Software I
  • 23. Actividades do processo Especificação de software Desenho e implementação de software Validação de software Evolução de software 2009/2010 23 Engenharia do Software I
  • 24. Especificação do software Processo de estabelecer serviços requeridos e restrições à operação e desenvolvimento do sistema Processo de engenharia de requisitos Estudo de viabilidade Eliciação e análise de requisitos Especificação de requisitos Validação de requisitos 2009/2010 24 Engenharia do Software I
  • 25. Desenho e implementação do software Processo de converter especificação do sistema em sistema executável Desenho de software – Desenhar estrutura de software realizando especificação Implementação – Traduzir estrutura de software em programa executável Estas actividades estão intimamente relacionadas e podem ser entrelaçadas 2009/2010 25 Engenharia do Software I
  • 26. Actividades do processo de desenho Desenho arquitectural Especificação abstracta Desenho de interfaces Desenho de componentes Desenho de estruturas de dados Desenho de algoritmos 2009/2010 Engenharia do Software I 26
  • 27. Processo de desenho de software 2009/2010 27 Engenharia do Software I Especificação de requisitos Desenho arquitectural Especificação abstracta Actividades de desenho Arquitectura do sistema Desenho de interfaces Especificação do software Desenho de componentes Especificação da interface Desenho de estruturas de dados Especificação dos componentes Produtos de desenho Desenho de algoritmos Especificação das estruturas de dados Especificação dos algoritmos
  • 28. Métodos estruturados Abordagens sistemáticas ao desenvolvimento de desenhos de software Desenho normalmente documentados como conjunto de modelos gráficos Modelo de objectos Modelo de sequência Modelo de transição de estados Modelo estrutural Modelo de fluxo de dados 2009/2010 Engenharia do Software I 28
  • 29. Programação e depuração Tradução de desenho em programa e remoção de erros do programa Programação é actividade pessoal – não há processo genérico de programação Programadores efectuam alguns testes para revelar falhas no programa e as remover no processo de depuração 2009/2010 Engenharia do Software I 29 No entanto, XP prescreve programação em pares e TDD.
  • 30. Processo de depuração 2009/2010 30 Engenharia do Software I Desenhar correcção do erro Testar programa de novo Localizar erro Corrigir erro
  • 31. Validação de software Verificação e validação (V & V) mostra que sistema está conforme especificação e cumpre requisitos do cliente Inclui processos de verificação e revisão, bem como testes de sistema Testes de sistema incluem execução do sistema com casos de teste resultantes da especificação dos dados reais a processar 2009/2010 Engenharia do Software I 31
  • 32. Processo de teste 2009/2010 32 Engenharia do Software I Testes de componentes Testes de sistema Testes de aceitação
  • 33. Etapas de teste 2009/2010 Engenharia do Software I 33
  • 34. Especificação de requisitos Serviço Testes de aceitação Fases de teste (modelo em V) 2009/2010 34 Engenharia do Software I Especificação de sistema Desenho de sistema Testes de integração de sistema Plano de testes de integração de subsistemas Plano de testes de integração de sistemas Plano de testes de aceitação Desenho de pormenor Testes de integração de subsistemas Codificação e teste de módulos e unidades
  • 35. Evolução de software Software inerentemente flexível e mutável Requisitos mudam devido a alterações nas circunstâncias do negócio, logo software de suporte tem de evoluir e mudar também Demarcação entre desenvolvimento e evolução (manutenção) torna-se menos clara à medida que há menos sistemas totalmente novos 2009/2010 Engenharia do Software I 35
  • 36. Evolução de sistema 2009/2010 36 Engenharia do Software I Aferição dos sistemas existentes Definição de requisitos do sistema Proposta de modificações ao sistema Modificação dos sistemas Sistemas existentes Novo sistema
  • 37. Rational Unified Process Modelo moderno de processo com origem no trabalho no UML e processo associado Descrito normalmente segundo três perspectivas Dinâmica – Mostra fases ao longo do tempo Estática – Mostra as actividades do processo Prática – Sugere boas práticas 2009/2010 Engenharia do Software I 37
  • 38. Rational Unified Process Produto/infra-estrutura que organizações de desenvolvimento de software podem personalizar Combina os três modelos de processo de software genéricos Em cascata Evolutivo Baseado em componentes 2009/2010 Engenharia do Software I 38
  • 39. Modelo de fases do RUP 2009/2010 39 Engenharia do Software I Iteração de fase Começo Elaboração Construção Transição
  • 40. Fases do RUP 2009/2010 Engenharia do Software I 40
  • 41. O RUP 2009/2010 Engenharia do Software I 41
  • 42. Boas práticas RUP Desenvolver o software iterativamente Gerir os requisitos Usar arquitecturas baseadas em componentes Modelar visualmente o software Verificar a qualidade do software Controlar modificações ao software 2009/2010 Engenharia do Software I 42
  • 43. Fluxos de trabalho estáticos 2009/2010 Engenharia do Software I 43
  • 44. Fluxos de trabalho estáticos 2009/2010 Engenharia do Software I 44
  • 45. CASE (Computer-Aided Software Engineering) Software de suporte aos processos de desenvolvimento e evolução de software Automação de actividades Editores gráficos para desenvolvimento de modelos do sistema Dicionários de dados para gestão das entidades de desenho Construtores de interfaces gráficas com o utilizador Depuradores para suportar a descoberta de falhas nos programas Tradutores automatizados para gerar novas versões de um programa 2009/2010 Engenharia do Software I 45
  • 46. Tecnologia CASE Levou a melhorias significativas no processo de software, mas não tão grandes se havia previsto Engenharia do software exige pensamento criativo, que não se automatiza facilmente Engenharia do software é uma actividade de equipa passando-se muito tempo em interacções dentro da equipa quando o projecto é de grande dimensão. A tecnologia CASE não suporta estas interacções. 2009/2010 Engenharia do Software I 46
  • 47. Classificação CASE 2009/2010 Engenharia do Software I 47
  • 48. Classificação funcional 2009/2010 Engenharia do Software I 48
  • 49. Classificação funcional 2009/2010 Engenharia do Software I 49
  • 50. Classificação por actividade 2009/2010 Engenharia do Software I 50
  • 51. Classificação por integração 2009/2010 Engenharia do Software I 51
  • 52. A reter Processos de software são actividades envolvidas na produção e evolução de sistemas de software Modelos de processos de software são representações abstractas desses processos Actividades gerais são especificação, desenho e implementação, validação e evolução Modelos genéricos de processos descrevem organização dos processos de software. Exemplos: em cascata, desenvolvimento evolutivo e engenharia do software baseada em componentes 2009/2010 Engenharia do Software I 52
  • 53. A reter Modelos de processos iterativos descrevem processo de software como ciclo de actividades Engenharia de requisitos é processo de desenvolvimento de especificações de software Processos de desenho e implementação transformam especificação em programa executável Validação envolve verificar que sistema satisfaz especificação e necessidades dos utilizadores 2009/2010 Engenharia do Software I 53
  • 54. A reter Evolução respeita a modificações no sistema depois de em produção RUP é modelo genérico de processo que separa actividades de fases Tecnologia CASE suporta actividades do processo de software 2009/2010 Engenharia do Software I 54
  • 55. A ler IanSommerville, Software Engineering, 8.ª edição, Addison-Wesley, 2006 Capítulo 4 2009/2010 55 Engenharia do Software I