Buscar

Diagrama de Classes UML

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

FACULDADES DO CENTRO DO PARANÁ - UCP
	
Wagner Pizzaia Weigert 
Diagrama de Classes UML
PITANGA
2015
FACULDADES DO CENTRO DO PARANÁ - UCP
	
Wagner Pizzaia Weigert 
Diagrama de Classes UML
Trabalho apresentado à UCP- Faculdades do Centro do Paraná- UCP, no Curso de Tecnólogo em Gestão da Tecnologia da Informação. Como requisito parcial de avaliação da disciplina de Engenharia de Software.
Prof. Fabrício Barbosa Ribas
PITANGA
2015
Introdução
A engenharia de software é a ciência e a arte de com economia, em tempo útil e de forma elegante, especificar, projetar, programar e manter atualizados e corretos, programas, documentação e procedimentos operacionais para sistemas computacionais de utilidade para a humanidade.
Com esse trabalho possamos aprender sobre a Associação, Generalização, Dependência e Refinamento que algo importante a realizar o trabalho bem feito como de uma Diagrama de Classes.
Uma associação é um relacionamento estrutural que indica que os objetos de uma classe estão vinculados a objetos de outra classe. Associações são o mecanismo que permite objetos comunicarem-se entre si. Elas descrevem a conexão entre diferentes classes com a conexão entre os objetos atuais é chamada conexão do objeto. Com associação podem ter uma regra que especifica o propósito da associação e pode ser uni ou bidirecional, indicando se os dois objetos participantes do relacionamento podem mandar mensagens para o outro, ou se apenas um deles sabe sobre o outro. Cada ponta da associação também possui um valor de multiplicidade, que dita como muitos objetos neste lado da associação pode relacionar-se com o outro lado. 
Associação Normal
O tipo mais comum de associação é apenas uma conexão entre classes. É representada por uma linha sólida entre duas classes. A associação possui um nome (junto à linha que representa a associação), normalmente um verbo, mas substantivos também são permitidos. Pode-se também colocar uma seta no final da associação indicando que essa só pode ser usada para o lado onde a seta aponta. Mas associações também podem possuir dois nomes, significando um nome para cada sentido da associação.
POSSUI
CONTA CORRENTE
CLIENTE
É POSSUIDO
No exemplo acima vemos um relacionamento entre as classes Cliente e Conta Corrente se relacionam por associação.
	Associação Recursiva
É possível conectar uma classe a ela mesma através de uma associação e que ainda representa semanticamente a conexão entre dois objetos, mas os objetos conectados são da mesma classe. Uma associação deste tipo é chamada de associação recursiva.
Exemplo de uma associação recursiva.
	
Associação Qualificada
	Associações qualificadas são usadas com associações de um para vários ou vários para vários. O qualificador, identificador da associação qualificada que especifica como um determinado objeto no final da associação "n" é identificado, e pode ser visto como um tipo de chave para separar todos os objetos na associação. O identificador é desenhado como uma pequena caixa no final da associação junto à classe de onde a navegação deve ser feita.
CONTA CORRENTE
CLIENTE
COD_CONTA
CORRENTE
	Associação Exclusiva
Alguns modelos nem todas as combinações são validas, e isto que pode causar problemas que devem ser tratados. Uma Associação exclusiva é uma restrição em duas ou mais associações, ela especifica que objetos de uma classe podem participar de no máximo das associações em um dado momento.
CONTRATO
		 - - - - - - - - - - - - - - - - - EMPRESA
PESSOA
	No diagrama acima um contrato não pode se referir a uma pessoa e uma empresa ao mesmo tempo, significando que relacionamento é exclusivo a somente uma das duas classes.
	Associação Ordenada
	Este tipo de associação pode ser muito útil em casos como este: Janelas de um sistema tem que ser ordenadas na tela, as associações entre objetos podem ter uma ordem implícita. O padrão para uma associação é desordenada ou sem nenhuma ordem especifica.
	Associação de Classe
	Este tipo de associação não é conectado a nenhuma das extremidades da associação já existente, mas uma classe pode ser associada a uma outra associação.CLIENTE
				 PROCESSO
				 - - - - - - - - - -
