ENGENHARIA DE SOFTWARE

Documentos relacionados
Engenharia de Software. Processos. Desenvolvimento de Software Tradicionais 2014/2. Prof. Luís Fernando Garcia

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Processos de software

Engenharia de Software

Engenharia de Software

INTRODUÇÃO A ENGENHARIA DE SOFTWARE

Processos de Software

Prof. Dr. Thiago Jabur Bittar

Engenharia de Software I Processos de desenvolvimento de SW. profa. Denise Neves

Processos de Software

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

15/03/2018. Professor Ariel da Silva Dias Modelos de Processo de Software

Engenharia de Software

Desenvolvimento de Projetos

Paradigmas de Software

Capítulo 2 - Processos de Software

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE

Engenharia de Software II

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 03 PROFª BRUNO CALEGARO

Princípios da Engenharia de Software aula 03

PDS. Aula 1.4 Modelos de Processo. Prof. Dr. Bruno Moreno

Modelos de Processo de Software

Modelos de Processo de Software. Profª Jocelma Rios

Modelos de Processo de Software

Paradigmas da Engenharia de Software AULA PROF. ABRAHAO LOPES

Fundamentos de Teste de Software

Processos de Desenvolvimento de Software. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 2

Modelos de Processo de Software. SSC Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012

Processo de Desenvolvimento. Edjandir Corrêa Costa

Fábricas de Software. Processos de Software. Fábricas de Software. Fábricas de Software 17/08/2010. Jorge Dias

Escolhendo um Modelo de Ciclo de Vida

Aula 3 - Modelos de Processo - cascata, iterativo e incremental e ágil

Reuso de Software Aula Maio 2012

Engenharia de Software

ENGENHARIA DE SOFTWARE. Aula 03 Processos de Software

Engenharia Software. Ení Berbert Camilo Contaiffer

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1

Engenharia de Software I

Visão Geral do RUP (Rational Unified Process)

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

Requisitos de Software

Modelos de Ciclo de Vida

Estilos Arquiteturais

Análise e Projeto. Prof. Erinaldo Sanches Nascimento

Engenharia de Software

Introdução à Análise e Projeto de Sistemas

Análise e Projeto de Sistemas

UNIP Universidade Paulista Campus Tatuapé SP Ciência da Computação

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

Requisitos de Software

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno

TESTES DE SOFTWARE Lista de Exercício 02. Luiz Leão

Engenharia de Software

Atividades típicas do processo de desenvolvimento

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata

O que são os Sistemas ERP?

Modelagem De Sistemas

CICLO DE VIDA DE SOFTWARE

Engenharia de Software I

Capítulo 6. Projeto de arquitetura Pearson Pren0ce Hall. Todos os direitos reservados. 1. slide 1

O que é um sistema distribuído?

SSC Engenharia de Software. Prof. Paulo C. Masiero

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Modelagem de Sistemas. Análise de Requisitos. Modelagem

Guia do Processo de Teste Metodologia Celepar

Processos de Software

Introdução ao RUP. Livar Correia de O. C. Cunha Effektiv Solutions

ITIL v3 Desenho de Serviço Parte 1

Programação Orientada a Objetos SANTOS, Rafael

TS03. Teste de Software ESTÁGIOS DO TESTE DE SOFTWARE. COTI Informática Escola de Nerds

QUESTÕES TESTES. Questão 1. O modelo de ciclo de vida em cascata:

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

Transcrição:

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Curso Técnico em Informática : ENGENHARIA DE SOFTWARE Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Um conjunto estruturado de atividades exigidas para desenvolver um de software. Embora existam diversos processos de software, temos algumas atividades fundamentais que são comuns a todos eles: software Projeto e implementação de software software Evolução do software Clayton Maciel Costa clayton.maciel@ifrn.edu.br 2 Importante: Um modelo de processo de software é uma representação abstrata de um processo. Ele apresenta uma descrição de um processo a partir de uma perspectiva específica. Modelos genéricos: Fases de especificação e desenvolvimento separadas e distintas. volucionário Especificação e desenvolvimento são interfoliadas. Desenvolvimento baseado em reuso O é montado a partir de existentes Clayton Maciel Costa clayton.maciel@ifrn.edu.br Clayton Maciel Costa clayton.maciel@ifrn.edu.br de e software teste de Clayton Maciel Costa clayton.maciel@ifrn.edu.br 5 de Estabelecer os básicos para todos os s que envolvem o software, como hardware, pessoas e bancos de dados. Envolve e software a coleta dos em nível do, com uma pequena quantidade de projeto e análise de alto nível. Leva à compreensão do domínio da informação, a função, desempenho e interfaces exigidos. Os para o teste de são documentados e revistos com o cliente. Clayton Maciel Costa clayton.maciel@ifrn.edu.br 6 1

de de e software Estrutura de dados Arquitetura Implementação do Sistema e Detalhes testeprocedimentais de unidade Caracterização da interface É avaliado antes de começar Integração a eser implementado Junto com as etapas teste anteriores de torna-se parte da documentação do Clayton Maciel Costa clayton.maciel@ifrn.edu.br 7 e software Projeto traduzido para a linguagem do computador. teste de Clayton Maciel Costa clayton.maciel@ifrn.edu.br 8 de e software de e software Concentra-se nos aspectos lógicos internos do Garante que todas as instruções tenham sido testadas A entrada definida produz os resultados exigidos? teste de Clayton Maciel Costa clayton.maciel@ifrn.edu.br 9 teste de Erros encontrados Mudanças no ambiente externo Acréscimos funcionais Desempenho Clayton Maciel Costa clayton.maciel@ifrn.edu.br 10 Características do modelo em cascata: Proposto por Royce em 1970. Derivado de modelos da engenharia com o fim de estabelecer ORDEM no desenvolvimento de grandes produtos de software. É referência para muitos outros modelos. Orientado para documentação. Características do modelo em cascata: Todas as etapas seguem uma seqüência. A saída da 1 a etapa serve de entrada para 2 a e assim sucessivamente. As atividades são agrupadas em tarefas onde uma só poderá ter início quando a outra tiver acabado. Muito rígido. Esse modelo é apropriado somente quando os são bem compreendidos. Clayton Maciel Costa clayton.maciel@ifrn.edu.br 11 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 12 2

