·
Informática ·
Outros
Send your question to AI and receive an answer instantly
Preview text
Usando UML para Especificação de Sistemas Orientados a Objetos Prof Rodrigo Quites Reis Usando UML para Especificação de Sistemas Orientados a Objetos 3 DIAGRAMA DE CLASSES EM UML O modelo de objetos em UML é representado através de um diagrama de classes Um diagrama de classes denota a estrutura estática de um sistema e as classes representam coisas que são manipuladas por esse sistema A notação utilizada para representar o diagrama de classes em UML é fortemente baseada na notação de Diagramas EntidadeRelacionamento CHE90 e no Modelo de Objetos de OMT RUM94 As seções a seguir apresentam resumidamente a notação utilizada nesta linguagem 31 Classes e seus relacionamentos Uma classe é representada por um retângulo sólido com três partes uma para o nome da classe outra para os atributos da classe e a terceira para a declaração das operações definidas para a classe A Figura 9 mostra a notação UML para classes Figura 9 Notação para classe em UML Os tipos principais de relacionamentos entre classes são GeneralizaçãoEspecialização Herança Indica relacionamento entre um elemento mais geral e um elemento mais específico superclasse e subclasse respectivamente A subclasse pode conter somente informação adicional acerca da superclasse Por exemplo um médico é um funcionário Agregação Usada para denotar relacionamentos todoparte Por exemplo um item de compra é parte de um pedido Associação simples Usada para representar relacionamentos entre as classes por exemplo um cliente pode alugar várias fitas de vídeo Usando UML para Especificação de Sistemas Orientados a Objetos Dependência Um relacionamento entre um elemento independente e outro dependente onde uma mudança no elemento independente afetará o elemento dependente 32 Associações Simples Uma associação descreve um conjunto de vínculos entre objetos das classes relacionadas A associação entre duas ou mais classes permite um conjunto de ligações entre os objetos das classes Os tipos de associação são Associação Unária Relacionamento entre uma classe e ela mesma Também conhecida como associação recursiva cujo relacionamento pode conectar dois diferentes objetos de uma mesma classe A Figura 10 mostra um exemplo de associação unária Figura 10 Exemplo de associação unária Associação Binária Expressa o relacionamento entre duas classes distintas A Figura 11 ilustra o exemplo de associação binária Livro Título Str ISBN Int Editora Str Livro Título Str ISBN Int Editora Str Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int autoria 0 1 Multiplicidade da associação Multiplicidade da associação Rótulo da associação Rótulo da associação Figura 11 Exemplo de associação binária Em geral toda associação deve ser rotulada tal como na associação de autoria na Figura 11 Alternativamente pode ser expresso o papel de uma classe na associação tal como Funcionário 1 supervisiona Usando UML para Especificação de Sistemas Orientados a Objetos titular na Figura 12 Conta Bancária número saldo dataAbertura criar bloquear desbloquear creditar debitar Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int 1 titular Papel da classe na associação Figura 12 Segundo exemplo de associação binária As associações têm sua semântica definida como relações entre conjuntos O exemplo da Figura 13 ilustra como que as classes Funcionário e Departamento representam conjuntos enquanto que a associação trabalha define uma relação bidirecional entre os conjuntos indicando que o Funcionário João trabalha no Departamento Financeiro e vice versa Departamento Financeiro Funcionário Departamento 0 trabalha 1 Funcionário João Funcionário João Figura 13 Mapeamento da semântica estrutural de uma associação Associação nária Associação entre três ou mais classes Neste caso a notação inclui um losango para representar a associação como mostra a figura a seguir Usando UML para Especificação de Sistemas Orientados a Objetos Figura 14 Representação de associação ternária 33 Multiplicidade Cardinalidade A cardinalidade das associações em um diagrama de classes é denominada de multiplicidade e especifica quantas instâncias de uma classe podem participar da associação semelhante à abordagem ER A tabela 1 a seguir apresenta as multiplicidades Tabela 1 Multiplicidades de associações entre classes Multiplicidade Significado 01 Zero ou um 1 Somente 1 0 Maior ou igual a zero Maior ou igual a zero 1 Maior ou igual a 1 115 mn De 1 a 15 m a n inclusive A Figura 15 mostra um exemplo de uso de multiplicidade onde a classe financeira está associada a 0 ou mais instâncias classe venda através da associação financia A classe venda está associada a um objeto da classe vendedor através da associação venda notar que o nome da associação pode ser um substantivo Usando UML para Especificação de Sistemas Orientados a Objetos Financeira código nome Financeira código nome Venda data hora Venda data hora Vendedor número nenha nívelAutorização Vendedor número nenha nívelAutorização financia 01 realizada por Figura 15 Financeira exemplo de uso de multiplicidade adaptado de HEU 99 34 Classes Associativas São classes que representam a associação entre outras classes Somente ocorrem instâncias da classe associativa quando ocorre a associação entre classes Comparando com a abordagem EntidadesRelacionamentos ER uma classe associativa equivale a uma entidade associativa ou agregação de entidades Da mesma forma quando em um diagrama ER existe a necessidade de representar atributos de relacionamentos em um diagrama de classes criase uma classe associativa A Figura 16 mostra um exemplo de classe associativa onde quando ocorre um casamento entre duas pessoas então uma classe associativa armazena a data do casamento e o regime Pessoa Nome Endereço Logradouro Bairro Cidade Sexo Pessoa Nome Endereço Logradouro Bairro Cidade Sexo marido esposa 01 01 casamento Data Regime Data Regime Data Regime Figura 16 Exemplo de classe associativa em uma associação unária A Figura 17 mostra um exemplo de associação onde é representado que quando ocorre a matrícula de um Aluno em uma Disciplina A classe associativa armazena as informações de matrícula isto é o conceito e semestre correspondentes Aluno Disciplina matriculado conceito semestre Usando UML para Especificação de Sistemas Orientados a Objetos Figura 17 Exemplo de classe associativa com associação binária A Figura 18 ilustra um exemplo de classe associativa entre Financeira e Venda complementando o diagrama apresentado anteriormente na Figura 15 Financeira código nome Financeira código nome Venda data hora Venda data hora Vendedor número nenha nívelAutorização Vendedor número nenha nívelAutorização financia 01 realizada por registroAprovação dataAprovação Financiamento Figura 18 Evolução do modelo de Financeira com classe associativa Uma classe associativa pode ser transformada em uma classe regular conforme mostra a Figura 19 a seguir A parte superior da figura mostra o modelo duas classes regulares e uma associativa enquanto que a parte inferior apresenta um modelo análogo que é composto por três classes regulares Funcionário Departamento 1 trabalha 01 salário dataContratação Funcionário Departamento 01 Emprego salário dataContratação Figura 19 Transformação de uma classe associativa em classe regular 35 Qualificador Qualificadores ou Associações Qualificadas são usadas com associações 1N ou NN O qualificador distingue divide o conjunto de objetos do outro lado da associação A figura a seguir ilustra um exemplo de qualificador O modelo informa que um prédio possui vários números de andar Um número de andar de um prédio está associado a exatamente um andar Como conseqüência um andar é identificado pelo seu número e pelo prédio Este conceito é análogo ao conceito de entidade fraca ou relacionamento identificador em modelos entidade relacionamento Usando UML para Especificação de Sistemas Orientados a Objetos Figura 20 Exemplo de uso de qualificador Outro exemplo de qualificador é apresentado na figura a seguir onde um diretório está associado a vários nomes de arquivo e cada nome de arquivo é associado a um arquivo Cada arquivo está associado a um nome de arquivo e a um diretório Figura 21 Exemplo de qualificador 36 Agregação É um caso especial de associação usado para representar a relação todoparte entre classes Quando o todo é criado as partes também o são e quando é eliminado também As partes não têm existência própria somente associadas ao todo A notação de agregação é apresentada nas figuras a seguir Figura 22 Agregação regular ou relacionamento por referência Figura 23 Agregação de composição ou relacionamento por valor Diretório Nome do arquivo Arquivo Todo Parte Agregação Regular Todo Parte Agregação de composição Usando UML para Especificação de Sistemas Orientados a Objetos A rigor a agregação deve ser utilizada prioritariamente para explicitar relações de todoparte portanto a Figura 24 mostra dois diagramas de classe que possuem exatamente o mesmo significado Documento Parágrafo Sentença 0 0 Documento Parágrafo Sentença 0 0 compostopor compostopor Figura 24 Documento parágrafo e sentença duas alternativas para modelagem de agregação Um segundo exemplo de uso de agregação em que uma Associação Esportiva é composta por várias Equipes afiliadas que por sua vez são compostas por objetos da classe Jogador Associação Esportiva Equipe Jogador 0 0 afiliada Figura 25 Exemplo de agregação Outro exemplo de agregação com notação compacta é apresentado na Figura 26 mostrando que ao invés de ligar várias linhas a um agregado basta usar o símbolo de agregação uma única vez Figura 26 Agregação de várias classes com notação compacta HEU 99 Por fim é apresentado um exemplo de composição na Figura 27 No caso a classe CPF é especialmente útil para ser descrito separadamente por fornecer o método validaCPF Usando UML para Especificação de Sistemas Orientados a Objetos Pessoa nome endereço logradouro bairro cidade cpf sexo Pessoa nome endereço logradouro bairro cidade cpf sexo Pessoa nome sexo Pessoa nome sexo logradouro bairro cidade Endereço logradouro bairro cidade Endereço composição número CPF validaCPF bool Figura 27 Uso de composição para descrever os detalhes de Pessoa 37 Navegabilidade Uma instância de uma classe pode navegar a instâncias de outra classe e viceversa Navegabilidade é percebida freqüentemente por objetos que mantêm referências de algum tipo entre objetos associados Uma seta é ligada entre duas classes para indicar o caminho de navegação entre elas Em termos de implementação isso representaria que o objeto de uma classe conteria um apontador para o objeto da outra classe A figura a seguir mostra um exemplo onde as classes Pedido e Cliente possuem uma associação onde o sentido da navegação ocorre de Pedido para Cliente Isto indica que um pedido tem a responsabilidade de informar a qual cliente pertence mas um cliente em particular não precisa indicar quais pedidos possui Figura 28 Exemplo de Navegabilidade 38 GeneralizaçãoEspecialização GeneralizaçãoEspecialização é um conceito também conhecido pelo nome de Herança Tratase de um relacionamento de classificação entre um elemento mais geral e outro mais específico O elemento mais específico é completamente consistente com o mais geral somandose informação adicional especializada Pedido Cliente 1 navegabilidade fonte alvo Usando UML para Especificação de Sistemas Orientados a Objetos As subclasses herdam atributos operações e associações da superclasse e agregam atributos e operações particulares ao elemento de especialização a que se referem A Figura 29 mostra um exemplo do uso de herança onde Pessoa física e Pessoa jurídica são especializações de Cliente As subclasses herdam todas as propriedades atributos métodos relacionamentos generalizações da classe genérica e desta forma em virtude do polimorfismo de dados não é necessário repetir a associação entre Cliente e Compra para todas as especializações de Cliente Cliente nome PessoaFísica CPF RG Sexo DataNascimento PessoaJurídica CGC RazãoSocial Compra realiza Figura 29 Exemplo de generalizaçãoespecialização 39 Restrições Uma restrição é um relacionamento semântico entre elementos de modelo que especifica condições e proposições que devem ser mantidas como verdadeiras Certos tipos de restrições são predefinidas em UML mas há a possibilidade de definição de restrições por parte do usuário Por exemplo a Figura 30 mostra uma associação onde a restrição é definida para limitar a possibilidade de associação entre Pessoa e Cidadãos idosos Figura 30 Exemplo de uso de restrição Um exemplo de restrição bastante utilizada é a restrição ou Ela indica que em uma associação uma instância da classe só pode participar uma vez no máximo de uma das associações possíveis cortadas pela linha tracejada A figura a seguir ilustra um exemplo Cidadãos Idosos Pessoa 0 1 0 pessoaidade60 Usando UML para Especificação de Sistemas Orientados a Objetos onde uma conta corrente pertence a um indivíduo ou a uma organização Conta corrente Indivíduo Organização 0 0 01 01 ou Figura 31 Uso de restrição ou 310 Estudo de Caso A figura a seguir mostra um exemplo inicial do modelo de classes para uma universidade Sugerese como exercício a complementação do modelo Figura 32 Estudo de caso de Controle Acadêmico de Universidade
Send your question to AI and receive an answer instantly
Preview text
Usando UML para Especificação de Sistemas Orientados a Objetos Prof Rodrigo Quites Reis Usando UML para Especificação de Sistemas Orientados a Objetos 3 DIAGRAMA DE CLASSES EM UML O modelo de objetos em UML é representado através de um diagrama de classes Um diagrama de classes denota a estrutura estática de um sistema e as classes representam coisas que são manipuladas por esse sistema A notação utilizada para representar o diagrama de classes em UML é fortemente baseada na notação de Diagramas EntidadeRelacionamento CHE90 e no Modelo de Objetos de OMT RUM94 As seções a seguir apresentam resumidamente a notação utilizada nesta linguagem 31 Classes e seus relacionamentos Uma classe é representada por um retângulo sólido com três partes uma para o nome da classe outra para os atributos da classe e a terceira para a declaração das operações definidas para a classe A Figura 9 mostra a notação UML para classes Figura 9 Notação para classe em UML Os tipos principais de relacionamentos entre classes são GeneralizaçãoEspecialização Herança Indica relacionamento entre um elemento mais geral e um elemento mais específico superclasse e subclasse respectivamente A subclasse pode conter somente informação adicional acerca da superclasse Por exemplo um médico é um funcionário Agregação Usada para denotar relacionamentos todoparte Por exemplo um item de compra é parte de um pedido Associação simples Usada para representar relacionamentos entre as classes por exemplo um cliente pode alugar várias fitas de vídeo Usando UML para Especificação de Sistemas Orientados a Objetos Dependência Um relacionamento entre um elemento independente e outro dependente onde uma mudança no elemento independente afetará o elemento dependente 32 Associações Simples Uma associação descreve um conjunto de vínculos entre objetos das classes relacionadas A associação entre duas ou mais classes permite um conjunto de ligações entre os objetos das classes Os tipos de associação são Associação Unária Relacionamento entre uma classe e ela mesma Também conhecida como associação recursiva cujo relacionamento pode conectar dois diferentes objetos de uma mesma classe A Figura 10 mostra um exemplo de associação unária Figura 10 Exemplo de associação unária Associação Binária Expressa o relacionamento entre duas classes distintas A Figura 11 ilustra o exemplo de associação binária Livro Título Str ISBN Int Editora Str Livro Título Str ISBN Int Editora Str Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int autoria 0 1 Multiplicidade da associação Multiplicidade da associação Rótulo da associação Rótulo da associação Figura 11 Exemplo de associação binária Em geral toda associação deve ser rotulada tal como na associação de autoria na Figura 11 Alternativamente pode ser expresso o papel de uma classe na associação tal como Funcionário 1 supervisiona Usando UML para Especificação de Sistemas Orientados a Objetos titular na Figura 12 Conta Bancária número saldo dataAbertura criar bloquear desbloquear creditar debitar Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int Pessoa Nome Str Endereço Logradouro Str Bairro Str Cidade Str Telefones Array of Int 1 titular Papel da classe na associação Figura 12 Segundo exemplo de associação binária As associações têm sua semântica definida como relações entre conjuntos O exemplo da Figura 13 ilustra como que as classes Funcionário e Departamento representam conjuntos enquanto que a associação trabalha define uma relação bidirecional entre os conjuntos indicando que o Funcionário João trabalha no Departamento Financeiro e vice versa Departamento Financeiro Funcionário Departamento 0 trabalha 1 Funcionário João Funcionário João Figura 13 Mapeamento da semântica estrutural de uma associação Associação nária Associação entre três ou mais classes Neste caso a notação inclui um losango para representar a associação como mostra a figura a seguir Usando UML para Especificação de Sistemas Orientados a Objetos Figura 14 Representação de associação ternária 33 Multiplicidade Cardinalidade A cardinalidade das associações em um diagrama de classes é denominada de multiplicidade e especifica quantas instâncias de uma classe podem participar da associação semelhante à abordagem ER A tabela 1 a seguir apresenta as multiplicidades Tabela 1 Multiplicidades de associações entre classes Multiplicidade Significado 01 Zero ou um 1 Somente 1 0 Maior ou igual a zero Maior ou igual a zero 1 Maior ou igual a 1 115 mn De 1 a 15 m a n inclusive A Figura 15 mostra um exemplo de uso de multiplicidade onde a classe financeira está associada a 0 ou mais instâncias classe venda através da associação financia A classe venda está associada a um objeto da classe vendedor através da associação venda notar que o nome da associação pode ser um substantivo Usando UML para Especificação de Sistemas Orientados a Objetos Financeira código nome Financeira código nome Venda data hora Venda data hora Vendedor número nenha nívelAutorização Vendedor número nenha nívelAutorização financia 01 realizada por Figura 15 Financeira exemplo de uso de multiplicidade adaptado de HEU 99 34 Classes Associativas São classes que representam a associação entre outras classes Somente ocorrem instâncias da classe associativa quando ocorre a associação entre classes Comparando com a abordagem EntidadesRelacionamentos ER uma classe associativa equivale a uma entidade associativa ou agregação de entidades Da mesma forma quando em um diagrama ER existe a necessidade de representar atributos de relacionamentos em um diagrama de classes criase uma classe associativa A Figura 16 mostra um exemplo de classe associativa onde quando ocorre um casamento entre duas pessoas então uma classe associativa armazena a data do casamento e o regime Pessoa Nome Endereço Logradouro Bairro Cidade Sexo Pessoa Nome Endereço Logradouro Bairro Cidade Sexo marido esposa 01 01 casamento Data Regime Data Regime Data Regime Figura 16 Exemplo de classe associativa em uma associação unária A Figura 17 mostra um exemplo de associação onde é representado que quando ocorre a matrícula de um Aluno em uma Disciplina A classe associativa armazena as informações de matrícula isto é o conceito e semestre correspondentes Aluno Disciplina matriculado conceito semestre Usando UML para Especificação de Sistemas Orientados a Objetos Figura 17 Exemplo de classe associativa com associação binária A Figura 18 ilustra um exemplo de classe associativa entre Financeira e Venda complementando o diagrama apresentado anteriormente na Figura 15 Financeira código nome Financeira código nome Venda data hora Venda data hora Vendedor número nenha nívelAutorização Vendedor número nenha nívelAutorização financia 01 realizada por registroAprovação dataAprovação Financiamento Figura 18 Evolução do modelo de Financeira com classe associativa Uma classe associativa pode ser transformada em uma classe regular conforme mostra a Figura 19 a seguir A parte superior da figura mostra o modelo duas classes regulares e uma associativa enquanto que a parte inferior apresenta um modelo análogo que é composto por três classes regulares Funcionário Departamento 1 trabalha 01 salário dataContratação Funcionário Departamento 01 Emprego salário dataContratação Figura 19 Transformação de uma classe associativa em classe regular 35 Qualificador Qualificadores ou Associações Qualificadas são usadas com associações 1N ou NN O qualificador distingue divide o conjunto de objetos do outro lado da associação A figura a seguir ilustra um exemplo de qualificador O modelo informa que um prédio possui vários números de andar Um número de andar de um prédio está associado a exatamente um andar Como conseqüência um andar é identificado pelo seu número e pelo prédio Este conceito é análogo ao conceito de entidade fraca ou relacionamento identificador em modelos entidade relacionamento Usando UML para Especificação de Sistemas Orientados a Objetos Figura 20 Exemplo de uso de qualificador Outro exemplo de qualificador é apresentado na figura a seguir onde um diretório está associado a vários nomes de arquivo e cada nome de arquivo é associado a um arquivo Cada arquivo está associado a um nome de arquivo e a um diretório Figura 21 Exemplo de qualificador 36 Agregação É um caso especial de associação usado para representar a relação todoparte entre classes Quando o todo é criado as partes também o são e quando é eliminado também As partes não têm existência própria somente associadas ao todo A notação de agregação é apresentada nas figuras a seguir Figura 22 Agregação regular ou relacionamento por referência Figura 23 Agregação de composição ou relacionamento por valor Diretório Nome do arquivo Arquivo Todo Parte Agregação Regular Todo Parte Agregação de composição Usando UML para Especificação de Sistemas Orientados a Objetos A rigor a agregação deve ser utilizada prioritariamente para explicitar relações de todoparte portanto a Figura 24 mostra dois diagramas de classe que possuem exatamente o mesmo significado Documento Parágrafo Sentença 0 0 Documento Parágrafo Sentença 0 0 compostopor compostopor Figura 24 Documento parágrafo e sentença duas alternativas para modelagem de agregação Um segundo exemplo de uso de agregação em que uma Associação Esportiva é composta por várias Equipes afiliadas que por sua vez são compostas por objetos da classe Jogador Associação Esportiva Equipe Jogador 0 0 afiliada Figura 25 Exemplo de agregação Outro exemplo de agregação com notação compacta é apresentado na Figura 26 mostrando que ao invés de ligar várias linhas a um agregado basta usar o símbolo de agregação uma única vez Figura 26 Agregação de várias classes com notação compacta HEU 99 Por fim é apresentado um exemplo de composição na Figura 27 No caso a classe CPF é especialmente útil para ser descrito separadamente por fornecer o método validaCPF Usando UML para Especificação de Sistemas Orientados a Objetos Pessoa nome endereço logradouro bairro cidade cpf sexo Pessoa nome endereço logradouro bairro cidade cpf sexo Pessoa nome sexo Pessoa nome sexo logradouro bairro cidade Endereço logradouro bairro cidade Endereço composição número CPF validaCPF bool Figura 27 Uso de composição para descrever os detalhes de Pessoa 37 Navegabilidade Uma instância de uma classe pode navegar a instâncias de outra classe e viceversa Navegabilidade é percebida freqüentemente por objetos que mantêm referências de algum tipo entre objetos associados Uma seta é ligada entre duas classes para indicar o caminho de navegação entre elas Em termos de implementação isso representaria que o objeto de uma classe conteria um apontador para o objeto da outra classe A figura a seguir mostra um exemplo onde as classes Pedido e Cliente possuem uma associação onde o sentido da navegação ocorre de Pedido para Cliente Isto indica que um pedido tem a responsabilidade de informar a qual cliente pertence mas um cliente em particular não precisa indicar quais pedidos possui Figura 28 Exemplo de Navegabilidade 38 GeneralizaçãoEspecialização GeneralizaçãoEspecialização é um conceito também conhecido pelo nome de Herança Tratase de um relacionamento de classificação entre um elemento mais geral e outro mais específico O elemento mais específico é completamente consistente com o mais geral somandose informação adicional especializada Pedido Cliente 1 navegabilidade fonte alvo Usando UML para Especificação de Sistemas Orientados a Objetos As subclasses herdam atributos operações e associações da superclasse e agregam atributos e operações particulares ao elemento de especialização a que se referem A Figura 29 mostra um exemplo do uso de herança onde Pessoa física e Pessoa jurídica são especializações de Cliente As subclasses herdam todas as propriedades atributos métodos relacionamentos generalizações da classe genérica e desta forma em virtude do polimorfismo de dados não é necessário repetir a associação entre Cliente e Compra para todas as especializações de Cliente Cliente nome PessoaFísica CPF RG Sexo DataNascimento PessoaJurídica CGC RazãoSocial Compra realiza Figura 29 Exemplo de generalizaçãoespecialização 39 Restrições Uma restrição é um relacionamento semântico entre elementos de modelo que especifica condições e proposições que devem ser mantidas como verdadeiras Certos tipos de restrições são predefinidas em UML mas há a possibilidade de definição de restrições por parte do usuário Por exemplo a Figura 30 mostra uma associação onde a restrição é definida para limitar a possibilidade de associação entre Pessoa e Cidadãos idosos Figura 30 Exemplo de uso de restrição Um exemplo de restrição bastante utilizada é a restrição ou Ela indica que em uma associação uma instância da classe só pode participar uma vez no máximo de uma das associações possíveis cortadas pela linha tracejada A figura a seguir ilustra um exemplo Cidadãos Idosos Pessoa 0 1 0 pessoaidade60 Usando UML para Especificação de Sistemas Orientados a Objetos onde uma conta corrente pertence a um indivíduo ou a uma organização Conta corrente Indivíduo Organização 0 0 01 01 ou Figura 31 Uso de restrição ou 310 Estudo de Caso A figura a seguir mostra um exemplo inicial do modelo de classes para uma universidade Sugerese como exercício a complementação do modelo Figura 32 Estudo de caso de Controle Acadêmico de Universidade