Prévia do material em texto
Prof. Msc. Pablo Ramon @ramonparaiba Projeto Orientado a Objetos com UML UML começou a ser definida a partir de uma tentativa de Jim Rumbaugh e Grady Booch de combinar dois métodos populares de modelagem orientada a objeto: Booch e OMT (Object Modeling Language). Mais tarde, Ivar Jacobson, o criador do método Objectory, uniu-se aos dois (formando os famosos três amigos), para a concepção da primeira versão da linguagem UML (Unified Modeling Language) . UML foi adotada em 1997 pela OMG (Object Management Group). Projeto Orientado a Objetos com UML • Um sistema orientado a objetos (OO) e composto de objetos interativos que mantem seu próprio estado local e oferecem operações nesse estado. • A representação do estado é privada e não pode ser acessada diretamente, de fora do objeto. • Processos de projeto OO envolvem projetar as classes de objetos e os relacionamentos entre essas classes. Projeto Orientado a Objetos com UML • Um sistema orientado a objetos (OO) e composto de objetos interativos que mantem seu próprio estado local e oferecem operações nesse estado. • A representação do estado e privada e não pode ser acessada diretamente, de fora do objeto. • Processos de projeto OO envolvem projetar as classes de objetos e os relacionamentos entre essas classes. Projeto Orientado a Objetos com UML Compreender e definir o contexto e as interações externas com o sistema. Projetar a arquitetura do Sistema Identificar os principais objetos do sistema. Desenvolver modelos de projeto. Especificar interfaces. 1 2 3 4 5 Fases – Do conceito ao projeto completo Projeto Orientado a Objetos com UML Modelos de Contexto & • Um modelo de contexto do sistema é um modelo estrutural, que demonstra os outros sistemas no ambiente do sistema a ser desenvolvido. Modelos de Interação • Um modelo de interação é um modelo dinâmico que mostra como o sistema interage com seu ambiente quando ativo.. Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Modelagem de Contexto • Definir os limites do sistema ajuda a decidir quais recursos serão implementados no sistema que está sendo projetado e quais recursos estão em outros sistemas associados. Projeto Orientado a Objetos com UML Exemplos Projeto Orientado a Objetos com UML Diagramas de Caso de Uso • Um caso de uso é uma lista de passos que definem a interação entre um ator (um ser humano que interage com o sistema, ou com um sistema externo) e o próprio sistema. • Estes diagramas ajudam equipes de desenvolvimento a entender as necessidades de seu sistema, incluindo o papel da interação humana no seu interior e as diferenças entre vários casos de uso. https://www.lucidchart.com/pages/pt/o-que-e-uml?a=0#section-10 Projeto Orientado a Objetos com UML Notação: • Atores http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/uml/diagramas/usecases/usecases.htm • Caso de uso (use case) • Relacionamento entre os elementos • associações entre atores e use cases; • generalizações entre os atores; • generalizações, extends e includes entre os use cases. Projeto Orientado a Objetos com UML Caso de uso • Serviços, tarefas ou funções que podem ser usados pelos usuários do sistema; • Usados para expressar e documentar os comportamentos das funções de um sistema; • Contém um texto descrevendo o serviço (começa com um verbo); • Exemplos: • Cadastrar produto; • Fazer login; • Gerar relatório. Projeto Orientado a Objetos com UML Caso de uso • Um ator inicia o caso de uso • Deve descrever por completo um determinado processo • Deve retornar um valor para um ator Projeto Orientado a Objetos com UML Lança Produto Vendedor Relacionamentos Associação Entre Atores e Casos de Uso Projeto Orientado a Objetos com UML Relacionamentos Efetua Login UsuárioGeneralização Entre Atores Vendedor Gerente Cadastra Clientes Cadastra descontos Lança vendas Projeto Orientado a Objetos com UML Inclusão <<include>> Vendedor Gerente Cadastra Clientes Cadastra descontos Lança vendas Gera log de vendas <<include>> <<include>> Projeto Orientado a Objetos com UML Extensão <<extend>> Efetua Login Usuário Vendedor Gerente Alterar Senha <<extend>> Projeto Orientado a Objetos com UML Documento de Caso de Uso Projeto Orientado a Objetos com UML Nome do caso de Uso Sacar Ator Cliente, Banco Pré-Condição Conta e Senha válidas Fluxo Normal • Entrar com o valor do Saque • Confirmar dados de operação • Debitar valor da conta do cliente • Caso de uso “Registrar Movimento” Fluxos Alternativos Saldo insuficiente • Apresentar aviso ao cliente Pós-Condição • Valor Sacado é debitado do saldo do cliente Projeto Orientado a Objetos com UML Exemplos Projeto Orientado a Objetos com UML Exemplos Projeto Orientado a Objetos com UML Exercícios Venda de Passagem aérea pela internet • O Cliente deve selecionar origem, destino e se a passagem é só de ida, ou ida e volta. A seguir, deve informar a data de partida e se for ida e volta, também a data de retorno. • Após clicar no botão “consultar”, o cliente pode visualizar os horários e classes disponíveis. • Caso ache o voo que está procurando, deve pressionar em comprar, em seguida selecionará entre as poltronas disponíveis e vai definir o número de parcelas com que deseja pagar • Enquanto a passagem não tiver paga, o cliente pode cancelar a operação sem prejuízo algum. Paraiba Air Lines Projeto Orientado a Objetos com UML Exercícios Clínica Veterinária • O cliente marca uma consulta com a secretária levando seu animal à clínica. Caso não sejam cadastrados, a secretaria deve cadastrá-los • Em cada sessão, o cliente deve informar os sintomas. O animal pode ter que passar por várias seções, dependendo do diagnóstico • Durante a sessão, o veterinário pode solicitar exames a serem trazidos na próxima seção. • A cada sessão gera-se um histórico e uma conta • A secretária tem a responsabilidade de manter atualizado os cadastros dos clientes, médico e animais Clínica veterinária bicho feliz Projeto Orientado a Objetos com UML Diagramas de Atividades Apresentam as atividades que compõem um processo do sistema e o fluxo de controle Modelam a execução de atividades sequenciais ou concorrentes Não está amarrado ao conceito de classes e objetos Projeto Orientado a Objetos com UML • Estados Iniciais e Finais • Atividades de transição • Decisões • Bifurcação e união • Raias Início do Fluxo Atividade Decisão Paralelismo Sistemas terceiros integrados Fim do Fluxo Diagramas de AtividadesElementos Projeto Orientado a Objetos com UML Diagramas de Atividades Os diagramas de atividade possuem ao menos um, mas podem ter vários desses. Elementos Estado inicial Estado final Projeto Orientado a Objetos com UML Diagramas de Atividades • Ações que devem ser executadas • Ao finalizar, transfere a execução para a próxima atividade Elementos Atividade Projeto Orientado a Objetos com UML Diagramas de Atividades • Setas contínuas que representam o fluxo de trabalho de uma atividade para outra. Elementos Transições Projeto Orientado a Objetos com UML Diagramas de Atividades • Representadas por um losango, utilizada para controlar os desvios do fluxo. Elementos Decisões Projeto Orientado a Objetos com UML Diagramas de Atividades • Barra sólida usada para simbolizar atividades concorrentes. • Bifurcação: Divisão do fluxo de controle • União: Sincronização das atividades Elementos Bifurcaçao/união (paralelismo) ProjetoOrientado a Objetos com UML Diagramas de Atividades • Servem para organizar as atividades, podem ser associadas a objetos, componentes do sistema ou atores. Elementos Raias Solicitar Produto Cliente Vendas Logística Processar pedido Enviar pedido Projeto Orientado a Objetos com UML Solicitar Produto Cliente Processar pedido Coletar itens Vendas Logística Enviar Pedido Receber Pedido Efetuar Cobrança Pagar conta Finalizar pedido Projeto Orientado a Objetos com UML Diagramas de Atividades Início do Fluxo Atividade Decisão Paralelismo Sistemas terceiros integrados Fim do Fluxo Projeto Orientado a Objetos com UML Exercício 1. Faça um diagrama de atividades para representar o algoritmo para o cálculo do fatorial de um número. 2. Faça um diagrama de atividades para a situação de retirar dinheiro de um caixa eletrônico. (use raias Cliente, Caixa eletrônico e Banco) Projeto Orientado a Objetos com UML Exercício Analise o seguinte diagrama de caso de uso referente a um módulo de matrícula e construa um diagrama de atividades. Projeto Orientado a Objetos com UML BOOCH G., RUMBAUGH J., JACOBSON I. UML, Guia do Usuário. 2ª Ed., Editora Campus, 2005. Número do slide 1 Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML Projeto Orientado a Objetos com UML