• Nenhum resultado encontrado

3. Engenharia de Requisitos

N/A
N/A
Protected

Academic year: 2021

Share "3. Engenharia de Requisitos"

Copied!
37
0
0

Texto

(1)

Engenharia de Software

(2)

Engenharia de Requisitos



Fases do desenvolvimento de software que mais

erros originam

(3)

Engenharia de Requisitos

(4)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



descrições de como o sistema se deve comportar



descrições de propriedades do sistema



descrições de restrições do sistema ou condicionantes

no seu desenvolvimento



descrições de capacidades que um sistema deve

possuir para satisfazer uma determinada imposição



descrição de capacidades que um sistema deve possuir

(5)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Exemplos

 “deverá existir sempre uma fotografia associada a cada

docente”

 “o sistema deve respeitar as normas de acessibilidade da W3C”

 “o sistema deve ser compatível com o IE6”

 “os dados dos clientes deverão ser guardados numa base de

dados e as passwords deverão ser encriptadas”

(6)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Os requisitos devem incidir sobre o que é para fazer



A forma como isso será feito será tratada

(7)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Requisitos funcionais



Descrevem o que o sistema deve fazer



Contexto do sistema



Reacção a estímulos externos



Estados do sistema



Informação manipulada pelo sistema



...

 Ex.: “o sistema deve permitir adicionar utilizadores”

 Requisitos funcionais podem ser descritos por Diagramas de

Casos de Uso – UML ou textualmente

(8)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Requisitos não-funcionais



Descrevem as restrições na implementação dos requisitos

funcionais



Usabilidade



Desempenho



Fiabilidade



Disponibilidade



Segurança



Portabilidade



Tecnologia de implementação

(9)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Requisitos de desenvolvimento



Descrevem restrições ao processo de desenvolvimento do

sistema e não são perceptíveis pelos utilizadores



Manutenção



Evolução



Documentação



Processo



Orçamento



Recursos humanos



Recursos computacionais

(10)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Documentos envolvidos

 Definição de Requisitos



contém uma lista de tudo o que o cliente espera que o sistema faça.



Define um entendimento entre o cliente e a equipa de desenvolvimento sobre

o que é que o sistema deve fazer.



É escrito pelos clientes e os analistas de requisitos.

 Especificação de Requisitos



descrição do documento de definição de requisitos em termos técnicos mais

apropriados à equipa de desenvolvimento e às actividades de desenho.



É escrito pelos analistas de requisitos.

(11)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Principais atributos dos requisitos

 prioridade

 esforço

 risco



Por vezes também é possível prever

 duração

 custo

(12)

Engenharia de Requisitos



Mas afinal o que são os requisitos?



Níveis dos requisitos

 Alto nível



Missões



Objectivos



Regras do negócio



Baixo nível



Necessidades dos utilizadores



Funcionalidades

(13)

Engenharia de Requisitos



Engenharia de requisitos?



Consiste do conjunto de actividades envolvidas no

processo de criação de um documento de requisitos

 Fase 1: descobrir, obter, analisar

 Fase 2: especificar, documentar

 Fase 3: verificar, gerir, manter



Implica a utilização de um conjunto de técnicas e

modelos que tornam sistemática e repetitiva a

execução destas tarefas

(14)

Engenharia de Requisitos



Pessoas envolvidas

Engenharia

de

requisitos

Especialistas do domínio

Engenheiros de requisitos

Engenheiros de software

(15)

Engenharia de Requisitos



Stakeholders (pessoas a quem o sistema

interessa)



são as pessoas que serão afectadas pelo sistema e que

têm uma influência directa ou indirecta na elaboração

dos requisitos



os stakeholders têm diferentes "backgrounds" e

diferentes objectivos individuais e organizacionais



os interesses individuais e de grupo das pessoas

(16)

Engenharia de Requisitos



Engenharia de requisitos?

Regulamentos

Normas da organização

Necessidades dos utilizadores

Sistemas legado

Informação do domínio

Processo

de

Engenharia

de

Requisistos

Especificação do sistema

Requisitos

(17)

Engenharia de Requisitos



Fases do processo de recolha de requisitos

necessidades dos utilizadores,

sistemas legados,

informação do domínio,

normas organizacionais,

etc.

recolha

análise

documentação

validação

(18)

Engenharia de Requisitos



Levantamento vs Desenvolvimento de requisitos



Levantamento

gestores

utilizadores finais

(19)



Levantamento vs Desenvolvimento de requisitos



Desenvolvimento

Engenharia de Requisitos

gestores

utilizadores finais

clientes

analistas

documento de requisitos

(20)

Engenharia de Requisitos



Levantamento vs Desenvolvimento de requisitos



Os requisitos não são algo que esteja à espera de ver

levantado



Um documento de requisitos deve resultar de um

processo de negociação e aprendizagem envolvendo

todas as partes



No entanto… nem sempre é assim! E por vezes os

(21)

Engenharia de Requisitos



Em que momento deve terminar o processo de

recolha de requisitos



Quando ambas as partes assim o entenderem



Nunca será possível prever à partida todas as

situações possíveis, pelo que a negociação entre

analistas e clientes deverá manter-se



No documento de requisitos deverá estar sempre

explicito quais os requisitos validados pelo cliente



Não deverá nunca ser o programador a tomar decisões

(22)

Engenharia de Requisitos



Pode dizer-se que um documento de requisitos

está “fechado”?



Não! Porque vão sempre surgindo propostas de

alterações



O que não implica que todas essas propostas sejam

aceites



É necessário negociar em três frentes:

 âmbito, duração e custo

(23)

Engenharia de Requisitos



Um documento de requisitos aceite pelo cliente

representa sem dúvidas as suas necessidades ?



Nem sempre!



Por vezes o cliente não percebe o que é um

documento de requisitos



Outras vezes o cliente não sabe exactamente o que

quer



Por vezes ajuda utilizar maquetas, protótipos,

(24)

Engenharia de Requisitos



Um documento de requisitos aceite pelo cliente

representa sem dúvidas as suas necessidades ?



É fundamental manter diálogo constante com o cliente



Não basta conduzir actividades de

verificação

 garantir que o produto está conforme os requisitos

documentados



…é necessário também conduzir actividades de

validação

(25)

Engenharia de Requisitos



É certo que um cliente aceita um produto que

cumpra com os requisitos?



Pode não acontecer! Para que tal aconteça é

importante:

 Evitar ambiguidades nos requisitos

 Quantificar e identificar requisitos não funcionais

 Acordar à partida os critérios e testes de aceitação

 Se os requisitos documentados e os testes de aceitação

acordados não traduzirem realmente as necessidades do cliente,

pouco há a fazer ...

(26)

Engenharia de Requisitos



Gestão de requisitos



Os requisitos mudam durante e depois do

desenvolvimento

 Principais causas



Novas necessidades de clientes e utilizadores



Mudanças na tecnologia utilizada



Mudanças em leis, normas ou padrões



Etc



As mudanças nos requisitos podem causar impacto nos

(27)

Engenharia de Requisitos



Métodos de recolha de requisitos



Fase exploratória e de contacto com a realidade

 Análise documental

 Observação



Fase incisiva de compreensão profunda das práticas

correntes

 Entrevistas

 Questionários

(28)

Engenharia de Requisitos



Métodos de recolha de requisitos



Análise documental

 Estudar a documentação da empresa de forma a descobrir os

aspectos mais significativos formalizados, políticas, regras,

directivas e indicações relevantes, assim como exemplos

concretos da utilização dos dados e da informação na empresa.

 Desta forma o analista obtém a competência necessária para

(29)

Engenharia de Requisitos



Métodos de recolha de requisitos



Observação

 Observar as pessoas no desempenho das sua funções,

acompanhando a execução dos processos, determinando as

interfaces entre processos, o manuseamento dos dados e

levantando as necessidades de informação que estas tem para

executar bem o seu trabalho.

 Desta forma o analista detalha a informação anteriormente

obtida na análise documental.

(30)

Engenharia de Requisitos



Métodos de recolha de requisitos



Entrevistas

 Entrevistar utilizadores chave com grandes conhecimentos e

experiência sobre as operações e aspectos do sistema actual,

assim como da necessidade de sistemas futuros com base em

actividades organizacionais em desenvolvimento.

 Obter a visão de todos os interessados na empresa (operacionais,

gestores intermédios, gestão topo, clientes do grupo e

(31)

Engenharia de Requisitos



Métodos de recolha de requisitos



Questionários

 Questionar as pessoas para obter a clarificação das opções

correctas do sistema, assim como aspectos que exijam a

quantificação, a ordenação por prioridades, a selecção de

procedimentos, a decisão, etc.

(32)

Engenharia de Requisitos



E quando uma empresa pretende desenvolver

um produto para um mercado, e não um produto

à medida para um cliente específico?



Análise do domínio e de pontos de variabilidade no

domínio é fundamental (engenharia do domínio)



Normalmente começa-se com clientes concretos e

depois generaliza-se para um mercado



Pode-se desenvolver um produto genérico, altamente

(33)

Engenharia de Requisitos



Qualidade dos requisitos



Coerência

 não devem ser ambíguos ou incoerentes



Completude

 todos os estados possíveis, alterações de estados, entradas, etc,

devem ser descritos



Realismo

 o que é pedido pelo cliente deve ser realizável



Clareza

(34)

Engenharia de Requisitos



Qualidade dos requisitos



Validade

 o requisito deve descrever algo que é de facto relativo ao

problema



Certificação

 deve ser possível escrever testes que demonstram que o

requisito foi satisfeito



Rastreabilidade

 deve ser possível relacionar o requisito com a solução e também

saber qual é a origem do requisito

(35)

Engenharia de Requisitos



Documentação de requisitos



Linguagem

 É uma das formas mais comuns de documentar os requisitos. Consiste

basicamente de uma lista numerada dos requisitos



[R1] - o sistema deve fazer isto,



[R2] - o sistema deve fazer aquilo





Caso de Uso

 É igualmente uma forma muito comum de representar os requisitos. Neste caso

utiliza-se uma representação gráfica (linguagem UML).

(36)

Engenharia de Requisitos



Documentação de requisitos



Protótipos

 Consiste na elaboração de protótipos visuais que representem exactamente o

que o cliente quer.

 São geralmente utilizados como complemento de outros métodos

 Poderão ser feitos protótipos descartáveis (imagens, RAD, etc.) ou evolutivos



User Stories

 Consiste na escrita de todos os passos que o utilizador faz para executar uma

determinada operação.



Para criar uma nova conta o utilizador pressiona o botão “new”, em seguida preenche os campos de

formulário, nome, morada, …., posteriormente o utilizador escolhe um ficheiro de fotografia, para tal

pressiona o botão “procurar” e escolhe a localização do ficheiro. Finalmente pressiona o botão guardar.

(37)

Engenharia de Requisitos



Documentação de requisitos



Rich pictures

 Permitem fazer uma análise do negócio ao nível de abstracção

dos clientes e utilizadores

 Ideal para fazer a ponte entre negócio e requisitos

 facilita a interacção e a comunicação entre os clientes e a

equipa

Referências

Documentos relacionados

Através da família de Abraão, o Messias (Jesus Cristo) veio ao mundo para salvar as pessoas dos seus pecados (Mateus 1:1-17).. f) Ele iria trazer maldições sobre aqueles que

considerando o contexto de riqueza natural e fertilidade dos solos de Catanduvas e Região Oeste do Paraná, o investimento em tecnologia não deve ser assumido pelo governo, em

Em atendimento aos dispositivos da Instrução CVM nº 475/08, o Banco divulga quadro demonstrativo de análise de sensibilidade, para cada tipo de risco de mercado

1. Etnografia Concorrente: São realizados estudos curtos e interativos antes do inicio do desenvolvimento, para que sejam colhidos os requisitos iniciais e a geração dos

O professor Rosilmar informou que, no dia 16/11, aconteceu, no campus de Jaguaribe, uma reunião para recepcionar os servidores e o evento contou com a presença

Definição de requisitos do usuário: os serviços fornecidos para o usuário e os requisitos não funcionais. A descrição pode ser em linguagem natural, diagramas ou outras

Dessa forma, o Artigo II intitulado “Validação da World Health Organization Disability Assessment Schedule (WHODAS 2.0) na Versão Brasileira para Uso em Pessoas com

Simulado para o 5º ano (Conteúdos de maio) Início do Ciclo Junino MD.. QUAL É A