youbooks augusto cesar - acnlf leonardo luiz - llms gleibson oliveira - grso
TRANSCRIPT
YouBooks
Augusto Cesar - acnlf
Leonardo Luiz - llms
Gleibson Oliveira - grso
Roteiro
• Apresentação do projeto
• Definição dos requisitos
• Detalhamento dos requisitos
• Detalhamento da arquitetura
• Arquitetura final
• Padrões usados2
Apresentação do Projeto
• Definição do projeto
• Benefícios
3
Apresentação do Projeto
• Estrutura do negócio
• Modelo de negócios
4
Identificação dos requisitos• Diagrama de casos de uso
visualizar relatos por livrovisualizar leilaobuscar livro realizar cadastro
listar livros por ordem alfabetica
visualizar ranking dos mais publicados
visualizar rankig dos mais bem relatados
Usuario visualizar ranking dos mais vendidos
comprar
inserir relato
editar relato
remover relato
inserir livro
remover livro
editar livro
Autor
criar leilao de livros
Administradorrelatorio financeiro
IniciarContagem
Leiloeiro
FinalizarLeilao
Criar Leiloeiro<<include>><<include>>
Leitor
RealizarLance
Notificar Leiloeiro
<<extends>><<extends>>
5
Detalhamento dos requisitos• Diagrama de classes: Cadastrar Livro
TelaCadastrarLivro
cadastrarLivro()
<<boundary>>
(from livro)
CadastroLivro
inserirLivro()...
<<entity collection>>
(from livro)
Livro
Livro()
<<entity>>
(from livro)
1..*1..*
ControladorLivro
cadastrarLivro()
<<control>>
(from livro)
1
1
1
1
1
1
1
1
ComunicacaoScribd<<boundary>>
1
1
1
1
6
Detalhamento dos requisitos• Diagrama de seqüência: Cadastrar Livro
/ comunicacaoScribdR1 : ComunicacaoScribd
/ cadastroLivroR1 : CadastroLivro
/ controladorLivroR1 : ControladorLivro
/ livroR1 : Livro / telaCadastrarLivroR1 : TelaCadastrarLivro
/ autorR1 : Autor
1: cadastrarLivro1: cadastrarLivro
2: Livro2: Livro
3: cadastrarLivro3: cadastrarLivro
4: converterArquivo4: converterArquivo
5: inserirLivro5: inserirLivro
7
Detalhamento dos requisitos• Diagrama de classes: Realizar Compra
Livro
Livro()
<<entity>>
(from livro)
TelaComprar
comprar()
<<boundary>>
(from livro)
CadastroLivro
inserirLivro()obterPrecoLivro()
<<entity collection>>
(from livro)
1..*1..*
ControladorCompra
comprarLivro()
<<control>>
(from livro)
1
1
1
1
1
1
1
1
CadastroCompra
registrarCompraLivro()
<<entity collection>>
(from livro)
1
1
1
1
Compra<<entity>>
(from livro)
1..*1..*
ComunicacaoOperadoraCartao<<boundary>>
1
1
1
1
8
Detalhamento dos requisitos• Diagrama de seqüência: Realizar Compra
/ leitorR1 : Leitor
/ telaComprarLivroR1 : TelaComprar
/ controladorCompraR1 : ControladorCompra
/ cadastroLivroR1 : CadastroLivro
/ cadastroCompraR1 : CadastroCompra
/ comunicacaoOperadoraCartaoR1 : ComunicacaoOperadoraCartao
1: comprar1: comprar
2: comprarLivro2: comprarLivro
3: obterPrecoLivro3: obterPrecoLivro
4: realizarPagamento4: realizarPagamento
5: registrarCompraLivro5: registrarCompraLivro
6: habilitarDownload6: habilitarDownload
9
Detalhamento dos requisitos• Diagrama de classes: Cadastrar Leilão
TelaCriarLeilao
criarLeilao()
<<boundary>>
(from leilao)
CadastroLeilao
inserirLeilao()
<<entity collection>>
(from leilao)
Leilao
Leilao()
<<entity>>
(from leilao)
1..*1..*
ControladorLeilao
cadastrarLeilao()
<<control>>
(from leilao)
1
1
1
1
1
1
1
1
ComunicacaoLeiloeiro<<boundary>>
10
Detalhamento dos requisitos• Diagrama de seqüência: Cadastrar Leilão
/ autorR1 : Autor
/ telaCriarLeilaoR1 : TelaCriarLeilao
/ leilaoR1 : Leilao
/ controladorLeilaoR1 : ControladorLeilao
/ cadastroLeilaoR1 : CadastroLeilao
/ comunicacaoLeiloeiroR1 : ComunicacaoLeiloeiro
/ leiloeiroR1 : Leiloeiro
/ controladorLanceR1 : ControladorLance
1: criarLeilao1: criarLeilao2: Leilao2: Leilao
3: cadastrarLeilao3: cadastrarLeilao
4: inserirLeilao4: inserirLeilao
5: criarLeiloeiro5: criarLeiloeiro
6: new Leiloeiro6: new Leiloeiro
7: registrarObservador7: registrarObservador
8: registrarObservador8: registrarObservador
11
Detalhamento dos requisitos• Diagrama de classes: Realizar Lance
Lance
Lance()
<<entity>>
(from leilao)
TelaRealizarLance
realizarLance()
<<boundary>>
(from leilao)
CadastroLance
inserirLance()
<<entity collection>>
(from leilao)
1..*1..*
ControladorLance
cadastrarLance()validarLance()
<<control>>
(from leilao)1
1
1
1
1
1
1
1
ComunicacaoLeiloeiro<<boundary>>
12
Detalhamento dos requisitos• Diagrama de seqüência: Realizar Lance
/ leiloeiroR1 : Leiloeiro
/ cadastroLanceR1 : CadastroLance
/ lanceR1 : Lance
/ controladorLanceR1 : ControladorLance
/ telaRealizarLanceR1 : TelaRealizarLance
/ leitorR1 : Leitor
/ comunicacaoLeiloeiroR1 : ComunicacaoLeiloeiro
1: realizarLance1: realizarLance
2: Lance2: Lance
3: cadastrarLance3: cadastrarLance
4: validarLance4: validarLance
5: inserirLance5: inserirLance
6: notificarObservadores6: notificarObservadores
7: reiniciarContador7: reiniciarContador
13
Análise Projeto
TelaCadastrarLeilao <<cápsula>> TelaCadastrarLeilaoTelaCadastrarLance <<cápsula>> TelaCadastrarLanceTelaCadastrarLivro <<cápsula>> TelaCadastrarLivroTelaCompra <<cápsula>> TelaCompra
Fachada
ControladorLeilaoControladorLance
ControladorLeilaoInserirLanceActionInserirLeilaoAction
ControladorLivro ControladorLivroInserirLivroAction
ControladorCompra ControladorCompraComprarLivroAction
CadastroLeilao LeilaoDAOCadastroLance LanceDAOCadastroLivro LivroDAOCadastroCompra CompraDAO
GenericDAODAOFactory
Action
ComunicaçãoLeiloeiro <<cápsula>> LeiloeiroComunicaçãoOperadoraCartão
<<cápsula>> ComunicaçãoOperadoraCartãoISubsistemaComunicaçãoOperadoraCartãoFachada SubsistemaComunicaçãoOperadoraCartão
ComunicaçãoScribd <<cápsula>> ComunicaçãoScribdISubsistemaComunicaçãoScribdFachada SubsistemaComunicaçãoScribd
Livro LivroLeilão LeilãoLance LanceCompra CompraLeiloeiro <<cápsula>> Leiloeiro
Mapeamento Análise/Projeto
14
Diagrama de cápsulas completo
15
Diagrama de cápsulas
16
Diagrama de cápsulas
17
Diagrama de cápsulas
18
Diagrama de pacotes
19
Padrões de Projeto
• Facade
• Sigleton
• Command
• Data Acess Object
• Observer
• MVC
20
YouBooks
Augusto Cesar - acnlf
Leonardo Luiz - llms
Gleibson Oliveira - grso