Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Modelos de Processo de 
software
Um processo de software, também conhecido como processo de 
desenvolvimento de software, é um conjunto de atividades e de tarefas usadas 
para desenvolver produtos de software. 
Abrange todas as etapas envolvidas no desenvolvimento de software, desde a 
coleta e análise dos requisitos iniciais até a implantação e manutenção.
O processo de software pode ser dividido em várias fases:
Planejamento
identificar os requisitos
definir o escopo do projeto
criar um plano do projeto
cronogramas, orçamento e alocação de recursos
Projeto
elaborar a arquitetura do software
especificações e projetos detalhados
Codificação
programação
Teste
deve atender requisitos e especificações
testes de unidade, integração, sistema e aceitação.
Manutenção
software mantido e atualizado conforme o necessário.
garantir que continue atendendo aos requisitos e às especificações.
Modelos de Processo de software 1
A natureza do software
Um processo de software é definido como uma estrutura para ações, deveres e 
atividades necessárias para criar software de alta qualidade.
Um framework de processo genérico para engenharia de software define cinco 
atividades de estrutura: 
comunicação
pode envolver várias etapas (em projetos mais complexos):
concepção, elicitação, elaboração, negociação, especificação e 
validação.
planejamento
modelagem
construção
implantação. 
Além disso, um conjunto de atividades guarda-chuva são
aplicados ao longo do processo: 
rastreamento e controle de projetos
gerenciamento de riscos
garantia de qualidade
gerenciamento de configuração
revisões técnicas e outros
Podemos ter um modelo sequencial, também chamado de cascata onde uma 
atividade é feita uma depois da
outra. Também temos uma variação do modelo sequencial, sendo que algumas 
atividades são revisitadas para melhorias. Outra opção é o modelo de processo 
evolucionário, no qual, a cada novo ciclo, uma nova versão do software é liberada.
Modelos de Processo de software 2
Ainda, um fluxo de processo paralelo executa uma ou mais tarefas 
simultaneamente com outras. Por exemplo, a modelagem de um componente de 
software pode ser realizada enquanto outro componente está sendo construído.
Modelos de processos prescritivos
Uma coleção predefinida de elementos de processo e um
fluxo de trabalho de processo previsível são definidos por modelos de processo 
prescritivos.
Visam consistência e organização na criação do software.
Modelo em Cascata
Sequência linear
Método sequencial estruturado.
Modelos de Processo de software 3
Cada atividade é executada sequencialmente sem retorno aos passos anteriores.
Antigo mas ainda usado.
Primeiro paradigma da engenharia de Software.
Problemas:
Projetos reais raramente seguem um fluxo sequencia.
Muitas vezes, é difícil para o cliente declarar todos os requisitos 
explicitamente no começo do projeto.
Cliente deve ter paciência, pois deve aguardar até o final do projeto para ter 
versão funcional.
Grandes erros podem demorar para ser detectados.
Inadequado para projetos de hoje que são rápidos e em constante mudança. 
Neste caso, pode ser melhor utilizar um paradigma de prototipagem, , onde a 
ideia é partir de um exemplo de como o software vai ficar, e depois realizar 
algumas implementações para ter uma primeira versão o quando antes. Após, 
vamos incrementando aos poucos as novas funções.
Como todos os processos complexos, o software se desenvolve ao longo do 
tempo. Um caminho direto para um produto não é realista porque os requisitos de 
Modelos de Processo de software 4
negócios e produtos mudam frequentemente à medida que o desenvolvimento 
avança. Um produto de software completo pode ser impossível de ser concluído 
devido a restrições restritas de mercado. Para satisfazer a pressão comercial ou 
competitiva, pode ser viável desenvolver uma versão limitada de um produto. 
Mais tarde, uma vez que todos os recursos do sistema fossem mais bem 
compreendidos, uma versão refinada do produto seria lançada.
Modelo Espiral
Modelo de processo de software evolutivo.
Combina elementos controlados e metódicos do modelo em cascata (sequencial) 
com a natureza iterativa da prototipagem.
Permite o software ser desenvolvido rapidamente e ser complementado a cada 
iteração.
Software criado por uma sucessão de lançamentos evolutivos.
Inicialmente podemos ter um modelo ou protótipo.
Iterações resultam em um sistema cada vez mais acabado.
Adequado quando o gerenciamento de risco é fundamental.
Base de vários modelos como Scrum, XP, Lean, Kanban, FDD e etc.
Modelos de Processo de software 5
Conceito iterativo e incremental.
Cada atividade da estrutura corresponde a uma seção da rota em espiral 
mostrada na figura anterior. 
A equipe de software realiza atividades sugeridas por um circuito em torno da 
espiral no sentido horário, começando pelo centro, à medida que esse processo 
evolutivo avança.
A cada mudança o risco é levado em consideração.
Para cada passagem evolutiva, marcos de ponto de ancoragem – uma coleção de 
saídas de trabalho e condições alcançadas ao longo do caminho da espiral – são 
anotados.
Modelos de Processo de software 6

Mais conteúdos dessa disciplina