• Nenhum resultado encontrado

EngenhariaRequisitos

N/A
N/A
Protected

Academic year: 2021

Share "EngenhariaRequisitos"

Copied!
41
0
0

Texto

(1)

INSTITUTO FEDERAL CATARINENSE

Campus Ibirama

Engenharia de Requisitos

(2)

Engenharia de Requisitos

● São os processos usados para descobrir, analisar, e validar os requisitos do projeto de software

● Atividades

– Estudo de viabilidade – Elicitação

– Especificação

(3)
(4)

Estudo de Viabilidade

● É a fase inicial do projeto, e tem como objetivo decidir se vale a pena ou não desenvolver o sistema

(5)

Estudo de Viabilidade

● Na analise de viabilidade verifica-se:

– Se o projeto pode ser feito ou não;

– Se já existe algo parecido que resolva o problema; – Decidir entre “Make or Buy";

– O sistema pode ser desenvolvido com a tecnologia

atual e com os recursos disponíveis

– Existência de um sistema atual dentro da empresa – Restrições

(6)

Estudo de Viabilidade

● Ao final da analise de viabilidade tem-se um relatório que recomenda ou não o desenvolvimento do projeto;

● O relatório pode propor mudanças (no escopo,

orçamento, prazos, etc.) com o objetivo de tornar o projeto viável;

(7)

Análise de Requisitos

● Caso a análise de viabilidade aponte que é viável desenvolver o

sistema, inicia-se a fase de elicitação e análise dos requisitos

● Atividades realizadas nessa etapa:

– Compreensão aprofundada do domínio/problema; – Identificação das partes interessadas;

– Obtenção dos requisitos (funcionais e não funcionais);

– Identificação e análise de problemas, restrições do ambiente,

software, hardware, orçamento, etc...;

(8)

Análise de Requisitos

● Dificuldades desta fase:

– Os clientes podem não saber exatamente o que

desejam/esperam do sistema;

– Os requisitos identificados podem ser inatingíveis ou

inviáveis (do ponto de vista técnico, econômico, tecnológico, etc...);

– Cada parte interessada pode ter pontos de vista

diferentes ou expressar uma mesma ideia de formas distintas;

(9)

Análise de Requisitos: Técnicas

● Entrevistas com o cliente; ● Etnografia;

● Sistemas existentes ou análogos; ● SAC;

● Soluções do usuário; ● Workshop;

● Prototipação; ● Cenários;

(10)

Entrevista com o Cliente

● Fonte primaria de requisitos;

● Entrevistas fechadas e abertas;

● Obter um entendimento geral (O que cada stakeholder

faz?);

● Desejável que a quantidade de stakeholders seja reduzida

(11)

Questões Importantes

● Qual o principal objetivo da solução?

● Que resultados a solução deve apresentar?

● Que problemas a solução enfrentaria (tanto comercial quanto técnica)?

● Conte sobre o ambiente de negócios onde a solução será usada.

(12)

Questões Importantes

● Você é a pessoa certa para responder? Suas respostas são oficiais?

● Minhas questões são relevantes para o problema?

● Mais alguém pode fornecer informações adicionais?

● Existe algum documento oficial que podemos incluir?

(13)

Etnografia

● Trabalhe com o usuário;

● Passe um tempo no ambiente dele;

● Peça para ele contar o que esta fazendo;

● Porque esta demorando em alguma atividade em particular;

(14)

Sistemas Existentes ou Análogos

● Normalmente já existe uma solução informatizada;

● Verificar os processos que já foram sistematizados;

● Lista de principais relatórios e gráficos;

● Cuidado: não ser subjugado e viciar pelo

(15)

SAC – Sistema de Atendimento

● Descubra os problemas dos clientes do seu cliente;

● Se a empresa busca uma solução, e porque não deve estar atendendo suficientemente os seus clientes;

(16)

Soluções do Usuário

● Ele resolveu o problema com uma planilha?

● Anotações

● Lembretes

● Levar muito serio esses artefatos, pois a vida do

(17)

Workshop

● Discussões sobre requisitos já levantados;

● Confrontar diferentes pontos de vista;

● O desejo de um usuário pode ir contra o desejo de outro;

● Pauta fechada: perguntas e requisitos pontuais;

(18)

Prototipação

● Validar o entendimento que o engenheiro teve do cliente;

● E uma técnica que pode ser usada em um estágio mais avançado da fase de requisitos;

(19)

Cenários

● Peça ao usuário para relatar exemplos da vida real;

● Podem criticar cenários com sistemas existentes;

(20)

Análise de Requisitos

● Após o levantamento dos requisitos é realizada a

negociação:

– Classificação e agrupamento dos requisitos com base nas

funcionalidades;

– Resolução de conflitos;

– Priorização de requisitos (ou grupo de requisitos);

– Confirmação do conjunto de requisitos (com base nos

objetivos do sistema)

