Escolar Documentos
Profissional Documentos
Cultura Documentos
lucelia.com@gmail.com
Externamente ao sistema, os atores visualizam resultados de clculos, relatrios produzidos, confirmaes de requisies solicitadas, etc. Internamente, os objetos do sistema colaboram uns com os outros para produzir os resultados esperados pelos atores. O ia!rama de "lasses apresenta como as classes intera!em entre si e qual a responsabilidade de cada classe na realiza#o das operaes solicitadas pelos atores.
DEFINIES
Classe
um grupo de objetos, sendo que cada objeto um exemplo de um determinado grupo. de Classes uma representa!"o da estrutura e rela!#es das classes que ser$em de modelo para os objetos.
Diagrama
$% "&$%%E% *O%%+E),
O I$'($)$
-ome
ser
iniciado
com
letra
$tributos
/isibilidade ou n0vel de encapsulamento -ome 1deve ser iniciado com letra min.scula2 3ipo de dados
$% "&$%%E% O *O%%+E),
I$'($)$
Operaes ou m4todos
/isibilidade ou n0vel de encapsulamento -ome 1deve ser iniciado com letra min.scula2 &ista de par5metros 1se 6ouver2 3ipo de retorno
$ssociaes entre si
-ome 1opcional2 )ultiplicidades -ave!abilidade 1opcional2
E7E)*&O 8 I$'($)$
E "&$%%E%
ATRIBUTOS
Visibilidade
ou nvel de encapsulamento
9 private 1privado2 : protected 1prote!ido2 ; public 1p.blico2 1em branco2 default 1pacote2
Nome
Tipo
de dados
%#o os mesmos tipos usados em <ava, %trin!, boolean, int, float, double, ate, etc=
OPERAES OU
!TO"OS
Nome
#ista de pa$%met$os
Tipo de $eto$no
representar o fato de que objetos podem se relacionar uns com os outros, utiliza9se a associa#o. que duas classes possuem uma li!a#o 1lin?2, si!nificando por exemplo que elas @con6ecem uma a outraA.
(epresenta
%SS&'I%(&
(epresentada atrav4s de um se!mento de reta li!ando as classes cujos objetos se relacionam.
Nome da Associa&'o
Buando usado, dever ser escrito junto C lin6a que representa a associa#o, normalmente um verbo 1n#o 4 obri!atrio2.
ultiplicidades "ada associa#o em um dia!rama de classes possui duas multiplicidades, uma em cada extremo da lin6a de associa#o. Nave(abilidade ou di$e&'o de leitu$a indica como a associa#o deve ser lida
&,ES DE -.+)I,+I'ID%DE
Nome %penas .m 2ero ou -uitos .m ou -uitos 2ero ou .m Inter$alo Espec56ico Simbologia /../ 0ou /1 0ou em branco1 3..4 0ou 41 /..4 3../ li..ls
'+%SSE %SS&'I%)I9%
uma classe que est: ligada a uma associa!"o, ao in$s de estar ligada a outras classes. normalmente necess:ria quando duas ou mais classes est"o associadas, e necess:rio manter in6orma!#es sobre esta associa!"o 0;ist<rico1.
* empregado
* empregador
%=*E=%(&
um caso especial de associa!"o e, conseq>entemente, multiplicidades, nome da associa!"o e papis, podem ser usados normalmente. para representar conex#es que guardam uma rela!"o todo-parte entre si. uma agrega!"o, um objeto est: contido no outro, ao contr:rio de uma associa!"o. se puder usar uma agrega!"o, uma associa!"o tambm poder: ser utili?ada.
.tili?ada
Em
&nde
%=*E=%(&
'aracter5sticas
particulares@ %grega!#es s"o assimtricas@ se um objeto % parte de um objeto A, A n"o pode ser parte de %.
Empresa D
3odo
atra$s de uma lin;a conectando as classes relacionadas, com um losango perto da classe que representa o todo. Exemplo@
ES,E'I%+I2%(&B=ENE*%+I2%(&
um tipo de relacionamento similar C associa!"o de mesmo nome em um Diagrama de 'asos de .so. objeti$o identi6icar classes8m"e, c;amadas gerais e classes86il;as, c;amadas especiali?adas. ser capa? de incorporar os atributos e mtodos de uma outra classe pre$iamente de6inida
Seu
Signi6ica
E7E-,+& DE ES,E'I%+I2%(&B=ENE*%+I2%(&
DI%=*%-% DE '+%SSES
Demonstra
sistema.
Na
6ase de an:lise, tendo em m"os o diagrama de casos de uso, podemos de6inir o diagrama de classes do sistema. modelo de classes e$olui durante o desen$ol$imento do sistema. medida que o sistema desen$ol$ido, o modelo de classes pode ser incrementado com no$os detal;es.
&
+m curso pode ter muitas turmas, no entanto, uma turma se relaciona exclusivamente com um .nico curso. +ma turma pode ter diversos alunos matriculados, no entanto uma matr0cula refere9se exclusivamente a uma determinada turma. "ada turma tem um n.mero m0nimo de matr0culas para iniciar o curso. +m aluno pode realizar muitas matr0culas, mas cada matr0cula refere9se exclusivamente a uma turma espec0fica e a um .nico aluno.
CATEGORIZAO BCE
A categorizao ro o!ta! or Jaco"!o# i$ %ica &'e ca(a o")eto * e! ecia%i!ta e$ rea%izar '$ (o! tr+! ti o! (e tare,a!- a !a"er.
Co$'#icar/!e co$ o! atore! 0,ro#teira1 Ma#ter a! i#,or$a2e! 0e#ti(a(e1 Coor(e#ar a rea%izao (e '$ ca!o (e '!o 0co#tro%e1
E3ERC7CIOS
D.
&uc4lia controla em Excel uma planil6a com a sua lista de compras mensal. Ela cadastra o nome do produto, a unidade de compra, a quantidade prevista para um m>s, a quantidade que efetivamente ser comprada, o preo estimado 1atualizado todo m>s2 e o valor total de cada compra.
Produto Arroz =ei)o A@car Car#e Unidade Qtd Ms 89g 9g 89g 9g : > ? > Qtd Preo Compra estimado ; > : A-8 ;<-<< ?-8< ?->< ;;-<<
m4todos
6OTAS
$ quantidade de compra pode variar em virtude de sobra de um m>s para o outro, ou da necessidade de um !asto maior no m>s. *or exemplo, um almoo em fam0lia. $s compras s#o feitas pela prpria &uc4lia. *or esse motivo, ela n#o v> necessidade de relacionar as marcas dos produtos. )ensalmente, &uc4lia analisa o quanto pa!ou por cada produto, e se ac6ar necessrio, atualiza o preo estimado de cada produto
SOLUO
E3ERC7CIOS
D.
&uc4lia n#o tem mais tempo de fazer as compras pessoalmente. *recisou detal6ar o produto, de forma a l6e permitir dele!ar essa tarefa a outra pessoa. $l4m disso, n#o quer que pa!uem um valor absurdo por al!um produto. %endo assim, incluiu em sua planil6a as colunas Fpreo mximo j compradoA e Fpreo mximo a pa!arA no m>s corrente, onde esta .ltima coluna 4 calculada a partir da coluna anterior acrescida de GH. O Fpreo mximo j compradoA 4 inserido na planil6a, a partir das compras efetivamente j realizadas
Buais s#o os atributos eIou m4todos que precisam ser inclu0dos nas classes do exerc0cio anterior para refletir o novo cenrioJ
SOLUO
Koram inseridos os atributos, preco)ax"omprado e preco)ax$*a!ar e foi exclu0do o atributo, precoEstimado, essa informa#o ser obtida a!ora por meio do atributo preco)ax"omprado
E3ERC7CIOS
D.
&uc4lia est assustada com a varia#o do preo de um supermercado para outro. 3em feito compras 1ou pedido para fazer2 em at4 tr>s supermercados diferentes. %endo assim, resolveu mel6orar sua planil6a. "riou uma se!unda planil6a que cont4m o preo mais baixo que ela encontrou num determinado m>s, indicando a que supermercado pertence.
Produto Arroz Arroz Arroz =ei)o =ei)o Ms de compra J'%Bo Ago!to J'%Bo Ago!to Valor A-<< >-C< :-;< ?-8< Supermercado 333 DDD 333 333 DDD
Sete$"ro ;<-<<
E3ERC7CIOS
;E
0Co#ti#'ao1
Buais s#o os atributos eIou m4todos que precisam ser inclu0dos nas classes do exerc0cio anterior para refletir o novo cenrioJ /erifique se 6 necessidade de criar novas classes.
COME6TFRIOS DA SOLUO
$ atributo preco)ax"omprado n#o 4 mais lanado manualmente pelo usurio. $!ora, ele 4 obtido pelo m4todo, "alcular)aior/alor1pD, *roduto2, que verifica o maior valor pa!o dentre os .ltimos meses para o produto em quest#o. "ada 6istrico de compra est associado a um supermercado e a um produto. Isso cria os relacionamentos da classe Listorico"ompra com a classe *roduto e a classe %upermercado. -a classe Listorico"ompra 4 que se armazena o valor pa!o a cada m>s, indicando em que supermercado foi feita a compra.
SOLUO
E3ERC7CIOS
D.
&uc4lia quer saber qual o supermercado apresentou mais produtos baratos, num determinado m>s.
a2
$ resolu#o dessa situa#o se d por meio da inclus#o de um m4todo. %u!ira um nome para esse m4todo, indicando sua assinatura. $ que classe pertence esse m4todoJ "omente com seus cole!as como seria o al!oritmo para a implementa#o desse m4todos
c2
e2
SOLUO
b2
d2
E3ERC7CIOS
&uc4lia deseja desconsiderar o preo de um determinado m>s para clculos de maior ou menor valor, ou ainda do supermercado mais vantajoso. Exemplos,
D. a2
%aber qual o %upermercado apresentou mais produtos baratos, num determinado m>s. %upondo que ela comprou um produto numa promo#o que ofereceu GMH de desconto, esse valor n#o pode ser par5metro para suas compras futuras. *ara calcular o preco)aximo"omprado, a aplica#o pe!a o maior valor. /amos supor que um determinado produto teve queda de preo. Isso si!nifica que os meses de preo alto n#o podem ser considerados para a prxima compra
c2
Em que classe deve ser inclu0do um atributo para resolver essa quest#o e qual o tipo desse atributoJ
SOLUO
CLASSE =I6AL