Beruflich Dokumente
Kultur Dokumente
Sumário
Introdução
Visão Histórica
Tipos de Elementos Básicos
Tipos de Relações
Tipos de Diagramas Principais
Mecanismos Comuns do UML
Objetivos da UML 2.0
2
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Introdução (I)
UML : Unified Modeling Language
3
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Introdução (II)
UML – Características principais
– Semântica e notação para tratar um grande número de tópicos
atuais de modelagem
Introdução (III)
UML – Objetivos na sua concepção
– Definição de uma linguagem de modelagem padrão
– Simplicidade
Visão Histórica
2000- 2004 UML2.0
2001 Industrialização
UML1.4
Jan1997 UML1.0
Normalização
Unificação
Out1995 Unified Method0.8
Booch’93 OMT-2
Fragmentação
Outros
OOSE Booch’91 OMT-1 Métodos
6
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Estrutura de Conceitos
– Conjunto variado de notações, as quais podem ser aplicados em diferentes
domínios de problemas e a diferentes níveis de abstração.
7
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
– Anotações e restrições
Classe
Objeto
Pacote Estado
Nó
Caso de Uso Atividade Anotação
Componente
Ator
8
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Tipos de Relações
Relações
– Sintaxe e semântica bem definidas
– Permitem o estabelecimento de interdependências entre os elementos básicos vistos
anteriormente.
Tipos
– Associação
– Dependência
– Realização
– Generalização
– Agregação
9
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Diagramas
– Possibilidade de agrupar elementos básicos e as suas relações de
uma forma lógica ou que estruturalmente faça sentido.
– “Nenhum modelo é suficiente por si só. Qualquer sistema não-trivial é
melhor representado através de um pequeno número de modelos
razoavelmente independentes”
10
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Diagramas de Comportamento
– Demonstram os aspectos comportamentais e de reação do sistema ou da lógica
de negócio do projeto.
» Atividade, Estados, Casos de Uso e todos os de interação.
Diagramas de Interação
– Sub-conjunto de diagramas de comportamento que enfatizam a interação entre
os objetos.
» Comunicação, Interação entre objetos e Sequência.
Diagramas de Estrutura
– Especificação estrutural do elementos independente do tempo.
» Classes, Estrutura Composta, Componentes, Instalação,
Objetos e Pacotes.
11
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
12
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
Caso de uso é a especificação de uma seqüência de
interações entre um sistema e os agentes externos.
É a descrição de uma execução específica do sistema,
do ponto de vista do usuário
13
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
Cada caso de uso é definido através da descrição narrativa das
interações que ocorrem entre o(s) elemento(s) externo(s) e o
sistema.
– Formato
– Grau de detalhamento
14
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Após o Cliente fornecer sua senha e esta ser validada, o sistema exibe as
opções de operações possíveis.
15
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
O grau de detalhamento a ser utilizado na descrição de um caso
de uso também pode variar.
16
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
O grau de abstração de um caso de uso diz respeito à existência
ou não de menção à tecnologia a ser utilizada na descrição deste
caso de uso.
17
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
Exemplo de descrição essencial :
18
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
Um caso de uso tem diversas maneiras de ser realizado.
19
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
20
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
21
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
quem o representa.
22
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
23
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Inclusão
Existe somente entre casos de uso.
Analogia útil: rotina.
– Em uma linguagem de programação, instruções podem ser
agrupadas em uma unidade lógica chamada rotina.
– Sempre que essas instruções devem ser executada, a rotina
correspondente é chamada.
Quando dois ou mais casos de uso incluem uma seqüência de
interações comum, esta seqüência comum pode ser descrita
em um outro caso de uso.
24
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Inclusão
Caso de uso comum:
– evita a descrição de uma mesma seqüência de interações mais de uma vez
e torna a descrição dos casos de uso mais simples.
25
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Inclusão
<<include>>
Cliente
Realizar Saques Fornecer Identificação
<<include>>
Realizar Transferência
26
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Extensão
Utilizado para modelar situações onde diferentes seqüências de
interações podem ser inseridas em um caso de uso.
27
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Extensão
Cada uma das diferentes seqüências representa um comportamento
opcional, que só ocorre sob certas condições ou cuja realização
depende da escolha do ator.
Quando um ator opta por executar a seqüência de interações
definida no extensor, este é executado.
– Após a sua execução, o fluxo de interações volta ao caso de uso
estendido, recomeçando logo após o ponto em que o extensor foi
inserido.
28
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Extensão - Exemplo
Considere um processador de textos. Considere que um dos casos
de uso deste sistema seja Editar Documento.
Mas, em outro cenário, o ator pode desejar que o sistema faça uma
verificação ortográfica no documento.
29
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Extensão
Interações de Substituir Texto:
1.Em qualquer momento durante Editar Documento, o ator pode optar por substituir um
30
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Extensão
<<extend>>
Substituir
<<extend>>
Editar Documento
Autor
Corrigir
31
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Generalização
Relacionamento no qual o reuso é mais evidente.
32
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
33
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Realizar Pagamento
Cliente
34
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
35
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Reservar Livro
Aluno
Devolver livro
36
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
37
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
38
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Identificação de Atores
Os atores e os casos de uso são identificados a partir de
informações coletadas na fase de levantamento de requisitos do
sistema.
– Durante esta fase, os analistas devem identificar as atividades do
negócio relevantes ao sistema a ser construído.
Não há uma regra geral que indique quantos casos de uso são
necessários para descrever um sistema.
39
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Identificação de atores
40
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Identificação de atores
Perguntas:
41
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
42
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
Perguntas úteis:
Quais são as necessidades e objetivos de cada ator em relação
ao sistema?
Que informações o sistema deve produzir?
O sistema deve realizar alguma ação que ocorre regularmente
no tempo?
Para cada requisito funcional, existe um (ou mais) caso(s) de
uso para atendê-lo?
Importante: Um sistema de software não existe para cadastrar
informações, nem para gerenciar os seus usuários.
– O objetivo principal é produzir algo de valor para o ambiente no qual ele
está implantado.
43
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
44
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
45
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Uma breve descrição para cada ator deve ser adicionada ao modelo
de casos de uso.
46
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
47
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Para que isso ocorra pretende disponibilizar terminais de consultas aos preços, por todo o supermercado.
Concluído o cadastro dos produtos, o gerente autoriza os funcionários a colocarem estes produtos nas prateleiras.
O gerente a qualquer momento pode disponibilizar produtos em promoção. O gerente cadastra os preços
promocionais e solicita ao locutor que faça o anuncio dos produtos que estão em oferta.
Outra tarefa do gerente é realizar a troca dos produtos para os clientes. Ao realizar a troca, o gerente verifica se há
ainda produtos disponível para que a mesma possa ser efetuada. Caso não haja produtos disponíveis o gerente
efetua a devolução do dinheiro do cliente.
Caso o caixa registre o produto duas vezes ou o cliente desista de levá-lo, então é feito o estorno deste produto.
48
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
<<include>>
Manter Produto
Troca por Produto
Gerente <<include>>
Gerenciar promoções
<<include>> <<include>>
<<include>>
<<include>>
49
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Nome
Atores
Pré-condições
Pós-condições
Fluxo de eventos (cenário primário)
Pontos de extensões
Casos de uso usados
Cenários secundários
Vide arquivo Word (Casos de Uso.rtf)
50
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
cadastrados ou novos.
O software deve prever o cadastramento de usuários locadores, com seus dados pessoais,
principalmente, os dados de endereço, que são tão importantes para a entrega como para a
recuperação de produtos alugados.
O software atenderá a todas as cidades onde o cliente contratante tiver depósito de DVD. Serão
disponibilizados somente DVD´s da cidade onde o cliente locador reside, visando à entrega.
O cliente locador deve informar o modelo de seu equipamento de DVD, a fim de se avaliar se ele
é ou não adequado a reproduzir o filme.
O cliente locador terá, no máximo, cinco dias para a devolução de um DVD alugado, sendo que
esse período dependerá do tipo de DVD, que pode ser: desde lançamento até DVDs antigos. O
processo de fidelizar o cliente locador leva em consideração tanto o número de locações quanto
as devoluções pontuais.
51
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
52
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
53
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
54
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Atores
Cliente
– coloca os itens a serem devolvidos na máquina e recebe o recibo.
Operador
– mantém o bom funcionamento da máquina e solicita relatórios diários.
55
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
Devolve item é disparado pelo cliente, quando ele quer devolver latas,
garrafas ou engradados. Para cada item inserido na máquina, o
sistema incrementa o contador de itens daquele tipo, para a
contabilização do cliente e do total do dia. Após a inserção do último
item, o cliente aperta o botão de pedido de recibo; o sistema gera o
recibo que contém os itens devolvidos, os valores discriminados por
tipo e o valor total a ser devolvido.
56
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
Gera relatório diário é disparado pelo operador, quando ele deseja
imprimir a informação relativa aos itens devolvidos durante o dia. O
sistema imprime as quantidades dos itens, discriminados pelos tipos e
o total do dia. Os números de itens são zerados para iniciar a
contagem do novo dia.
57
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Casos de Uso
58
Sistemas de Informação – Engenharia de Software II – Profa. Dra. Ana Paula e Prof. Dr. Fonseca
Caso de uso
Exemplo de extensão:
– trata alarme na devolução, quando um item fica entalado
Exemplo de inclusão:
– imprime: tanto devolve item quanto gera relatório diário tem saída impressa
(recibo ou relatório)
59