corresponde a transferencia de propriedades estruturais e de comportamento de uma classe para suas subclasses.As principais vantagens de heranca sao prover uma maior expressividade na modelagem dos dados, facilitar a reusabilidade de objetos e definir classes por refinamento, podendo fatorar especificacoes e implementacoes como na adaptacao de metodos gerais para casos particulares, redefinindo-os para estes, e simplificando a evolucao e a reusabilidade de esquemas de banco de dados.Tipos de HerancaOs dois tipos de heranca, simples e multipla, sao descritos a seguir:Heranca Simples: Na heranca simples um certo tipo pode ter apenas um supertipo, da mesma forma uma subclasse so herda diretamente de uma unica classe. Podemos classificar esta heranca em quatro subtipos: de substituicao, de inclusao, de restricao e de especializacao.Heranca Multipla: Nesta heranca um tipo pode ter supertipos e os mesmos refinamentos de heranca simples. Ha basicamente dois tipos de conflitos referentes a heranca multipla: entre o tipo e o supertipo e entre multiplos supertipos. O primeiro pode ser resolvido dando-se prioridade a definicao presente no tipo, e nao a no supertipo. Com os conflitos entre multiplos supertipos, como uma resolucao por default pode causar herancas nao desejadas, a abordagem mais segura e baseada na requisicao explicita da intervencao do usuario.Metodos e MensagensUm metodo, em relacao a um objeto, corresponde ao comportamento dos objetos, implementando uma operacao associada a uma ou mais classes, de forma similar aos codigos dos procedimentos usados em linguagens de programacao tradicionais, que manipula o objeto ou parte deste. Cada objeto tem um certo numero de operacoes para ele definida. Para cada operacao pode-se ter um ou mais metodos de implementacao associados.As mensagens sao a forma mais usada para se ativar os metodos. Num SGBDOO os objetos se comunicam e sao ativados atraves de mensagens enviadas entre eles.PolimorfismoEm sistemas polimorficos uma mesma operacao pode se comportar de diferentes formas em classes distintas. Como exemplo temos o operacao print que sera implementada de forma diferente se o objeto correspondente for um texto ou uma imagem: dependendo do objeto teremos um tipo de impressao. Tem-se tambem polimorfismo quando ocorre a passagem de diferentes tios de objetos como parametros enviados a outros objetosUm mesmo nome pode ser usado por mais de uma operacao definida sobre diferentes objetos, o que caracteriza uma sobrecarga (overloading). A redefinicao do operador para cada um dos tipos de objetos definidos caracteriza uma sobreposicao (overriding). As operacoes sao ligadas aos programas em tempo de execucao caracterizando o acoplamento tardio ou late binding.Outros conceitosFinalmente ha duas propriedades fundamentais para a construcao de um SGBDOO: extensibilidade e completude computacional. A primeira garante que o conjunto de tipos oferecidos pelo sistema permite a definicao de novos tipos e nao ha distincao entre os tipos pre-definidos e os definidos pelo usuario. A segunda implica que a linguagem de manipulacao de um banco de dados orientado a objetos pode exprimir qualquer funcao computacional.3.0 Modelagem e Projeto para BDOO sANALISE ORIENTADA A OBJETOSDiretamente derivada dos conceitos da programacao e do projeto orientado a objeto, a analise orientada a objeto e certamente a mais nova das abordagens de analise de sistemas. Baseada na