Sei sulla pagina 1di 47

UML Exemplos de Modelagem aula 2

Andr Constantino da Silva Jnia C. A. Silva DC- UFSCar 2003

Biblioteca
Uma biblioteca deve automatizar seus registros de livros, leitores e emprstimos. Suponha que seus procedimentos sejam bsicos, onde no h reserva de livros, o prazo de devoluo de uma semana, no h multa e o leitor no tem limite mximo para retirada de livros. O sistema deve permitir a consulta da bibliotecria ou leitor ao acervo, indicando se o livro est retirado ou disponvel, imprimir relatrios de leitores, leitores em atraso e livros disponveis e retirados.

Quais so os substantivos?
Uma biblioteca deve automatizar seus registros de livros, leitores e emprstimos. Suponha que seus procedimentos sejam bsicos, onde no h reserva de livros, o prazo de devoluo de uma semana, no h multa e o leitor no tem limite mximo para retirada de livros. O sistema deve permitir a consulta da bibliotecria ou leitor ao acervo, indicando se o livro est retirado ou disponvel, imprimir relatrios de leitores, leitores em atraso e livros disponveis e retirados.

Quais so os substantivos relevantes?


Uma biblioteca deve automatizar seus registros de livros, leitores e emprstimos. Suponha que seus procedimentos sejam bsicos, onde no h reserva de livros, o prazo de devoluo de uma semana, no h multa e o leitor no tem limite mximo para retirada de livros. O sistema deve permitir a consulta da bibliotecria ou leitor ao acervo, indicando se o livro est retirado ou disponvel, imprimir relatrios de leitores, leitores em atraso e livros disponveis e retirados.

Identificando Atores
Atores so fontes de informao para o sistema, solicitam informaes do sistema Agentes apenas interagem com o sistema, sendo um meio entre o Ator e o Sistema
Livros Emprstimo Bibliotecria Disponvel Leitor Prazo de devoluo Retirado Atraso

Identificando Objetos
So coisas sobre as quais o sistema deseja guardar informao
Livros Emprstimo Bibliotecria Disponvel Leitor Prazo de devoluo Retirado Atraso

Identificando Atributos dos Objetos


So informaes dos objetos que devem ser armazenados pelo sistema
Livros Emprstimo Bibliotecria Disponvel Leitor Prazo de devoluo Retirado Atraso

Relacionando o atributo aos seu objeto


Atores
Leitores Bibliotecria

Atributos

Objetos
Leitor Livro Emprstimo
Situao (disponvel ou retirado)

Prazo de devoluo

Representao Padro
dados ou solicitao

AtorX

verboPredicado

mensagem ou objeto

Como obtemos os casos de uso?

Quais so os verbos de ao?


Uma biblioteca deve automatizar seus registros de livros, leitores e emprstimos. Suponha que seus procedimentos sejam bsicos, onde no h reserva de livros, o prazo de devoluo de uma semana, no h multa e o leitor no tem limite mximo para retirada de livros. O sistema deve permitir a consulta da bibliotecria ou leitor ao acervo, indicando se o livro est retirado ou disponvel, imprimir relatrios de leitores, leitores em atraso e livros disponveis e retirados.

Tabela de Eventos
n 1 descrio Leitor solicita cadastro entrada dadosLeitor Msg1 sada Use case CadastrarLeitor

2
3 4 5 6 7

Bibliotecria cadastra livro


Leitor solicita emprstimo de livro Leitor devolve livro emprestado Usurio (leitor ou bibliotecria) consulta acervo hora de imprimir relatrio de leitores hora de imprimir relatrio de leitores com emprstimos em atraso hora de imprimir relatrio de livros disponveis hora de imprimir relatrio de livros retirados

dadosLivro

Msg2

CadastrarLivro
ObterLivroEmprstimo DevolverLivro ConsultarLivro ImprimirRelatrioLeitores ImprimirRelatrioLeitores Atrasados ImprmirRelatrioLivros Disponveis ImprimirRelatrioLivros Retirados

dadosEmprstimo Msg3, livro livro dadosConsulta Msg4 dadosLivro RelatrioLeitores RelatrioLeitores Atrasados RelatrioLivros Disponveis RelatrioLivros Retirados

8 9

