Buscar

ENGENHARIA DE SOFTWARE ATIVIDADE 01

Prévia do material em texto

Modelos de processos de software fornecem diretrizes gerais para o
desenvolvimento do software e devem ser escolhidos e utilizados de acordo com
características específicas do projeto de desenvolvimento do software que envolve
informações da equipe a desenvolver o software e também do cliente. Imagine a
situação abaixo.
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.
Considerando o cenário acima, identifique que modelo de processo de
desenvolvimento de software você escolheria para apoiar o desenvolvimento do
software solicitado. Justifique sua escolha associando as características do cenário
acima com as do modelo selecionado.
RESPOSTA:
Levando em conta o cenário citado acima, visto que o cliente deseja receber versões
intermediárias do produto final, a melhor opção é o modelo espiral. Como não se
sabe de início todas as funcionalidades que serão necessárias no software o modelo
espiral atende aos requisitos do cliente. Por ter uma dinâmica de interações em
ciclos favorece fazer versões do projeto. Ajudando na gestão de riscos e ficando mais
eficaz o gerenciamento do projeto.
Visto que no modelo espiral o sistema é formado por divisões, ou seja, por módulos
funcionais ele é o mais indicado nesse cenário.
Projetando dessa maneira o cliente poderá fazer uso de partes do software antes de
finalizar o projeto final, conforme determinado na regra de negócio.
Na primeira fase desse modelo coletamos todas as informações necessárias para
entender qual a necessidade do cliente. O advogado mais engajado expressou a
vontade de receber versões intermediárias do software final. Seu desejo é que as
funcionalidades mais importantes para o negócio estejam no início do projeto.
Destacou também a necessidade de elaborar documentos que precisam dar entrada
em diferentes tribunais., bem como gerenciar prazos de processos judiciais aos
cuidados do escritório.
Partindo para o planejamento é preciso fazer um cronograma. Como a equipe é
pequena e tem pouco conhecimento da área jurídica, com um bom planejamento é
possível dividir o projeto em partes pequenas tornando todo o processo mais eficaz.
Para a modelagem é importante seguir bem de perto a regra de negócio. O objetivo
final é trazer economia ao cliente, valor gasto com impressão. Assim é importante
nessa fase entregar o que o cliente acha mais prioritário, entendendo o que será
entregue nessa primeira fase.
A etapa da construção inclui o código, a construção da tela visando interação com o
usuário, e testes de qualidade para ter certeza que o software atende as
necessidades do cliente.
Finalizando há a implantação. É realizado a transição da homologação para a
produção. Geralmente de maneira versionada. A boa comunicação entre cliente e
analista permite a produção das próximas versões desse projeto, até sua conclusão.

Mais conteúdos dessa disciplina