FILA
	A associação da classe Fila com a associação das classes Cliente e Processo pode ser estendida com operações de adicionar processos na Fila.
Associação Ternária
	Ela é mostrada como uma grade losango, e ainda suporta uma associação de classe ligada a ela, traçara-se, então uma linha tracejada a partir do losango para classe, mais de duas classes podem ser associadas entre si.
	CLIENTE
CONTRATO
REGRAS CONTRATUAIS
No exemplo acima a associação ternária especifica que um cliente poderá possuir 1 ou mais contratos e cada contrato será composto de 1 ou várias regras contratuais.
A generalização é o agrupamento de objetos ou elementos com características comuns em um modelo ou sistemas, é uma descrição mais geral sobre o objeto referente. O elemento mais específico possui todas as características do elemento geral e contém ainda mais particularidades. Um objeto mais específico pode ser usado como uma instância do elemento mais geral. A generalização, também chamada de herança, permite a criação de elementos especializados em outros. A herança é um dos conceitos fundamentais da programação orientada por objetos, nos quais uma classe “ganha” todos os atributos e operações da classe que herda, podendo sobrepor ou modificar algumas delas, assim como adicionar mais atributos ou operações próprias.
Generalização Normal
A Generalização normal é representada por uma linha entre as duas classes que fazem o relacionamento, sendo que coloca-se uma seta no lado da linha onde se encontra-se a superclasse indicando a generalização. Na generalização normal a classe mais especifica, chamada de subclasse, herda tudo da classe mais geral, chamada de superclasse.
POUPANÇA
CONTA CORRENTE
	
Generalização Restrita
	Uma restrição aplicada a uma generalização especifica informações mais precisas sobre como a generalização deve ser usada e estendida no futuro. As restrições a seguir definem as generalizadas restritas com mais de uma subclasse:
Generalização de Sobreposição e Disjuntiva: Generalização de sobreposição significa que quando subclasses herdam de uma superclasse por sobreposição. A Generalização disjuntiva é exatamente o contrário da sobreposição e a generalização é utilizada como padrão.
Generalização Completa e Incompleta: Uma restrição simbolizando que uma generalização é completa significa que todas as subclasses já foram especificadas. A generalização Incompleta é exatamente o contrário da completa e é assumida como padrão da linguagem.
Uma dependência indica a ocorrência de um relacionamento semântico entre dois elementos do modelo, onde uma classe cliente é dependente de serviços de uma classe fornecedora, mas não existe uma dependência estrutural interna com esse fornecedor. Indica que uma alteração na especificação de uma classe poderá afetar outra classe que a utilize, mas não necessariamente o inverso. A forma mais comum de dependência é quando uma classe utilizar parâmetros de uma outra classe em seus métodos. 
Uma relação de dependência é simbolizada por uma linha tracejada com uma seta no final de um dos lados do relacionamento. E sobre essa linha do tipo de dependência que existe entre as duas classes. As classes Amigas provenientes do C++ são um exemplo de um relacionamento de dependência. 
				CLASSE B
CLASSE A
				 AMIGAS
Refinamento é um relacionamento entre duas descrições de uma mesma entidade, mas em níveis diferentes de abstração diferentes podem ser usados para modelar diferentes implementações de uma mesma coisa, em cada etapa do refinamento está implícito de uma série de tomadas de decisões baseadas nos critérios de concepção do sistema.
Os refinamentossão simbolizados por uma linha tracejada com um triangulo no final de um dos lados do relacionamento e são usados em modelos de coordenação. Em grandes projetos, todos os modelos que são feitos devem ser coordenados.
CLASSE DE DESIGN
CLASSE DE ANALISE
Conclusão
	Depois das leituras feitas sobre a Diagrama de Classes e sua importância que foram apresentados no decorrer do trabalho, pude concluir a importância da mesma no Associação, Generalização, Dependência e Refinamento, e também no entendimento dos conteúdos mais avançados. 
Contudo, esse trabalho foi de grande valia para ampliar meus conhecimentos na área específica.

Continue navegando