– Cliente confirma o conjunto de requisitos levantados (É

(21)

Especificação dos Requisitos

● Formalização dos requisitos por meio de um documento

ou modelo

– “ O sistema DEVE .... “

● Um requisito especifica uma funcionalidade externamente

visível pelo usuário ou um atributo de um sistema

– Serviços fornecidos pelo sistema; – Restrições operacionais;

(22)

Especificação dos Requisitos

● O que um software deve fazer dentro de certas restrições

● Tarefa mais difícil e importante para um engenheiro de software

(23)

Tipos de Requisitos

● Funcionais, não funcionais e regras de negocio;

● Usuário e sistema;

(24)

Requisitos Funcionais

● Serviços que o sistema deve fornecer;

● Como o sistema deve reagir a entradas específicas;

● O que o sistema não deve fazer;

● Independente de linguagem;

(25)

Requisitos Funcionais: Exemplos

● O sistema deve permitir gerenciar pedidos de venda

● O sistema pode permitir gerar relatórios de vendas

mensais

● O sistema deve permitir a emissão de notas fiscais

(26)

Requisitos Não Funcionais

● São aplicados a todo o sistema (maior abrangência);

● Restrições que medem a qualidade do software;

● Podem restringir o próprio processo;

(27)
(28)

Requisitos Não Funcionais: Exemplos

● O tempo de resposta máximo para relatórios deve ser 20

segundos

● Toda tela deve ter uma pagina de ajuda

● O sistema deve ser desenvolvido utilizando a linguagem

Java

(29)

Regras de Negócio

● Funcionalidades que restringem os requisitos funcionais;

● Detalham regras de calculo ou do processo;

(30)

Regras de Negócio: Exemplos

● Um pedido pode ter no máximo 10 itens

● Pode ser comprado no máximo R$ 100.000,00 de um

fornecedor por mês

● Um pedido não pode ser alterado

(31)

Requisitos de Usuário

● São declarações em linguagem natural

acompanhadas de diagramas intuitivos de quais

serviços são esperados do sistema e das restrições sob as quais ele deve operar

● Devem estar em um nível de abstração mais alto, de modo que sejam compreensíveis pelos usuários do sistema que não possuem conhecimento técnico

(32)

Requisitos de Sistema

● Definem detalhadamente as funções, serviços e restrições do sistema

● São versões expandidas dos requisitos de usuário usados pelos desenvolvedores para projetar,

(33)

Requisitos Permanentes

● Os requisitos estão bem compreendidos?

● Funcionalidade menos propensas a sofrerem alterações no desenvolvimento e com o sistema concluído;

(34)

Requisitos Voláteis

● Sofrem forte influência de ambientes externos não

controlados;

● Mercado ou cliente não maduros (não sabem exatamente o

que querem)

● Tecnologias não dominadas;

(35)

Defina um Requisito por Vez

● O software DEVE permitir o cadastro de clientes

● O software DEVE negar o cadastro de dois clientes com o mesmo CNPJ

● O software deve permitir o cadastro de clientes e

deve negar o cadastro de clientes com o mesmo CNPJ

(36)

Evite as Palavras...

● E, OU, SOMENTE SE, EXCETO, SE NECESSÁRIO, MAS,

CONTUDO, POSSÍVEL, ENTRETANTO, USUALMENTE, GERALMENTE, FREQUENTEMENTE, TIPICAMENTE, AMIGÁVEL, PROVAVELMENTE, VERSÁTIL, FLEXÍVEL, APROXIMADAMENTE, TÃO LOGO QUANTO, TALVEZ

● Ou similares

● Estas palavras fazem com que os requisitos não fiquem bem

(37)

Evite o Uso de Adjetivos

● O software DEVE permitir o registro dos clientes da empresa

● O software DEVE permitir o registro dos clientes da

(38)

Matriz de Rastreabilidade: RF X RN

● Um novo requisito é um detalhamento de um requisitos anterior?

● Transformar este novo requisito em regra de negócio, e criar a rastreabilidade

(39)

Matriz de Rastreabilidade: RF X RN

RF1 RF2 RF3 RN1 X X RN2 X X RN3 X X X RN4

(40)
(41)

Exercício

● Uma administradora de condomínios deseja ter a possibilidade

de imprimir seus próprios boletos bancários. Como os contratos tem duração de 12 meses, quando um cliente vir assinar um novo contrato, o atendente já pode imprimir e entregar no mesmo instante os boletos ao cliente. Os boletos vencem sempre no dia 10 de cada mês.

● Dois dias úteis após o dia 10, o tesoureiro da administradora

baixa do banco a remessa de boletos pagos. Após analisar os pagamentos, ele entrega ao atendente uma relação de todos os clientes em atraso. O atendente liga para cada um dos clientes lembrando do atraso no pagamento da parcela

Referências

Documentos relacionados

Um número crescente de cientistas olha para um corpo em decomposição como a pedra angular de um vasto e complexo ecossistema, que surge pouco depois da morte,

A pesquisa “Estratégias para o varejo brasileiro – Reflexões sobre os anseios do consumidor” realizada pela Deloitte em 2010 apresentou de forma muito objetiva o que

Em segundo, toda metodologia utilizada na Filosofia Clínica é construída a partir de métodos filosóficos: Histórico, quando conside- ra que o partilhante se constrói a partir de

 Sentido de desorientação: um idoso com demência pode revelar-se desorientado relativamente às mais diversas situações – pode não saber em que dia da semana ou mês está;

E) CRIE NO SEU CADERNO UM TÍTULO PARA ESSA HISTÓRIA EM QUADRINHOS.. 3- QUE TAL JUNTAR AS SÍLABAS ABAIXO PARA FORMAR O NOME DE CINCO SUGESTÕES DE PRESENTE PARA O DIA

Todo o sistema sócio-econômico neste mundo foi criado, por Lúcifer, com o único propósito de escravizar os homens e as mulheres, até o mo- mento em que estes escravos ouvem

Quando alguém entra em contato com as revelações da Verdade Absoluta, sejam trazidas por Krishna, Buda, Jesus, Paulo, ou por quaisquer outros profetas ou mensageiros,

Um eficiente planeja- mento de segurança para o condomínio irá cuidar não apenas de aspectos relacionados ao acesso pela porta- ria e monitoramento de áreas internas, ele deve