Análise e Projeto de Sistemas I As falhas nos requisitos estão entre as principais razões para o fracasso de um software... 2º Bimestre (material 1) Professor: José Ronaldo Leles Júnior Turma: 3º semestre do curso de Sistemas de Informação UEG Universidade Estadual de Goiás Câmpus Posse Problemas típicos encontrados com a especificação de requisitos: Falta de conhecimento sobre o domínio Entendimentos errados ou mau compreendidos. Comunicação do Usuário e do Analista Com diferentes pontos de vistas podemos ter requisitos mal feitos ou falhos. Gestão de mudanças e Evolução dos requisitos Quais pontos do sistemas impactam em quais requisitos e quais requisitos impactam em quais operações do sistema. O que são? Os requisitos de um sistema são descrições dos serviços fornecidos pelo sistema e as suas restrições operacionais (SOMMERVILLE, 2010). Requisitos Funcionais e Não Funcionais Requisitos funcionais São as declarações de serviços que o sistema deve fornecer definem as funcionalidades do sistema. (O QUE FAZER?) O sistema deve permitir que cada professor realize o lançamento de notas nas turmas nas quais lecionou ; O sistema deve permitir que um aluno realize a sua matrícula nas disciplinas oferecidas em um semestre letivo ; A imprecisão na especificação de requisitos é motivo de MUITOS PROBLEMAS... Considere o termo Telas apropriadas Usuário: tela de propósito especial para cada tipo de documento diferente Desenvolvedor: fornece uma tela de texto que mostra o conteúdo do documento 1
A especificação de requisitos deve ser: Completa incluir descrições de todos os serviços requeridos Consistente Não deve haver conflitos ou contradições nas declarações dos serviços Requisitos não funcionais Declaram características globais do sistema (confiança, segurança, desempenho, usabilidade etc.) características de qualidade que o sistema deve possuir e que estão relacionadas às funcionalidades. (COMO FAZER?) O tempo de registro de cada DVD deve ser inferior a 1 segundo ; O sistema será operado em ambiente operacional Windows e Linux ; O sistema só permitirá acesso aos dados, com autorização. O sistema terá um procedimento de autorização de usuários, nos quais tenham que se identificar usando um (login) e uma senha. Alguns tipos de requisitos não funcionais: Requisitos normativos Confiabilidade: corresponde a medidas quantitativas de confiabilidade do sistema, tais como tempo médio de recuperação entre falhas. Desempenho: requisitos que definem tempos de respostas esperados para as funcionalidades do sistema. Portabilidade: restrições sobre as plataformas de hardware e software nas quais o sistema será implementado e sobre o grau de facilidade para transportar o sistema para outras plataformas. Segurança: limitações sobre a segurança do sistema em relação a acessos não autorizados. Usabilidade: requisitos que se relacionam ou afetam a usabilidade do sistema (facilidade de uso). São declarações de restrições impostas sobre o desenvolvimento do sistema. Exemplos: a adequação a custos e prazos; a plataforma tecnológica; aspectos legais (licenciamento) limitações sobre a interface com o usuário; componentes de hardware a serem adquiridos; necessidades de comunicação com sistemas legados; etc. Regras do Negócio São políticas, condições ou restrições que devem ser consideradas na execução dos processos existentes em uma organização (Gottesdiener, 1999). Cada organização pode ter várias regras do negócio: O valor total de um pedido é igual à soma dos totais dos itens do pedido acrescido de 10% de taxa da entrega ; Um cliente do banco não pode retirar mais de R$ 1000,00 por dia de sua conta ; Senhas devem ter, no mínimo, seis caracteres, entre números e letras e devem ser atualizadas a cada três meses. O número máximo de alunos por turma é igual a 40 Benefício - Indicando o grau de benefício esperado com o sistema. Críticos: Caso não estejam presentes ou funcionando adequadamente, o sistema não atenderá as necessidades do cliente. Importantes: Se não implementado, pode afetar a satisfação do cliente, mas não determinará o sucesso ou fracasso do projeto. Desejáveis: Provavelmente serão pouco utilizados e que podem até não ser atendidos no projeto. 2
Estabilidade - Reflete a probabilidade de o requisito sofrer alterações futuras. Alta: Probabilidade de mudanças é baixa. Média: Pendência de esclarecimentos por parte do cliente. Baixa: Cuja mudança é certa! Algumas vezes em consequência da complexidade envolvida. Ex: regras do negócio. Situação - Indicando a situação atual do requisito: Proposto, Aprovado ou Cancelado. Risco - Indica o grau de risco de implementação. Pode ser classificado como alto, médio e baixo. Requisito com alto risco é aquele que possui baixa estabilidade, alta complexidade e envolve pendências externas ao projeto e/ou envolve novidades tecnológicas. Mudança contínua Requisitos sempre mudam Temos que aceitar a instabilidade dos requisitos como um fato da vida, e não condená-la como o resultado de um raciocínio mal conduzido. Coloque dois ou mais interessados em uma sala e pergunte a eles que tipo de sistema eles desejam. Provavelmente obterá três ou mais opiniões diferentes. Negociação Quais são as fontes de requisitos? Usuários diferentes possuem requisitos de acordo com seus interesses; Usuários pedem mais do que pode ser conseguido; O analista de requisitos deve negociar requisitos que não possam ser atendidos, devido ao cronograma e custo. Não deve haver ganhador e nem perdedor em uma negociação efetiva. 3
Quais problemas podem ser encontrados? Envolvidos Possuem uma ideia pré-concebida da solução Não sabem o que eles realmente desejam São inabilitados em articular o que eles desejam Pensam que sabem o que eles Desejam, mas não os reconhecem quando eles são entregues Todo mundo enxerga as coisas do seu próprio ponto de vista Acredita que tudo é motivado politicamente (a equipe comercial deseja a implementação de requisitos que atraem mais clientes e a financeira requisitos que tornem os gastos menores) Analistas Pensam que eles entendem os problemas do usuário melhor do que o usuário. Documento de Requisitos O documento de requisitos de um projeto tem o objetivo de documentar o escopo do sistema a ser desenvolvido. É a declaração oficial do que é requerido dos desenvolvedores do sistema Deve ser elaborado de maneira precisa, completa, consistente e, principalmente, compreensível aos stakeholders. Ele é o produto da fase de levantamento de requisitos. 1. Introdução (Contém a organização do documento) Este documento apresenta os requisitos de usuário para a informatização da Vídeo Locadora Passatempo. Essa atividade foi conduzida por meio da realização de entrevistas com cliente e usuários. Este documento está organizado da seguinte forma: a seção 2 contém uma descrição do propósito do sistema; a seção 3 apresenta uma descrição do minimundo apresentando o problema; e a seção 4 apresenta a lista de requisitos de usuário levantados junto ao cliente. 2. Propósito do Sistema (contém o propósito do sistema descrito de forma bastante objetiva) A vídeo locadora necessita de um sistema de informação para apoiar a realização de suas atividades principais, a saber: empréstimo e devolução de itens e reserva de filmes. Para que essas atividades sejam apoiadas, é necessário controlar as informações acerca de filmes e clientes, dentre outros. Além disso, devem ser fornecidas facilidades de consulta ao acervo da locadora, permitindo consultas por diversas informações dos filmes. 3. Descrição do Minimundo (visão geral do domínio, do problema a ser resolvido, bem como as principais ideias do cliente sobre o sistema a ser desenvolvido) A Vídeo Locadora Passatempo deseja um sistema de informação para gerenciar o atendimento aos seus clientes. O negócio principal da locadora é a locação de vídeos (ou filmes). De um dado filme, a locadora pode possuir vários itens, em diferentes mídias, tais como DVD, VHS, Blu-Ray, HD-DVD. Os filmes são classificados nos seguintes gêneros: ação, animação, aventura, comédia, documentário, drama, ficção, guerra, musical, policial, romance, suspense e terror. O prazo para devolução é de um dia para lançamentos e três dias para filmes do catálogo. Contudo, o valor a ser efetivamente pago e a data de devolução prevista de um item locado podem ser alterados pelo atendente da locadora para aplicar descontos individualizados ou ampliar prazos de devolução. ( ) 4. Requisitos e Regras de Negócio Requisitos Funcionais 4
Requisitos Não Funcionais Regras de Negócio Bibliografia Bezerra, Eduardo. Princípios de Análise e Projeto de Sistemas com UML. Rio de Janeiro: Elsevier, 2007. Sommervile, lan. Engenharia de Software. 8º ed. São Paulo. Pearson Addison Wesley, 2007. 5