Download - Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Transcript
Page 1: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Modelagem para Web

Aula de 11/04/2011

Page 2: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Diagramas UML

Estruturais• Diagrama de Classes• Diagrama de Objetos• Diagrama de Componentes• Diagrama de Pacotes• Diagrama de Implantação• Diagrama de Estrutura

Composta• Diagrama de Perfil

Comportamentais• Diagrama de Casos de Uso• Diagrama de Interação

– Diagrama de Visão Geral– Diagrama de Sequência– Diagrama Temporal– Diagrama de Comunicação

• Diagrama de Atividades• Diagrama de Máquina de

Estados

Page 3: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Comparação entre DiagramasUML 1.4 UML 2.0 e 2.2

Pacotes

Estrutura Composta

Visão Geral

Temporal

Perfil (somente 2.2)

Atividades Atividades

Caso de Uso Caso de Uso

Classes Classes

Colaboração Comunicação

Componentes Componentes

Gráfico de Estado Máquina de Estados

Implantação Implantação

Objetos Objetos

Sequência Sequência

Page 4: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

1. Por que a UML foi chamada de linguagem unificada?

2. Que organização adotou a UML como padrão de metodologia e a qual órgão foi dada a responsabilidade por suas revisões?

3. Por que dizemos que a UML é uma linguagem de modelagem para visualização de artefatos de software?

Page 5: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

4. Que mecanismo de extensão permite que os elementos básicos da UML sejam estendidos?

5. Quais são os diagramas estruturais da UML 2.0? Que novo diagrama estrutural foi incluído na versão 2.2?

Page 6: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

6. A respeito da linguagem UML, é correto afirmar que:a. Não se trata de uma linguagem de documentaçãob. É voltada para a representação conceitual e física de um

sistemac. Não abrange a documentação para a realização de testesd. Não deve ser empregada para a documentação de

artefatos que façam uso de sistemas complexos de software

e. É uma linguagem utilizada para a realização de testes de programas

Page 7: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

7. Entre outros, a UML inclui diagramas de:a. Classes, de objetos, de fluxo de dados e de

atividadesb. Classes, de implantação, de gráficos de estados e

de sequênciac. Objetos, de classes, de contexto e de implantaçãod. Classes, de objetos, de testes e de implantaçãoe. Objetos, de casos de uso, de contexto e de

implantação

Page 8: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Diagramas de Casos de Uso

Page 9: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Introdução

• A maior dificuldade em modelarmos um sistema não está nos diagramas que temos de desenhar, no código que devemos criar ou nas bases de dados que devemos projetar. Na realidade, está nos requisitos que devemos gerenciar.

Page 10: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Levantamento de requisitos

• Desenvolvedor (analista)– O que o senhor espera deste sistema?

• Usuário– Eu tenho uma loja de peças. Gostaria que o meu PV fosse

interligado com o meu estoque e eu pudesse a qualquer momento alterar valores dos FPs. Posso oferecer descontos a alguns tipos de clientes, mas preciso autorizar esta operação.

– No fim do mês quero um relatório dos produtos que mais venderam. Preciso também saber a estatística de vendas por forma de pagamento.

– De tempos em tempos deve aparecer na tela do sistema uma promoção relâmpago que dê um brinde ao cliente.

– Preciso que o sistema controle os pedidos também.

Page 11: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Levantamento de requisitos• Existem ambiguidades ou elementos não compreensíveis nesta descrição do

usuário?• Cabe ao analista o esclarecimento desses itens.• Ele poderia começar perguntando ao usuário:

– O que é PV e FP?– Que tipos de clientes podem receber descontos?– Como seria feita esta autorização de descontos e por quem?– Que quantidade de produtos deve aparecer no relatório dos que mais venderam?– A estatística leva em conta qual período (semanal, quinzenal, mensal etc.)?– Quanto tempo significa “de tempos em tempos”?– Quais pedidos precisam ser controlados: o dos clientes ou os feitos aos fornecedres?

• Provavelmente, as respostas a essas perguntas levarão a novas dúvidas, que precisarão ser esclarecidas.

• Neste ponto, a modelagem de casos de uso nos ajuda, unindo usuários e desenvolvedores

Page 12: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

O que é um Caso de Uso?

• Um caso de uso (use case) descreve uma sequência de ações que representam um cenário principal (perfeito) e cenários alternativos, com objetivo de demonstrar o comportamento de um sistema (ou parte dele), através de interações com atores.– Cenários alternativos podem ser criados para

representar exceções ao cenário perfeito

Page 13: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Relacionamento de Casos de Uso e Atores

• Associação– Representa a interação do ator com o caso de uso

• Generalização– Ocorre entre casos de uso ou entre atores

• Extensão (opcional)– Indica que um deles terá o seu procedimento acrescido, em

um ponto de extensão, de outro caso de uso, identificado como base

• Inclusão (obrigatório)– O comportamento definido em um caso de uso de inclusão é

incluído no comportamento de um caso de uso base

Page 14: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Representação de atores

Page 15: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Diagrama de Casos de Uso

Page 16: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

A importância dos protótipos

• As técnicas atuais de desenvolvimento de software procuram prever mais do que remediar

• Com ferramentas RAD atuais, gastamos muito pouco tempo para rascunhar uma tela– Esse rascunho, ao ser mostrado ao usuário,

aumenta a segurança quanto à validação de requisitos

Page 17: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

8. Desenhe os relacionamentos existentes (include, extend, generalização) entre os casos de uso abaixo:

Page 18: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

9. Como pode ser representado um ator na UML?10. Para que servem os casos de uso?11. É possível colocar condições no cenário

principal de um caso de uso?12. Como sabemos num caso de uso base o local de

incluir o caso de uso de extensão?13. Os casos de uso podem ser usados para funções

de gerenciamento do sistema, como, por exemplo, backup de dados?

Page 19: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

14.Na descrição de caso de uso a seguir, assinale o que está inadequado

Page 20: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Caso deUso: Solicitar vale-refeição/alimentação

• Objetivo: verificar os funcionários que recebem vale-refeição/alimentação, a quantidade de dias úteis do mês e processar pedido, levando em conta a opção do funcionário, bem como situações especiais como férias, licenças etc.

• Ator: Emilia Maria• Cenário Principal1. O sistema verifica para cada funcionário:1.1. O número de dias úteis do mês de referência1.2. A opção do funcionário (refeição/alimentação)1.3. Se o funcionário estiver ativo:1.3.1. Multiplicar o número de dias úteis pelo valor do ticket padrão1.3.2. Gravar linha do arquivo de solicitação1.3.3. Atualizar o sistema de RH com o valor de desconto do ticket• Cenário alternativo1.3. Se o funcionário estiver de férias ou de licença, não realizar a solicitação do vale e checar novo funcionário

Page 21: Modelagem para Web Aula de 11/04/2011. Diagramas UML Estruturais Diagrama de Classes Diagrama de Objetos Diagrama de Componentes Diagrama de Pacotes Diagrama.

Exercícios

15. A Visão do Caso de Uso em UML descreve:a. O comportamento da distribuição, do fornecimento e

instalação das partes que compõe o sistema físicob. A especificação da organização do sistema de

softwarec. A visão de questões referentes ao desempenho do

sistemad. O comportamento do sistema conforme é visto pelos

usuários finaise. A modelagem dos aspectos dinâmicos do sistema