Diagramas de Seqüência mapeados com as classes de projeto. UC CADASTRAR PESSOA Diagrama de Classe Manter disponível os dados do proprietário do imóvel e/ou cliente para a imobiliária. O atendente solicita as pessoas os documentos (RG, CPF, Endereço, Recibo do imóvel, contra-cheque) e cadastra os dados. FormTela FRM_CadastroPessoa PessoaTableAdapter +Atualizar(pessoa:Pessoa) +Inserir(pessoa:Pessoa) +Excluir(pessoa:Pessoa) +Consultar(pessoa:Pessoa) CadastroPessoa +Atualizar(pessoa:Pessoa) +Inserir(pessoa:Pessoa) +Excluir(pessoa:Pessoa) +Consultar(pessoa:Pessoa) Pessoa +Nome: String +CPF: Integer +RG: Integer +Endereco: String +Cidade: String +Estado: String +Telefone: Integer Diagramas de Sequencia Inserir
: FRM_CadastroPessoa : CadastroPessoa : PessoaTableAdapter : processa() 2 : InserirCadastro() : InserirCadastro() 4 5 : AtualizarCadastro() 7 : resultado Remover : FRM_CadastroPessoa : CadastroPessoa : PessoaTableAdapter : processa() 2 : removercadastro() : removercadastro() 4 5 : atualizarcadastro() 7 : resultado Editar
: FRM_CadastroPessoa : CadastroPessoa : PessoaTableAdapter : processa() 2 : EditarCadastro() : EditarCadastro() 4 5 : AtualizarCadastro() 7 : resultado UC CADASTRAR IMÓVEL Após o cadastro do proprietário, o atendente da imobiliária solicita para que ele informe a localização, a descrição do imóvel, tamanho (comprimento e largura) para deixar registrado na base de dados do sistema. Diagrama de Classe
FormTela FRM_TelaCadastrarImovel Imovel +Localizacao: String +Area: Float CadastrarImovel ImovelTableAdapter +Atualizar(imovel:Imovel) +Inserir(imovel:Imovel) +Excluir(imovel:Imovel) +Consultar(imovel:Imovel) +Atualizar(imovel:Imovel) +Inserir(imovel:Imovel) +Excluir(imovel:Imovel) +Consultar(imovel:Imovel) Diagrama de Sequencia: O Diagrama de Sequencia do UC Cadastro Imóvel é semelhante ao diagrama de Sequencia do UC Cadastro Pessoa. UC EXIBIR IMÓVEIS DISPONÍVEIS Após o cadastro dos imóveis o atendente verifica e exibe para os clientes os imóveis disponíveis para venda e locação. DIAGRAMA DE CLASSE:
FormTela FRM_TelaExibirImoveis +processa() InformacaoTableAdapter +ConsultarImovel(imovel: Imovel): Boolean ExibirImoveis +ConsultarImovel(imovel: Imovel): boolean Imovel +Localizacao: String +Area: Float DIAGRAMA DE SEQUÊNCIA: : FRM_TelaExibirImoveis : Imovel : ExibirImoveis : InformacaoTableAdapter : consultar() 2 : consultar() 4 : consultar() 5 : buscar() 7 : atualizar() 0 : resultado 8
UC REALIZAR CONTRATO DE AUTORIZAÇÃO O proprietário do imóvel primeiramente realiza um contrato de autorização. Por parte do proprietário é em relação a deixar o imóvel para locação ou vendendo um imóvel para a imobiliária. DIAGRAMA DE CLASSE: <<boundary>> TelaContratoDeAutorizacao +RealizarContratoAutorizacao(autorizacao: Autorizacao) <<entity>> Venda +ContraCheque: Boolean <<entity>> Autorizacao <<entity>> Locacao +ContraCheque: Boolean <<control>> ControladorAutorizacao +RealizarContratoAutorizacao(autorizacao: Autorizacao) <<entitycolletion>> CadastroAutorizacao <<entity>> Compra +ReciboDoImovel: Boolean DIAGRAMA DE SEQUÊNCIA: : FRM_TelaContratoDeAutorizacao : EfetuarAutorizacao : AutorizacaoTableAdapter : processa() <<create>> 2 : Autorizacao 4 : RealizarContratoDeAutorizacao() 5 : RealizarContratoDeAutorizacao() 7 : AtualizarContratoDeLocacao() 8 0 : resultado UC REALIZAR CONTRATO DE VENDA
O cliente comparece na imobiliária disposto a comprar um imóvel, caso possua algum imóvel disponível e de interesse do cliente o atendente informa-lhe que o pagamento só poderá ser apenas à vista (cheque (na mesma data de quando o imóvel foi comprado) ou dinheiro). Com isso o contrato poderá ser realizado. DIAGRAMA DE CLASSE: FormTela FRM_TelaContratoDeVenda Venda +ContraCheque: Boolean é realizado Imovel +Localizacao: String +Area: Float ContratoVenda EfetuarVenda VendaTableAdapter +RealizarVenda(Venda: Venda) +ValorVenda(Venda: Venda) +RealizarVenda(venda:Venda) +ValorVenda(venda:Venda) Diagrama de Sequencia:
: processa() : FRM_TelaContratoDeVenda <<create>> 2 : Venda : EfetuarVenda : VendaTableAdapter 4 : RealizarContradoDeVenda() 5 : RealizarContratoDeVenda() 7 : AtualizarContratoDeVenda() 0 : Resultado 8 UC REALIZAR CONTRATO DE LOCAÇÃO O cliente comparece na imobiliária disposto a alugar um imóvel, caso possua algum imóvel disponível e de interesse do cliente o atendente informa-lhe que o pagamento é mensal e pode ser efetuado com cheque ou dinheiro. O atendente da imobiliária solicita ao cliente que indique um fiador para seu contrato. Com isso o contrato poderá ser realizado. DIAGRAMA DE CLASSE:
FormTela FRM_TelaContratoLocacao Imovel +Localizacao: String +Area: Float possui Locacao +ContraCheque: Boolean ContratoLocacao EfetuarLocacao +RealizarLocacao(locacao: Locacao) +ValorLocacao(locacao: Locacao) LocacaoTableAdapter +RealizarLocacao(locacao:Locacao) +ValorLocacao(locacao:Locacao) Diagrama de Sequencia: : FRM_TelaContratoLocacao : EfetuarLocacao : LocacaoTableAdapter : Locacao : processa() <<create>> 2 4 : ContratoLocacao() 5 : ContratoLocacao() 7 : AtualizarLocacao() 0 8 UC RECEBER PAGAMENTO
O cliente comparece na imobiliária disposto a efetuar o pagamento do aluguel/compra. O cliente efetua o pagamento. O gerente após receber o pagamento do aluguel/venda pelo cliente, o gerente emite um comprovante de pagamento e registra o pagamento no sistema. DIAGRAMA DE CLASSE: FormTela FRM_TelaReceberPagamento Pagamento Pessoa +Nome: String +CPF: Integer +RG: Integer +Endereco: String +Cidade: String +Estado: String +Telefone: Integer ReceberPagamento +ReceberPagamento() PagamentoTableAdapter +ReceberPagamento() Diagrama de Sequencia: : FRM_TelaReceberPagamento : ReceberPagamento : PagamentoTableAdapter : Pagamento : Gerente : processa() <<create>> 2 5 : ReceberPagamento() 4 : buscar() 7 : CalcularMulta() 8 : AtualizarPagamento() : resultado 0 UC REALIZAR PAGAMENTO:
Após registrado o pagamento no sistema, o gerente realiza a consulta da data de pagamento feita ao proprietário do imóvel. O gerente emite um comprovante de pagamento para o proprietário e registra o pagamento no sistema. Diagrama de Classe: FormTela Pessoa FRM_TelaRealizarPagamento Pagamento +Nome: String +CPF: Integer +RG: Integer +Endereco: String +Cidade: String +Estado: String +Telefone: Integer RealizarPagamento +RealizarPagamento() RealizarPagamentoTableAdapter +RealizarPagamento() Diagrama de Sequencia: : FRM_TelaRealizarPagamento : Pagamento : RealizarPagamento : RealizarPagamentoTableAdapter : Gerente : processa() <<create>> 2 4 : RealizarPagamento() 5 : BuscarPagamento() 7 : AtualizarPagamento() 0 : Resultado 8