Você está na página 1de 40

Modelagem Prof. Me.

Leandro Borges
de Processos
Modelos de Processo de Software
É uma representação de um
processo de software,
apresentada sobre uma
perspectiva específica.

Modelo de É uma estratégia para o


Processo de desenvolvimento do
Software software.

 Define a ordem de execução


das atividades durante as
fases de engenharia de
software.
O que diferencia um modelo de processo do
outro?

 Ordem em que as fases vão ocorrer

 Tempo e a ênfase dados a cada fase

 Atividades presentes

 Produtos entregues
Antes do desenvolvimento de um produto,
devemos escolher um modelo de ciclo de vida!

 Critérios...

Tamanho

Complexidade e/ou nível de confiabilidade

Segurança do projeto
Atividades comuns aos modelos?

 Especificação

 Projeto e Implementação

 Validação

 Evolução
Modelos de Processo de Software

 Cascata(Ciclo de vida clássico ou


tradicional)

 Modelo evolutivo
Espiral
Protótipo
Iterativo
Incremental
Modelo Cascata

 Modelo mais antigo!

 Modeladoem função do ciclo da engenharia


convencional

 Fases sequencial ao desenvolvimento de software

O resultado de uma fase é entrada para outra fase!


Modelo Cascata

 Utilizado
principalmente quando os requisitos de
um determinado problema são bem
compreendidos.

 Utilização...
Fazer adaptações ou aperfeiçoamentos em um
sistema já existente
Necessidade de uma nova funcionalidade e os
requisitos estão bem definidos e são estáveis
Modelo Cascata
Fases - Modelo Cascata

 Definição de Requisitos

O processo de coleta dos requisitos é


intensificado e concentrado
especificamente no software

Deve-se compreender o domínio da


informação, a função, desempenho e
interfaces exigidos
Fases - Modelo Cascata

 Projeto do Sistema

Tradução dos requisitos do software


para um conjunto de representações
que podem ser avaliadas quanto à
qualidade, antes que a codificação se
inicie
Fases - Modelo Cascata

 Implementação

Tradução das representações do projeto


para uma linguagem “artificial”
resultando em instruções executáveis
pelo computador
Fases - Modelo Cascata

 Teste

É a investigação do software a fim de


fornecer informações sobre sua
qualidade em relação ao contexto em
que ele deve operar.

Issoinclui o processo de utilizar o


produto para encontrar seus defeitos!
Fases - Modelo Cascata
 Manutenção
Provavelmenteo software deverá sofrer
mudanças depois que for entregue ao cliente.
Causas das mudanças
Erros
Adaptação do software para acomodar
mudanças em seu ambiente externo
Exigênciado cliente para acréscimos funcionais
e de desempenho
Utilização

 Existe
um conjunto de Requisitos do
usuário estáveis e de alta qualidade

O sistema completo deve estar disponível


de um única vez

 Recomendado para sistemas onde a


segurança e a confiabilidade tem grande
importância
Problemas

 Projetos
reais raramente seguem o fluxo
sequencial que o modelo propõe
 Logono início é difícil estabelecer
explicitamente todos os requisitos
 Fases são dependentes uma da outra
 Nãoé permitida mudança dos requisitos no
meio do processo de desenvolvimento
Osistema completo deve estar disponível de
um única vez
 Sãoexplicitamente
projetados para acomodar
um produto que evolui com
o tempo!

A cada iteração, produzem


Modelos
uma versão cada vez mais
Evolucionários completa do software...

 Exemplos
 Modelo Espiral
 Modelo de Prototipagem
Modelo Espiral
Modelo Espiral

 Proposto por Boehm em 1988

 Propôsuma forma de trabalho na qual


ocorre uma repetição das atividades do
modelo cascata
Modelo Espiral

 Combina a natureza iterativa da


prototipagem com os aspectos
controlados do modelo em cascata

O software é produzido numa série de


versões evolucionárias

 Primeiras versões: papel ou protótipo


Modelo Espiral

É uma abordagem cíclica que aumenta


incrementalmente o grau de definição,
enquanto diminui o risco

O modelo pode ser aplicado ao longo de


todo ciclo de vida de uma aplicação
Modelo Espiral

 Evoluçãoatravés de vários ciclos


completos de especificação, projeto e
desenvolvimento

O Espiral representa fases do processo

 Riscos
avaliados e resolvidos ao longo do
processo
Vantagens

 Usuáriopode usufruir de funcionalidades


a cada incremento

 Redução de risco
Modelo de Prototipagem
Protótipo

 Produto de trabalho na fase de teste e ou planejamento


de um projeto...
Vantagens - Protótipos

 Obter retorno sobre desenho mais depressa

 Facilitam o entendimento e o feedback dos usuários

 Cumprem o desejo de mostrar resultados rápidos para o


cliente

 Tornam as ​discussões mais produtivas e sob controle nas


sessões com os usuários
Vantagens - Protótipos
 Facilitar
o entendimento entre os membros de
equipes multidisciplinares de projetos

 Análiseda usabilidade no início do processo de


desenvolvimento

 Baixo custo para alterar

 Possibilitamobter uma aprovação formal do projeto


antes de se prosseguir para o desenvolvimento
Modelo de Prototipagem

O software passa por constantes versões


até chegar a sua versão final
Modelo de Prototipagem

 Começa com os requisitos bem


compreendidos e adiciona
funcionalidades a medida que o cliente
propõe!
Fases - Prototipagem

 Obtenção dos requisitos


Desenvolvedor e cliente definem os objetivos
gerais do software, identificam quais
requisitos são conhecidos e as áreas que
necessitam de definições adicionais.
Fases - Prototipagem
 Projeto Rápido
Representação dos aspectos do
software que são visíveis ao usuário
(abordagens de entrada e formatos de
saída)
Fases - Prototipagem

 Construção do protótipo
Implementação rápida do projeto
Fases - Prototipagem

 Avaliação do protótipo
Cliente e desenvolvedor avaliam o
protótipo
Fases - Prototipagem

 Refinamento do protótipo
Cliente e desenvolvedor refinam os
requisitos do software a ser
desenvolvido
Fases - Prototipagem

 Construção do produto
Identificadosos requisitos, o protótipo
deve ser descartado e a versão de
produção deve ser construída
considerando os critérios de qualidade
Modelo de Prototipagem

 Utilização
 Entender os requisitos do usuário e, assim,
obter uma melhor definição dos requisitos do
sistema
 Possibilitaque o desenvolvedor crie um
protótipo do software que deve ser
construído
 Cliente não definiu detalhadamente os
requisitos
Desvantagens
 Pode haver pressão do cliente para transformar
um protótipo malfeito em produto final,
resultando em baixa qualidade
 Concessõesna implementação podem fazer com
que o desenvolvedor fique familiarizado com
escolhas não ideais
O cliente tem que concordar que o protótipo
será usado apenas para levantamento de
requisitos e que o software real será submetido
à engenharia com qualidade
Observações

 Ainda que possam ocorrer problemas, a


prototipação é um ciclo de vida eficiente, a
chave é definir as regras do jogo logo no
começo

 Cliente e desenvolvedor devem concordar que o


protótipo seja construído para servir como um
mecanismo para definir os requisitos
Referências…

Engenharia de Software, 8. ed.


SOMMERVILLE, Ian. 2007

https://integrada.minhabiblioteca.com.br/books/9788580555349

Você também pode gostar