Casos de uso para o ator leitor


Uma biblioteca deve automatizar seus registros de livros, leitores e emprstimos. Suponha que seus procedimentos sejam bsicos, onde no h reserva de livros, o prazo de devoluo de uma semana, no h multa e o leitor no tem limite mximo para retirada de livros. O sistema deve permitir a consulta da bibliotecria ou leitor ao acervo, indicando se o livro est retirado ou disponvel, imprimir relatrios de leitores, leitores em atraso e livros disponveis e retirados.

Diagramas de caso de uso (1)


ConsultarLivro dadosConsulta dadosLivroSolicitado

dadosEmprestimo

livro

ObterLivroEmprestimo msg3, livro

AtorLeitor msg2

DevolverLivro

dadosLeitor

msg1

CadastrarLeitor

Casos de uso para o ator bibliotecria


Uma biblioteca deve automatizar seus registros de livros, leitores e emprstimos. Suponha que seus procedimentos sejam bsicos, onde no h reserva de livros, o prazo de devoluo de uma semana, no h multa e o leitor no tem limite mximo para retirada de livros. O sistema deve permitir a consulta da bibliotecria ou leitor ao acervo, indicando se o livro est retirado ou disponvel, imprimir relatrios de leitores, leitores em atraso e livros disponveis e retirados.

Diagramas de caso de uso (2)


ConsultarLivro dadosLivroConsultado dadosConsulta ImprimirRelatrioLeitores RelatrioLeitores ImprimirRelatrioLeitoresAtrasados RelatrioLeitoresAtrasados

RelatrioLivrosRetirados

AtorBibliotecria

RelatrioLivrosDisponveis

dadosLivro ImprimirRelatrioLivrosRetirados

msg2

ImprimirRelatrioLivrosDisponveis

CadastrarLivro

Como descrever os casos de uso?


Curso Normal
Nmero seqncia . Ator + verbo + complemento ; Cursos Alternativos Caso nmero: Descrio do caso alternativo

Nmero seqncia . Ator + verbo + complemento ;


Nmero seqncia . Finalizar caso de uso ou retornar ao passo...

Descrio do caso de uso: cadastrarLeitor


dadosLeitor

AtorLeitor

msg1

CadastrarLeitor

Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.

Cursos Alternativos Caso 1: o leitor j est cadastrado. 2. O sistema verifica se este leitor est cadastrado; 3. O sistema emite a msg1 'leitor j est cadastrado'; 4. Finalizar caso de uso.

Descrio do caso de uso: cadastrarLeitor


dadosLeitor

AtorLeitor

msg1

CadastrarLeitor

Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.

Cursos Alternativos Caso 1: o leitor j est cadastrado. 2. O sistema verifica se este leitor est cadastrado; 3. O sistema emite a msg1 'leitor j est cadastrado'; 4. Finalizar caso de uso.

Descrio do caso de uso: cadastrarLeitor


dadosLeitor

AtorLeitor

msg1

CadastrarLeitor

Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.

Cursos Alternativos Caso 1: o leitor j est cadastrado. 2. O sistema verifica se este leitor est cadastrado; 3. O sistema emite a msg1 'leitor j est cadastrado'; 4. Finalizar caso de uso.

Descrio do caso de uso: cadastrarLeitor


dadosLeitor

AtorLeitor

msg1

CadastrarLeitor

Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.

Cursos Alternativos Caso 1: o leitor j est cadastrado. 2. O sistema verifica se este leitor est cadastrado; 3. O sistema emite a msg1 'leitor j est cadastrado'; 4. Finalizar caso de uso.

Diagrama de Seqncia - cadastrarCliente (curso normal)


Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.
: AtorLeitor : Leitor

Linha do tempo

Diagrama de Seqncia - cadastrarCliente (curso normal)


Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.

: AtorLeitor dadosLeitor

: Leitor

dadosLeitor

AtorLeitor

msg1

CadastrarLeitor

Diagrama de Seqncia - cadastrarCliente (curso normal)


Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.
: AtorLeitor dadosLeitor verificarLeitorCadastro( ) 'no cadastrado' : Leitor

Diagrama de Seqncia - cadastrarCliente (curso normal)


Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est cadastrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.
: AtorLeitor dadosLeitor verificarLeitorCadastro( ) 'no cadastrado' AdionarNovoLeitor( ) : Leitor

