Você está na página 1de 11

CÂMPUS VERANÓPOLIS
ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
ENGENHARIA DE SOFTWARE I
IV SEMESTRE

LEANDRO ANTONIO ZARDO

MODELO SEQUENCIAL LINEAR (MODELO CASCATA)


MODELO DE PROTOTIPAÇÃO
MODELO RAD (RAPID APPLICATION DEVELOPMENT)

VERANÓPOLIS
2021
Sumário

1 INTRODUÇÃO ........................................................................................................ 3
2 MODELO SEQUENCIAL LINEAR (MODELO CASCATA) ................................... 4
2.1 Vantagens ........................................................................................................ 4
2.2 Desvantagens ............................................................................................... 5
3 MODELO DE PROTOTIPAÇÃO ............................................................................ 6
3.1 Vantagens ........................................................................................................ 7
3.2 Desvantagens ................................................................................................ 7
4 MODELO RAID ........................................................................................................ 8
4.1 Vantagens ......................................................................................................... 8
4.2 Desvantagens .............................................................................................. .8
5 COMPARATIVO ....................................................................................................... 9
6 CONCLUSÂO ..........................................................................................................10
7 REFERÊNCIA BIBLIOGRÁFICAS ........................................................................11

2
1 INTRODUÇÃO

Um Modelo de Processo de Software ou Paradigmas de Processo é a


representação genérica dos processos de desenvolvimento. Para desenvolver
softwares em equipe de forma organizada é preciso seguir uma série de práticas e
passos bem definidos, conhecidos como processos de software.

3
2 MODELO SEQUENCIAL LINEAR (MODELO CASCATA)

Considerado o modelo clássico de desenvolvimento, o Modelo em Cascata é


sugerido para projetos pequenos e sua ideia defende que para uma fase iniciar, a
anterior deve estar totalmente finalizada e que o resultado de cada etapa é a
aprovação de um ou mais documentos assinados.
O desenvolvimento de software é dividido em cinco etapas, que começam
assim que a anterior termina:
Especificação: é feita a análise e captação das necessidades do cliente e definidos
os requisitos do sistema com suas funcionalidades;
Projeto do software: é elaborado o desenho da arquitetura geral do sistema,
seguindo as informações coletadas na etapa anterior. Tudo é separado em partes
chamadas de unidades de programa para poder agilizar o desenvolvimento. Cada
unidade terá seu próprio requisito de unidade;
Implementação: nesta etapa, com o projeto definido, cada unidade de programa é
implementada, podendo alocar vários programadores simultaneamente.
Teste unitário: no final da implementação, são feitos os testes de unidade para
certificar (validação) que as implementações atendem aos requisitos de unidade;
Integração: com as unidades testadas, a próxima tarefa é integrar todas elas para
compor um sistema completo.
Teste de Sistema: no final da integração, é feito um teste geral para certificar
(validação) que os requisitos do sistema foram completamente atendidos. Por fim, o
software é entregue ao cliente;
Operação e manutenção: Ao operar, ou seja, utilizar o sistema, o cliente poderá
encontrar erros ou necessidades que não foram identificadas anteriormente. Esta fase
se responsabiliza pela correção dos erros ou melhorias do sistema (evolução).

2.1 Vantagens

• Por causa de sua natureza separada em unidades, o modelo em


cascata possibilita a implementação concorrente entre vários programadores,
agilizando a entrega;
• É útil quando o pessoal envolvido no projeto é fraco tecnicamente.

4
• O modelo apresenta uma grande vantagem quando o escopo do trabalho é
claramente definido. Se as especificações estiverem corretas (o que é muito difícil
em projetos de médio e grande porte), um software pode ser desenvolvido de forma
muito rápida.

2.2 Desvantagens

• Se a especificação não for bem definida, ele pode ser tornar um risco e um convite
para falhas, o modelo se tratava era um conceito inicial e ainda defeituoso;
• Como o modelo não possui flexibilidade, seguindo um sequencia engessada, é
considerado um modelo frágil, principalmente nos dias de hoje que os projetos
mudam muito no decorrer do desenvolvimento;
• Também é difícil estabelecer explicitamente todos os requisitos logo o início do
projeto, pois no começo, sempre existe uma incerteza natural;
• O cliente deve ter muita paciência, pois uma versão executável do software só fica
disponível numa etapa avançada do desenvolvimento;
• Projetos grandes raramente seguem a sequência proposta pelo modelo. A
produção e aprovação de documentos durante as etapas costumam se caras e
geradoras de muito retrabalho;
• Durante o processo, é comum o cliente solicitar o congelamento de partes do
desenvolvimento para dar continuidade aos estágios posteriores, tornando a solução
dos problemas mais difícil, pois acaba sendo programada para mais tarde e,
dependendo da situação, acaba sendo parcial ou totalmente ignorada;
• O congelamento prematuro de partes da implementação pode resultar em um
sistema que não faça o que o usuário quer. Também pode levar a sistemas mal
estruturados, quando os problemas de projeto são contornados por artifícios de
implementação;
• Nesse modelo os especialistas de um negócio conversam com os analistas, que
passam o resultado para os programadores. No entanto, essa abordagem falha
porque lhe falta feedback. Em outras palavras, o software resultante pode atender às
necessidades do cliente, mas o código não reflete as regras de negócio, uma vez que
os programadores só programam, não sendo possível identificar os termos de
negócio olhando no código;

