o que É uml? engenharia de requisitos · 21/08/2014 3 13 engenharia de requisitos: requisitos...

4
21/08/2014 1 ENGENHARIA DE SOFTWARE Profª: Janaide Nogueira Curso: Sistemas de Informação ENGENHARIA DE SOFTWARE O QUE É UML? É uma linguagem visual; É independente de linguagem de programação; É independente de processo de desenvolvimento; É uma linguagem formada por elementos gráficos utilizados na modelagem que permitem representar os conceitos do paradigma da O.O. Através destes elementos gráficos pode-se construir diagramas que representam diversas perspectivas de um sistema. ENGENHARIA DE REQUISITOS O processo de estabelecer os serviços que o cliente requer a partir de um sistema e as restrições sob as quais ele opera e é desenvolvido. Os próprios requisitos são as descrições dos serviços de sistema e das restrições que são geradas durante o processo de engenharia de requisitos. ENGENHARIA DE REQUISITOS: O QUE É UM REQUISITO? Pode variar de uma declaração abstrata de alto nível de um serviço ou de uma restrição de sistema para uma especificação matemática funcional. Isto é inevitável quando os requisitos podem servir uma função dual: •Pode ser a base para uma proposta de um contrato–Portanto deve ser aberta para interpretação; •Pode ser a base para o contrato em si–portanto deve ser definido em detalhe; •Ambas as declarações podem ser chamadas requisitos. ENGENHARIA DE REQUISITOS Tipos de requisitos: Requisitos de usuário: •Declarações em linguagem natural mais diagramas de serviços que o sistema fornece e suas restrições operacionais. Escritos para os clientes. Devem descrever requisitos funcionais e não-funcionais de tal forma que sejam entendíveis pelos usuários do sistema que não têm conhecimento técnico detalhado Requisitos do usuário são definidos usando linguagem natural, tabelas e diagramas.

Upload: buidieu

Post on 09-Nov-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: O QUE É UML? ENGENHARIA DE REQUISITOS · 21/08/2014 3 13 ENGENHARIA DE REQUISITOS: REQUISITOS NÃO-FUNCIONAIS : •Estes definem propriedades e restrições de sistema, por exemplo,

21/08/2014

1

ENGENHARIA DE SOFTWARE

Profª: Janaide Nogueira

Curso: Sistemas de Informação

ENGENHARIA DE SOFTWARE

O QUE É UML?

�É uma linguagem visual;�É independente de linguagem de programação;�É independente de processo de desenvolvimento;

É uma linguagem formada por elementos gráficos utilizados na modelagem que permitem representar os conceitos do paradigma da O.O. Através destes elementos gráficos pode-se construir diagramas que representam diversas perspectivas de um sistema.

ENGENHARIA DE REQUISITOS

O processo de estabelecer os serviços que o cliente requer

a partir de um sistema e as restrições sob as quais ele opera e é desenvolvido.

Os próprios requisitos são as descrições dos serviços de sistema e das restrições que são geradas durante o processo de engenharia de requisitos.

ENGENHARIA DE REQUISITOS: O QUE É UM REQUISITO?

Pode variar de uma declaração abstrata de alto nível de um

serviço ou de uma restrição de sistema para uma especificação matemática funcional. Isto é inevitável quando os requisitos podem servir uma função dual:•Pode ser a base para uma proposta de um contrato–Portanto deve ser aberta para interpretação;•Pode ser a base para o contrato em si–portanto deve ser definido em detalhe;•Ambas as declarações podem ser chamadas requisitos.

ENGENHARIA DE REQUISITOS

Tipos de requisitos: Requisitos de usuário: •Declarações em linguagem natural mais diagramas de serviços que o sistema fornece e suas restrições operacionais. Escritos para os clientes. Devem descrever requisitos funcionais e não-funcionais de tal forma que sejam entendíveis pelos usuários do sistema que não têm conhecimento técnico detalhadoRequisitos do usuário são definidos usando linguagem natural, tabelas e diagramas.

Page 2: O QUE É UML? ENGENHARIA DE REQUISITOS · 21/08/2014 3 13 ENGENHARIA DE REQUISITOS: REQUISITOS NÃO-FUNCIONAIS : •Estes definem propriedades e restrições de sistema, por exemplo,

21/08/2014

2

ENGENHARIA DE REQUISITOS

• Requisitos de sistema: Um documento estruturado estabelecendo descrições detalhadas das funções, serviços e restrições operacionais do sistema. Define o que deve ser implementado e assim, pode ser parte de um contrato entre o cliente e o desenvolvedor.

9

ENGENHARIA DE REQUISITOSExercício

Como seria descrito o requisito de usuário e o requisito de sistema de uma operação de Saque?

10

ENGENHARIA DE REQUISITOS

• Requisitos funcionais: Declarações de serviços que o sistema deve fornecer, como o sistema deve reagir a entradas específicas e como o sistema deve se comportar em determinadas situações.

• Requisitos não funcionais: Restrições sobre serviços ou funções oferecidos pelo sistema tais como restrições de timing, restrições sobre o processo de desenvolvimento, padrões, etc.

