Comentários

0%

FOCO NO MERCADO DE TRABALHO

Introdução à engenharia de software

Roque Maitino Neto

Aplicação do Modelo em cascata 

O modelo em cascata ou modelo tradicional, ainda é utilizado para desenvolvimento de produtos de software. Ele descreve, por meio de etapas bem definidas, o ciclo que o software cumprirá durante o período compreendido entre sua concepção e sua descontinuidade.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

sem medo de errar

Iniciamos a resolução deste desafio resgatando o contexto em que ele está inserido: você foi contratado por uma pequena empresa de desenvolvimento para atuar como engenheiro de software júnior. Ao chegar na organização, notou que ela operava em um cenário caótico. Sua primeira providência foi a de implementar um procedimento viável, padronizado e consagrado de desenvolvimento de software, com etapas e tarefas definidas e conhecidas pelos integrantes do projeto. Para atingir esse objetivo, propôs-se a introduzir o modelo em cascata em uma apresentação.

De fato, não há uma resolução única para este desafio, pois apresentações podem variar conforme a visão de seu autor, mesmo com um tema definido a ser desenvolvido. O que segue, portanto, são sugestões de conteúdo das lâminas da apresentação.

Lâmina 1: conceito de modelo de processo

Nesta lâmina introdutória, você pode mostrar o conceito de um modelo de processo, categoria em que o modelo em cascata está posicionado. Na página 40 da obra de Pressman e Maxim (2016), você encontra uma boa definição de modelo. Esse conteúdo prepara o caminho para a definição de modelo em cascata.

Lâmina 2: conceito de modelo em cascata

Uma vez entendido do que trata um modelo de processo, você deve definir o modelo em cascata, fornecer suas características gerais e posicioná-lo no contexto de um modelo de processo. A partir da página 41 da obra de Pressman e Maxim (2016) você encontra a visão dos autores sobre esse modelo.

Lâmina 3: esquema geral do modelo em cascata

Esta lâmina apresenta prevalência de conteúdo gráfico, pois nela será colocado o esquema geral do modelo em cascata, com suas etapas e a indicação de retroalimentação em fluxo linear.

Lâmina 4: definição da etapa de requisitos

Nesta lâmina você deverá conceituar a etapa de requisitos, ressaltando sua criticidade no processo global de produção de um software. Requisitos são as condições necessárias para que algo seja construído. Um requisito de software se traduz nas funcionalidades do sistema, em suas restrições e nas condições gerais de funcionamento.

Lâmina 5: definição da etapa de projeto

Nesta lâmina você deverá inserir a etapa de projeto como tarefa posterior ao tratamento dos requisitos, ressaltando que se trata da solução preliminar do problema, elaborada pelo projetista e com base nos requisitos. Mais uma vez, a importância da etapa deverá ser ressaltada.

Lâmina 6: definição da etapa de implementação

Será pela implementação que os requisitos e o projeto serão transformados em um artefato executável. Nesta lâmina você deve aproximar o conceito de implementação do cotidiano dos membros da empresa de Tecnologia da Informação, pois esta sempre foi a etapa com maior foco no trabalho deles. Implementar é transformar em código o que foi levantado e organizado em etapas anteriores do processo.

Lâmina 7: definição da etapa de testes

Implementada parte ou a totalidade do sistema, chega o momento de testar o código, a fim de aumentar a confiabilidade em seu funcionamento. Esta etapa também tende a ser mais familiar à equipe, pois os testes sempre eram realizados, embora sem um procedimento padrão. Testar, portanto, é executar o código em busca de inconsistências.

Lâmina 8: definição da etapa de manutenção

Por fim, nesta lâmina, a etapa de manutenção deverá ser conceituada e posicionada como parte importante de todo o processo. É por meio da manutenção que um sistema já entregue passa por melhorias, correções e adequações, a fim de que continue a ser adequado aos propósitos do cliente.

Dessa forma, o desafio de prover a equipe com informações e de motivá-la para a adoção do modelo em cascata será muito bem concluído, e o caminho para a introdução de outras inovações estará aberto.

Avançando na prática

Um modelo simples para coleta de requisitos

Certa empresa de desenvolvimento de software vem enfrentando contratempos com a falta de padronização de seus métodos e dos documentos utilizados durante as etapas do desenvolvimento de seus produtos. No que se refere à coleta de requisitos, por exemplo, cada engenheiro de software usa seus próprios métodos de anotação e seu próprio formulário, o que acaba causando dúvidas no pessoal que deve analisar e organizar os requisitos levantados. Não raramente, há requisitos que seguem em formato incorreto para a fase de projeto e se tornam fonte de retrabalho para a equipe.

Ao ser contratado como engenheiro de software da empresa, você detectou o problema e resolveu criar um modelo de formulário para levantamento de requisitos. Esse modelo deveria ser intencionalmente simples e funcionar como a primeira versão de um modelo futuro mais elaborado e completo. Sua missão nesta atividade é, portanto, propor um formulário simples, o qual deverá ser usado como modelo de coleta de requisitos para toda a organização como forma de iniciar a padronização do procedimento.

Boa sorte e mãos à obra!

Logo que foi admitido como engenheiro de software de uma empresa desenvolvedora, você detectou que um modelo de formulário para a coleta de requisitos de software deveria ser criado como forma de organizar e de proporcionar uma padronização a essa etapa. Com esse objetivo em mente e ciente de que se trata de um formulário simples de coleta de requisitos, uma proposta possível para o desafio é a que segue:

  1. Finalidade geral do sistema.
  2. Características gerais do sistema e público-alvo.
  3. Ambiente operacional (onde o sistema deverá ser executado).
  4. Descrição das funcionalidades.
  5. Restrições do sistema.

Há que se registrar que um documento completo de especificação de requisitos de software deverá conter quantidade mais variada de informações. No entanto, para os fins a que se destina, a solução aqui oferecida é satisfatória.

Bons estudos!

AVALIE ESTE MATERIAL

OBRIGADO PELO SEU FEEDBACK!