Diagrama de Seqncia - cadastrarCliente (curso normal)


Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est castrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.
: AtorLeitor dadosLeitor verificarLeitorCadastro( ) 'no cadastrado' AdionarNovoLeitor( ) msg1 'Leitor cadastrado'
dadosLeitor

: Leitor

AtorLeitor

msg1

CadastrarLeitor

Diagrama de Seqncia - cadastrarCliente (curso


alternativo)
Curso Normal 1. O leitor fornece seus dados; 2. O sistema verifica se este leitor no est castrado; 3. O sistema adiciona novo leitor; 4. O sistema emite a msg1 'leitor cadastrado'.
Cursos Alternativos Caso 1: o leitor j est cadastrado. 2. O sistema verifica se este leitor est cadastrado; 3. O sistema emite a msg1 'leitor j est cadastrado'; 4. Finalizar caso de uso.
: AtorLeitor dadosLeitor verificarLeitorCadastro( ) 'cadastrado' msg1 'Leitor j est cadastrado' : Leitor

Diagrama de Seqncia ObterLivroEmprestado (curso normal)


Curso Normal 1. O leitor fornece os dados para emprstimo; 2. O sistema verifica se a situao do livro 'disponvel'; 3. Em caso afirmativo, o sistema verifica se o leitor est cadastrado; 4. Em caso afirmativo, o sistema efetua o emprstimo; 5. O sistema altera a situao do livro para 'emprestado'; 6. O sistema emita a msg01 'Livro emprestado', fornecendo o livro solicitado.
: AtorLeitor : Emprstimo : Livro : Leitor dadosEmprestimo emprestarLivro( )

verificarSituao( ) 'disponvel'

verificarLeitorCadastro( ) 'cadastrado'

efetuarEmprestimo( ) alterarSituao ('emprestado') return

Msg01 'Livro emprestado', livro

Diagrama de Seqncia ObterLivroEmprestado (curso alternativo)


Curso Normal 1. O leitor fornece os dados para emprstimo; 2. O sistema verifica se a situao do livro 'disponvel'; 3. Em caso afirmativo, o sistema verifica se o leitor est cadastrado; 4. Em caso afirmativo, o sistema efetua o emprstimo; 5. O sistema altera a situao do livro para 'emprestado'; 6. O sistema emita a msg01 'Livro emprestado', fornecendo o livro solicitado.
: AtorLeitor : Emprstimo : Livro

dadosEmprestimo emprestarLivro( )

verificarSituao( ) 'emprestado'

Cursos Alternativos Caso 1: O livro est emprestado. 3. Em caso negativo, sistema emite a msg01 'Este livro j est emprestado'. 4. Abandonar o use case.

Msg01 'Este livro j est emprestado'

Diagrama de Seqncia ObterLivroEmprestado (curso alternativo)


: Emprstimo : Livro Curso Normal : AtorLeitor 1. O leitor fornece os dados para emprstimo; 2. O sistema verifica se a situao do livro dadosEmprestimo 'disponvel'; emprestarLivro( ) 3. Em caso afirmativo, o sistema verifica se o leitor est cadastrado; verificarSituao( ) 4. Em caso afirmativo, o sistema efetua o 'disponvel' emprstimo; 5. O sistema altera a situao do livro para 'emprestado'; verificarLeitorCadastro( ) 6. O sistema emita a msg01 'Livro emprestado', fornecendo o livro solicitado. 'no cadastrado' : Leitor

Cursos Alternativos Caso 2: O leitor no est cadastrado. 4. Em caso negativo, sistema emite a msg01 'Leitor no cadastrado'. 5. Abandonar o use case.

Msg01 'Leitor no cadastrado'

Diagrama de Seqncia consultarLivro (curso normal)


Curso Normal

1. O usurio fornece os dados da consulta; 2. O sistema localiza o livro que possui as especificaes fornecidas pelo usurio; 3. O sistema exibe ao usurio os dados do livro encontrado. Cursos Alternativos Caso 1: no encontrado nenhum livro com as especificaes fornecidas 3.1 O sistema emite a msg5 'Nenhum livro encontrado com as especificaes fornecidas'. 3.2. Abandonar o use case.

