Baixe o app para aproveitar ainda mais
Prévia do material em texto
Profª. M.Sc. Larissa Luz Gomes lariluz@yahoo.com.br Aula 3 – Requisitos de Sistemas Engenharia de Software Agenda • Requisitos • Níveis de Requisitos • Engenharia de Requisitos • Tipos de Requisitos • Determinação de Requisitos • Técnicas de Coleta de Requisitos • Entrevista • JAD • Questionário • Análise de Documentos • Observação Requisitos Requisitos A linha divisória entre a fase de Análise e de Projeto é muito tênue, pois os documentos gerados na fase de análise são a primeira etapa no projeto do novo sistema; A etapa de Determinação de Requisitos é a etapa mais crítica de todo SDLC, pois é onde os elementos principais do sistema começam a surgir. Durante a determinação de requisitos é fácil alterar o sistema porque pouco trabalho ainda foi feito. Requisitos A finalidade da etapa de Determinação de Requisitos é converter a explicação de alto nível desses requisitos, relatados na Solicitação do Sistema, em uma lista mais precisa que possa ser usada como informação para o restante da fase de análise; Isso pode ser feito através da criação de casos de uso, construção dos modelos de processos e um modelo de dados que mais tarde se expande com base nos requisitos e, depois, conduz ao projeto. Requisitos Requisitos segundo o IEEE: 1)Uma condição ou uma capacidade de que o usuário necessita, para solucionar um problema ou alcançar um objetivo. 2)Uma condição ou uma capacidade que deve ser alcançada ou possuída por um sistema ou componente do sistema, para satisfazer um contrato, um padrão, uma especificação ou outros documentos impostos formalmente. 3) Uma representação documentada de uma condição ou capacidade, conforme os itens (1) e (2). O que é um Requisito? O que é um Requisito? Um requisito é simplesmente uma declaração do que o sistema deve ser ou quais características ele precisa possuir; Na fase de análise os requisitos são escritos sob a perspectiva do pessoal da empresa e eles enfocam “o que” o sistema faz: requisitos da empresa ou do usuário; Os requisitos evoluem de declarações detalhadas dos recursos para declarações detalhadas da forma técnica em que os recursos serão implementados: requisitos do sistema; Níveis de Requisitos Níveis de Requisitos Requisitos do usuário: Se destinam às pessoas envolvidas no uso e na aquisição do sistema; Devem ser escritos usando linguagem natural, tabelas e diagramas de modo que sejam compreensíveis. Exemplo:o software deve oferecer um meio de representar e acessar arquivos externos criados por outras ferramentas Níveis de Requisitos Requisitos do sistema: Se destinam a comunicar, de modo preciso as funções que o sistema tem de fornecer. Podem ser escritos: em linguagem estruturada, formulário estruturado de linguagem natural, linguagem com base em alguma linguagem de programação linguagem especial para especificação de requisitos Exemplo: para o requisito do usuário definido no item anterior, pode-se ter: 1.1. O usuário deve dispor de recursos para definir o tipo dos arquivos externos; 1.2 Cada tipo de arquivo pode ter uma ferramenta associada a ele; 1.3 Cada tipo de arquivo externo pode ser representado como um ícone específico na tela Níveis de Requisito Engenharia de Requisito Engenharia de Requisito A Engenharia de Requisito está relacionada com a identificação de metas a serem atingidas pelo sistema a ser desenvolvido; Está relacionada com a operacionalização de tais metas em serviços e restrições (princípios, técnicas, linguagens e ferramentas) ; Está interessada com o relacionamento desses fatores para fazer uma especificação do comportamento do software e de sua evolução ao longo do tempo. É uma área ampla e multidisciplinar: aspectos sociais e humanos são importantes Tipos de Requisitos Tipos de Requisitos Por natureza, os requisitos podem ser Funcionais ou Não-funcionais: Funcional: se relaciona diretamente a um processo que o sistema tem de executar ou às informações que ele precisa conter; Não-funcional: se referem a propriedades comportamentais que o sistema deve possuir, como desempenho ou usabilidade. Requisitos funcionais: dizem respeito à definição das funções que um sistema ou um componente de sistema deve fazer. descrevem as transformações a serem realizadas nas entradas de um sistema ou em um de seus componentes, a fim de que se produzam saídas. devem ser consistentes e completos Exemplo: o sistema fornecerá telas apropriadas para o usuário ler documentos no repositório de documentos. Tipos de Requisitos Requisitos não funcionais: dizem respeito às: restrições, aspectos de desempenho, interfaces com o usuário, confiabilidade, segurança, manutenibilidade, portabilidade, Padrões. Os erros nestes tipos de requisitos se constituem os mais caros e difíceis de corrigir, uma vez que um sistema tenha sido implementado. Tipos de Requisitos Requisitos Não-Funcionais Exemplo Prático Exercício – Identificando Requisitos 1. Você recebeu uma lista de requisitos para um sistema de vendas, onde o sistema deve: Ser acessível a usuários da Web Restringir o acesso às informações de rentabilidade Incluir informações sobre custo real e orçado Fornecer relatórios de gerenciamento Possuir um tempo de resposta máximo de 2s Incluir informações de todas as subsidiárias da empresa Fornecer classificação mensal de desempenho do pessoal de vendas Quais são os requisitos funcionais e não-funcionais? Forneça dois exemplos adicionais de cada. Determinação de Requisitos Determinação de Requisitos Determinar requisitos para a definição dos mesmos é uma tarefa tanto da empresa quanto da área de TI. Sistemas falharam por acharem que apenas os analistas estavam em melhor posição para definir como um sistema de computador devia funcionar. Determinação de Requisitos A abordagem mais eficiente é ter tanto o pessoal da empresa quanto os analistas trabalhando juntos para determinar os requisitos; Porém, às vezes, os usuários não sabem exatamente o que desejam, e os analistas precisam ajudá-los, três técnicas têm se popularizado para ajudar os analistas a fazerem isso. Exercício Gerenciamento de Requisitos Gerenciamento de Requisitos A definição de requisitos evolui com o tempo conforme novos requisitos são identificados; Cuidado: a evolução da definição de requisitos deve ser gerenciada cuidadosamente ou o sistema continuará crescendo, e nunca será concluído; A equipe do projeto identifica os requisitos e avalia quais deles se encaixa no escopo do sistema, quando um requisito reflete real necessidade mas esta fora do escopo, ele é adicionado a uma lista de requisitos futuros. Técnicas de Coleta de Requisitos Técnicas de Coleta de Requisitos O processo básico de análise é dividido em 3 etapas: Compreender o sistema no estado; Identificar melhorias; Desenvolver requisitos para o sistema futuro. Devemos observar que as técnicas de análise de requisitos e as de coleta de requisitos caminham juntas. Um analista precisa de sólidas habilidades de análise crítica. É a habilidade de reconhecer vantagens e desvantagens e reformular uma idéia de uma forma melhorada; Esta habilidade é necessária para examinar satisfatoriamente os resultados da coleta de requisitos, identificar requisitos da empresa e traduziresses requisitos em um conceito para o novo sistema. Técnicas de Coleta de Requisitos Um analista é como um detetive, ele sabe que há um problema a ser resolvido, e portanto, deve procurar pistas que descubram a solução. Técnicas de Coleta de Requisitos Existem diversas técnicas, mas trataremos 5 técnicas: 1. Entrevistas 2. Desenvolvimento de aplicações conjuntas (JAD) 3. Questionários 4. Análise de documentos 5. Observação. Técnicas de Coleta de Requisitos Entrevista: é normalmente a técnica de coleta de requisitos mais usada. Há 5 etapas básicas: 1. Seleção do entrevistado: criar uma agenda de entrevistas que liste todas as pessoas que serão entrevistadas, quando e para que finalidade. Técnicas de Coleta de Requisitos Exemplo de Agenda de Entrevista Exemplo e Pergunta Suponha que você é o gerente do projeto. Crie uma agenda de entrevistas para o sistema em questão. Entrevista: é normalmente a técnica de coleta de requisitos mais usada. Há 5 etapas básicas: 1. Seleção do entrevistado: criar uma agenda de entrevistas que liste todas as pessoas que serão entrevistadas, quando e para que finalidade. 2. Planejamento das perguntas da entrevista: há 3 tipos de perguntas na entrevistas: abetas fechadas e analíticas. Técnicas de Coleta de Requisitos Tipos de Perguntas Entrevista: é normalmente a técnica de coleta de requisitos mais usada. Há 5 etapas básicas: 1. Seleção do entrevistado: criar uma agenda de entrevistas que liste todas as pessoas que serão entrevistadas, quando e para que finalidade. 2. Planejamento das perguntas da entrevista: há 3 tipos de perguntas na entrevistas: abetas fechadas e analíticas. 3. Preparação para a entrevista: é necessário preparar-se para a entrevista como para uma apresentação, antecipe possíveis respostas e como fará o acompanhamento das mesmas. Técnicas de Coleta de Requisitos Entrevista: é normalmente a técnica de coleta de requisitos mais usada. Há 5 etapas básicas: 1. Seleção do entrevistado: criar uma agenda de entrevistas que liste todas as pessoas que serão entrevistadas, quando e para que finalidade. 2. Planejamento das perguntas da entrevista: há 3 tipos de perguntas na entrevistas: abetas fechadas e analíticas. 3. Preparação para a entrevista: é necessário preparar-se para a entrevista como para uma apresentação, antecipe possíveis respostas e como fará o acompanhamento das mesmas. 4. Condução da Entrevista 5. Acompanhamento após a Entrevista: preparo de um relatório de entrevista que descreva as informações da mesma. Técnicas de Coleta de Requisitos Desenvolvimento de aplicações conjuntas (JAD – join application development): é uma técnica de coleta de informações que permite que a equipe de projeto, usuários e os gerentes trabalhem juntos para identificar requisitos para o sistema. Técnicas de Coleta de Requisitos JAD Questionários: série de perguntas escritas para obter informação de um usuário. Assim como na entrevista e as seções JAD é necessário selecionar os indivíduos para quem vai passar o questionário. Bom esquema de Questionário: Comece com perguntas inofensivas Agrupe os itens em seções que sejam logicamente corretas Não coloque itens importantes muito no final do questionário Não amontoe uma página com muitos itens Evite abreviações Evite itens ou termos tendenciosos ou sugestivos Numere as perguntas para evitar confusão Teste antecipadamente o questionário para identificar perguntas confusas Ofereça anonimato aos entrevistados. Técnicas de Coleta de Requisitos Análise de Documentos: a equipe de projeto que desenvolveu o sistema anteriormente produziu a documentação que será atualizada em todos os projetos subseqüentes. Técnicas de Coleta de Requisitos Análise De Documento Análise de Documentos: a equipe de projeto que desenvolveu o sistema anteriormente produziu a documentação que será atualizada em todos os projetos subseqüentes. Observação: ato de examinar atentamente processos em execução para reunir informações sobre o sistema no estado permitindo que o analista veja a realidade da situação, ao invés de escutar pessoas nas entrevistas ou seções de JAD. Técnicas de Coleta de Requisitos Dúvidas e Perguntas Próxima Aula • Metodologias de Desenvolvimento de Software
Compartilhar