Baixe o app para aproveitar ainda mais
Prévia do material em texto
18/09/2020 1 Análise Orientada a Objetos Modelagem Essencial de Análise com UML Profª. Drª. Iolanda Cláudia Sanches Catarino • Unidade de Ensino: 2. • Competência da Unidade: Conhecer a modelagem do Diagrama de Classes e do Diagrama de Atividades. • Resumo: Estudo da técnica de modelagem estática - Diagrama de Classes e da técnica de modelagem dinâmica – Diagrama de Atividades. • Palavras-chave: Classe, Diagrama de Classes, Atividade e Diagrama de Atividades • Título da Teleaula: Modelagem Essencial de Análise com UML. • Teleaula nº: 02. Conceitos Diagrama de Classes Diagrama de Classes • Diagrama de Classes: seu objetivo é permitir a visualização das classes utilizadas pelo sistema e como estas se relacionam. Esse diagrama apresenta uma visão estática de como as classes estão organizadas, preocupando-se em definir sua estrutura lógica (Guedes, 2011). • Representa a modelagem da parte estática do sistema, representando um conjunto de Classes com seus Atributos, Operações e Relacionamentos. • Modelo de Classes: é composto do Diagrama de Classes que representa o aspecto estrutural estático e da descrição textual associada ao mesmo. (BEZERRA, 2007, p. 110). • O Diagrama de Classes é utilizado na construção do Modelo de Classes desde o nível de análise até o nível de especificação (Projeto). (BEZERRA, 2007, p. 112). Diagrama de Classes Diagrama de Classes Elabora o Diagrama de Use Cases. Analisa os Use Cases e identifica-se as classes e seus atributos. Elabora o Diagrama de Classes único ou por visão. Refina o Diagrama de Classes. 1 2 3 4 5 6 18/09/2020 2 Nome da Classe: Substantivo no singular nomeDoAtributo nomeDaOperação (verbo no Infinitivo + substantivo) Fonte: Elaborada pela Autora. Fonte: Elaborada pela Autora. Diagrama de Classes - Notação Conceitos Diagrama de Classes – Tipos de Relacionamentos • Relacionamentos: Na UML, os modos pelos quais os itens podem estar conectados a outros, isto é, logicamente ou fisicamente, são modelados como relacionamentos, que permitem compartilhar informações e colaboram para a execução dos processos pelo sistema (Guedes, 2005). • Existem 4 tipos de relacionamentos: associações, generalizações, dependências e realizações. Diagrama de Classes - Relacionamentos • Associações: são relacionamentos estruturais entre instâncias. Tipos de associações: Unária (auto associação ou reflexiva), binária, classe associativa, agregação. • Generalizações: conectam classes generalizadas a outras mais especializadas, o que é conhecido como relacionamento Generalização e Especialização. • Dependências: são relacionamentos de utilização entre casos de uso, classes, pacotes e anotações. • Realização: especifica um contrato de execução entre classes e interfaces. Diagrama de Classes - Relacionamentos • Associação Unária ou Reflexiva: Ocorre quando existe um relacionamento de um objeto de uma classe com objetos da mesma classe. • Exemplo: Fonte: Elaborada pela Autora. Diagrama de Classes - Relacionamentos • Multiplicidade: em cada extremidade de um relacionamento do tipo associação deve ser definida a multiplicidade da associação. • A multiplicidade depende de pressupostos e de como são definidas as fronteiras de um problema, conforme as regras de negócio! Diagrama de Classes - Multiplicidades 7 8 9 10 11 12 18/09/2020 3 Multiplic. Significado 0..1 No mínimo zero (nenhum e no máximo um). Indica que os objetos das classes associadas não precisam obrigatoriamente estar relacionados , mas se houver relacionamento indica que apenas uma instância da classe se relaciona com as instâncias da outra classe. 1..1 Um e somente um. Indica que apenas um objeto da classe se relaciona com os objetos de outra classe. 0..* No mínimo nenhum e no máximo muitos. Indica que pode ou não haver instâncias da classe participando do relacionamento. * Muitos. Indica que muitos objetos da classe estão envolvidos no relacionamento. 1..* No mínimo 1 e no máximo muitos. Indica que há pelo menos um objeto envolvido no relacionamento, podendo haver muitos objetos envolvidos. 3-5 No mínimo 3 e no máximo 5. Indica que existem pelo menos 3 instâncias envolvidas no relacionamento e que podem ser 4 ou 5 as instâncias envolvidas, mas não mais do que isso. Diagrama de Classes – Tipos de Multiplicidades • Associação Binária: Ocorre quando são identificados relacionamentos entre objetos de duas classes. • Exemplo: Fonte: Elaborada pela Autora. Diagrama de Classes - Relacionamentos • Classe Associativa: Classes associativas são produzidas geralmente quando ocorrem associações que possuam multiplicidade (*:*), com características (atributos) específicos da Associação. • Exemplo: Fonte: Elaborada pela Autora. Diagrama de Classes - Relacionamentos • Agregação: Demonstra que as informações de um objeto (chamado objeto-todo) precisam ser complementadas pelas informações contidas em um ou mais objetos de outra classe (chamados objeto- parte). • Ambas as classes podem “viver” de forma independente, ou seja, não existe uma ligação forte entre as duas. O símbolo de Agregação difere de Associação por conter um losango na extremidade da classe que contém os objetos-todo. Diagrama de Classes - Relacionamentos • Exemplo: Fonte: Elaborada pela Autora. Diagrama de Classes - Relacionamentos • Composição: Esta Associação é uma variação da Agregação, onde é apresentado um vínculo mais forte entre objetos-todo e os objetos- parte, procurando demonstrar que os objetos-parte têm de estar associados a um único objeto-todo. • Utiliza-se um losango preenchido para indicar a Composição. Diagrama de Classes - Relacionamentos 13 14 15 16 17 18 18/09/2020 4 • Ambas as classes “vivem” unidas de forma dependentes, ou seja, existe uma ligação forte entre as duas. Os objetos da classe parte são dependentes, em termos de existência, da classe todo, ambas são partes de um único todo. • Os objetos da classe parte não podem viver quando o todo é destruído. Diagrama de Classes - Relacionamentos • Exemplo: Fonte: Elaborada pela Autora. Diagrama de Classes • Generalização e Especialização: Esta Associação identifica classes- mãe, chamadas gerais e classes-filhas, chamadas especializadas, demonstrando a ocorrência de herança e possivelmente de operações polimórficas nas classes especializadas. • A herança é a possibilidade de uma classe utilizar os atributos e operações de uma outra como se fossem seus. Diagrama de Classes - Relacionamentos • Exemplo: Fonte: Elaborada pela Autora. Diagrama de Classes - Relacionamentos Conceitos Diagrama de Classes - Exemplos Diagrama de Classes Parcial – Exemplo1 Fonte: Elaborada pela Autora. 19 20 21 22 23 24 18/09/2020 5 Diagrama de Classes Parcial – Exemplo 2 Fonte: Elaborada pela Autora. Diagrama de Classes Parcial – Exemplo 3 Fonte: Elaborada pela Autora. Resolução da SP Estudo de Caso – Agência de Estágios: Diagrama de Use Cases Deseja-se desenvolver um sistema para uma agência de estágios que atua no ramo de seleção e contratação de candidatos para as empresas conveniadas. A agência precisa manter os cadastros de: candidato, empresa, instituição de ensino, entrevistae contrato. O candidato é a pessoa que se cadastra na agência à procura de uma vaga de estágio. Um candidato pode fazer o seu cadastro na agência desde que seja estudante. Ele pode participar de várias entrevistas. Um candidato é descrito por: CPF, nome, endereço completo, idade, telefone, sexo, filiação, escolaridade e instituição de ensino atual. O candidato pode fazer o seu cadastro on-line e cadastrar o seu currículo. Ao realizar o seu cadastro on-line, o candidato receberá uma confirmação do seu cadastro e uma senha provisória. O candidato pode se inscrever, via Web, para uma vaga ofertada pela agência. Ao se inscrever em uma vaga, o candidato poderá emitir um comprovante de inscrição, sendo que o candidato receberá uma confirmação da inscrição efetuada, viae-mail. Descrição – Agência de Estágios A empresa é a pessoa jurídica que se cadastra na agência, ofertando vagas de estágio para estudantes. Uma empresa pode ofertar várias vagas de estágio. Uma empresa é descrita por: CNPJ, nome fantasia, razão social, inscrição estadual, ramo de atividade, endereço completo, telefone, fax, e-mail e contato. A vaga é descrita por uma descrição, cargo, quantidade, requisitos, salário, horário e período. A agência cadastra todas as instituições de ensino médio e superior do município e da região. Uma instituição de ensino é cadastrada por: CNPJ, nome fantasia, razão social, endereço completo, telefone, fax, e-mail e contato. A cada entrevista realizada com um candidato deve-se registrar: a data de realização, dados da empresa, dados da vaga, descrição da entrevista, nome do funcionário que realizou a entrevista, observação e situação (agendada, cancelada, realizada, aprovado ou reprovado). Para cada vaga pode-se realizar várias entrevistas. Algumas entrevistas geram a contratação (contrato), envolvendo os dados: nº do contrato, candidato, empresa, cargo, data de início, data de término, carga horária semanal, horário e salário. Descrição – Agência de Estágios • Diagrama de Classes: Pacote Pessoas. Fonte: Elaborada pela Autora. 25 26 27 28 29 30 18/09/2020 6 • Diagrama de Classes: Pacote Negócios. Fonte: Elaborada pela Autora. Interação Envie suas dúvidas! Conceitos Diagrama de Atividades Diagrama de Atividades • O Diagrama de Atividade pode representar o funcionamento de um software, um processo de negócios ou uma funcionalidade do software como um fluxo de trabalho por meio de um conjunto de ações. • Os elementos do Diagrama de Atividades podem ser divididos para representar fluxos de controle sequenciais (ou simples) e fluxos de controle paralelos (ou simultâneos). Diagrama de Atividades • O Diagrama de Atividades “pode ser visto como uma extensão dos fluxogramas. Além de possuir toda a semântica existente em um fluxograma, o diagrama de atividade possui notação para representar ações concorrentes, juntamente com a sua sincronização” (GUEDES, p. 307, 2007). Diagrama de Atividades • Uma Atividade representa um fluxo de trabalho que é representado por um Diagrama de Atividade. • Uma Atividade é composta por um conjunto de ações, ou seja, os passos necessários para que a atividade seja concluída. • As atividades podem descrever os métodos correspondentes as operações definidas para os objetos de uma classe. 31 32 33 34 35 36 18/09/2020 7 Notação do Diagrama de Atividades • Elementos Básicos do Diagrama: • Nó de Ação: é o elemento mais básicos de uma Atividade. Um nó de Ação representa um passo, uma etapa que deve ser executada em uma Atividade. Um Nó de Ação não pode ser decomposto (GUEDES, 2011). Notação: Fonte: Elaborada pela Autora. Notação do Diagrama de Atividades • Fluxo de Controle: é um conector que liga dois nós, enviando sinais de controle. Pode conter uma descrição, uma condição de guarda ou uma restrição. • Nó Inicial e Final: representam o início e o fim da Atividade. • Nó de Decisão: usado para representar uma escolha entre dois ou mais fluxos. É acompanho por Condições de Guarda, que determinam a condição para que um fluxo possa ser escolhido. Nó Inicial Nó de Ação Fluxo de Controle Nó de Decisão Nó Final Condição de Guarda Fonte: Elaborada pela Autora. Conceitos Diagrama de Atividades: Partição de Atividades (Swinlanes) Notação do Diagrama de Atividades • Partição de Atividade (Swinlanes): permitem representar o fluxo de um processo que passa por diversos setores ou departamentos de uma empresa, ou mesmo um processo que é manipulado por diversos atores (GUEDES, 2011); • São formadas por retângulos com divisões que identificam as zonas de influência de um determinado setor sobre um processo. Notação do Diagrama de Atividades • Notação de Partição de Atividade (Swinlanes): Fonte: Elaborada pela Autora. 37 38 39 40 41 42 18/09/2020 8 Fonte: Elaborada pela Autora. • Exemplo de Diagrama de Atividades com partição – Realizar Entrevista. Conceitos Diagrama de Atividades: Tipos de Nós Notação do Diagrama de Atividades • Nó de Bifurcação (Fork): Um fork ocorre quando há uma transição de entrada e várias transições de saída. Significa que uma atividade chegou neste ponto e foi subdividida em mais de uma atividade. • Notação: Elaborada pela Autora. Notação do Diagrama de Atividades • Nó de União (join): Um join ocorre quando é necessário sincronizar atividades. Significa que mais de uma atividade chegou em um mesmo ponto e criou-se uma nova atividade. • Notação: Fonte: Elaborada pela Autora. Notação do Diagrama de Atividades Fonte: Elaborada pela Autora. • Exemplo de Diagrama de Atividades com partição – Efetuar Pedido de Venda. Notação do Diagrama de Atividades • Nó de Objeto: representa uma instância de uma classe, que pode estar disponível em um determinado ponto de Atividade. São representados como um retângulo. • Exemplo: Nó de Objeto Fonte: Elaborada pela Autora. 43 44 45 46 47 48 18/09/2020 9 Referências e Bibliografia BEZERRA, Eduardo. Princípios de análise e projeto de sistemas com UML. 3ed. Rio de Janeiro: Elsevier, 2014. BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. UML: guia do usuário. 2ed. Rio de Janeiro: Elsevier, 2006. BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. The unified modeling language: user guide. Massachussets: Longman, 2000. FOWLER, Martin. Analysis patterns: reusable object models. Boston: Addison-Wesley, 2002. GUEDES, Gilleanes T. A.. UML 2: uma abordagem prática. 3ed. São Paulo: Novatec, 2018. KIRCHOFF, Egon. BPMN em exemplos: aprenda como modelar processos de negócio. Kirchoff, 2015. LARMAN, C. Utilizando UML e padrões: uma introdução à análise e ao projeto orientados a objetos. Porto Alegre: Bookman, 2000. LAUDON, K. C.; LAUDON, J. Price. Gerenciamento de sistemas de informação. 3ed. LTC: Rio de Janeiro, 2001. MEDEIROS, Ernani. Desenvolvendo software com UML 2.0 - definitivo. São Paulo: Pearson Brasil, 2006. MORESI, Eduardo Amadeu Dutra. Delineando o valor do sistema de informação de uma organização. Ciência da Informação,Brasília, v. 29, n. 1, jan./abr. 2000. RAINER, R. K.; CEGIELSKI, C. G. Introdução a sistemas de informação: apoiando e transformando negócios na era da mobilidade. 5ed. Rio de Janeiro: Elsevier, 2016. RUMBAUGH, James et al.. Modelagem e projetos baseados em objetos. Rio de Janeiro: Campus, 1994. SOMMERVILLE, Ian. Engenharia de software. 9ed. São Paulo: Addison-Wesley, 2011. 49 50 51
Compartilhar