• Requisitos de domínio: Requisitos que vêm do domínio de aplicação do sistema e que refletem as características desse domínio. Considere um sistema de solução de sistemas lineares, pode haver o requisito de solução do sistema através de um método específico, como Gauss-Seidel.

11

ENGENHARIA DE REQUISITOS: REQUISITOS FUNCIONAIS

-Descrevem a funcionalidade ou serviços de sistema.

-Dependem do tipo de software, dos usuários esperados e o tipo de sistema onde o software é usado.

-Requisitos funcionais de usuário podem ser declarações de alto nível do que o sistema deve fazer, mas os requisitos funcionais de sistema devem descrever os serviços de sistema em detalhe.

12

ENGENHARIA DE REQUISITOS:

Sistema de Biblioteca

Um sistema de biblioteca fornece uma interface única parauma série de artigos em bibliotecas diferentes. Osusuários podem pesquisar, baixar e imprimir estesartigos para estudo pessoal.

Quais os requisitos funcionais podemos identificar nestesistema?

Page 3: O QUE É UML? ENGENHARIA DE REQUISITOS · 21/08/2014 3 13 ENGENHARIA DE REQUISITOS: REQUISITOS NÃO-FUNCIONAIS : •Estes definem propriedades e restrições de sistema, por exemplo,

21/08/2014

3

13

ENGENHARIA DE REQUISITOS:

REQUISITOS NÃO-FUNCIONAIS :• Estes definem propriedades e restrições de sistema, por exemplo, confiabilidade, tempo de resposta e requisitos de armazenamento.• Restrições são capacidade de dispositivos de E/S, representações de sistema, etc.• Requisitos não funcionais podem ser mais críticos do que os requisitos funcionais. Se estes não forem atendidos, o sistema é inútil.

14

ENGENHARIA DE REQUISITOS

Sistema de BibliotecaO cliente afirma que o sistema deve ser rápido, não podendo ultrapassar uma média de 3 segundos por operação.Além disso o idioma do sistema deve ser português e inglês.

-Quais os requisitos não-funcionais podemos identificar este sistema?-Que outros requisitos não-funcionais podemos sugerir?

15

ENGENHARIA DE REQUISITOSMeta x RequisitosRequisitos não funcionais podem ser muito difíceis de definir precisamente e requisitos imprecisos podem ser difíceis de verificar.Meta: Uma intenção geral do usuário tal como facilidade de uso.Requisito não funcional verificável: Uma declaração usando alguma medida que pode ser objetivamente testada.

Metas são úteis para desenvolvedores quando exprimem as intenções dos usuários do sistema.

16

ENGENHARIA DE REQUISITOSMeta do sistema: O sistema deve ser fácil de ser usado por todos os usuários e ser organizado de modo que os erros dos usuários sejam minimizados. Requisito não-funcional verificável:Os usuários devem ser capazes de usar todas as funções do sistema depois de um treinamento de 2 horas. Após esse treinamento, o número médio de erros cometidos pelos usuários não deve exceder dois por dia.

17

ENGENHARIA DE REQUISITOS:REQUISITOS DE DOMÍNIO

-Derivados do domínio de aplicação e descrevem características de sistema que refletem o domínio.-Podem restringir os requisitos funcionais existentes ou estabelecer como cálculos especificos devem ser realizados.-Se os requisitos de domínio não forem satisfeitos , o sistema pode não funcionar.

18

ENGENHARIA DE REQUISITOS

REQUISITOS DE DOMÍNIOExemplo: Sistema de Biblioteca

Devido às restrições de direitos autorais, alguns documentos devem ser excluídos imediatamente na chegada. Dependendo dos requisitos de usuário, esses documentos serão impressos localmente no servidor de sistema para serem encaminhados manualmente para o usuário ou direcionados para uma impressora de rede.

Page 4: O QUE É UML? ENGENHARIA DE REQUISITOS · 21/08/2014 3 13 ENGENHARIA DE REQUISITOS: REQUISITOS NÃO-FUNCIONAIS : •Estes definem propriedades e restrições de sistema, por exemplo,

21/08/2014

4

19

ENGENHARIA DE REQUISITOS:REQUISITOS DE

DOMÍNIOProblemas•Entendimento:

-Requisitos são expressos na linguagem do domínio de aplicação;

-Isso não é, freqüentemente, compreendido pelos engenheiros de software que estão desenvolvendo o sistema.•Implícito:

-Especialistas em domínio compreendem a área tão bem que não pensam em tornar os requisitos de domínio explícitos.

20

ENGENHARIA DE REQUISITOS Dada a seguinte especificação, defina os requisitos funcionais, não-funcionais e de domínio. Sistema de controle de cheques O banco X está renovando seu sistema de cheques e precisa armazenar informações de seus clientes, assim como dos cheques e todas as transações realizadas para o cheque. A quantidade máxima de passos para realizar uma transação não deve ultrapassar 3 menus. O banco possui um cálculo matemático que define a taxa de juros caso o cheque não seja compensado. A quantidade mínima de memória por máquina deve ser de 1Gb. O sistema deve possuir segurança de acesso dos usuários através da autenticação por meio de teclado virtual.