: AtorUsurio dadosConsulta

: Livro

localizarLivro( ) exibirDadosLivro( ) dadosLivro Se algum livro for encontrado com os dados especificados

Diagrama de Seqncia consultarLivro (curso normal)


Curso Normal

1. O usurio fornece os dados da consulta; 2. O sistema localiza o livro que possui as especificaes fornecidas pelo usurio; 3. O sistema exibe ao usurio os dados do livro encontrado.

: AtorUsurio dadosConsulta

: Livro

Se nenhum livro for encontrado com os dados especificados

localizarLivro( )

msg5 'Nenhum livro encontrado com as especificaes fornecid

Cursos Alternativos Caso 1: no encontrado nenhum livro com as especificaes fornecidas 3.1 O sistema emite a msg5 'Nenhum livro encontrado com as especificaes fornecidas'. 3.2. Abandonar o use case.

Diagrama de Classes

Leitor deseja emprstimo de livro

Diagrama de Classes

Leitor deseja emprstimo de livro

Revendedora de Automveis
Uma revendedora de automveis deseja automatizar os registros de venda e de seus servios de manuteno. Para isso, deseja manter informaes sobre os carros novos e vendidos, clientes, e servios prestados a esses clientes com seus carros (troca de pea, reviso, etc). Deseja-se que o sistema possa gerar relatrios de vendas, de clientes, de carros novos, de servios.

Atores (fonte de informao/solicitao ao sistema)


Cliente (Gerente)

Substantivos

Objetos
(coisas sobre as quais os sistema quer guardar informaes)

Atributos dos objetos


Novos Vendidos

Carro Venda Servios de manuteno Cliente

Troca de peas reviso

Agentes (meio entre ator e sistema)

Verbos de ao

Funes do sistema
Mtodos
+ genricos use case

(sistema) manter informaes sobre carros (novos e usados) (sistema) manter informaes sobre clientes (sistema) manter informaes sobre servios prestados (sistema) gerar relatrio de vendas

(sistema) gerar relatrio de clientes


(sistema) gerar relatrio de carros novos (sistema) gerar relatrio de servios

Tabela e Eventos
n
1

descrio
Cliente compra carro

entrada
dadosVenda

sada
Msg1, Carro

Use case
comprarCarro

2
3

Cliente solicita servio de manuteno


Cliente retira carro aps manuteno

dadosManu teno, carro

Msg2
carro

fazerManuteno
retirarCarroManuteno

Funcionrio registra servio efetuado


5 6 7 8 9 Cliente solicita cadastro hora de imprimir relatrio de vendas hora de imprimir relatrio de clientes hora de imprimir relatrio de carros novos hora de imprimir relatrio de servios

dadosManute noServio
dadosCliente

Msg4
Msg5 Relatrio Vendas Relatrio Clientes Relatrio CarrosNovos Relatrio de servios

adionarServioManuteno
cadastrarCliente imprimirRelatrioVendas IiprimirRelatrioClientes imprimirRelatrioCarrosNovos imprimirRelatrioServios

Casos de Uso para o ator Cliente


cadastrarCliente dadosCliente dadosVenda msg5 dadosManuteno, carro

comprarCarro

msg1, carro

AtorCliente carro

msg2

fazerManuteno

retirarCarroManuteno

Casos de Uso para atores Funcionrio e Gerente


dadosManutenoServio

AtorFuncionrio msg4

ImprimirRelatrioVendas
AdicionarServioManuteno

RelatrioVendas dadosCarro RelatrioClientes cadastrarCarro

msg6

AtorGerente

ImprimirRelatrioClientes

RelatrioCarrosNovos RelatrioServios

ImprimirRelatrioServios

ImprimirRelatrioCarrosNovos

Descrio do caso de uso: comprarCarro


dadosVenda

Curso Normal

1. O cliente informa as caractersticas do carro desejado; 2. O sistema obtm todos os carros disponveis para venda; 3. O sistema exibe os carros disponveis para venda ao cliente; 4. O cliente informa ao sistema o carro escolhido; 5. O sistema verifica se este cliente j est cadastrado; 6. Em caso afirmativo, o sistema solicita confirmao do cliente; 7. O cliente confirma a compra; 8. O sistema cadastra a nova venda; 9. O sistema altera a situao do carro para 'vendido'; 10. O sistema emite a msg1 'Carro vendido'.

