Ferramenta Case para desenvolvimento do modelo E/R Para instalar o BRModelo basta fazer o download do arquivo “brModelo.exe” em: http://www.sis4.com/brModelo/. Extrair o arquivo em uma pasta qualquer. Executar o arquivo brModelo.exe. Para criar um novo modelo conceitual vá em: Sistema > Novo (Conceitual) Entidade Relacionamento Entidade-Associativa Especialização Criar Atributo Ligar objetos Clique no botão de Entidade na barra lateral e clique na área de trabalho. Para alterar o nome da entidade, selecione-a e mude o campo “Nome” na guia da direita. Clicar no botão Criar Relação na barra lateral e depois na área de trabalho. Para alterar o nome da relação, selecione-a e mude o campo “Nome” na guia da direita. Em seguida clique no botão Ligar Objetos e ligue a relação criada as entidades desejadas. Para definir a cardinalidade de uma relação, selecione o lado da relação e modifique o campo “Cardinalidade”. ◦ (0,1) -> 1 ◦ (0,n) -> n ◦ (1,1) -> ◦ (1,n) -> relacionamento não obrigatório com cardinalidade relacionamento não obrigatório com cardinalidade relacionamento obrigatório com cardinalidade 1 relacionamento obrigatório com cardinalidade n Para criar um especialização de uma entidade, clique no botão Especialização na barra lateral. Em seguida clique na entidade que desejar criar a especialização. Depois crie a outra entidade, que será a especialização da primeira. Depois ligue as duas entidades usando o botão Ligar Objetos . composto multivalorados O modelo lógico gerado deve ser revisado, para ser corrigido segundo as regras de mapeamento E-R/Relacional, como mostrado na aula; Cadastro de jogos de uma Federação de Futebol. “Um sistema de BD para armazenar resultados de campeonatos de futebol, seus times, estádios, escalações e árbitros, etc.” Uma federação de futebol deseja elaborar um cadastro geral para os campeonatos que organiza. Um campeonato é composto de um ou mais jogos. Um jogo pertence a um único campeonato. Para cada campeonato deve-se armazenar: ◦ Nome, ano e seus jogos. Para cada time é desejado armazenar: ◦ Nome, Cidade, número de cadastro, estádio (todo time possui um estádio), os times rivais (nem todo time tem um rival), jogos (todo time participa de jogos), o número de gols que o time marcou em cada partida, os profissionais (jogadores ou técnicos) que já atuaram pelo time (todo time possui jogadores e técnicos que atuaram por ele) e os profissionais dos quais o clube possui o passe (um time não é obrigado a possuir passes). Para cada jogo, armazenar seu número, data, horário, os membro da comissão de arbitragem (cada um com sua função), estádio (todo jogo é realizado em estádio), times que jogaram (todo jogo é realizado por times) e os profissionais que participaram do jogo (em todo jogo cada time tem vários jogadores e um técnico) Para cada jogador é desejado armazenar o número de cadastro, seu nome, apelido, idade, o time ao qual o passe do jogador pertence (o jogador pode ter passe livre) e os jogos que participou (um jogador não é obrigado a participar de jogos). Ainda para o jogador, armazenar o número de gols em cada partida, o momento da partida em que gol é marcado, se o gol é contra ou a favor, o número de cartões (amarelo/vermelho) que o jogador recebeu no jogo, o número da camisa que usou no jogo e, se houve substituição, quais jogadores saíram e entraram. Para os técnicos armazenar o número de cadastro, nome, idade e especialidade. Um time é patrocinado por uma ou mais empresas em seus campeonatos. Uma empresa pode patrocinar vários times em vários campeonatos. Deve-se armazenar o nome e o CNPJ de cada empresa. Quais são as entidades envolvidas? Campeonato Time Jogo ... Uma federação de futebol deseja elaborar um cadastro geral para os campeonatos que organiza. Um campeonato é composto de um ou mais jogos. Um jogo pertence a um único campeonato. Para cada campeonato deve-se armazenar: ◦ Nome, ano e seus jogos. Uma federação de futebol deseja elaborar um cadastro geral para os campeonatos que organiza. Um campeonato é composto de um ou mais jogos. Um jogo pertence a um único campeonato. Para cada campeonato deve-se armazenar: ◦ Nome, ano e seus jogos. Para cada time é desejado armazenar: ◦ Nome, Cidade, número de cadastro, estádio (todo time possui um estádio), os times rivais (nem todo time tem um rival), jogos (todo time participa de jogos), o número de gols que o time marcou em cada partida, os profissionais (jogadores ou técnicos) que já atuaram pelo time (todo time possui jogadores e técnicos que atuaram por ele) e os profissionais dos quais o clube possui o passe (um time não é obrigado a possuir passes). Para cada time é desejado armazenar: ◦ Nome, Cidade, número de cadastro, estádio (todo time possui um estádio), os times rivais (nem todo time tem um rival), jogos (todo time participa de jogos), o número de gols que o time marcou em cada partida, os profissionais (jogadores ou técnicos) que já atuaram pelo time (todo time possui jogadores e técnicos que atuaram por ele) e os profissionais dos quais o clube possui o passe (um time não é obrigado a possuir passes). Para cada jogo, armazenar seu número, data, horário, os membro da comissão de arbitragem (cada um com sua função), estádio (todo jogo é realizado em estádio), times que jogaram (todo jogo é realizado por times) e os profissionais que participaram do jogo (em todo jogo cada time tem vários jogadores e um técnico) Para cada jogador é desejado armazenar o número de cadastro, seu nome, apelido, idade, o time ao qual o passe do jogador pertence (o jogador pode ter passe livre) e os jogos que participou (um jogador não é obrigado a participar de jogos). Para cada jogo, armazenar seu número, data, horário, os membro da comissão de arbitragem (cada um com sua função), estádio (todo jogo é realizado em estádio), times que jogaram (todo jogo é realizado por times) e os profissionais que participaram do jogo (em todo jogo cada time tem vários jogadores e um técnico) Para cada jogador é desejado armazenar o número de cadastro, seu nome, apelido, idade, o time ao qual o passe do jogador pertence (o jogador pode ter passe livre) e os jogos que participou (um jogador não é obrigado a participar de jogos). Ainda para o jogador, armazenar o número de gols em cada partida, o momento da partida em que gol é marcado, se o gol é contra ou a favor, o número de cartões (amarelo/vermelho) que o jogador recebeu no jogo, o número da camisa que usou no jogo e, se houve substituição, quais jogadores saíram e entraram. Para os técnicos armazenar o número de cadastro, nome, idade e especialidade. Um time é patrocinado por uma ou mais empresas em seus campeonatos. Uma empresa pode patrocinar vários times em vários campeonatos. Deve-se armazenar o nome e o CNPJ de cada empresa. Ainda para o jogador, armazenar o número de gols em cada partida, o momento da partida em que gol é marcado, se o gol é contra ou a favor, o número de cartões (amarelo/vermelho) que o jogador recebeu no jogo, o número da camisa que usou no jogo e, se houve substituição, quais jogadores saíram e entraram. Para os técnicos armazenar o número de cadastro, nome, idade e especialidade. Um time é patrocinado por uma ou mais empresas em seus campeonatos. Uma empresa pode patrocinar vários times em vários campeonatos. Deve-se armazenar o nome e o CNPJ de cada empresa. Quais sãos os atributos das entidades encontradas? Time: Nome, Cidade, número de cadastro, estádio... Jogo: número, data, horário, os membro da comissão de arbitragem... Uma federação de futebol deseja elaborar um cadastro geral para os campeonatos que organiza. Um campeonato é composto de um ou mais jogos. Um jogo pertence a um único campeonato. Para cada campeonato deve-se armazenar: ◦ Nome, ano e seus jogos. Uma federação de futebol deseja elaborar um cadastro geral para os campeonatos que organiza. Um campeonato é composto de um ou mais jogos. Um jogo pertence a um único campeonato. Para cada campeonato deve-se armazenar: ◦ Nome, ano e seus jogos. Para cada time é desejado armazenar: ◦ Nome, Cidade, número de cadastro, estádio (todo time possui um estádio), os times rivais (nem todo time tem um rival), jogos (todo time participa de jogos), o número de gols que o time marcou em cada partida, os profissionais (jogadores ou técnicos) que já atuaram pelo time (todo time possui jogadores e técnicos que atuaram por ele) e os profissionais dos quais o clube possui o passe (um time não é obrigado a possuir passes). Para cada time é desejado armazenar: ◦ Nome, Cidade, número de cadastro, estádio (todo time possui um estádio), os times rivais (nem todo time tem um rival), jogos (todo time participa de jogos), o número de gols que o time marcou em cada partida, os profissionais (jogadores ou técnicos) que já atuaram pelo time (todo time possui jogadores e técnicos que atuaram por ele) e os profissionais dos quais o clube possui o passe (um time não é obrigado a possuir passes). Para cada jogo, armazenar seu número, data, horário, os membro da comissão de arbitragem (cada um com sua função), estádio (todo jogo é realizado em estádio), times que jogaram (todo jogo é realizado por times) e os profissionais que participaram do jogo (em todo jogo cada time tem vários jogadores e um técnico) Para cada jogador é desejado armazenar o número de cadastro, seu nome, apelido, idade, o time ao qual o passe do jogador pertence (o jogador pode ter passe livre) e os jogos que participou (um jogador não é obrigado a participar de jogos). Para cada jogo, armazenar seu número, data, horário, os membro da comissão de arbitragem (cada um com sua função), estádio (todo jogo é realizado em estádio), times que jogaram (todo jogo é realizado por times) e os profissionais que participaram do jogo (em todo jogo cada time tem vários jogadores e um técnico) Para cada jogador é desejado armazenar o número de cadastro, seu nome, apelido, idade, o time ao qual o passe do jogador pertence (o jogador pode ter passe livre) e os jogos que participou (um jogador não é obrigado a participar de jogos). Ainda para o jogador, armazenar o número de gols em cada partida, o momento da partida em que gol é marcado, se o gol é contra ou a favor, o número de cartões (amarelo/vermelho) que o jogador recebeu no jogo, o número da camisa que usou no jogo e, se houve substituição, quais jogadores saíram e entraram. Para os técnicos armazenar o número de cadastro, nome, idade e especialidade. Um time é patrocinado por uma ou mais empresas em seus campeonatos. Uma empresa pode patrocinar vários times em vários campeonatos. Deve-se armazenar o nome e o CNPJ de cada empresa. Ainda para o jogador, armazenar o número de gols em cada partida, o momento da partida em que gol é marcado, se o gol é contra ou a favor, o número de cartões (amarelo/vermelho) que o jogador recebeu no jogo, o número da camisa que usou no jogo e, se houve substituição, quais jogadores saíram e entraram. Para os técnicos armazenar o número de cadastro, nome, idade e especialidade. Um time é patrocinado por uma ou mais empresas em seus campeonatos. Uma empresa pode patrocinar vários times em vários campeonatos. Deve-se armazenar o nome e o CNPJ de cada empresa. Existe relacionamento entre algumas entidades encontradas? De que tipo? Campeonato -TEM- Jogo 1 para N obrigatório (não existe campeonato sem jogo) .... Uma federação de futebol deseja elaborar um cadastro geral para os campeonatos que organiza. Um campeonato é composto de um ou mais jogos. Um jogo pertence a um único campeonato. Para cada campeonato deve-se armazenar: ◦ Nome, ano e seus jogos. Uma federação de futebol deseja elaborar um cadastro geral para os campeonatos que organiza. Um campeonato é composto de um ou mais jogos. Um jogo pertence a um único campeonato. Para cada campeonato deve-se armazenar: ◦ Nome, ano e seus jogos. Para cada time é desejado armazenar: ◦ Nome, Cidade, número de cadastro, estádio (todo time possui um estádio), os times rivais (nem todo time tem um rival), jogos (todo time participa de jogos), o número de gols que o time marcou em cada partida, os profissionais (jogadores ou técnicos) que já atuaram pelo time (todo time possui jogadores e técnicos que atuaram por ele) e os profissionais dos quais o clube possui o passe (um time não é obrigado a possuir passes). Para cada time é desejado armazenar: ◦ Nome, Cidade, número de cadastro, estádio (todo time possui um estádio), os times rivais (nem todo time tem um rival), jogos (todo time participa de jogos), o número de gols que o time marcou em cada partida, os profissionais (jogadores ou técnicos) que já atuaram pelo time (todo time possui jogadores e técnicos que atuaram por ele) e os profissionais dos quais o clube possui o passe (um time não é obrigado a possuir passes). Para cada jogo, armazenar seu número, data, horário, os membro da comissão de arbitragem (cada um com sua função), estádio (todo jogo é realizado em estádio), times que jogaram (todo jogo é realizado por times) e os profissionais que participaram do jogo (em todo jogo cada time tem vários jogadores e um técnico) Para cada jogador é desejado armazenar o número de cadastro, seu nome, apelido, idade, o time ao qual o passe do jogador pertence (o jogador pode ter passe livre) e os jogos que participou (um jogador não é obrigado a participar de jogos). Para cada jogo, armazenar seu número, data, horário, os membro da comissão de arbitragem (cada um com sua função), estádio (todo jogo é realizado em estádio), times que jogaram (todo jogo é realizado por times) e os profissionais que participaram do jogo (em todo jogo cada time tem vários jogadores e um técnico) Para cada jogador é desejado armazenar o número de cadastro, seu nome, apelido, idade, o time ao qual o passe do jogador pertence (o jogador pode ter passe livre) e os jogos que participou (um jogador não é obrigado a participar de jogos). Ainda para o jogador, armazenar o número de gols em cada partida, o momento da partida em que gol é marcado, se o gol é contra ou a favor, o número de cartões (amarelo/vermelho) que o jogador recebeu no jogo, o número da camisa que usou no jogo e, se houve substituição, quais jogadores saíram e entraram. Para os técnicos armazenar o número de cadastro, nome, idade e especialidade. Um time é patrocinado por uma ou mais empresas em seus campeonatos. Uma empresa pode patrocinar vários times em vários campeonatos. Deve-se armazenar o nome e o CNPJ de cada empresa. Ainda para o jogador, armazenar o número de gols em cada partida, o momento da partida em que gol é marcado, se o gol é contra ou a favor, o número de cartões (amarelo/vermelho) que o jogador recebeu no jogo, o número da camisa que usou no jogo e, se houve substituição, quais jogadores saíram e entraram. Para os técnicos armazenar o número de cadastro, nome, idade e especialidade. Um time é patrocinado por uma ou mais empresas em seus campeonatos. Uma empresa pode patrocinar vários times em vários campeonatos. Deve-se armazenar o nome e o CNPJ de cada empresa. Modele o mini-mundo proposto utilizando o brModelo. Gere o modelo lógico. Obs: Todas as atividades devem ser corrigidas segundo as regras de mapeamento E-R/Relacional, como mostrado na aula.