Baixe o app para aproveitar ainda mais
Prévia do material em texto
8ºAula Modelo de documento de requisitos Objetivos de aprendizagem Ao término desta aula, vocês serão capazes de: • conhecer o que é documento de requisitos; • entender como fazer um documento de requisitos. Olá, pessoal, tudo bem? Chegamos a nossa última aula. Foi uma longa e intensa jornada pela Engenharia de Requisitos. Para finalizar, vamos apresentar o artefato que é responsável por documentar o sistema, que serve de contrato para o cliente: o Documento de Requisitos. Nesta aula, vamos apresentar um modelo básico de documento. É nele que vocês terão que se embasar no seu projeto final, que é apresentar um documento de requisitos pronto. Assim, leia com bastante atenção os conteúdos expressos nessa aula, e se você tiver alguma dúvida, use as ferramentas disponíveis na sua área do aluno. Vamos lá? Bons estudos! Engenharia de Requisitos 54 Seções de estudo 1 - Documento de Requisitos 1 - Documento de Requisitos O Documento de Requisitos é um artefato muito importante para a Engenharia de Requisitos, pois contêm uma descrição detalhada de todos os aspectos do software a ser construído. Esse documento deve ser claro e conciso, para que todos os envolvidos entendam exatamente quais são os objetivos do sistema. A seguir, vamos apresentar os conteúdos que devem estar em seu Documento de Requisitos. Para fazer esse documento, você deve seguir o que foi especificado nas sete aulas anteriores. Vale lembrar que este não é um modelo padrão para todos os projetos, ou seja, na vida real, não existe um modelo unificado. Existem autores como Sommerville (2011), Pressman e Maxim (2016) e metodologias que estabelecem uma sequência básica para fazer a documentação do software. Vamos ver o que o seu documento deve ter? Sumário É apenas um índice de todos os demais tópicos a serem tratados nesse documento. Vale lembrar que deve ter as seções básicas, a lista de todos os casos de uso e a numeração das páginas respectivas a cada seção. Vamos a um exemplo: Sumário Prefácio…………………………………………………………………………………….1 Introdução………………………………………………………………………………….2 Glossário…………………………………………………………………………………...3 Definição de requisitos………………………………………………………………...6 Requisitos funcionais…………………………………………………..6 Requisitos não-funcionais…………………………………………..7 Especificação de Requisitos…………………………………………………………..8 Casos de Uso………………………………………………………………..8 CF001 - Logar no Sistema…………………...………….8 CF002 - Registrar no Sistema……………..…………….8 (...) Diagrama de Casos de Uso…………………………………….………..…….13 Diagrama de Classes……...…………………………………….………..…….13 (...) Arquitetura do Sistema……………………………………………………………….20 Projeto de Componentes…………………………………………………………….21 Protótipo de Interfaces……………………………………………………………….23 Referências……………………………………………………………………………....26 Apêndices………………………………………………………………………………...28 Apêndice I - Configuração do sistema…………………………...28 Prefácio Segundo Sommerville (2011), é a parte que define os possíveis leitores do documento e descreve seu histórico de versões, incluindo uma justificativa para a criação de uma nova versão e um resumo das mudanças feitas em cada versão. A seguir, reproduziremos um exemplo: Introdução É a parte que define o que o sistema fará e qual a contribuição desse sistema para os objetivos da empresa. Vamos a um pequeno texto de exemplo: introdução o sistema SisLocadora, criado pela empresa FulanoSys, a pedido da empresa LocaPlus, tem como objetivo principal agilizar o atendimento aos clientes da empresa. A LocaPlus, que possui uma loja no Aeroporto de Dourados, atendem clientes que vem principalmente de São Paulo para visitar Dourados e cidades ao seu redor. A empresa visa ainda com esse sistema, se adequar as normas do país e entrar na vanguarda tecnológica, saindo na frente em relação aos seus concorrentes diretos. Glossário Nessa parte, é definida uma lista de termos técnicos, com os significados. Saiba que o leitor pode não saber de todo o jargão técnico para manipular o sistema. Vamos a um exemplo hipotético, para o sistema de Locadora. glossário CPF Cadastro de Pessoas Físicas Cnh Carteira Nacional de Habilitação Definição de Requisitos Nesta seção, você elencará uma lista de requisitos que terão que ser cumpridos no sistema. Essa lista não precisa ser detalhada, e deve ser dividida em duas categorias, descritas por Sommerville (2011): • Requisitos de usuário são declarações, em uma linguagem natural com diagramas, de quais serviços o sistema deverá fornecer a seus usuários e as restrições com as quais este deve operar. • Requisitos de sistema são descrições mais detalhadas das funções, serviços e restrições operacionais do sistema de software. O documento de requisitos do sistema (às vezes, chamado especificação Prefácio Esse documento é destinado aos interessados diretos e indiretos do sistema SisLocadora, como desenvolvedores da Empresa FulanoSys (assim como futuras empresas contratadas na manutenção do sistema) e funcionários e gerência da empresa LocaPlus (empresa beneficiada pelo sistema). Histórico de Versões Versão Data Justificativa 0.5 01/03/2018 Primeira Versão, adicionando os requisitos de usuário e de sistema 0.6 15/03/2018 Segunda versão, revisando os requisitos de sistema 55 funcional) deve definir exatamente o que deve ser implementado. Pode ser parte do contrato entre o comprador do sistema e os desenvolvedores de software. Vamos a um exemplo: Definição de Requisitos requisitos de Usuário • Prover cadastro de Clientes; • Prover cadastro de Carros; • Prover cadastro de Locações; • Prover cadastro de Funcionários. requisitos de Sistema • o sistema deverá implementar um controle de permissões, impedindo o acesso não autorizado; • o sistema deverá ter um tempo de processamento rápido (menor que 2 segundos). Especificação de Requisitos Essa seção é dividida em duas. A primeira subseção trata dos casos de uso do sistema. Cada caso de uso deve ser apresentado individualmente, contendo os seguintes itens: • Número do Caso de Uso – pode ser de ordem sequencial ou um código referenciando alguma parte do sistema; • Título; • Ator(es) principal(is); • Pré-condição: condições que devem ser satisfeitas antes do caso de uso ser iniciado; • Disparador: identifica o evento ou condição que faz o caso de uso ser iniciado; • Cenário: série de operações que serão realizados nesse caso de uso; • Pós-condições: condições que devem ser satisfeitas antes do caso de uso ser encerrado; • Exceções: como vimos, são os fluxos alternativos de informações quando ocorre algum problema com o caso de uso – se não houver alguma situação, não precisa. Vamos a um exemplo: Cenário: 1. o funcionário seleciona a opção “Cadastro de Locação”; 2. uma tela de cadastro aparece; 3. usuário informa o nome do cliente e a placa do carro; 4. Usuário confirma os dados; 5. Sistema verifica se os dados são válidos e se o carro está disponível. 6. Se os dados estiverem certos, o sistema cadastra uma nova locação com os dados solicitados e com a data do sistema como a data de início da locação; 7. uma mensagem de êxito aparece. Pós-condições: • A locação foi cadastrada no sistema Exceções: • Se o carro não estiver disponível, uma mensagem de erro é gerada e a execução volta ao passo 3; • Se o cliente e/ou o carro não estiverem cadastrados, uma mensagem de erro é gerada e a execução volta ao passo 3. Prioridade: Alta Caso de uso #010: Cadastrar locação ator primário: • Funcionário Pré-condições: • Funcionário deve estar previamente logado no sistema; • Carro a ser locado deve estar previamente cadastrado no sistema e disponível para locação; • Cliente que locará o carro deve estar previamentecadastrado no sistema. Disparador: • Cliente se apresenta a locadora e demonstra interesse em locar um carro já escolhido por esse cliente. A segunda seção é a apresentação dos diagramas do sistema. Cada diagrama deve ter um título e uma breve explicação de sua função para a compreensão do sistema. Vamos a um exemplo: Diagramas 1. Diagrama de Classes Esse diagrama visa mostrar as classes do sistema a ser desenvolvido e as suas associações. Arquitetura do Sistema e Projeto de Componentes Nesta seção, você deve colocar um diagrama de componentes do sistema (assim como outros diagramas que julgar importantes). Além disso, você deve explicar a arquitetura do sistema e uma explicação dos componentes e suas funções do sistema. arquitetura do Sistema e Projeto de Componentes O presente sistema usará como modelo de arquitetura o modelo em camadas. Temos uma camada de interface gráfica e de banco de dados, lidando com aspectos de interface e armazenamento e outra para a lógica da aplicação. Os componentes do sistema são: • Sistema de Login: Cuida do login do sistema. É representado pela Engenharia de Requisitos 56 classe Login; • Sistema de Cadastro de Funcionários: Responsável por cadastrar os funcionários no sistema. É representado pela classe Funcionário; • Sistema de Cadastro de Clientes: Responsável pelo cadastro de clientes no sistema. Integra a classe Cliente; • Sistema de Cadastro de Veículos: Responsável pela manutenção do cadastro de carros. É representado pela classe Carro; • Sistema de Cadastro de Locações: Responsável por cadastrar as Locações. É integrado pela classe Locação; • Sistema de Banco de Dados: Responsável por prover o armazenamento do sistema. É representado pela classe DAO, que oferece uma interface de armazenamento entre as classes de lógica de negócios e as dependências do banco de dados providos pela linguagem de programação; • Interface gráfica: Provê a interface gráfica do sistema. É representado pelo componente Java Swing. A seguir, mostramos o diagrama de componentes: Referências Assim como em todo o trabalho de pesquisa, você deve citar as referências consultadas para a elaboração do trabalho. Podem ser artigos da área, documentações de sistemas anteriores, estudos de caso, livros técnicos, entre outros documentos. Neste trabalho, cite as referências no padrão ABNT, como em todo trabalho escolar e acadêmico. E assim, chegamos ao fim da nossa última aula. Agora é com você! Faça as atividades que estão na sua área do aluno. Se você tiver alguma dúvida ou problema, estaremos a sua disposição. Esperamos que a sua jornada tenha sido proveitosa. Forte abraço! Retomando a aula Chegamos ao final da nossa última aula. Vamos recordar os pontos principais? 1 - Documento de Requisitos O Documento de Requisitos é um artefato que contêm as informações básicas do sistema a ser desenvolvidos, tais como casos de uso, diagramas, especificações entre outras informações importantes. Vale a pena DEBASTIANI, Carlos Alberto. Definindo Escopo em Projetos de Software. São Paulo: Novatec, 2015. ENGHOLM JR, Hélio. Engenharia de Software na Prática. São Paulo: Novatec, 2010. PRESSMAN, Roger S.; MAXIM, Bruce R. Engenharia de Software: Uma abordagem profissional. 8 ed. Porto Alegre: Bookman, 2016. SOMMERVILLE, Ian. Engenharia de Software. 9 ed. São Paulo: Pearson, 2011. Vale a pena ler Referências ALONSO, Vinícius. Aplicando a Lei de Demeter em nossos códigos. [S.l.]: Medium, 2016. Disponível em: <https:// medium.com/lets-grow/aplicando-a-lei-de-demeter-em- Protótipo de Interfaces Nesta seção você deve colocar os protótipos de interfaces das principais telas do sistema. Para cada tela, você deve colocar uma descrição de qual situação essa tela seria apresentada ao usuário. Vejamos um exemplo: interfaces (...) 4. Tela de Cadastro de Locação O protótipo a seguir mostra a tela do caso de uso “Cadastrar Locação”, que serve para fazer o cadastro de locações no sistema: Apêndices Nesta seção você pode colocar outras informações que você julgar úteis para a compreensão do sistema. Podemos citar: • Requisitos de Hardware, que descrevem as condições mínimas ideais do sistema; • Requisitos de Banco de Dados, que define a organização lógica dos dados usados pelo sistema e os relacionamentos entre esses dados.
Compartilhar