Problemas do modelo em cascata: Nada está terminado até que esteja totalmente pronto. Uma versão funcional não estará disponível até o final do desenvolvimento. Dificuldade em acomodar as mudanças após o processo ter sido iniciado. volucionário: Atividades simultâneas Especificação Versão inicial Os erros triviais são detectados no início enquanto os sérios só são vistos no final. Descrição do esboço Desenvolvimento Versões intermediárias Validação Versão final Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Características do volucionário: xploratório O objetivo é trabalhar com os clientes e evoluir um final a partir de uma especificação genérica inicial. O desenvolvimento se inicia com as partes do que estão compreendidas. Fazer protótipos descartáveis O objetivo é compreender os do. O protótipo se concentra em fazer experimentos com partes dos que estejam mal compreendidas Problemas do volucionário: Falta de visibilidade do processo Os s freqüentemente possuem pouca estrutura Podem ser exigidas habilidades especiais (ex. linguagens para desenvolvimento rápido). Aplicabilidade: Para s interativos pequenos ou de médio porte; Para s de vida curta. Clayton Maciel Costa clayton.maciel@ifrn.edu.br 15 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 16 É feito uma busca pelos para implementar essa especificação. Projeto do Projeto do Clayton Maciel Costa clayton.maciel@ifrn.edu.br 17 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 18

Projeto do Os são analisados usando as informações sobre os encontrados. O framework do é projetado ou um framework existente é reusado. Os projetistas levam em consideração os reusados, organizando o framework para eles. Projeto do Clayton Maciel Costa clayton.maciel@ifrn.edu.br 19 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 20 Projeto do O software é desenvolvido e os e os s COTS são integrados para criar o novo. Características do Desenvolvimento baseado em : Baseia-se no reuso sistemático, onde s são integrados a partir de existentes ou s COTS (Commercial-off-the-shelf); Esta abordagem está se tornando mais importante, mas ainda há uma experiência limitada com ela. SOFTWARE Clayton Maciel Costa clayton.maciel@ifrn.edu.br 21 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 22 Iteração de Processo: Os do SEMPRE evoluem ao longo de um projeto, portanto a iteração do processo, onde estágios iniciais são retrabalhados, é sempre parte do processo para s grandes; A iteração pode ser aplicada a qualquer um dos modelos genéricos de processo. Entrega incremental: Definir iniciais Atribuir aos s Projetar arquitetura de Temos duas abordagens (relacionadas) o Entrega incremental o spiral Desenvolver Validar Integrar Validar Sistema final Clayton Maciel Costa clayton.maciel@ifrn.edu.br 2 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 2

Características do desenvolvimento incremental: Ao invés de entregar o como uma única entrega, quebramse o desenvolvimento e a entrega em s, com cada entregando parte da funcionalidade requerida; Os do usuário são priorizados e os de prioridade mais alta são incluídos nos s iniciais; Uma vez que o desenvolvimento de um é iniciado, os são congelados, ainda que os para s posteriores continuem a evoluir. Vantagens do desenvolvimento incremental: Cada pode entregar valor para o cliente, portanto a funcionalidade do está disponível mais cedo; Incrementos iniciais atuam como um protótipo para ajudar a descobrir para os s posteriores; Menor risco de falha do projeto como um todo; Os serviços de mais alta prioridade do tendem a receber a maior parte dos testes. Clayton Maciel Costa clayton.maciel@ifrn.edu.br 25 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 26 spiral: Avaliar alternativas, identificar, resolver riscos Análise de risco 1 2 Protótipos Revisão 1 2 Plano de Simulação,modelos, benchmarks Plano de ciclo de vida Conceitos operação Requisitos de SW Projeto do Projeto Plano de produto detalhado desenvolvimento Código V&V do unidade plano de teste projeto Planejar próxima fase aceitação Operação Desenvolver, verificar produto de próximo nível 27 Clayton Maciel Costa clayton.maciel@ifrn.edu.br Setores do desenvolvimento espiral: 1 de objetivos identificam-se os objetivos específicos da fase; 2 Avaliação e redução de riscos os riscos são avaliados e são adotadas as atividades para reduzir os ricos principais; validação é escolhido um modelo de desenvolvimento para o, que pode ser qualquer um dos modelos genéricos; Planejamento o projeto é revisado e a próxima fase da espiral é planejada. Clayton Maciel Costa clayton.maciel@ifrn.edu.br 28 Características do desenvolvimento espiral: O processo é representado como uma espiral, em vez de uma seqüência de atividades com caminhos de retorno; Um projeto de software perfeito!!! Cada volta na espiral representa uma fase no processo; Não há fases fixas, tais como especificação ou projeto As voltas na espiral são escolhidas dependendo do que for exigido. Os riscos são explicitamente avaliados e resolvidos durante todo o processo. Clayton Maciel Costa clayton.maciel@ifrn.edu.br 29 Clayton Maciel Costa clayton.maciel@ifrn.edu.br 0 5