5
• A natureza linear do modelo leva a estados de bloqueio, nos quais alguns membros
da equipe de projeto precisam esperar que outros membros completem as tarefas
dependentes;

3 MODELO DE PROTOTIPAÇÃO

Nesse modelo o desenvolvimento é feito obedecendo à realização das


diferentes etapas de análise de requisitos, o projeto, a codificação e os testes. A
definição de todos os requisitos necessários ao sistema pelo cliente ou usuário
geralmente é uma tarefa muito difícil, sendo quase impossível prever como o sistema
irá afetar o funcionamento das práticas de trabalho, como será a interação com outros
sistemas e que operações dos usuários devem ser automatizadas. Mas para poder
testar os requisitos de uma forma mais eficiente, seria necessária a utilização de um
protótipo do sistema.
Um protótipo é uma versão inicial de um sistema de software, que é utilizada
para mostrar conceitos, experimentar opções de projeto e, em geral, para conhecer
mais sobre os problemas e suas possíveis soluções. O processo de desenvolvimento
de um protótipo deve ser rápido para que seja essencial para que os custos sejam
controlados e os usuários possam fazer experiências com o protótipo no início do
processo de software.
Um modelo de prototipação de software apoia duas atividades do processo de
engenharia de requisitos:
• Levantamento de requisitos - Os protótipos de sistema permitem que os usuários
realizem experiências para ver como o sistema apoia seu trabalho. Eles obtêm novas
ideias para os requisitos e podem identificar pontos positivos e negativos do software.
Eles podem, então, propor novos requisitos de sistema.
• Validação de requisitos - O protótipo pode revelar erros e omissões nos requisitos
propostos. Uma função descrita em uma especificação pode parecer útil e bem-
definida. Contudo, quando essa função é utilizada com outras, os usuários muitas
vezes acham que sua visão inicial era incorreta e incompleta. A especificação de
sistema pode então ser modificada para refletir sua compreensão alterada dos
requisitos.

6
Na maioria dos projetos, o primeiro sistema construído dificilmente será usável.
Podendo ser muito lento, muito grande, desajeitado em uso, ou todos os três. A
questão administrativa, não é se deve construir um sistema-piloto e jogá-lo fora. Isso
será feito. A única questão é se deve planejar antecipadamente a construção de algo
que se vai jogar fora ou prometer entregar isso aos clientes. O protótipo pode ser
oferecido ao cliente em diferentes formas: protótipo em papel, modelo executável em
computador retratando a interface homem-máquina capacitando o cliente a
compreender a forma de interação com o software; protótipo de trabalho que
implemente um subconjunto dos requisitos indicados; programa existente que permita
representar toda ou parte das funções desejadas para o software a construir

3.1 Vantagens:

• Modelo de desenvolvimento interessante para alguns sistemas de grande porte


que representem um certo grau de dificuldade para exprimir rigorosamente os
requisitos
• É possível demonstrar a irrealizabilidades através da construção de um protótipo
do sistema;
• É possível obter uma versão, mesmo simplificada do que será o sistema, com um
pequeno investimento inicial;
• A experiência adquirida no desenvolvimento do protótipo vai ser de extrema
utilidade nas etapas posteriores do desenvolvimento do sistema real, permitindo
reduzir o seu custo e resultando num sistema melhor concebido.

3.2 Desvantagens:

• Quando informamos que o produto precisa ser reconstruído, o cliente exige que
alguns acertos sejam aplicados para tornar o protótipo um produto; muito
frequentemente, a gerência de desenvolvimento de software cede.
• O desenvolvedor muitas vezes faz concessões de implementação a fim de colocar
um protótipo em funcionamento rapidamente. Depois de algum tempo, o
desenvolvedor pode familiarizar-se com essas opções e esquecer-se de todas as

7
razões pelas quais elas são inadequadas - a opção menos ideal se tornou então parte
integrante do sistema.

4 MODELO RAID

É um modelo de processo de software incremental que enfatiza um ciclo de


