·

Análise de Sistemas ·

Engenharia de Software

Envie sua pergunta para a IA e receba a resposta na hora

Fazer Pergunta
Equipe Meu Guru

Prefere sua atividade resolvida por um tutor especialista?

  • Receba resolvida até o seu prazo
  • Converse com o tutor pelo chat
  • Garantia de 7 dias contra erros

Recomendado para você

Texto de pré-visualização

Senac Modelagem de Sistemas de Informação Bacharelado em Sistemas de Informação Profª Claudia Bianchi Progetti claudiabprogettispsenacbrclaudiaprogettihotmailcom Aula 10 Diagrama de Classes Instâncias e Associações Diagrama de Objetos INSTÂNCIAS E ASSOCIAÇÕES Exemplo Desejo criar um sistema para armazenar informações de pessoas e carros Conceitos Pessoa Carro Associação Associação é um relacionamento estático entre dois conceitos Quem é dono de cada carro Multiplicidade Mundo real MULTIPLICIDADE Multiplicidade É a quantidade mínima e máxima de objetos que uma associação permite em cada um de seus papéis Recordando quem é dono de qual carro Mundo real Objetos Como encontrar as multiplicidades Pergunte para os dois lados 1 conceito pode ter quantos papel 1 carro pode ter quantos donos 1 pessoa pode ter quantos carros Atenção sempre inicie a pergunta com 1 Multiplicidades possíveis significa ou significa a significa vários sem limite específico a 1 exatamente um b 2 exatamente dois c 01 zero a um d 0 zero ou mais e zero ou mais f 1 um ou mais g 2 dois ou mais h 25 de dois a cinco i 25 dois ou cinco j 258 dois ou cinco a oito ASSOCIAÇÕES COMUNS Um para muitos Um para um Muitos para muitos CONCEITO DEPENDENTE ASSOCIAÇÕES OBRIGATÓRIAS MÚLTIPLAS E AUTOASSOCIAÇÕES Associação obrigatória Uma associação é obrigatória se o conceito associado desempenha um papel de multiplicidade mínima maior que zero Atenção Conceito dependente Um conceito é dependente se ele possuir pelo menos uma associação obrigatória Nota A UML tem um símbolo que denota dependência de um modo geral mas que não acrescenta valor prático à modelagem conceitual Associações múltiplas Pode haver mais de uma associação entre dois conceitos mas os nomes de papel devem ser únicos Autoassociações Quando um conceito é associado com ele próprio DESENHANDO INSTÂNCIAS COM DIAGRAMA DE OBJETOS DA UML O Diagrama de Classes representa a estrutura dos dados Conceitosatributos e como eles se interrelacionam entre si Cada ocorrência de um conceito é chamada de instância ou objeto Pra quê visualizar as instâncias ou objetos Ajuda a compreender Ajuda a descobrir problemas Ferramenta UML diagrama de objetos Diagrama de Objetos O diagrama de objetos tem como objetivo fornecer uma visão dos valores armazenados pelos objetos das classes definidas no diagrama de classes em um determinado momento do sistema Embora o diagrama de classes seja estático podem ser criados diagramas de objetos onde as possíveis situações pelas quais os objetos das classes passarão possam ser simuladas p1Pessoa id2031 nome Greg p2Pessoa id7513 nome John p3Pessoa id1394 Nome Martha p4Pessoa id8015 nome Chris c1Carro id1001 modelo Fox ano 2015 c2Carro id1002 modelo Van Plus ano 2017 c3Carro id1003 modelo Cross Hatch ano 2014 c4Carro id1004 modelo Convert ano 1998 Exercícios Para cada exercício fazer Desenhar o Diagrama de Classe Desenhar o Diagrama de Objetos Esboçar uma instância atendendo os requisitos mínimos pedidos Exercício 1 Desejase construir um sistema para manter um registro de artistas musicais e seus álbuns Cada álbum possui várias músicas as quais poderão ser consultadas pelo sistema O sistema também deve permitir a busca de artistas por nome ou nacionalidade O sistema também deve ser capaz de exibir um relatório dos álbuns de um artista o qual pode ser ordenado por nome ano ou duração total do álbum Um álbum pode ter a participação de vários artistas sem distinção Já a música pode possuir um ou mais autores e intérpretes todos considerados artistas Instância mínima 2 artistas 3 álbuns 4 músicas Exercício 2 Desejase construir um sistema para gerenciar as informações de campeonatos de handebol que ocorrem todo ano Desejase saber nome data de nascimento gênero e altura dos jogadores de cada time bem qual deles é o capitão de cada time Cada partida do campeonato ocorre em um estádio que possui nome e endereço Cada time possui seu estádiosede e assim cada partida possui um time mandante anfitrião e o time visitante O sistema deve ser capaz de listar as partidas já ocorridas e não ocorridas de um campeonato O sistema deve também ser capaz de listar a tabela do campeonato ordenando os times por classificação que é calculada em primeiro lugar por saldo de vitórias e em segundo lugar por saldo de gols Instância mínima 1 campeonato 2 partidas 2 times 2 jogadores em cada time Exercício 3 Desejase fazer um sistema de rede social Nesta rede social os usuários podem seguir e ser seguidos por outros usuários O perfil do usuário deve permitir cadastrar nome email data de nascimento website gênero telefone e foto do perfil Os usuários podem fazer postagens de texto em sua própria linha do tempo timeline da rede social sendo que podem anexar também fotos às postagens Uma foto é referenciada pela URI de seu local de armazenamento As fotos podem ser organizadas em álbuns sendo que cada álbum possui um título Instância mínima 4 usuários pelo menos um usuário com mais de uma postagem pelo menos um álbum com mais de uma foto Associações todoparte agregação e composição Quando um conceito é parte de outro que representa um todo desenhamos um diamante no lado do todo Exclusividade 1 ou 01 Como a composição diamante preto é uma relação exclusiva a multiplicidade no lado do diamante sempre será 1 ou 01 Agregação exemplo 2 Atenção O diamante seja branco seja preto deve ser usado somente em casos em que realmente se trata de uma relação todoparte Desejase fazer um sistema para manter um cadastro de filmes e artistas atoresatrizes bem como a informação de qual artista atuou em cada filme 8010 The Expendables 2 2012 8011 Titanic 1997 8012 Divergent 2014 Agregação exemplo 3 Além disso desejo saber também o nome do personagem desempenhado por cada artista em cada filme Além disso desejo saber também o nome do personagem desempenhado por cada artista em cada filme ERRADO Conclusão o nome do personagem é um dado que pertence à associação Neste caso o nome do personagem deverá ser armazenado em um objeto intermediário A classe de associação indica associação única Como representar um modelo no qual um mesmo artista pode representar mais de um personagem em um mesmo filme 8010 Double Impact 1991 O mesmo A pode estar associado com o mesmo B mais de uma vez Exercício 4 Desejase fazer um sistema para armazenar as informações de uma locadora de jogos digitais Cada jogo pode rodar em mais de uma plataforma Xbox PS3 PS4 PC etc Cada jogo possui seu preço diário de locação sendo que um mesmo jogo pode ter preços de locação diferentes para cada plataforma Quando um cliente nome email telefone senha deseja fazer uma locação ele informa quais jogos ele quer locar informando inclusive de qual plataforma é cada jogo contido na locação a ser realizada Quando a locação é realizada a data atual deve ser registrada para esta locação Para cada jogo locado o cliente informa quantos dias ele deseja ficar com cada um note que ele pode alugar por exemplo um jogo X da plataforma Xbox por 2 dias e um jogo Y da plataforma PC por 5 dias tudo para a mesma locação A locadora também possui alguns consoles de vídeo game os quais podem ser usados no local pelos clientes por um certo intervalo de tempo Cada console possui um preço por cada hora ou fração utilizada e contém um conjunto de acessórios headphone controle etc Instância mínima 2 plataformas 2 jogos para cada plataforma 2 clientes 2 locações 2 itens para cada locação 2 consoles pelo menos um console com mais de um acessório pelo menos um cliente com mais de uma utilização de console Desenhar o Diagrama de Classes Desenhar o Diagrama de Objetos esboçar uma instância atendendo os requisitos mínimos pedidos Bibliografia da aula GUEDES GTA UML2 Uma Abordagem Prática 3ª Ed Novatec 2018