ComprarCarro

msg1, carro

AtorCliente

Cursos Alternativos

Caso 1: No existe carro disponvel para venda com as caractersticas solicitadas pelo cliente. 3. O sistema emite a msg1 'Nenhum carro disponvel para venda com tais caractersticas' 4. Finalizar caso de uso. Caso 2: O cliente no foi cadastrado. 6. O sistema emite a msg1 'Cliente no cadastrado'; 7. Finalizar caso de uso.

Diagrama de Seqncia comprarCarro (curso


normal)
Curso Normal

1. O cliente informa as caractersticas do carro desejado; 2. O sistema obtm todos os carros disponveis para venda; 3. O sistema exibe os carros disponveis para venda ao cliente; 4. O cliente informa ao sistema o carro escolhido; 5. O sistema verifica se este cliente j est cadastrado; 6. Em caso afirmativo, o sistema solicita confirmao do cliente; 7. O cliente confirma a compra; 8. O sistema cadastra a nova venda; 9. O sistema altera a situao do carro para 'vendido'; 10. O sistema emite a msg1 'Carro vendido'.

: AtorCliente dadosCarro

: Venda

: CarroVenda

: Cliente

VenderCarro( ) obterCarrosDisponveis( ) carrosDisponveis

carroEscolhido, dadosCliente VerificarClienteCadastrado( ) 'cadastrado' solicitaoConfirmao confirmao CadastrarNovaVenda( ) alterarSituao ( "vendido" ) msg1 'Carro vendido'

Diagrama de Seqncia comprarCarro


(cursos alternativos)
: AtorCliente dadosVenda VenderCarro( ) obterCarrosDisponveis( ) msg1 'Nenhum carro disponvel para venda com tais caractersticas' : Venda : CarroVenda
: AtorCliente dadosVenda VenderCarro( ) obterCarrosDisponveis( ) carrosDisponveis : Venda : CarroVenda : Cliente

carroEscolhido dadosCliente VerificarClienteCadastrado( ) 'no cadastrado' msg1 'Cliente no cadastrado'

Descrio do caso de uso: fazerManuteno


dadosManuteno, carro

Curso Normal

1. O cliente informa os seus dados; 2. O sistema verifica se o cliente j est cadastrado; 3. Em caso afirmativo,verifica quais carros foram comprados pelo cliente; 4. O sistema solicita a escolha do carro que vai para a manuteno; 5. O cliente informa o carro; 6. O sistema solicita o motivo do servio; 7. O cliente informa o motivo do servio; 8. O sistema cadastra o servio; 9. O sistema emite a msg2 'Carro enviado para realizar o servio'.

AtorCliente

msg2

fazerManuteno

Cursos Alternativos

Curso 1: O cliente no est cadastrado. 3. Em caso negativo, sistema emite a msg2 'Cliente no cadastrado'. 4. Finalizar caso de uso. Curso 2: O cliente no comprou carro. 4. O sistema emite a msg2 'Cliente no comprou carro nesta revendedora'. 5. Finalizar caso de uso.

Diagrama de Seqncia fazerManuteno


(curso normal)
Curso Normal
: AtorCliente dadosCliente VerificarClienteCadastrado( ) 'cadastrado' : Servio : Cliente : Carro

1. O cliente informa os seus dados; 2. O sistema verifica se o cliente j est cadastrado; 3. Em caso afirmativo,verifica quais carros foram comprados pelo cliente; 4. O sistema solicita a escolha do carro que vai para a manuteno; 5. O cliente informa o carro; 6. O sistema solicita o motivo do servio; 7. O cliente informa o motivo do servio; 8. O sistema cadastra o servio; 9. O sistema emite a msg2 'Carro enviado para realizar o servio'.

obterCarroCompradoCliente( ) 'carros comprados lista de carros solicitaoEscolhaCarro carro solicitaoMotivoServio motivoServio solicitaServio( ) msg2 'Carro enviado para realizar o servio'

Diagrama de Classes

Diagrama de Classes

Diagrama de Classes (atributos e mtodos)

Potrebbero piacerti anche