desenvolvimento curto. O Modelo RAD é uma adaptação, de alta velocidade, do
modelo em cascata, no qual a agilidade é conseguida com o uso de uma abordagem
de construção baseada em componentes.
No desenvolvimento incremental, uma das características de RAD, o sistema
é dividido em módulos, tomando por base a funcionalidade. Tendo os incrementos
definidos, a cada ciclo é acrescido de novas funcionalidades ou até mesmo
modificações, caso seja necessário. Outra característica é justamente essa
maleabilidade de adaptação dos processos e a capacidade de se manter em
constante evolução.
As fases de modelagem e geração da aplicação são executadas por diversas
equipes. Essa divisão otimiza tempo, além do reaproveitamento de módulos prontos
que faz com que o desenvolvimento cumpra prazos curtos. Por fim, ocorre a
integração desses componentes.

4.1 Vantagens:

• Desenvolvimento rápido, com prazos curtos (entre 30 e 90 dias);


• Divisão de tarefas entre equipes;
• Mais rápida visão geral do sistema (protótipos);
• Maior envolvimento do usuário/cliente;
• Menor custo (menos tempo; tempo é igual dinheiro);
• Exceto em projetos grandes, onde as equipes são maiores;

4. 2 Desvantagens:

• Para grandes projetos, exige-se equipe grande, para cumprir o prazo;


• Grande envolvimento do usuário (disponibilidade pode ser um problema);
• Perda de precisão cientifica (falta de métodos formais).

8
5 COMPARATIVO

O modelo sequencial linear ou o modelo em cascata descreve que, cada fase


de desenvolvimento prossegue em uma ordem estrita, sem qualquer sobre posição
ou passos iterativos, ou seja, cada vez que uma fase é completada, o
desenvolvimento prossegue para a próxima fase e não há retorno.
O modelo de prototipação serve com um mecanismo para identificar os
requisitos de software. Apropriado para quando o cliente definiu um conjunto de
objetivos gerais para o software, mas não identificou requisitos de entrada,
processamento e saída com detalhes.
O modelo RAD, é um tipo de modelo incremental que prima por um ciclo de
desenvolvimento extremamente curto. Assim, como no modelo incremental, o sistema
é subdividido em subsistemas e incrementos são realizados. A diferença marcante é
que os incrementos são desenvolvidos em paralelo por equipes distintas e apenas
uma única entrega é feita.

9
6 CONCLUSÃO

O modelo sequencial linear não é o mais recomendado para a produção de


softwares, e a tendência é que as empresas o utilizem cada vez menos. Para
substituí-lo, surgiram as metodologias ágeis, que permitem desenvolver softwares de
maneira mais rápida e eficiente.
Por ser uma metodologia de poucas fases e de caráter simples, o modelo de
prototipação é possível que, o modelo seja adaptado possibilitando a opção de ser
englobado em qualquer outro modelo. Tem como foco a Interação e o Software em
funcionamento ao invés de Processos e Documentação excessiva. Sua fase de
desenvolvimento tem como objetivo a Prototipação Evolutiva, porém faz-se uso de
protótipos de testes e interface, a fim de melhorar o levantamento de requisitos e
comunicação com o cliente.
Apesar do modelo RAD serem de rápido desenvolvimento, a falta de literatura
e instruções para utilização de algumas delas prejudica o tempo de desenvolvimento
trabalho. Sobre as desvantagens citadas, elas são bastante importantes na aplicação
de diversos tipos de sistemas atuais. O que deve ser levado em consideração no
momento da escolha de uma ferramenta RAD é a identificação da robustez
necessária para o programa solicitado e em qual âmbito será aplicado.

10
7 REFERÊNCIAS BIBLIOGRÁFICAS

ENGHOLM, Hélio. Engenharia de Software na Prática. Novatec Editora. São Paulo,


Brasil, 2010.
PRESSMAN, Roger S. Engenharia de Software, 7ª Edição. Editora MCGrawHill: Porto
Alegre, 2011.
SOMMERVILLE, Ian. Engenharia de Software. 9ª Edição. Pearson Education, 2011.
Modelos Incremental, Espiral e de Prototipação. 06/12/12. Disponível em:
<http://engenhariadesoftwareuesb.blogspot.com/2012/12/blog-post.html>. Acessado
em>. 10/02/2021.
O Modelo em Cascata. DIAS, Riacardo Pereira. 21/08/2019. Disponível em:
<https://mediu m.com/contexto-delimitado/o-modelo-em-cascata-f2418addaf36>.
Acesso em: 10/02/2021
Desenvolvendo Sistemas de Informação com Ferramentas RAD. Disponível em:
<http://www.inicepg.univap.br/cd/INIC_2007/trabalhos/exatas/inic/INICG00513_09C.
pdf>. Acessado em 11/02/2021.
Prototyping Model, LEWIS, Sarah. September 2019. Disponível em: <encurtador.com.br
/hiqxW>. Acessado em 11/02/2021.
Rapid Application Development (RAD). FABRI, José Augusto. Disponível em:
<https://engenhariasoftware.wordpress.com/2013/01/24/rapid-application-evelopmen
t-rad/>. Acesso em 13/02/2021.

11

Você também pode gostar