PROTOTIPAÇÃO
Um protótipo é uma visão inicial de um sistema de software, onde possibilita demonstrar conceitos, experimentar opções de projeto, e em geral para conhecer o problema e suas possíveis soluções. Em suma, a prototipação é o processo que possibilita que o programador de software crie um modelo que será construído.
Protótipos é, de modo análogo, uma maquete para a arquitetura, de um sistema futuro com o qual pode-se realizar verificações e experimentações para se avaliar algumas de suas qualidades antes que o sistema venha realmente a ser construído.
Um protótipo de software se apóia em duas atividades do processo de engenharia de requisitos:
- Levantamento dos requisitos;
- Validação dos requisitos;
A prototipação pode ser utilizada como técnica de análise e redução de riscos (erros e omissões) pode também se utilizada para outros propósitos, como treinamento de usuários antes que o sistema seja entregue e também para testes no sistema.
Na figura abaixo é demonstrado o processo de desenvolvimento do protótipo:
Uma das dificuldades para a prototipação de software é que os usuários finais têm dificuldades para prever a utilização do software e se o sistema é muito complexo a dificuldade aumenta, chegando a ser quase impossível fazer uma avaliação.
MODELOS DE PROTOTIPAÇÃO
Existem modelos de prototipação, que serão abordados a seguir:
1) Prototipação Evolucionária - Inicia um sistema relativamente simples, implantando os requisitos mais importantes e o sistema é ampliado e alterado a medida que novos requisitos são descobertos.
a. Vantagens
i. Rápido fornecimento do sistema;
ii. Compromisso do usuário com o sistema
b. Desvantagens / Problemas
i. Problemas de gerenciamento (Custos, Documentação);
ii. Problemas de manutenção (mudanças de tecnologias);
2) Prototipação Incremental - Os componentes do sistema são desenvolvidos de maneira incremental. Uma vez validado e entregues não são modificados, exceto se for descoberto erros.
a. Vantagens
i. Fácil gerenciamento dos padrões de processos;
ii. Documentação produzida por estágios;
b. Desvantagens / Problemas
i. Não encontrei nada na bibliografia
3) Prototipação Descartável - Essa abordagem amplia o processo de análise dos requisitos, com intenção de reduzir os custos no ciclo de vida do software, ou seja, esclarece os requisitos e fornece informações para que os riscos de processos sejam avaliados. Então, ela ajuda a desenvolver os requisitos do sistema.
TÉCNICAS DE PROTOTIPAÇÃO RÁPIDA
REFERÊNCIAS
WIKEPÉDIA, http://pt.wikipedia.org/wiki/Prototipa%C3%A7%C3%A3o
PRESSMAN, Roger S. Engenharia de Software. São Paulo : Makron Books, 1995.
SOMMERVILLE, Ian. Software Engineering, 4th ed. - Wokingham : Addison-Wesley, 1992.
Na figura abaixo é demonstrado o processo de desenvolvimento do protótipo:
Uma das dificuldades para a prototipação de software é que os usuários finais têm dificuldades para prever a utilização do software e se o sistema é muito complexo a dificuldade aumenta, chegando a ser quase impossível fazer uma avaliação.
MODELOS DE PROTOTIPAÇÃO
Existem modelos de prototipação, que serão abordados a seguir:
1) Prototipação Evolucionária - Inicia um sistema relativamente simples, implantando os requisitos mais importantes e o sistema é ampliado e alterado a medida que novos requisitos são descobertos.
a. Vantagens
i. Rápido fornecimento do sistema;
ii. Compromisso do usuário com o sistema
b. Desvantagens / Problemas
i. Problemas de gerenciamento (Custos, Documentação);
ii. Problemas de manutenção (mudanças de tecnologias);
Fonte: PRESSMAN, adaptado pelo autor.
2) Prototipação Incremental - Os componentes do sistema são desenvolvidos de maneira incremental. Uma vez validado e entregues não são modificados, exceto se for descoberto erros.
a. Vantagens
i. Fácil gerenciamento dos padrões de processos;
ii. Documentação produzida por estágios;
b. Desvantagens / Problemas
i. Não encontrei nada na bibliografia
Fonte: PRESSMAN, adaptado pelo autor.
3) Prototipação Descartável - Essa abordagem amplia o processo de análise dos requisitos, com intenção de reduzir os custos no ciclo de vida do software, ou seja, esclarece os requisitos e fornece informações para que os riscos de processos sejam avaliados. Então, ela ajuda a desenvolver os requisitos do sistema.
Fonte: PRESSMAN, adaptado pelo autor.
TÉCNICAS DE PROTOTIPAÇÃO RÁPIDA
Com a necessidade de que o tempo de desenvolvimento seja cada vez menor, existem algumas técnicas de prototipação rápida, abordadas abaixo:
- Linguagem Dinâmica - São linguagens de programação que incluem poderosos recursos de gerenciamento de dados. Ex: Lisp, Prolog, Smalltlk
- Programação de Banco de Dados - Os BD comerciais (Oracle, Caché MS SQL, etc) oferecem suporte a desenvolvimento de aplicações, com base em uma linguagem específica de cada BD. Essa técnica é também conhecida como "Linguagens de quarta geração"
- Montagem de componentes e aplicações - A reutilização de componentes reduz o tempo de desenvolvimento do sistema.
A Análise orientada a objetos pode levar a uma prototipação extremamente efetiva, com a reutilização dos objetos.
A utilização da prototipação limita o processo de desenvolvimento, pois não é possível ter um produto adequado logo na primeira vez. A prototipação é um dos ciclos de vida onde interação inicial entre o programador e o cliente é fundamental, pois neste momento que ambos podem definir os objetivos gerais do protótipo a ser desenvolvido, e a cada novo requisito, deve-se fazer um novo protótipo, até a construção final do software. A prototipação é o processo ideal para quando se tem um usuário que não é capaz ou não consegue pré-especificar seus requisitos de qualquer forma e só pode determiná-los através de um processo de tentativa e erro, ou seja, a situação em que o usuário diz: "- Eu não sei o que quero, mas eu saberei, se o vir!".O processo de prototipação permite ao analista, programador promova a participação do usuário no desenvolvimento do sistema, ou seja, aumenta seu comprometimento com o produto final.
REFERÊNCIAS
WIKEPÉDIA, http://pt.wikipedia.org/wiki/Prototipa%C3%A7%C3%A3o
PRESSMAN, Roger S. Engenharia de Software. São Paulo : Makron Books, 1995.
SOMMERVILLE, Ian. Software Engineering, 4th ed. - Wokingham : Addison-Wesley, 1992.
Muito bom gostei.
ResponderExcluirAmigo estou fazendo meu trabalho de conclusão de curso e gostaria de usar essas ideias, eu posso utilizar?
ResponderExcluir