Buscar

SENAC_ESW_04_EngenhariaDeRequisitos

Prévia do material em texto

Curso: Análise e Desenvolvimento de Sistemas
Disciplina: Engenharia de Software
Aula 04: Engenharia de Requisitos
Prof. Hemir da C. Santiago
hemircsantiago@fac.pe.senac.br
Agenda
Requisitos de Software
Tipos de Requisitos
Engenharia de Requisitos
Processo de Engenharia de Requisitos
Requisito
1. Coisa necessária e indispensável.
2. Condição obrigatória; exigência.
3. Requisitos x pré-requisitos
Requisitos de Software
São as descrições do que o sistema:
Deve fazer 
Os serviços que oferece
As restrições a seu funcionamento
Refletem a necessidade do cliente para um sistema que serve a uma finalidade determinada, como:
Controlar um dispositivo
Realizar um pedido
Encontrar informações
Requisitos de Software
Exemplos:
O software deve possibilitar o cálculo dos gastos diários, semanais, mensais e anuais com funcionários.
O gerente de vendas poderá solicitar a emissão de relatório de compras de qualquer período.
O software deve permitir diferentes níveis de acesso.
O software deve rodar no sistema operacional Linux.
Tipos de Requisitos
Para melhorar a compreensão os requisitos são classificados em:
Funcionais
	
Não-Funcionais
 
Requisitos Funcionais
Descrevem:
Os serviços que o sistema deve fornecer
Como o sistema deve reagir a entradas específicas
Como o sistema deve se comportar em determinadas situações
Requisitos Funcionais
Exemplos: 
O software deve calcular o total a ser pago por um pedido.
O software deve obter por GPS a distância percorrida e calcular a velocidade média.
Os usuários devem poder obter o número de aprovações, reprovações e trancamentos em todas as disciplinas por um determinado período de tempo.
Requisitos Não-Funcionais
Especificações técnicas de como melhor adequar o sistema para atender às expectativas do cliente.
Descrevem:
Limitações no produto:
Exemplos: performance, interface de usuário, confiabilidade e segurança
Limitações no processo de desenvolvimento:
Exemplos: custo, tempo, metodologia de desenvolvimento, componentes a serem utilizados e padrões a serem aderidos.
Requisitos Não-Funcionais
Normalmente aplica-se ao sistema como um todo, podendo estar relacionados ao comportamento do sistema em seu ambiente operacional.
Exemplos:
Confiabilidade
Segurança
Desempenho
Disponibilidade
Requisitos Não-Funcionais
Exemplos:
O sistema será utilizado em filiais nacionais e internacionais, devendo atender às especificidades de cada país (idioma, formato de data, unidade de medida, unidade monetária). 
O sistema deverá permitir até 100 transações por minuto e ser utilizado por até 40 usuários simultaneamente.
O software deve ser executado no sistema operacional Windows e/ou Linux.
O prazo para a entrega é de até 90 dias antes do início da copa do mundo de 2022.
Sistema Mal Especificado
Engenharia de Requisitos
Definição
Processo de descobrir, analisar, documentar e verificar os serviços e restrições de um sistema. (Sommerville, 2011)
Objetivo
Desenvolver uma especificação completa, consistente e não ambígua que sirva como base para um acordo entre todas as partes envolvidas, descrevendo o que o produto de software irá fazer e não como ele será feito.
(Boehm, 1989)‏
Processo da Engenharia de Requisitos
Processo da ER: Estudo de Viabilidade
Avaliação para verificar se o sistema é útil para a empresa.
Uma estimativa é realizada para saber se as necessidades dos usuários podem ser satisfeitas quanto às tecnologias atuais de software e hardware.
Deve ser considerado se o sistema será rentável, prazo adequado e restrições orçamentárias disponíveis.
Um relatório de viabilidade é produzido e deverá determinar a continuação ou não do projeto.
Processo de ER: Elicitação e Análise
Descoberta dos requisitos do sistema.
Elaboração de modelo(s) do sistema e protótipo(s) para ajudar a entender o sistema a ser especificado.
Trabalha-se com os clientes e os usuários finais para obter informações sobre o domínio da aplicação, os serviços e as restrições do sistema.
Processo de ER: Elicitação e Análise
Fonte: Adaptado de (PRESSMAN, 1995).
Pessoas envolvidas
Stakeholder: Qualquer pessoa que tenha alguma influência direta ou indireta sobre os requisitos do sistema.
Exemplos:
usuários finais
gerentes de negócio
especialistas de domínio
engenheiros de outros sistemas que interagem com o sistema em análise
clientes
fornecedores
Processo da ER: Elicitação e Análise
Reunião de informações sobre o sistema requerido.
Fonte de informações:
Documentação
Stakeholders
Sistemas existentes
Técnicas de extração:
Entrevistas, questionários, reuniões
Cenários, Casos de uso
Brainstorming
Etnografia
Processo da ER: Especificação
Tradução das informações obtidas em um documento de requisitos que defina um conjunto de requisitos.
O documento de requisitos não deve incluir detalhes da arquitetura ou da implementação do sistema.
Processo da ER: Validação
Procura garantir que a especificação define, de fato, o sistema que o cliente necessita e que os objetivos e as expectativas dos clientes e usuários serão satisfeitas.
Tipos de Validação de Requisitos
Validade: Verificar se todos os requisitos, inclusive funções adicionais e diferentes da exigidas, surgidas por ocasião da análise, satisfazem a comunidade de usuários.
Consistência: Verificar se há descrições diferentes para uma mesma função ou restrições contraditórias.
Totalidade: Verificar se todas as funções e restrições pretendidas pelos usuários foram especificadas.
 
