• Nenhum resultado encontrado

6. ESTUDO DE CASO

6.4 Modificações dos DROs do PG, do Hotel e do ATM

6.4.3 Modificações no DRO do ATM

A avaliação final das Diretrizes propostas deu-se com a sua aplicação no DRO do ATM.

Para exemplificar as modificações ocorridas nos Requisitos Funcionais originais após o uso do Formato proposto, serão mostrados exemplos de requisitos originais e os mesmos modificados. Como as mudanças ocorreram também é explicado.

Exemplo1:

Figura 6.10 Requisito Funcional 7 do DRO do ATM.

Figura 6.11 Requisito Funcional 7 do DRM do ATM.

Analisando o requisito da Figura 6.10, nota-se que sua Descrição está repleta de informações não condizentes com o definido no Formato. Este é o terceiro documento estudado em que a Descrição do Requisito Funcional aparece com informações mistas, ou

Requisito Funcional 7

• Descrição: Diálogo de autorização: O usuário é solicitado a entrar sua senha. O ATM verifica o código do banco e senha com o computador do banco.

• Entrada: Senha do usuário, código do banco do cartão bancário.

• Processamento: Envie o número serial e senha para o computador do banco, receba resposta do banco.

• Saída: Aceite ou rejeite autorização do banco.

Requisito Funcional 7.

Descrição: Iniciar o diálogo de autorização. Agente Fornecedor/Receptor: Cliente Agente Executor: Cliente

Entrada:

Campo Tipo Tamanho Descrição

Senha Numérico 10 inteiros Senha do cliente Código do banco Numérico 10 inteiros Código do banco do

cartão bancário

Processamento: Solicitar ao cliente a entrada de sua senha. Enviar o código do banco e a senha para o Computador do Banco para que sejam verificados. Receber resposta do Computador do Banco.

Condição/Restrição: Nenhuma.

seja, informações que são entrada de dados ou algo para ser processado pelo sistema ou certa condição/restrição a ser obedecida ou até mesmo alguma resposta gerada pela execução do requisito. Isso acaba prejudicando o entendimento do que realmente deve ser feito pelo requisito. Eliminando-se tais informações, a nova Descrição começando por um verbo ficou “Iniciar o diálogo de autorização”. Tal diálogo é requisitado e iniciado pelo cliente, o que o torna Agente Fornecedor/Receptor e Agente Executor, uma vez que ele informa os dados necessários para a sua realização e comunica-se independentemente com o sistema.

Os dados de entrada foram discriminados pela tabela recomendada no Formato proposto, permitindo que se verifique a compatibilidade dos dados enviados através do ATM com os recebidos pelo Computador do Banco.

Já no item Processamento, teve-se de proceder diversos ajustes. Foi excluída a forma imperativa das sentenças, obedecendo as Recomendações de Escrita descritas no Capítulo 5. Atentando-se para as perguntas do Checklist Pré-Inspeção, foi identificado que não eram coerentes os dados enviados e recebidos entre este requisito e outro, assim o número serial não deveria ser enviado ao Computador do Banco. Mesmo através do item Entrada, dava-se para perceber que o correto seria código do banco e não número serial.

Não houve nenhuma condição/restrição especificada para este requisito. E por último, o item Saída, também foi expresso de forma a eliminar a frase imperativa.

Exemplo 2:

Figura 6.12 Requisito Funcional 11 do DRO do ATM.

Figura 6.13 Requisito Funcional 12 do DRO do ATM. Requisito Funcional 11

• Descrição: O tipo de transação que o ATM oferece é saque.

• Entrada: Autorização completada com sucesso. Entrar a quantidade a sacar. • Processamento: Quantidade entrada é comparada com m.

• Saída: Quantidade de dinheiro a ser dispensada é mostrada. Inicia a seqüência de saque inicial.

Requisito Funcional 12

• Descrição: Seqüência de saque inicial: se o saque é muito alto refaça a transação. • Entrada: Cliente entrou a quantidade de dinheiro.

• Processamento: Erro se a quantidade é maior do que m.

