Buscar

Aula 4 Modelos de Processo de Software

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

*
*
*
Modelos de Processo de Software
*
*
*
Modelos de Processo de Softwares
É uma representação abstrata de um processo de software. Cada modelo representa um processo a partir de uma perspectiva particular.
Não são descrições definitivas de processo de software, mas sim abstrações úteis, que podem ser usadas para explicar diferentes abordagens de desenvolvimento de software.
*
*
*
Modelos de Processo de Softwares
Modelo em Cascata;
Desenvolvimento Evolucionário ou Prototipado;
Desenvolvimento Formal de Sistemas;
Desenvolvimento Orientado a Reuso;
*
*
*
 O Modelo em “Cascata”
Primeiro modelo publicado do processo de desenvolvimento de software;
Originou-se de outros processos de engenharia;
Retrata um desenvolvimento gradual e possui seqüência de passos em ordem que devem ser seguidos.
*
*
*
O Modelo em “Cascata”
*
*
*
O Modelo em “Cascata”
Principais estágios:
Análise e Definição de Requisitos: as funções, as restrições e os objetivos do sistema sõ estabelecidos por meio de consulta aos usuários do sistema. Em seguida, são definidos em detalhes e servem como uma especificação do sistema.
*
*
*
O Modelo em “Cascata”
Principais estágios:
Projeto de Sistemas e Software: o processo de projeto de sistemas agrupa os requisitos em sistemas de hardware e software. Envolve a identificação e a descrição das abstrações fundamentais do sistema de software e suas relações.
*
*
*
O Modelo em “Cascata”
Principais estágios:
Implementação e Testes de Unidade: Durante este estágio, o projeto do software é compreendido como um conjunto de programas ou unidades de programa. O teste de unidade envolve verificar se cada uma das unidades atendem à sua especificação.
*
*
*
O Modelo em “Cascata”
Principais estágios:
Integração e Teste de sistemas: as unidades de programa ou programas individuais são integrados e testados como um sistema completo a fim de garantir que os requisitos de software foram atendidos. Depois do teste, o software é entregue ao cliente.
*
*
*
O Modelo em “Cascata”
Principais estágios:
Operação e manutenção: O sistema é instalado e colocado em operação. Envolve corrigir erros que não foram descobertos em estágios anteriores, melhorando a implemen-tação e descobrindo novos requisitos
*
*
*
O Modelo em “Cascata”
Cada fase resulta em um ou mais documentos que deve ser aprovado;
Existe uma conseqüência nas fases;
As vezes o processo atrasa e necessita de uma suspensão dos requisitos;
Demandam requisitos bem especificados;
Recomendado para projetos maiores de sistemas.
*
*
*
Desenvolvimento Evolucionário
Tem com base a idéia de desenvolver uma implementação inicial, expor o resultado ao comentário do usuário e fazer seu aprimoramento por meio de muitas versões, até que tenha sido desenvolvido;
A especificação, desenvolvimento e validação são executados concorrentemente para gerar um retorno rápido;
*
*
*
Desenvolvimento Evolucionário
*
*
*
Desenvolvimento Evolucionário
Pode ser:
Exploratório: tem como objetivo trabalhar com o cliente a fim de explorar seus requisitos e entregar um sistema final. São feitas partes inicias e acrescentadas novas de acordo com o desenvolvimento.
Protótipos descartáveis: tenta compreender os melhor os requisitos a partir de protótipos e então desenvolver uma especificação de requisitos completa.
*
*
*
Desenvolvimento Evolucionário
Problemas:
O processo não é visível: como o sistema é desenvolvido rapidamente, não há tempo de documentar as versões;
Os sistemas são mal-estruturados: mudanças constantes podem corromper a estrutura do software;
Requer ferramentas e técnicas especiais: que nem sempre são disponíveis ou são aplicáveis ao caso.
*
*
*
Desenvolvimento Formal de Sistemas
É uma abordagem do desenvolvimento de software que tem algo em comum com o modelo em cascata, mas cujo o processo de desenvolvimento se baseia na transformação matemática formal de uma especificação do sistema em um programa executável.
*
*
*
Desenvolvimento Formal de Sistemas
Difere do Modelo em Cascata:
A especificação de requisitos de software é redefinida em uma especificação formal detalhada, que é expressa em notação matemática;
O processo de desenvolvimento de projeto, implementação e teste de unidade são substituídos por um processo de desenvolvimento transformacional, em que a especificação é refinada, por meio de uma série de transformações, em um programa.
*
*
*
Desenvolvimento Formal de Sistemas
*
*
*
Desenvolvimento Formal de Sistemas
Essa abordagem é particularmente adequada ao desenvolvimento de sistemas que tenham rigorosas exigências de segurança, confiabilidade e garantia. No entanto, para a maioria dos sistemas não há um ganho significativo de custo ou qualidade.
Necessita de perícia especializada.
*
*
*
Desenvolvimento Orientado a Reuso
O reuso é comum no projeto. Mas a engenharia de software formaliza o reuso com uma ampla base de componentes reutilizáveis e com alguma infra-estrutura de integração para estes componentes;
Acelera a produção de resultados, especialmente em prototipagens.
*
*
*
Desenvolvimento Orientado a Reuso
*
*
*
Desenvolvimento Orientado a Reuso
Análise de componentes: considerando a especificação dos requisitos, é feita uma busca de componentes para implementar essa especificação;
Modificação dos requisitos: adequação dos requisitos aos componentes encontrados. Se não puderem ser alterados, repete-se a análise;
*
*
*
Desenvolvimento Orientado a Reuso
Projeto de sistema com reuso: é desenvolvida uma infra-estrutura ou reutilizada uma preexistente. Organizam os componentes que serão utilizados e projetam o que faltam;
Desenvolvimento e integração: os componentes faltantes serão desenvolvidos e todos integrados a fim de criar um sistema.
*
*
*
Desenvolvimento Orientado a Reuso
Reduz a quantidade de software a ser desenvolvido e, conseqüentemente, diminui custos e riscos;
Acelera a entrega do software;
Os requisitos podem se perder durante a adaptação;
Pode se perder o controle da versão dos componentes utilizados no sistema.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais