Buscar

Engenharia de Software - Aula 8 - Requisitos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Assuntos do dia
•Classificações de Requisitos
• Requisitos Não Funcionais
Requisitos Não Funcionais
• NÃO diretamente relacionados às funções do sistema
• Definem propriedades e restrições de sistema
• Confiabilidade, tempo de resposta, armazenamento
• Capacidade de dispositivos de E/S, representações de dados • Capacidade de dispositivos de E/S, representações de dados 
na interface com o usuário, etc.
• Imposição de uma linguagem de programação ou uma 
especificação de padrão de qualidade em particular
• Podem ser mais críticos do que os requisitos funcionais
• Se não forem atendidos, o sistema é inútil
• Espaçonave (confiabilidade), jogo 3D (desempenho)
Requisitos Não Funcionais
• Surgem das necessidades dos usuários devido a
• Restrições de orçamentos
• Políticas organizacionais• Políticas organizacionais
• Necessidade de interoperabilidade com outros 
sistemas de software ou hardware
• Fatores externos, por exemplo, regulamentos de 
segurança, legislações de privacidade...
Questionário auxiliar para definição de 
Requisitos Não Funcionais
• Quantas pessoas vão utilizar o software? Desse número, quantas utilizarão 
simultaneamente? (não precisa ser um valor fechado… pode ser um range: 
entre 100 e 200 pessoas utilizarão e é esperado que no máximo 50 utilizem 
simultaneamente);simultaneamente);
• Dos relatórios previstos, quais podem ser gerados por processamento 
batch (de madrugada) e quais devem ser online (com dados do momento)? 
Qual o tempo aceitável para processar e gerar um relatório online?
• Qual o tempo de resposta esperado para as principais funcionalidades do 
sistema? E para as outras?
• Qual tipo de acesso a aplicação vai ter? Somente via intranet? Internet?
• Qual o perfil dos usuários que vão acessar a aplicação? Possuem 
conhecimento de internet? São usuários avançados?
• É desejável que a maior parte das funcionalidades da aplicação possam se 
acessadas via teclado (sem auxilio do mouse)? 
Questionário auxiliar para definição de 
Requisitos Não Funcionais
acessadas via teclado (sem auxilio do mouse)? 
• A aplicação deve ser compatível com quais versões do browser e/ou 
sistema operacional?
• Quais os padrões de implementação esperados? Os desenvolvedores 
podem escrever o código em qualquer idioma? Podem utilizar qualquer 
banco de dados e qualquer tecnologia? 
• Qual a segurança esperada para o trafego de dados? Toda comunicação 
entre o servidor e o browser tem que ser criptografada usando SSL? Será 
adquirido o certificado SSL? Ou a aplicação não tem dados críticos e 
confidenciais / vai ser executada em uma rede segura? 
Questionário auxiliar para definição de 
Requisitos Não Funcionais
confidenciais / vai ser executada em uma rede segura? 
• Qual a disponibilidade a aplicação deve ter? O tempo médio entre falhas, 
tempo máximo para acertar os problemas? Número máximo de bugs em 
cada versão? Nesse caso a resposta pode ser que aplicação deve obedecer 
um acordo de SLA ou que existem regras especificas para esse software de 
acordo com o negócio.
Requisitos Não Funcionais
• De Produto
• Especificam que o produto entregue deve se comportar de uma 
maneira particular, por exemplo, velocidade de execução, 
confiabilidade, etc.
• Organizacionais• Organizacionais
• São uma consequência de políticas e procedimentos da organização, 
por exemplo, padrões de processo usados, requisitos de 
implementação, etc.
•Externos
• Surgem a partir de fatores externos ao sistema e seu processo de 
desenvolvimento, por exemplo, requisitos de interoperabilidade, 
legislação, etc.
Sistema LIBSYS: Requisitos Não Funcionais
Problemas com Requisitos Não 
Funcionais
• Costumam ser propostos pelos usuários ou clientes 
como metas gerais
• As metas estabelecem as boas intenções, mas podem 
causar problemas porque deixam margem para causar problemas porque deixam margem para 
interpretação
• Devem ser “testáveis” – métricas devem ser definidas
• Exemplo SEM métricas
• “O sistema deve ser de fácil uso pelo pessoal médico e deve 
ser organizado de tal maneira que os erros dos usuários sejam 
minimizados”
Problemas com Requisitos Não 
Funcionais
• Exemplo COM métricas
• “A equipe médica deve ser capaz de usar todas as funções do 
sistema após quatro horas de treinamento. Após esse 
treinamento, o número médio de erros cometidos por usuários 
experientes não deve exceder dois por hora de uso do sistema”
Métricas para Requisitos Não Funcionais
Classificação de Requisitos Não 
Funcionais
RNF de Produto 
Facilidade de Uso
• Facilidade de uso envolve o esforço para aprender a 
utilizar o sistema
• Exemplos de RNF de Facilidade de Uso
• “Não deve ser preciso mais de 3 cliques para executar o • “Não deve ser preciso mais de 3 cliques para executar o 
requisito funcional [RF3]”
• “A ajuda online deve estar acessível de qualquer página do 
sistema”
• “A parte principal do software é o cadastro de solicitações 
[RF12] e várias atendentes cadastram novas solicitações o 
tempo todo. Para ter produtividade o preenchimento desse 
cadastro não pode demorar mais do que 30 segundos”
RND de Produto 
Eficiência - Desempenho
• É medido avaliando-se a velocidade de processamento, 
o tempo de resposta, o consumo de recursos, ...
• Exemplos de Requisitos de Desempenho
• “O tempo de resposta das consultas não devem ultrapassar 7 • “O tempo de resposta das consultas não devem ultrapassar 7 
segundos”
• “O banco de dados do estoque deve ser atualizado em tempo 
real”
RNF de Produto 
Eficiência - Espaço
• Refere-se ao armazenamento dos dados e pode 
abranger utilização de espaço em memória
• Exemplos de RNF de Espaço
• “O executável do sistema não pode ser superior a 512 Kbytes”• “O executável do sistema não pode ser superior a 512 Kbytes”
RNF de Produto 
Confiabilidade
• Confiabilidade pode ser especificada como a 
probabilidade de uma falha de sistema ocorrer quando 
um sistema estiver em uso e a facilidade de recuperação 
do sistemado sistema
• Exemplos
• “Falhas de sistema que necessitam de reinicialização não 
devem ocorrer mais de uma vez por semana.”
RNF de Produto
Portabilidade
• Esforço exigido para transferir um sistema de um 
ambiente de hardware e/ou software para outro
• Exemplos de RNF de Portabilidade
• “O sistema deve ser desenvolvido para as plataformas PC e • “O sistema deve ser desenvolvido para as plataformas PC e 
Macintosh”
• “O sistema deve funcionar em dispositivos móveis com iOS e 
Android”
RNF Organizacionais
De Entrega
• Determinam datas de entregas específicas para o 
sistema
• Exemplos
• “O sistema deve emitir o relatório de progresso evidenciado no • “O sistema deve emitir o relatório de progresso evidenciado no 
[RF1] a cada duas semanas”
RNF Organizacionais
De Implementação
• Restrições e exigência com relação a linguagem de 
programação, sistema operacionais, formatos de 
relatórios...
• Exemplos• Exemplos
• “O sistema deve salvar os arquivos nos formatos do Word, 
RTF e HTML”
• “O sistema deverá ser capaz de importar arquivos gráficos 
GIF, JPEG e BMP”
• “Os relatórios dos requisitos [RF11], [RF13] e [RF14] devem 
ser impressos no formato PDF”
RNF Organizacionais
De Padrões
• Quando for necessário seguir algum padrão no sistema, 
isso deve ser definido nesses requisitos não funcionais
• Exemplos
• “O sistema deve obedecer ao padrão estabelecido para • “O sistema deve obedecer ao padrão estabelecido para 
emissão de Notas Fiscais Eletrônicas”
RNF Externos
Interoperabilidade
• Necessidades específicas de interoperabilidade do 
sistema
• Exemplos de RNF de Interoperabilidade
• “O sistema deverá se comunicar com o SQL Server”• “O sistema deverá se comunicar com o SQL Server”
RNF ExternosÉticos
• Requisitos que devem atentar para padrões de ética, 
padrões morais
• Exemplos de RNF Éticos
• “De acordo com o código de ética médico, nenhum dado do • “De acordo com o código de ética médico, nenhum dado do 
paciente pode ser identificado”
RNF Externos
Legais - Privacidade
• Faz parte de segurança mas está mais relacionado com 
a privacidade dos dados trocados e armazenados
• Exemplos de RNF de Privacidade
• “O sistema não deve revelar qualquer informação que • “O sistema não deve revelar qualquer informação que 
identifiquem o autor das avaliações dos professores”
RNF Externos
Legais - Segurança
• Premissas e Restrições para o controle e segurança do 
software além da disponibilidade de mecanismos que 
controlam ou projetam programas e dados. Estes 
requisitos estão relacionados aos fatores como: requisitos estão relacionados aos fatores como: 
necessidade de criptografia, autenticação de usuários, etc
• Exemplos
• “O sistema deve criptografar todas as informações trocadas 
nos requisitos funcionais [RF4] e [RF7]”
Leitura Recomendada
– Capítulo 5 do livro texto: Pressman, Roger. 
Engenharia de Software, 7ed. McGrawHill, 
Porto Alegre, RS, 2011.
– Capítulo 4 e 12 do livro texto: Sommerville, – Capítulo 4 e 12 do livro texto: Sommerville, 
Ian. Engenharia de Software, 9ed. Prentice 
Hall, São Paulo, SP, 2011.
Fontes Complementares
• http://www.brunobraga.com.br/2009/02/12/requisitos-nao-funcionais/

Outros materiais