[Música] Olá eu sou a Sara e eu estou acompanhando vocês na disciplina bancos de dados que está sendo oferecida para engenharia da computação na Univesp nós vamos hoje trabalhar a nossa quarta aula com o modelo entidade e relacionamento estendido e dentro deste modelo nós vamos eh trabalhar com duas características as características de especialização e generalização e as características de agregação bom o modelo entidade de relacionamento estendido ele permite expressar com mais precisão alguns contextos que são mais compos e que estão presentes no mundo real que nós estamos modelando para atuar como uma estrutura lógica dos
dados que serão armazenados essa possibilidade de usar especialização generalização e também agregação vai nos dar a chance de expressar a relacionamentos que são relacionamentos de hierarquia e relacionamentos de composição Primeiro vamos falar sobre especialização e generalização nós podemos entender a especialização como processo de definir um conjunto de subtipos de um tipo entidade nós podemos indicar que esses sub subtipos São subclasses e o tipo entidade a partir do qual subtipos são criados é dito supertipo ou superclass classe A generalização é o processo inverso quando nós temos eh subtipos já estabelecidos entendemos que precisamos criar um supertipo
para descrever melhor a situação que está sendo modelada Então vamos primeiro trabalhar com um exemplo de especialização vamos lembrar um pouco do contexto da empresa lá na nossa empresa nós temos a Entidade funcionário com os seus atributos incluindo o atributo composto representado aqui neste modelo entidade relacionamento bom mas nós queremos especificar um pouco melhor os funcionários da nossa empresa Então nós vamos usar o as características de especialização e generalização para melhorar a nossa modelagem Aqui nós temos o primeiro exemplo nesse exemplo nós estamos colocando uma especificação de subtipos os subtipos são secretário técnico e Engenheiro
Isso significa que nós estamos expressando no nosso modelo entidade relacionamento que os funcionários se dividem em secretários técnicos e Engenheiros e cada um desses subtipos dessas divisões possu características próprias nós temos aqui neste caso secretário com um atributo chamado nível técnico com um atributo chamado grau e Engenheiro com um atributo chamado tipo esses atributos nível grau e tipo Eles são específicos para esses para cada um desses subtipos e nós temos aqui a especificação de uma especialização que está motivada pela existência dessas propriedades características de cada um dos subtipos Nesse contexto nós dizemos então que o
nosso técnico ele é um funcionário que possui todos esses atributos descritivos mais o grau o engenheiro é um funcionário que possui todos esses atributos descritivos mais o atributo tipo bom aqui e nesta modelagem nós temos ainda uma característica importante a ser discutida que nós precisamos sempre lembrar dela e especificá-lo que é a questão da restrição de disjunção O que significa restrição de disjunção significa que um funcionário que possui toda essa descrição pode se especificar em uma dessas sub categorias ele pode ser ou um secretário ou um técnico ou um engenheiro de forma exclusiva nós não
temos aqui no nosso modelo a possibilidade de dizer que um funcionário é engenheiro e secretário ao mesmo tempo por quê Porque nós usamos a restrição de disjunção aqui neste exemplo ainda falando sobre funcionário nós temos uma outra motivação para criar um subtipo Nós criamos aqui o subtipo chamado gerente e este subtipo está associado a uma outra entidade chamada projeto por meio do relacionamento gerencia Note que aqui nós não temos nenhum atributo específico para aquele funcionário que se especifica como gerente nós temos um comportamento associado a ele que é o comportamento de gerenciar um projeto essa
é outra motivação para nós querermos usar esse recurso de especialização quando nós temos um subconjunto de entidades que precisa se associar a alguma outra entidade mas o restante daquelas entidades daquele supertipo não se associa à aquela entidade no nosso caso então nós temos um subconjunto de funcionários que são gerentes e esse subconjunto de funcionários que são gerentes podem se associar a projetos os demais funcionários que não se especializam como gerentes eles não podem se associar a projetos numa função de gerência e Aqui nós temos um exemplo de uma situação na qual nós temos as duas
situações as duas motivações ocorrendo nós especializamos funcionário porque entendemos que há subtipos que possuem atributos específicos e nós também entendemos que um desses subtipos possui um comportamento que diz respeito apenas aqueles funcionários que se enc nesse subtipo então aqui de forma mais detalhada o que está acontecendo nós temos funcionários que são assalariados ou funcionários que são horistas quando esses funcionários são assalariados eles possuem um atributo referente a salário quando esses funcionários são horistas eles atribuem eles possuem um atributo que diz respeito ao valor da hora e também sendo horistas eles têm uma associação com uma
entidade sindicato nesse nosso modelo um assalariado não se associa a um sindicato também temos aqui a restrição de disjunção indicando que um funcionário ou é assalariado ou é horista ele não pode ser as duas coisas ao mesmo tempo esse slide está nos mostrando uma versão resumida do diagrama onde nós mostramos todas as especializações que fizemos mas nós excluímos os atributos e os relacionamentos para que ficássemos com um gráfico um pouco mais simples para interpretar Ah então nós temos funcionários especializando através de uma restrição de disjunção em secretário ou técnico ou Engenheiro nós temos funcionários se
especializando como gerente e nós temos funcionários se especializando por meio de uma restrição de disjunção em assalariado ou horista vamos agora falar um pouco da do processo de generalização o processo de generalização ele é inverso a especialização então nós temos aqui um um exemplo o A Entidade carro e a entidade caminhão cada uma dessas entidades possui uma série de atributos descritivos então o carro possui a licença a identificação o a velocidade máxima o número de passageiros e o preço e o caminhão possui os atributos que o descrevem mas note aqui tanto carro quanto caminhão possuem
atributos que são iguais a ambos possuem licença ambos possuem a identificação e ambos possuem preço eles se diferenciam por conta de outros atributos o carro possui dois atributos que só diz respeito a descrição de um carro e o caminhão possui dois atributos que só diz respeito à descrição de um caminhão então para melhorar a legibilidade do nosso modelo entidade de relacionamento nós vamos generalizar de que forma neste caso Nós criamos uma super entidade um supertipo chamado veículo no qual nós colocamos todos os atributos que são comuns a carro e a caminhão então nós temos em
veículo licença identificação e preço e nós deixamos nas entidades carro e caminhão os atributos que dizem respeito a cada uma delas também temos que prestar atenção que nós precisamos especificar a restrição de disjunção essa restrição está dizendo que um veículo ou é um carro ou é um caminhão não podendo ser as duas coisas ao mesmo tempo e neste exemplo nós temos uma um conceito novo que é o conceito de restrição de sobrepos então nós podemos ter a restrição de disjunção e a restrição de sobreposição no caso da restrição de sobreposição A Entidade se especializa em
duas entidades de nível mais baixo e cada entidade individual nesse conjunto de peças pode se especializar tanto em relação a peças manufaturadas quanto em relação a peças compradas o que isso significa isso pode significar por exemplo que na nossa empresa nós usamos várias peças em diferentes projetos e nós podemos ter a mesma peça sendo manufaturada pela própria empresa em uma ocasião ou comprada de um fornecedor em outra ocasião também por ser uma uma relação de especialização e generalização temos atributos que são comuns a peças manufaturadas e compradas quais são eles a identificação e a descrição
mas cada uma delas possui atributos específicos então nós temos para peça manufaturada projeto e número do lote para peças compradas fornecedor e preço o outro conceito que nós vamos trabalhar é o conceito de agre ele é uma abstração que permite a construção de objetos a partir dos seus componentes e no modelo entidade relacionamento nós podemos usar a agregação para combinar objetos que já estão relacionados Então acho que a melhor maneira de entender o o papel da agregação é analisando um exemplo nós temos aqui um relacionamento entrevista que está estabelecido entre empresa e candidatos uma empresa
pode entrevistar vários candidatos e cada um dos candidatos pode fazer entrevistas eh várias entrevistas na empresa bom agora eu quero criar uma agregação porque eu preciso associar todo esse contexto a uma terceira entidade então Nós criamos aqui aqui uma agregação de dos componentes empresa relacionado a candidatos por meio da entrevista criamos essa agregação e ela significa ela está no papel de uma única entidade uma vez que nós temos essa entidade nós podemos relacioná-la com uma terceira entidade que é a oferta de emprego então a oferta de emprego diz respeito a uma associação entre um candidato
e a empresa na realidade essa Associação é entrevista então a oferta de emprego ela está relacionada ao conceito entrevista que por sua vez é uma relação um relacionamento entre duas entidades para que nós possamos fazer isso no modelo entidade relacionamento nós precisamos agregar este conjunto de objetos Porque nós não podemos ter um relacionamento relacionando um outro relacionamento com uma entidade como nós vimos nas aulas passadas o relacionamento ele se dá entre entidades por isso a criação dessa abstração de entidade bom com isso nós finalizamos a nossa discussão sobre o modelo entidade relacionamento nós vimos vários
objetos vários elementos do modelo entidade relacionamento e vimos Hoje essas essas extensões que nos permite modelar algumas coisas mais complexas nós vamos a partir de agora necessitar nós vamos precisar que todos tenham um completo entendimento deste modelo então sugerimos que o estudo seja aprofundado agora nos nesses slides nesse vídeo no livro texto e nos [Música] [Música] exercícios [Música] m