Tipos de Validação de Requisitos
Realismo: Verificar se, com base nas tecnologias existentes, os requisitos podem ser implementados. Considerando-se inclusive o orçamento e o cronograma.
Facilidade de verificação: A especificação dos requisitos permite que haja uma verificação que mostre que o sistema entregue corresponde ao requisitos solicitados.
 
Gerenciamento de Requisitos
Processo para compreender e controlar as mudanças de requisitos.
Objetivos:
Acompanhar as necessidades individuais dos requisitos e manter as relações entre requisitos dependentes, permitindo avaliar os impactos das mudanças.
Gerenciamento de Requisitos
Para gerenciar as mudanças em requisitos, deve-se descobrir as interações entre eles e mapeá-las em uma matriz de interação (matriz de rastreabilidade).
X
X
R3
X
R2
R1
R3
R2
R1
Requisito
Exercício
Concurso: TRE/CE 2012 - FCC - Analista Judiciário - Análise de Sistemas
Marque os requisitos não funcionais:
( ) Para cada cliente deve ser aplicado um identificador único.
( ) O tempo de resposta entre a requisição e a informação não pode exceder a 2 ms.
( ) Clientes têm filiais que devem "carregar", na base de dados, o identificador do cliente principal.
( ) O sistema não deve ferir as leis de proteção ambiental.
X
X
Exercício
Concurso: TJ/PE 2012 - FCC - Analista Judiciário - Analista de Sistemas
A técnica utilizada na compreensão de requisitos sociais e organizacionais por observação das rotinas dos envolvidos é a:
( ) Prototipação
( ) Pontos de Vista
( ) Cenário
( ) Entrevista
( ) Etnografia
X
Exercício
Concurso: TRT 1ª 2011 - FCC - Analista Judiciário - Tecnologia da Informação
Na engenharia de requisitos trata-se de uma técnica de elicitação que ocorre em ambiente mais informal em que toda a ideia deve ser levada em consideração para a solução de um problema, sendo proibida a crítica a qualquer sugestão dada, e encorajada, inclusive, a criação de ideias que pareçam estranhas ou exóticas:
( ) Prototipação.
( ) Entrevista.
( ) Questionário.
( ) Brainstorming.
( ) Análise de protocolos.
X
Dúvidas?
Plano de Aulas
		DATA	AULA
	1	15/08/2022	Apresentação da disciplina, professor e alunos
	2	22/08/2022	Processo de Software
	3	29/08/2022	Exibição de vídeos sobre a Engenharia de Software e o mercado deTI
	4	12/09/2022	Engenharia de Requisitos
	5	19/09/2022	Modelagem de Software
	6	24/09/2022	Sábado Letivo: Atividade via Google Classroom
	7	26/09/2022	Implementação
	8	03/10/2022	Qualidade de Software
	9	10/10/2022	Revisão: 1ª Unidade
	10	17/10/2022	Atividade Avaliativa
Plano de Aulas
		DATA	AULA
	11	24/10/2022	1ª Devolutiva
	12	31/10/2022	Teste de Software
	13	07/11/2022	Metodologia de Desenvolvimento RUP
	14	14/11/2022	Metodologias Ágeis: eXtreme Programming e Scrum
	15	19/11/2022	Sábado Letivo: Atividade via Google Classroom
	16	21/11/2022	Apresentação de Seminários
	17	28/11/2022	Apresentação de Seminários
	18	05/12/2022	2ª Devolutiva
	19	12/12/2022	Recuperação
	20	19/12/2022	Devolutiva da Recuperação e fechamento do semestre
�
Estudo de Viabilidade�
Elicitação e Análise e Requisitos�
Modelos de Sistema
Relatório de Viabilidade
Especificação de Requisitos�
Requisitos de Usuário e de Sistema
Validação de Requisitos�
Documento de Requisitos
Estudo de 
Viabilidade
Relatório de 
Viabilidade
Elicitação e 
Análise e 
Requisitos
Modelos de 
Sistema
Especificação de 
Requisitos
Requisitos de 
Usuário e de 
Sistema
Validação de 
Requisitos
Documento de 
Requisitos

Mais conteúdos dessa disciplina