Um escritório de advocacia deseja contratar os seus serviços para apoiar no suporte automatizado de tarefas jurídicas comumente realizadas por seus advogados. Dentre as atividades tem-se a elaboração de documentos a serem protocolizados em diferentes tribunais de justiça de esfera estadual e federal; o acompanhamento de movimentações processuais de processos judiciais sob os cuidados dos advogados do escritório; e o gerenciamento de prazos jurídicos para manifestação em processos judiciais acompanhados pelo escritório. Você, como bom engenheiro de software, percebe que muito tem a aprender sobre a área jurídica e também sobre a forma de trabalho dentro do escritório cujo processo de negócio deverá ser apoiado pelo software solicitado. Ao visitar o escritório e conhecer um pouco mais da empresa, você percebe que todo o acompanhamento de processos judiciais é realizado ainda em papel e pilhas e mais pilhas de papel podem ser vistas nas mesas dos advogados da empresa. Duas coisas você consegue deduzir disso: 1) a empresa parece ser bem sucedida e os advogados devem ser bastante ocupados já que a quantidade de processos judiciais é bem alta; 2) o sistema trará economia para a empresa de milhares de reais, hoje gastos com impressão. Você percebe que a agenda lotada dos advogados do escritório pode se mostrar um desafio para uma comunicação mais efetiva de levantamento do problema e também do processo de negócio. Para a sua sorte, o principal advogado do escritório que iniciou o contato com você está bastante engajado no projeto e se mostra disposto a participar de quantas interações com a equipe de desenvolvimento forem necessárias para a captura das necessidades da empresa quanto ao software. Ele deseja também que sejam entregues versões intermediárias do software final contendo funcionalidades prioritárias e estratégicas para o negócio; uma vez que ele não tem certeza de todas as funcionalidades que serão necessárias para compor o software no inícío do projeto, ele quer garantir que as mais importantes sejam implementadas primeiro. Do seu lado, você tem uma equipe reduzida de analistas, desenvolvedores e testadores, porém bem coesa e comunicativa, com a ressalva de nunca terem trabalhado com a construção de nenhum sistema para a área jurídica.
Soluções para a tarefa
Dentre os diversos modelos de desenvolvimento de software que existem, o mais adequado nesse caso é o Modelo de Desenvolvimento Evolucionário.
Dentre as vantagens desse modelo estão a possibilidade do projeto ser mostrado ao cliente antes de sua finalização (algo que, como explicitado no enunciado, é extremamente importante) assim como a possibilidade de uma melhor comunicação entre os desenvolvedores e os usuários do programa.
Esse modelo é muito mais adequado do que outros, como o Modelo de Desenvolvimento em Cascata, por exemplo.
Resposta:
Modelo Espiral
Explicação:
Em análise ao cenário apresentado acima, de que se deve entregar ao cliente versões intermediárias do produto, bem como o cliente principal está disposto a participar assiduamente junto à equipe de produção de software, também que apesar de reduzida a equipe de analistas, mas engajada e comunicativa, entende-se que o sistema de produção mais indicado é o Modelo Espiral, que visa a divisão de sistemas de módulos funcionais, possibilitando ao cliente utilizar partes dos projeto já liberados.
Esse modelo é dividido em cinco fases, sendo a comunicação, planejamento, modelagem, construção e implantação.
O modelo espiral, possui metas parciais entregues para o cliente e a cada “volta no espiral” representa um ciclo cumprido, o que ameniza a gestão dos riscos, visto que sua produção é dividida em partes, e o produto pretendido pelo cliente, nesse caso, é novidade para a empresa criadora.
Também, nesse modelo, a cada novo ciclo, tem-se a possibilidade de o cliente repassar melhores e mais detalhadas informações a serem trazidas as fases do produto.