• Saída: Inicie transação ou reinicie o diálogo de transação se a quantidade não está dentro da política de transação pré-definida.

Figura 6.14 Requisito Funcional 13 do DRO do ATM.

Figura 6.15 Requisito Funcional 11 do DRM do ATM.

Este exemplo mostra três Requisitos Funcionais do DRO do ATM que foram agregados num único requisito. Como pode ser observado, o Requisito Funcional 11 da Figura 6.12, gera uma saída positiva e outra negativa em razão do seu processamento, que é comparar a quantidade de dinheiro a ser sacada. Porém, tais respostas estão separadas pelos Requisitos Funcionais 12 e 13, Figuras 6.13 e 6.14, respectivamente. Mas de acordo com o Formato proposto deve-se mantê-las juntas. O Requisito Funcional 12 representa a saída gerada quando quantidade de dinheiro a sacar é maior que m, e o Requisito Funcional 13, quando a quantidade de dinheiro entrada é menor ou igual a m, o qual está subentendida através da sentença ‘Seqüência de saque inicial com sucesso’.

Juntando-se os três Requisitos Funcionais originais, o Requisito Funcional 11 da Figura 6.15 foi elaborada. Sua composição deu-se da seguinte forma: a Descrição do

Requisito Funcional 13 • Descrição: Realizar transação.

• Entrada: Seqüência de saque inicial com sucesso.

• Processamento: Envie o pedido para o computador do banco. • Saída: Espere por resposta do computador do banco.

Requisito Funcional 11.

Descrição: Oferecer a transação de saque. Agente Fornecedor/Receptor: Cliente Agente Executor: Cliente

Entrada:

Campo Tipo Tamanho Descrição

Quantidade Numérico Conforme o

tamanho de m definido.

Quantidade de dinheiro a sacar

Processamento: Comparar a quantidade a sacar com m. Se a quantidade é maior do que m, refazer a transação ou reiniciar o diálogo de transação, pois a quantidade não está dentro da política de transação pré-definida. Senão, realizar a transação enviando o pedido para o Computador do Banco.

Condição/Restrição: (Requisito Funcional 9. concluído com sucesso)

Saída: Mostrar a quantidade de dinheiro a ser dispensada. Refazer a transação ou reiniciar o diálogo de transação. Senão, esperar por uma resposta do Computador do Banco.

Requisito Funcional 11 do DRO foi modificada para iniciar por um verbo principal de ação; os Agentes Fornecedor/Receptor e Executor foram designados ao cliente porque é ele quem interage com o sistema ao informar a quantidade de dinheiro desejado a ser sacado; a Entrada foi especificada através da tabela sugerida no Formato; as sentenças imperativas descritas nos requisitos originais foram eliminadas da nova especificação do Requisito Funcional; o item Processamento teve de ser complementado com as informações dos Requisitos Funcionais 12 e 13 do DRO. Assim, o item Descrição destes requisitos 12 e 13, que seriam refazer transação e realizar transação, tornaram-se as atividades do item Processamento no Requisito Funcional 11 do DRM. Com isso, eliminaram-se os termos ambíguos ‘muito alto’ e ‘com sucesso’; a Condição/Restrição identificada foi que apenas quando o cliente for autorizado pelo Computador do Banco é que se poderá realizar a transação de saque. Desta forma, colocou-se “Requisito Funcional 9 concluído com sucesso” neste item, cuja Descrição é “Finalizar o processo de autorização”; no item Saída, as informações também foram agregadas.

Através dos exemplos apresentados nesta seção, foi mostrado o uso de cada item do Formato de especificação de Requisitos Funcionais, assim como a maneira de escrevê-los. As Recomendações de Escrita e o Checklist Pré-Inspeção foram procedidas. Com isso, pretendeu-se mostrar como as Diretrizes foram aplicadas nos DR estudados, cujo objetivo era definir uma forma de se escrever requisitos de tal maneira que contribuísse para a qualidade de um DR.

Na seção seguinte é apresentada a aplicação das técnicas de inspeção sobre tais DRs que foram previamente reformuladas.