SDLC - Modelo RAD
o RAD (Rapid Application Development)O modelo é baseado em prototipagem e desenvolvimento iterativo sem nenhum planejamento específico envolvido. O processo de escrever o software em si envolve o planejamento necessário para desenvolver o produto.
O Desenvolvimento Rápido de Aplicativos concentra-se em reunir os requisitos do cliente por meio de workshops ou grupos de foco, teste inicial dos protótipos pelo cliente usando conceito iterativo, reutilização dos protótipos existentes (componentes), integração contínua e entrega rápida.
O que é RAD?
O desenvolvimento rápido de aplicativos é uma metodologia de desenvolvimento de software que usa planejamento mínimo em favor da prototipagem rápida. Um protótipo é um modelo funcional que é funcionalmente equivalente a um componente do produto.
No modelo RAD, os módulos funcionais são desenvolvidos em paralelo como protótipos e são integrados para fazer o produto completo para uma entrega mais rápida do produto. Como não há planejamento prévio detalhado, fica mais fácil incorporar as mudanças no processo de desenvolvimento.
Os projetos RAD seguem um modelo iterativo e incremental e têm pequenas equipes compostas por desenvolvedores, especialistas de domínio, representantes de clientes e outros recursos de TI trabalhando progressivamente em seu componente ou protótipo.
O aspecto mais importante para o sucesso desse modelo é garantir que os protótipos desenvolvidos sejam reutilizáveis.
Design de modelo RAD
O modelo RAD distribui as fases de análise, projeto, construção e teste em uma série de ciclos de desenvolvimento curtos e iterativos.
A seguir estão as várias fases do Modelo RAD -
Modelagem de Negócios
O modelo de negócio do produto em desenvolvimento é pensado em termos de fluxo de informações e distribuição de informações entre diversos canais de negócios. Uma análise de negócios completa é realizada para encontrar as informações vitais para os negócios, como podem ser obtidas, como e quando as informações são processadas e quais são os fatores que impulsionam o fluxo de informações bem-sucedido.
Modelagem de Dados
As informações coletadas na fase de Modelagem de Negócios são revisadas e analisadas para formar conjuntos de objetos de dados vitais para os negócios. Os atributos de todos os conjuntos de dados são identificados e definidos. A relação entre esses objetos de dados é estabelecida e definida em detalhes de acordo com a relevância para o modelo de negócios.
Modelagem de Processo
Os conjuntos de objetos de dados definidos na fase de Modelagem de Dados são convertidos para estabelecer o fluxo de informações de negócios necessário para atingir objetivos de negócios específicos de acordo com o modelo de negócios. O modelo de processo para quaisquer alterações ou aprimoramentos nos conjuntos de objetos de dados é definido nesta fase. São fornecidas descrições de processos para adicionar, excluir, recuperar ou modificar um objeto de dados.
Geração de aplicativos
O sistema real é construído e a codificação é feita usando ferramentas de automação para converter modelos de processo e dados em protótipos reais.
Teste e Rotatividade
O tempo geral de teste é reduzido no modelo RAD, pois os protótipos são testados de forma independente durante cada iteração. No entanto, o fluxo de dados e as interfaces entre todos os componentes precisam ser totalmente testados com cobertura de teste completa. Uma vez que a maioria dos componentes de programação já foi testada, isso reduz o risco de quaisquer problemas graves.
A ilustração a seguir descreve o modelo RAD em detalhes.
RAD Modelo Vs SDLC Tradicional
O SDLC tradicional segue modelos de processo rígidos com alta ênfase na análise e coleta de requisitos antes do início da codificação. Isso pressiona o cliente a aprovar os requisitos antes do início do projeto, e o cliente não consegue sentir o produto porque não há uma versão funcional disponível por um longo tempo.
O cliente pode precisar de algumas alterações depois de ver o software. No entanto, o processo de mudança é bastante rígido e pode não ser viável incorporar grandes mudanças no produto no SDLC tradicional.
O modelo RAD se concentra na entrega iterativa e incremental de modelos de trabalho para o cliente. Isso resulta em entrega rápida ao cliente e envolvimento do cliente durante o ciclo completo de desenvolvimento do produto, reduzindo o risco de não conformidade com os requisitos reais do usuário.
Modelo RAD - Aplicação
O modelo RAD pode ser aplicado com sucesso aos projetos nos quais a modularização clara é possível. Se o projeto não puder ser dividido em módulos, o RAD pode falhar.
As dicas a seguir descrevem os cenários típicos onde RAD pode ser usado -
O RAD deve ser usado apenas quando um sistema puder ser modularizado para ser entregue de maneira incremental.
Deve ser usado se houver alta disponibilidade de designers para modelagem.
Deve ser usado apenas se o orçamento permitir o uso de ferramentas automatizadas de geração de código.
O modelo RAD SDLC deve ser escolhido apenas se especialistas de domínio estiverem disponíveis com conhecimento de negócios relevante.
Deve ser usado quando os requisitos mudam durante o projeto e os protótipos de trabalho devem ser apresentados ao cliente em pequenas iterações de 2-3 meses.
Modelo RAD - Prós e Contras
O modelo RAD permite uma entrega rápida, pois reduz o tempo geral de desenvolvimento devido à reutilização dos componentes e ao desenvolvimento paralelo. O RAD funciona bem apenas se engenheiros altamente qualificados estiverem disponíveis e o cliente também estiver comprometido em alcançar o protótipo pretendido no prazo determinado. Se houver falta de comprometimento de ambos os lados, o modelo pode falhar.
As vantagens do modelo RAD são as seguintes -
Mudanças de requisitos podem ser acomodadas.
O progresso pode ser medido.
O tempo de iteração pode ser curto com o uso de poderosas ferramentas RAD.
Produtividade com menos pessoas em um curto espaço de tempo.
Tempo de desenvolvimento reduzido.
Aumenta a reutilização de componentes.
Ocorrem revisões iniciais rápidas.
Incentiva o feedback do cliente.
A integração desde o início resolve muitos problemas de integração.
As desvantagens do modelo RAD são as seguintes -
Dependência de membros da equipe tecnicamente fortes para identificar os requisitos de negócios.
Apenas o sistema que pode ser modularizado pode ser construído usando RAD.
Requer desenvolvedores / designers altamente qualificados.
Alta dependência de habilidades de modelagem.
Não aplicável a projetos mais baratos, pois o custo de modelagem e geração automatizada de código é muito alto.
A complexidade do gerenciamento é mais.
Adequado para sistemas que são baseados em componentes e escalonáveis.
Requer o envolvimento do usuário em todo o ciclo de vida.
Adequado para projetos que requerem tempos de desenvolvimento mais curtos.