Eng Software 1608

  • Uploaded by: marlonvgpm
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Eng Software 1608 as PDF for free.

More details

  • Words: 1,017
  • Pages: 17
Engenharia de Software Processo de Software

Professor Marcio A. Queiroz

PROCESSO DE SOFTWARE  O que é um Processo de Software? Processo de Software é um conjunto de atividades e resultados associados que levam a produção de produto de software. As atividades comuns em um processo de software são: Especificação de software: É preciso definir a funcionalidade do software e as restrições em sua operação. Projeto em implementação de software: Deve ser produzido o software de modo que cumpra sua especificação. Validação de software: O software precisa ser validado para garantir que ele faz o cliente deseja. Evolução de software: O software precisa evoluir para atender às necessidades mutáveis do cliente.

PROCESSO DE SOFTWARE  O que é um MODELO de Processo de Software? É uma descrição simplificada de um processo de software, que é apresentada a partir de uma perspectiva específica. Alguns exemplos dos tipos de modelos de processo de software que podem ser produzidos: Workflow (Fluxo de Trabalho): Seqüência de atividades no processo (representações de ações humanas). Fluxo de dados ou de atividade: Representa o processo com um conjunto de atividades. Maiores detalhes: Página 08 – Capítulo 01 – ES 6ª Edição - Summerville

MODELOS DE PROCESSO DE SOFTWARE Paradigmas de desenvolvimento de software: 

Modelos Seqüências



Modelos incrementais

Modelo Cascata Modelo Incremental Modelos R.A.D



Modelo Evolucionário – Prototipação



Modelo Espiral



Modelos Ágeis

Modelo XP Modelos SCRUM

MODELOS DE PROCESSO DE SOFTWARE  Modelo Cascata/Seqüencial (Waterfall) A proposta do modelo Cascata consiste na execução das atividades de desenvolvimento de software em uma seqüência ordenada. Desta forma, a passagem para determinada atividade exige como critério a finalização da atividade imediatamente anterior. As principais atividades do modelo são: Levantamento de requisitos, Análise de requisitos, projeto, implementação, teste e implantação.

MODELOS DE PROCESSO DE SOFTWARE 

Modelo Cascata/Seqüencial (Waterfall)

Vantagens:  Facilidade no gerenciamento, pois todas as etapas são bem definidas e sem sobreposição;  Muito eficiente em casos nos quais o domínio do problema é bem entendido, por exemplo, projetos em quais vários sistemas semelhantes foram construídos anteriormente. Desvantagens:  Em função da dificuldade de se obter todos os requisitos do sistema no início do projeto, geralmente esse processo resulta em um atraso para o início da fase de projeto, cumulativa ao prazo final;  Obtenção do produto final apenas no final do projeto, deixando margens de correção menores.

MODELOS DE PROCESSO DE SOFTWARE  Modelo Incremental Divide o projeto em “construções”, onde os requerimentos com maior prioridade são construídos nos primeiros incrementos. Como são entregues parte por parte, corre-se o risco de alguma das partes não estarem sincronizadas com as demais. Conhecida como Entrega por Estágio (estratégia de desenvolvimento por estágios)

MODELOS DE PROCESSO DE SOFTWARE  Modelo Incremental – R.A.D. RAD – Desenvolvimento Rápido de Aplicação É utilizado em projetos de grande porte e devem ser entregue em prazos curtos há grande interação entre equipes.

MODELOS DE PROCESSO DE SOFTWARE Modelo Incremental Vantagens:  



Disponibilidade de módulos do sistema mais em menor tempo; Maior facilidade nos testes, sendo que na maioria das vezes, testar cada parte do processo (incremento) é mais fácil do que testar o software pronto como um todo; A resposta (feedback) com do cliente a cada incremento executado (pronto).

MODELOS DE PROCESSO DE SOFTWARE Modelo Incremental Desvantagens:  

Dificuldade na integração dos módulos desenvolvidas do sistema; Difícil mapeamento dos requisitos dos clientes dentro dos incrementos.

MODELOS DE PROCESSO DE SOFTWARE  Modelo Evolucionário - Prototipação O modelo de prototipação surge para tentar atender a dois grandes aspectos pertinentes ao desenvolvimento de software: o primeiro diz respeito à velocidade de desenvolvimento, no sentido de propiciar-se ao usuário uma visão mais real do software que está sendo projetado.

MODELOS DE PROCESSO DE SOFTWARE Modelo Evolucionário - Prototipação Vantagens: 



 

Recomendado para sistemas nos quais os requisitos mudam rapidamente; Favorece uma resposta (feedback) constante do cliente a respeito do protótipo (sistema); Melhor visibilidade do produto que está sendo desenvolvido; Recomendado para sistemas nos quais nem você nem seu cliente conhecem bem o domínio da aplicação;

MODELOS DE PROCESSO DE SOFTWARE Modelo Evolucionário - Prototipação Desvantagens: 





Dificuldade em se prever o tempo que será necessário para produzir um produto aceitável; Tendência em desenvolver no modo implementação-implantação (code-and-fix), causando o esquecimento das fases de análise, projeto e testes; Maior complexidade de gerenciar o projeto, os riscos e a qualidade do produto final.

MODELOS DE PROCESSO DE SOFTWARE

 Modelo Espiral O modelo espiral induz a um desenvolvimento evolucionário de software (o que também se verifica no modelo de prototipação), sem perder a abordagem de execução de etapas sistemáticas, mas que sobrepõe cada iteração do modelo apresentado na figura a seguir:

MODELOS DE PROCESSO DE SOFTWARE  Modelo Espiral Em vez de representar o processo de software em uma seqüência de atividades o processo é representado em espiral.

Cada loop na espiral representa uma fase do processo de software. Assim, o loop mais interno pode estar relacionado a viabilidade do sistema; o loop seguinte, à definição de requisitos do sistema; o próximo loop, ao projeto do sistema, e assim por diante.

MODELOS DE PROCESSO DE SOFTWARE Modelo Espiral Vantagens:  Combinação entre outros modelos de ciclo de vida;  Melhoria na qualidade a partir do planejamento e análise dos riscos em cada fase;  Melhor visibilidade para a gerência, principalmente na gerência de riscos. Desvantagens:  O processo de gerência é mais complexa;  Necessidade de maior experiência da equipe de desenvolvimento, sobretudo dos responsáveis pela gerência;  Exige maior experiência da equipe envolvida e maior esforço para o desenvolvimento, dessa forma, podendo aumentar consideravelmente os custos.

MODELOS DE PROCESSO DE SOFTWARE  Modelo Ágil O termo metodologia ágeis tornou-se popular em 2001, quando 17 especialistas em processos de desenvolvimento de software estabeleceram princípios comuns compartilhados por várias metodologias. O resultado foi a criação de Aliança Ágil e o estabelecimento do manifesto Ágil [http://agilemanifesto.org]. Existem várias metodologias que podem ser consideradas como abordagens ágeis, entre elas: Scrum, Programação Extrema (XP), FDD entre outras. Falaremos um pouco mais desse novo modelo de processo no próximo material.

Related Documents

Eng Software 1608
May 2020 5
1608
December 2019 8
Nov 1608
May 2020 2
Trabalho Eng Software
November 2019 17
Mar 1608
May 2020 2
104-zehntbezirke-1608-gausg
November 2019 3

More Documents from ""

Engsoftware-1
May 2020 1
Eng Software 1608
May 2020 5