Your SlideShare is downloading. ×
0
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Requisitos Nao Funcionais
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Requisitos Nao Funcionais

18,026

Published on

Published in: Education, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
18,026
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
228
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. A n á l i s e e Co n c e p ç ã o d e Si s t e m a s d e I n f o r m a ç ã o 5HTXLVLWRV 1mR )XQFLRQDLV Adaptado a partir de Gerald Kotonya and Ian Sommerville 1 Requisitos não funcionais ¡ Definir requisitos não funcionais (RNFs) ¡ Esquemas de classificação de RNFs ¡ Técnicas de derivação de RNFs ¡ RNFs testáveis e métricas ¡ RNFs em sistemas críticos   ACSI / Requisitos NF, Adaptado de Kotonya&Sommerville
  • 2. O que são RNFs? £ Definem qualidades globais ou atributos do sistema £ Colocam/definem restrições – no produto a ser desenvolvido e – no processo de desenvolvimento – externas que o produto deve manter £ Exemplos: – Requisitos de integridade (safety), segurança, usabilidade, fiabilidade e desempenho ACSI / Requisitos NF, Adaptado de Kotonya&Sommerville ¢ Requisitos funcionais e não funcionais ¡ Não existe uma distinção clara entre estes dois tipos de requisitos!! ¡ O facto de um requisito ser funcional ou não funcional pode depender de vários factores: – Nível de detalhe a incluir no documento de requisitos. – Grau de confiança existente entre o cliente do sistema e a equipa de desenvolvimento. ACSI / Requisitos NF, Adaptado de Kotonya&Sommerville ¤
  • 3. Requisitos funcionais e não funcionais Exemplo ¦¦ R102 - O sistema deve garantir que os dados estão protegidos de acessos não autorizados. autorizados. Convencionalmente, este seria um requisito não funcional porque não descreve especificamente a funcionalidade que deve ser suportada pelo sistema. ¦¦ R102 - O sistema deve incluir um procedimento de autorização de utilizadores, onde cada utilizador se deve identificar através de um utilizadores, username e password. Apenas os utilizadores autorizados desta forma podem aceder aos dados do sistema. sistema. Nesta forma, o requisito já tem a forma de um requisito funcional visto que especifica a função a incorporar no sistema. ACSI / Requisitos NF, Adaptado de Kotonya&Sommerville ¥ Tipos de RNFs 6HJXQGR R ,(((6WG ± « ¦ Requisitos de desempenho ¦ Requisitos de interface ¦ Requisitos operacionais ¦ Requisitos de recursos ¦ Requisitos de verificação ¦ Requisitos de aceitação ¦ Requisitos de documentação ¦ Requisitos de segurança ¦ Requisitos de portabilidade ¦ Requisitos de qualidade ¦ Requisitos de fiabilidade ¦ Requisitos de manutenção ¦ Requisitos de integridade (safety) ACSI / Requisitos NF, Adaptado de KotonyaSommerville §
  • 4. Classificação de RNFs Non-functional requirements Process Product requirements External requirements requirements Usability requirements Delivery Legal requirements Reliability requirements constraints implementation Safety requirements Economic requirements constraints standards Efficiency requirements Interoperability requirements requirements Performance requirements Capacity requirements 1)5V PD EH FODVVLILHG LQ WHUPV RI TXDOLWLHV WKDW D VRIWZDUH PXVW H[KLELW´ ACSI / Requisitos NF, Adaptado de KotonyaSommerville (Boehm) ¨ Requisitos do Produto £ Especificam as características que um sistema ou subsistema deve ter. £ Alguns requisitos de produto podem ser formulados de uma forma precisa, e por esta razão são fáceis de quantificar: – Desempenho – Capacidade £ Outros requisitos são mais difíceis de quantificar, e por consequência são descritos de forma mais informal: – Usabilidade ACSI / Requisitos NF, Adaptado de KotonyaSommerville ©
  • 5. Requisitos do Produto Exemplos £ Requisito de fiabilidade: fiabilidade: – O serviço X do sistema deve ter uma disponibilidade de 999/1000 ou 99%. ££ Requisito de desempenho: desempenho: – O sistema Y deve conseguir tratar pelo menos 8 transacções por segundo. segundo £ Requisito de espaço (e.g., RAM ou HD): – O executável do sistema Z não pode ser superior a 512 Kbytes. ACSI / Requisitos NF, Adaptado de KotonyaSommerville Requisitos do Produto Conflitos entre requisitos £ É comum os requisitos do produto apresentarem conflitos entre si. Por exemplo: – Um requisito de desempenho pode inviabilizar requisitos de fiabilidade e segurança… E.g., para aumentar o desempenho desactivar o mecanismo de segurança de um servidor de base de dados… £ O processo de obtenção de compromissos entre conflitos depende de vários factores: – o nível de importância associado ao requisito; – as consequências de alterações noutros requisitos; – os objectivos gerais do negócio. ACSI / Requisitos NF, Adaptado de KotonyaSommerville
  • 6. Requisitos do Processo ¡ Requisitos do processo são restrições colocadas no processo de desenvolvimento do sistema. ¡ Requisitos do processo incluem: – Requisitos aos standards de desenvolvimento e métodos a usar. – Ferramentas CASE que devem ser usadas. – Relatórios de gestão que devem ser produzidos. ACSI / Requisitos NF, Adaptado de KotonyaSommerville Requisitos do Processo Requisitos de implementação ¡ Portabilidade – O sistema deve ser desenvolvido para as plataformas PC e Macintosh. ¦ Afecta a forma como o sistema pode ser desenhado. ¡¡ Segurança – O sistema de encriptar todas as comunicações externas através do algoritmo RSA. ¦ Especifica que um determinado algoritmo deve ser usado no produto   ACSI / Requisitos NF, Adaptado de KotonyaSommerville
  • 7. Requisitos do Processo Mais exemplos… exemplos… Standards – O processo de desenvolvimento usado deve ser explicitamente definido e deve estar em conformidade com o standard ISO 9000. Ferramentas de desenvolvimento – O sistema deve ser desenvolvido com a suite XYZ de ferramentas CASE. Gestão de projecto – Todas as semanas deve ser produzido um relatório que descreve o esforço dispendido em cada componente existente no sistema. Gestão de riscos – Deve ser especificado um plano de recuperação de problemas no desenvolvimento do sistema. ACSI / Requisitos NF, Adaptado de KotonyaSommerville ¢ Requisitos Externos Podem ser colocados quer no produto quer no processo… Derivados do ambiente onde o sistema está a ser desenvolvido… Requisitos externos estão baseados em: – informação do domínio de aplicação; – considerações organizacionais; – a necessidade do sistema interagir com outros sistemas; – regulamentos de segurança ou de protecção de dados; e – leis da natureza (e.g., leis da física). ACSI / Requisitos NF, Adaptado de KotonyaSommerville
  • 8. Requisitos Externos Exemplos… Exemplos… Sistema de Dados Médicos – O responsável pela protecção dos dados da organização deve certificar que todos os dados são mantidos de acordo com legislação sobre protecção de dados antes de o sistema estar operacional. Sistema de Protecção em Comboios – O tempo necessário para que um comboio pare é calculado usando a seguinte função: A desacelaração do comboio deve ser considerada como sendo: γcomboio = γcontrolo + γgradiente onde … ACSI / Requisitos NF, Adaptado de KotonyaSommerville ! Exemplos de requisitos externos (cont.) γgradiente = 9.81 ms-2 * gradiente compensado / alpha onde os valores de 9.81 ms-2/ alpha são conhecidos para os diferentes tipos de comboios. γcontrolo é inicializado a 0.8 ms-2 – este valor é parametrizado de forma a permanecer ajustável. A figura seguinte ilustra um exemplo da desaceleração de um comboio usando as parábolas derivadas da formula acima. ACSI / Requisitos NF, Adaptado de KotonyaSommerville quot;
  • 9. Exemplos de requisitos externos (cont.) Speed of rain at change of gradient Speed of train on application of brakes V γ=γ + γgradient1 control γ=γ + γgradient2 control Distance Front of train Change of gradient ACSI / Requisitos NF, Adaptado de KotonyaSommerville # Requisitos Externos Exemplos… Exemplos… O primeiro requisito tem por base a necessidade do sistema estar em conformidade a legislação sobre protecção de dados O segundo requisito tem por base o domínio da aplicação e é uma especificação das caracteristicas físicas da travagem de um comboio. Os requisito externos raramente têm a forma “o sistema deve...” ou “o sistema não deve...”. Em geral, estes requisitos são descrições a ter conta do contexto do sistema. ACSI / Requisitos NF, Adaptado de KotonyaSommerville $
  • 10. Técnicas de derivação de RNFs RNFs são difíceis de expressar… Um conjunto de factores contribui para o acréscimo de dificuldade em expressar requisitos não funcionais: – Algumas restrições estão relacionadas com a solução de desenho, a qual é desconhecida na fase dos requisitos. – Algumas restrições são muito subjectivas e apenas podem ser determinadas através de avaliações empíricas complexas. – Cada requisito não funcional tende a estar relacionado com um ou mais requisitos funcionais. – Requisitos não funcionais tendem a criar conflitos e contradições com os restantes requisitos. – Não existem regras universais para determinar se os requisitos não funcionais foram atingidos. ACSI / Requisitos NF, Adaptado de KotonyaSommerville % RQFHUQV Stakeholders normalmente têm um conjunto de FRQFHUQV. RQFHUQV são tipicamente não funcionais. E.g., – Objectivos críticos do negócio. – Caracteristicas essenciais do sistema (e.g. segurança). – Integridade, desempenho, funcionalidade e facilidade de manutenção. Os FRQFHUQV dos utilizadores podem estar relacionados com RNFs. ACSI / Requisitos NF, Adaptado de KotonyaSommerville ' (
  • 11. Relação entre as necessidades dos utilizadores, FRQFHUQV e RNFs utilizadores, @@@91 7 63420 A 3 3 8 5 1 8 5 3 C 8 E C 5 3 1 BH4GFD1 7 B@20 BFGE H4BR 4GPI W V 8 U T C 8 S Q 8 E FB3`63 5 6G43 5 T 8 Y U S X Function 1. Ease of use 1. Usability 2. Unauthorised access 2. Security 3. Likelihood of failure 3. Reliability Performance 1. Resource utilisation 1. Efficiency 2. Performance verification 2. Verifiability 3. Ease of interfacing 3. Interoperability Change 1. Ease of repair 1. Maintainability 2. Ease of change 2. Flexibility 3. Ease of transport ? 3. Portability 4. Ease of expanding or upgrading capacity 4. Expandability or performance ? ACSI / Requisitos NF, Adaptado de KotonyaSommerville )' RQFHUQV Forma de expressar requisitos críticos de forma holística. Os concerns podem ser decompostos em subconcerns até se atingir questões específicas. As questões agem como uma lista de verificação que garante que os requisitos não entram em conflito com as prioridades globais. ACSI / Requisitos NF, Adaptado de KotonyaSommerville ' '
  • 12. Decomposição de FRQFHUQV Safety Compatibility Personal Hardware Software Physical Collision Derailment accident Execution Timing Interface Excess speed Track damage Environment for track conditions What information about Will a requirement affect System must be able to track damage is required by the performance of the detect and avoid excess the system? How is this existing software? speed provided? Does a requirement need System must execute in the trusted Under what conditions data that isn’t available Ada execution environment can excess speed cause through the HST interface? derailment? What does ’excess speed’ mean in reality? Can this function be provided on the existng execution environment? ACSI / Requisitos NF, Adaptado de KotonyaSommerville ' a Derivação baseada em objectivos c Relaciona os requisitos não funcionais com os objectivos da organização. c A derivação baseada em objectivos é uma aproximação composta por três passos: – Identificar os objectivos da organização. – Decompor os objectivos em sub-objectivos. – Identificar requisitos não funcionais. ACSI / Requisitos NF, Adaptado de KotonyaSommerville b'
  • 13. Exemplo de uma derivação baseada em objectivos Go al IS - g o al motivates The system should perform in Visualise air traffic scenarios real-time OM motivates IS - NFR IS - NFR Display radar data The display must accommodate in real-time all data from the scenario motivates motivates IS- NFR Aircraft position should be displayed in less than 3/16 sec of the radar sweep period IS- NFR IS -NFR IS - NFR IS- NFR Display 100 tracks Display 100 Display 200 vectors Display 500 table meteorological plots symbols ACSI / Requisitos NF, Adaptado de KotonyaSommerville d e RNFs Testáveis g Stakeholders podem ter objectivos vagos que não são expressos de forma precisa. g Requisitos vagos e imprecisos são problemáticos. g Os RNFs devem satisfazer duas propriedades: – Devem ser objectivos – Devem ser testáveis (usar métricas mensuráveis) g Mas, … nem sempre é possível expressar RNFs objectivamente… ACSI / Requisitos NF, Adaptado de KotonyaSommerville d f
  • 14. Exemplos de métricas para RNFs 3URSHUW 0HWULF Performance 1. Processed transactions per second 2. Response tim to user input e Reliability 1. Rate of occurrence of failure 2. M tim to failure ean e Availability Probability of failure on dem and Size K bytes Usability 1. Tim taken to learn 80%of the facilities e 2. N ber of errors m by users in a given tim um ade e period Robustness Tim to restart after systemfailure e Portability N ber of target system um s ACSI / Requisitos NF, Adaptado de KotonyaSommerville d h Requisitos para sistemas críticos g Sistemas cujas “falhas” causam danos económicos, físicos ou humanos significativos (nas organizações ou pessoas). g Existem três tipos principais de sistemas críticos: – Sistemas críticos de negócio. – Sistemas de missão-crítica. – Sistemas críticos de segurança. ACSI / Requisitos NF, Adaptado de KotonyaSommerville d i
  • 15. RNFs para sistemas críticos c Principais restrições não funcionais relevantes para sistemas críticos: – Fiabilidade. – Desempenho. – Segurança. – Usabilidade. – Integridade. ACSI / Requisitos NF, Adaptado de KotonyaSommerville d p Fiabilidade g Restrições no comportamento em tempo de execução do sistema. g Podem ser consideradas sobre duas perspectivas: – Disponibilidade – o sistema deve estar disponível quando algum serviço é pedido pelos utilizadores. – Nível de falhas – a frequência com que o sistema não providencia um serviço pedido pelos utilizadores. ACSI / Requisitos NF, Adaptado de KotonyaSommerville q r
  • 16. Desempenho c Restrição à velocidade da operação do sistema. c Tipos de requisitos de desempenho: • Requisitos de resposta • Requisitos de débito (throughput) • Requisitos temporais ACSI / Requisitos NF, Adaptado de KotonyaSommerville s )q Segurança t Garantir – que não é permitido acesso (não autorizado) ao sistema e seus componentes – a integridade do sistema contra danos acidentais ou maliciosos t Exemplos – Permissões de acesso u A gestão de utilizadores está restringida apenas ao administrador do sistema. – Backup de dados u Dever ser feito um backup dos dados do sistema cada 24 horas e as cópias de backup devem ser guardadas num local seguro que não seja no mesmo edificio onde se encontra o sistema. – Comunicação u Todas comunicações externas entre os servidor do sistema e os clientes devem ser encriptadas. ACSI / Requisitos NF, Adaptado de KotonyaSommerville q d
  • 17. Usabilidade g Relacionado com a especificação de – interfaces com o utilizador e – interacções dos utilizadores com o sistema g Aspectos relevantes – manuais bem estruturados – mensagens de erro informativas e – interfaces consistentes ACSI / Requisitos NF, Adaptado de KotonyaSommerville q q Usabilidade Atributos mensuráveis para requisitos de usabilidade t Requisitos de acesso – Medido em termos de anos de experiência com uma classe de aplicações ou simplesmente baseado na idade do utilizador. t Requisitos de aprendizagem – Denota o tempo necessário a aprender a usar o sistema. Este atributo pode ser medido em termos da velocidade de aprendizagem, por exemplo, horas de formação necessárias até ser possível o utilizador usar de forma independente o sistema. t Requisitos de handling – Denota o nível de erros dos utilizadores do sistema. Este atributo pode ser medido em termos de erros cometidos quando o utilizador trabalha a uma velocidade normal. t Likeability – Denota ‘facilidade’ de utilização. A forma mais directa de medir o nível de satisfação dos utilizadores é a realização de inquéritos aos utilizadores directos e registar a proporção dos que gostam de trabalhar com o sistema. ACSI / Requisitos NF, Adaptado de KotonyaSommerville bq v
  • 18. Integridade w Definição formal: Os requisitos de integridade são os requisitos “ não deve…” que excluem situações inseguras do espaço de soluções possíveis do sistema. ACSI / Requisitos NF, Adaptado de KotonyaSommerville q e Integridade Exemplos… Exemplos… g O sistema de corte de papel não deve permitir a sua operação a não ser que a protecção da guilhotina esteja accionada € O sistema não deve permitir que a dose do sedativo dada ao doente seja maior do que o valor máximo determinado pelo médico responsável € O sistema não deve operar se a temperatura externa for inferior a 4º Celsius. ACSI / Requisitos NF, Adaptado de KotonyaSommerville x y
  • 19. Resumo dos pontos-chave t RNFs definem qualidades globais ou atributos do sistema t RNFs podem ser classificados em três tipos: – Requisitos do produto – Requisitos do processo – Requisitos externos t Os requisitos do produto especificam as características que o sistema deve possuir. t Os RNFs tendem a entrar em conflito entre si e ou com os restantes requisitos do sistema. t Principais RNFs relevantes para os sistemas críticos: – Fiabilidade, desempenho, segurança, usabilidade, integridade ACSI / Requisitos NF, Adaptado de KotonyaSommerville x  Exercícios w Um banco pretende desenvolver um sistema que permita aos seus clientes transferir dinheiro entre diferentes contas. – Identifique os requisitos não funcionais deste sistema. – Justifique a necessidade e importância de cada requisito não-funcional. w Definir requisitos de usabilidade para a sistema bibliotecário EDDIS ACSI / Requisitos NF, Adaptado de KotonyaSommerville x ‚

×