Baixe no formato PDF, TXT ou leia online no Scribd
Fazer download em pdf ou txt
Você está na página 1de 5
Fernando Amaral
Home/ Busca/ ndice Geral/ Mais Lidos/ Sobre/ Contato/
UML: Diagrama de Classes e Objetos Nesta segunda parte da srie sobre UML, falarei um pouco sobre diagramas de classes e de objetos. Os diagramas mostrados aqui foram criados no Microsoft Visio. Uma classe representada por um retngulo. Internamente deve constar seu nome, em negrito com primeira letra em maiscula, geralmente um substantivo. Uma classe possui atributos, que so exibidos em sesso inferior ao nome da classe:
Atributos e operadores possuem uma visibilidade, que pode ser:
~: de pacote: significa que as classes de um pacote podem ser usadas +: publico #: protegido -: Privado
Atributos tm um tipo de dado e podem ainda apresentar um valor padro, note que na classe abaixo, o atributo Nome do tipo String o valor padro, representado pelo smbolo de igual, Fernando:
As operaes so representadas em uma terceira sesso do retngulo, abaixo dos atributos. No diagrama abaixo temos as operaes Andar e Dormir: Operadores podem ter direo: in, out, inout. isQuery: indica que a operao no altera o valor de nenhum atributo. Um operador pode ter uma pr-condio, por exemplo, ser verdadeiro antes da execuo. As operaes podem ainda demonstrar sua assinatura, que so os parmetros que so passados para a operao, bem como seus tipos e possveis tipos de dados de valores de retorno. Na classe abaixo, a operao andar recebe como parmetros um tipo direo, e retorna um valor booleano:
Page 1 of 5 Fernando Amaral, PMP - UML:Diagramas de Classes
7/4/2013 http://www.fernandoamaral.com.br/Default.aspx?Artigo=40 Um artifcio no muito utilizado adicionar uma quarta sesso ao diagrama contendo a responsabilidade da classe, ou seja, o que ela deve fazer: Tambm se podem colocar restries para a classe, que normalmente so indicadas entre chaves, na lateral da classe, e utilizam expresses booleanas comuns.
Nveis de abstrao para exibio A classe pode ser exibida em diferentes nveis de abstrao, conforme a finalidade do diagrama.
Em nvel de domnio so exibidos apenas os nomes das classes e seus relacionamentos
Em nvel de analise so exibidos os nomes das classes e seus atributos
Finalmente, em nvel de design, so exibidos o nome da classe, atributos e operaes.
Page 2 of 5 Fernando Amaral, PMP - UML:Diagramas de Classes
Generalizao Generalizao o conceito de herana. Uma classe mais genrica herdada por uma classe mais especifica. No exemplo abaixo, veiculo uma classe genrica. nibus, caminho e utilitrio so classes mais especificas que herdam veculos.
Classes abstratas No exemplo anterior, veiculo pode ser instanciado, j que no uma classe abstrata. Classes abstratas no podem ser instanciadas, elas tm caractersticas e funcionalidades que sero herdadas por outras classes. No exemplo abaixo televisor uma classe abstrata. Uma classe abstrata pode ter mtodos concretos ou abstratos. Mtodos abstratos no so implementados na classe abstrata, dependem de implementao na classe que a herdar. Uma classe abstrata identificada com seu nome em itlico.
Associaes Associaes entre classes normalmente so binrias, envolvendo duas classes:
Pode haver associaes entre trs ou mais classes.
Normalmente a associao bidirecional, mas pode tambm ter uma nica direo, a ser indicado atravs de uma seta na associao: Page 3 of 5 Fernando Amaral, PMP - UML:Diagramas de Classes 7/4/2013 http://www.fernandoamaral.com.br/Default.aspx?Artigo=40 Associaes podem ter uma funo, que descrito sobre a associao: Classe de Associao Uma classe de associao contem informaes de relacionamento entre outras classes. Graficamente fica situada na associao entre as duas classes relacionadas, conectada atravs de uma linha pontilhada.
Pode existir ainda uma classe de associao n-ria, relacionamento diversas classes.
Dependncias Conceitualmente a dependncia ocorre quando no possvel existir a classe A sem que a classe B j exista. A dependncia representada por uma seta pontilhada Um exemplo clssico a dependncia de um item de um pedido com o prprio pedido. Multiplicidade Uma associao pode demonstrar ainda sua multiplicidade, o que indica quantas classes pode estar relacionado. A multiplicidade pode ser representada das seguintes formas: Um valor fixo, como 1 Um asterisco, que representa um ou muitos Um intervalo, como 1..10 Um conjunto de valores, como [1,2,4,5] Agregaes um tipo de relacionamento onde uma classe formada por diversas outras classes, representado por uma figura na forma de um diamante Composio outro tipo de agregao, em que a relao mais forte. Assim como na agregao, as diferentes classes representam o todo, porm neste caso uma classe sozinha no pode existir. representado por uma figura na forma de um diamante preenchido. Page 4 of 5 Fernando Amaral, PMP - UML:Diagramas de Classes 7/4/2013 http://www.fernandoamaral.com.br/Default.aspx?Artigo=40
Interfaces As interfaces so apenas modelos de comportamentos, no podendo ser instanciadas. Oferecem servios a outras classes. Todos os mtodos so pblicos.
Diagrama de Objetos Um diagrama de objeto representa uma instancia de uma classe especifica. Graficamente falando, representado pelo nome da classe seguidos de dois pontos e o nome do objeto, ambos sublinhados. Opcionalmente o nome da classe pode ser omitido. ltimos artigos relacionados: O Analista de Negcios e o BABOK Vamos desenvolver Jogos? Mais um Artigo Sobre como Elaborar um Currculo? Motivao: Maslow e a pirmide das necessidades Vem a a WEB 3.0 Fernando Amaral, PMP - Porto Alegre - RS Copyright 2008 Page 5 of 5 Fernando Amaral, PMP - UML:Diagramas de Classes 7/4/2013 http://www.fernandoamaral.com.br/Default.aspx?Artigo=40