O QUE S�O OS DIAGRAMAS DE CLASSEEste artigo orienta o estudante na elabora��o de um diagrama de classe, procurando estabelecer, de forma sint�tica, os principais pontos para a abstra��o dos objetos e classes de um cen�rio espec�fico. Neste sentido, descreve-se sequencialmente, os sucessivos componentes para a constru��o de um diagrama de classe completo. Show
Curso completo: Curso completo de UML Em programa��o, um diagrama de classes � uma representa��o da estrutura e rela��es das classes que servem de modelo para objetos. Podemos afirmar de maneira mais simples que seria um conjunto de objetos com as mesmas caracter�sticas, assim saberemos identificar objetos e agrup�-los, de forma a encontrar suas respectivas classes. Na Unified Modeling Language (UML) em diagrama de classe, uma classe � representada por um ret�ngulo com tr�s divis�es, s�o elas: O nome da classe, seus atributos e por fim os m�todos. Vejam abaixo na Figura 1 sua representa��o: Figura 1. Classe Clientes Porque � t�o importante encontramos as classes para o desenvolvimento de um sistema? � simples, pois cada classe do diagrama representa uma tabela do banco de dados, por esse motivo � t�o importante encontrarmos. Observe tamb�m que para identificarmos uma classe, precisamos antes identificar seus objetos com caracter�sticas semelhantes. Importante: Eu sobrevivo sem UML? Ao analisarmos um cen�rio, poderemos identificar in�meros objetos, contudo nem todo objeto ser� �til para nosso diagrama de classe, essa classifica��o dos objetos que usaremos � chamado de Abstra��o. Abstra��o � a forma de concentrarmos apenas nos aspectos essenciais do nosso cen�rio. Para o desenvolvimento do nosso diagrama de classe, precisaremos de um cen�rio qualquer onde realizaremos um passo a passo at� abstrairmos todas as classes, a partir deste ponto, poderemos efetuar as liga��es e cardinalidade. DESAFIOS DE QUEM TRABALHA COM DESENVOLVIMENTOVoc� trabalha para uma empresa de desenvolvimento como Analista de Sistemas. O respons�vel pelo setor que voc� trabalha, em uma reuni�o, distribuiu tarefas para cada membro da equipe. Sua tarefa foi desenvolver um diagrama de classe para que seja iniciado o desenvolvimento de um novo software. A empresa que nos contratou, deseja adquirir o certificado ISO 9001 em qualidade, entretanto uma das normas repassadas foi que, deve ser obrigat�rio controlar os pedidos de suporte/servi�o que s�o feitos pelos clientes. O ramo da empresa � Service Desk [1] o fluxo do processo segue abaixo: O cliente entra em contato com a central atrav�s do telefone; Um atendente tem um prazo curto para registrar esta solicita��o, informando os dados do cliente, o que foi solicitado, o n�vel de urg�ncia, o grupo de atendimento, o t�cnico, um ou mais equipamentos envolvidos na manuten��o. Anotar toda a intera��o realizada no equipamento, como por exemplo: Se ele conectar remotamente ao equipamento, deve informar em um hist�rico e suponhamos que 3 segundos depois ele reinicie o equipamento, dever� informar no hist�rico tamb�m. Resumindo: Toda intera��o deve ser anotada no registro com data e hora. Caso ele consiga resolver o que foi solicitado, o t�cnico do Service Desk ir� salvar o registro com a situa��o de �Resolvido� encerrando o caso, contudo dever� em um local espec�fico do registro definir como ele resolveu o caso, informando que se tratava de um Incidente [2], Problema [3] ou Solicita��o [4]. O registro deve ser categorizado, escolhendo dentre tr�s classifica��es: Categoria >> Sub Categoria >> Item da categoria, onde a categoria � uma lista de tipo de servi�o, como por exemplo: Se foi Hardware ou Software. A Sub Categoria est� relacionada com a categoria, pois dependendo do que foi escolhido na primeira lista ser� mostrada na segunda que ser� uma Sub Categoria, como por exemplo: No caso da escolha de Hardware, seria informado na subcategoria algum tipo de pe�a do equipamento que o t�cnico interagiu, tipo DVD/R, no caso de Categoria ser Software a sub categoria deveria ser qual software, tipo: Word, Excel e etc...E no item da categoria deveria ser escolhido o que foi realizado pelo t�cnico, no caso de Hardware >> DVD/R, poderia ser SUBSTITU�DO, LIMPADO..etc. No caso de Software >> Word >> INSTALADO,DESINSTALADO etc... [1] O Service Desk � uma Central de Servi�os de atendimento integrado em Tecnologia da Informa��o, baseado na ITIL, que presta assessoria, gest�o e integra��o de recursos e ferramentas, para atendimento interno (staff) ou externo (clientes direto e indiretos). [2]Parada repentina ou redu��o da qualidade do servi�o. [3]V�rios incidentes j� ocorridos sem solu��o. [4]Pedido de servi�o. Caso o t�cnico do Service Desk n�o consiga resolver no seu prazo que ser� o mais curto, dever� enviar o registro para outro grupo de atendimento onde existir�o outros t�cnicos que poder�o ir at� o equipamento fisicamente para resolver o problema com um prazo mais extenso. Um grupo � composto por v�rios t�cnicos, no registro deve constar o grupo que atendeu e o t�cnico, pois cada registro conta como receita em reais para o grupo sendo apurado ao efetuar fechamento mensal. O pagamento para os grupos de atendimento � feito por quantidade de registros atendidos no prazo estipulado. Se mesmo o grupo de atendimento f�sico tenta entrar em contato com o cliente, mas n�o o obtiver sucesso, o t�cnico poder� deixar o registro agendado, para realizar esta tarefa deve ser informado no registro � data e hora que ser� retornado o atendimento do chamado e definir a situa��o do registro para �Pendente pelo cliente�, definir tamb�m a data e hora para o pr�ximo contato. Esta situa��o de pend�ncia significa que o t�cnico n�o est� atendendo por culpa do cliente e o tempo em que o registro fica nesta situa��o ser� debitado ao final do apuramento, a fim de beneficiar o grupo que o atende, pois cada grupo tem um tempo para atender os registros e se ultrapassar este prazo recebe multa em cima do valor do chamado. Ao final caso o pedido tenha sido designado para outro grupo, ou esteja em andamento, pendente, cancelado ou resolvido, deve-se informar em um campo espec�fico o que foi feito neste registro resumidamente. Se a situa��o do registro estiver definida como �Resolvido�, uma pesquisa de satisfa��o dever� ser enviada para o solicitante. IDENTIFICAR OS OBJETOS TANG�VEISPara identificarmos um objeto, precisamos antes entender como v�-los, para isso, basta ter como regra que: O objeto � algo tang�vel, que podemos perceb�-lo a nossa frente, sendo poss�vel encontr�-lo no mundo real ou virtual. Exemplos de objetos que podemos perceber ao ir a uma lanchonete: Mesa, Cadeira, Atendente, Lanche, Bebida e etc. Vamos tentar encontrar os objetos do nosso cen�rio, observe o primeiro item abaixo: O cliente entra em contato com a central atrav�s do telefone; Nesta frase acima, podemos identificar como objetos:
Cliente � considerado um objeto, pois � tang�vel e existem v�rios outros iguais a ele com as mesmas caracter�sticas, assim como o telefone.
O �nico item acima que gera d�vida se � ou n�o um objeto, seria hist�rico, pois n�o � normal vermos este objeto, entretanto ele existe, veja o exemplo deste objeto no mundo real: Na escola existe o hist�rico escolar ou na cl�nica existe hist�rico m�dico e etc. No terceiro item do cen�rio identificamos:
Observe que estes objetos acima s�o dif�ceis de identificarmos no mundo real, mas preste aten��o no cen�rio de uma locadora de DVD veja que as placas com o g�nero dos filmes s�o categorias, aquelas placas s�o objetos tang�veis representando categorias que j� seria sua classe m�e. Os itens quatro e cinco do cen�rio est�o apenas explicando o processo, n�o identificamos nenhum objeto novo. No sexto e ultimo item do cen�rio identificamos os seguintes objetos:
IDENTIFICAR OS OBJETOS POR SEUS ATRIBUTOSAp�s identificarmos os objetos que estavam vis�veis no cen�rio, agora teremos que encontr�-los atrav�s de seus atributos, onde os atributos s�o caracter�sticas do objeto, suponhamos que no cen�rio acima, foi falado sobre algum objeto, contudo n�o foi pronunciado seu nome, dificultando assim sua localiza��o. Para encontrarmos teremos que identificar atributos ou caracter�sticas, como por exemplo: se no cen�rio dado acima, tiv�ssemos o atributo CPF, poder�amos identificar que esta caracter�stica pertence ao cliente, identificando assim o objeto Cliente sem que seu nome houvesse sido pronunciado no cen�rio. Voc� deve repassar todo cen�rio novamente em busca destas caracter�sticas sem objetos, abaixo segue alguns que identifiquei:
Observe que os atributos Data, Hora, Situa��o, Tipo de Servi�o e Prazo s�o referente ao pedido, sendo assim, para identificarmos novas classes a partir desses atributos, teremos que realizar a seguinte pergunta para cada um deles: �Eu preciso uma lista de: Atributo ? �, onde no lugar de Atributo voc� substitui por atributos acima. Veja os testes abaixo:
As perguntas com resposta Sim, ser�o novas classes, segue abaixo as novas classes encontradas:
LISTA COMPLETA COM TODOS OS OBJETOS ENCONTRADOSListaremos abaixo para facilitar nossa visualiza��o, todos os objetos encontrados ap�s nossa abstra��o:
AGRUPAR OS OBJETOS POR SEMELHAN�ANosso pr�ximo passo � agrupar todos os objetos encontrados por caracter�sticas semelhantes, como por exemplo: Mesa e Cadeira t�m as mesmas caracter�sticas, sendo classificadas como M�veis. Assim devemos trabalhar os itens acima:
Veja que alguns dos objetos acima n�o foram classificados, devido a n�o necessidade de tal processo, pois j� est� em sua classifica��o correta, devemos apenas usar o plural, pois normalmente uma classe est� no plural devido sua origem em agrupas v�rios objetos. ELIMINAR CLASSES DESNECESS�RIAS OU REPETIDASObserve no item anterior que muitas classes s�o do mesmo g�nero, fazendo com que esteja repetida no diagrama e se uma classe se repete no banco de dadosser� uma tabela criada sem prop�sito nenhum. Para eliminar, vejamos primeiro as classes que agrupamos por semelhan�a: Observe que Pedido e Solicita��o no cen�rio fez refer�ncia a uma mesa coisa, assim podem ent�o eliminar uma das duas, eu eliminei a solicita��o. Veja que Telefone � um item de equipamentos, sendo assim podemos tamb�m elimin�-la: Abaixo a nova lista de classes:
MONTANDO O DIAGRAMA DE CLASSEPara iniciarmos os primeiros passos de nosso diagrama de classe, desenhe em uma folha de papel um ret�ngulo com tr�s divis�es para cada classe. Veja abaixo na Figura 2, como deve ficar: Figura 2. Diagrama de classe sem liga��es e cardinalidadeREALIZANDO AS PRIMEIRAS LIGA��ESPara efetuarmos a primeira liga��o, faremos com os objetos que agrupamos por caracter�sticas semelhantes, como por exemplo: Clientes, Atendentes e T�cnicos se relacionam com pessoas, segue abaixo as liga��es: Figura 3. Parte do diagrama de classe envolvendo pessoasFigura 4. Parte do diagrama de classe envolvendo documentosEFETUANDO AS LIGA��ES ENTRE AS CLASSESEste ponto � trabalho, pois devemos testar classe por classe em busca de liga��es, veja abaixo como realizar esta tarefa: Sabemos que o cliente entra em contato com o atendente que gera um pedido. Com esta informa��o observamos que um pedido foi gerado da intera��o entre cliente e atendente, onde um cliente pode solicitar v�rios pedidos para um atendente e um atendente atende a v�rios clientes. Sua cardinalidade ser� N para N, onde N quer dizer muitos, sendo: Muitos para Muitos, quando ocorre esse tipo de cardinalidade nasce uma nova tabela ou classe, entre esses dois foi a classe pedidos, que j� hav�amos identificado antes. O importante sobre a N para N � que a classe que nasceu recebe os c�digos da classe que o fez rela��o, ficando a classe �Pedido� com o c�digo do cliente e o c�digo da atendente. Sabemos tamb�m que esse pedido ser� repassado para um t�cnico que o atender�, sendo assim um t�cnico pode atender a v�rios pedidos e um pedido pode ser atendido por um t�cnico, sendo representado por 1-N, lembrando que a classe que recebe o N herda o campo chave da outra classe como chave estrangeira, sendo assim ficar� a tabela de pedidos com mais um campo chamado: c�digo do t�cnico. Fa�a o processo para todas as classes, use sempre a pergunta dessa forma:
Resposta: V�rias, pois ao abrir est� em andamento, em outro ponto do tempo pode ficar pendente e ser conclu�da ao final do servi�o. DIAGRAMA DE CLASSE COMPLETOFigura 5. Diagrama de classe completo CEN�RIO PARA EXERCITARMOSVoc� trabalha para uma empresa corporativa, seu cargo � Analista de Sistemas. O respons�vel pelo setor Ativos [5] lhe enviou um email solicitando o desenvolvimento de um software para resolver um problema que o setor tem constantemente enfrentado com as auditorias internas, esta medida � de suma import�ncia e o desenvolvimento deve ser realizado o mais breve poss�vel antes que auditoria externa fa�a a pr�xima visita. Sua tarefa foi desenvolver um diagrama de classe para que seja iniciado o desenvolvimento deste novo software. [5]Em contabilidade,Ativo� um termo b�sico utilizado para expressar o conjunto de bens, valores, cr�ditos, direitos e assemelhados que forma o patrim�nio de uma pessoa, singular ou coletiva, num determinado momento, avaliado pelos respectivos custos. Abaixo segue o cen�rio informado pelo respons�vel do projeto: A empresa que nos contratou, deseja adquirir o certificado ISO 9001 em qualidade, entretanto um dos itens de verifica��o � o registro de movimenta��o dos ativos. Segue abaixo o que foi explicado pelo respons�vel: O cliente entra em contato com a central atrav�s do telefone solicitando v�rios tipos de servi�o para a TIC[6], alguns deles s�o: remanejamento/instala��o/aliena��o [7] de Ativos (computadores, monitores, impressoras e etc.); [6]Tecnologias da Informa��o e Comunica��o- sigla para designar a inform�tica e sua potencializa��o com os recursos de comunica��o [7]Perda de algum bem material, f�sico, mental, emocional, cultural, social, pol�tico e/ou econ�mico. Quando um equipamento � instalado ou movido, seu hist�rico de movimenta��o deve ser registrado e em um software central, tamb�m deve ser poss�vel saber exatamente sua localiza��o. A localiza��o do equipamento � dividida por �cidade, im�vel, andar e sala�, por exemplo: Suponhamos que a empresa tenha filiais em cidades distintas sendo que em cada cidade existem outros im�veis desta mesma filial, sendo estes im�veis divididos por andares e cada andar pode ter v�rias salas separadas. No cadastro do Ativo deve ser informada esta localiza��o detalhadamente, a ponto do auditor ao verific�-lo saiba exatamente a localiza��o do equipamento. Quem envia as solicita��es de movimenta��o s�o os t�cnicos da TIC, tendo em vista que s�o eles que fazem esta instala��o ou movimenta��o do Ativo. Um usu�rio que n�o seja da TIC, � proibido de tomar esta a��o. Ao enviar a solicita��o ele deve informar a etiqueta do ativo e a localiza��o de destino para o setor de Ativos, assim atrav�s desta solicita��o que ficar� com situa��o de pendente at� que seja movida pelo funcion�rio do setor de Ativos � poss�vel alterar o cadastro do Ativo para a nova localiza��o. O funcion�rio do setor de Ativo deve de posse da movimenta��o enviada para mover o ativo, acessar o cadastro do ativo e alterar sua localiza��o de acordo com o solicitado e tamb�m alterar a situa��o da solicita��o do t�cnico da TIC para a nova situa��o: MOVIDA. O hist�rico destas solicita��es deve ser classificado por etiqueta do ativo e pelo t�cnico da TIC que o fez, a fim de posteriores confer�ncias. Neste artigo conferimos as orienta��es b�sicas na elabora��o de um diagrama de classe, onde o ponto chave foi a usar o processo de abstra��o com aliado na busca dos objetos espalhando em um contexto do cen�rio. Vimos ainda como classificar as classes eliminar duplicidades, identificar por atributos e etc. A dica passada aqui � como identificar os objetos em um cen�rio a fim de projetar um diagrama de classe sem falhas. Interessante dizer que crian�as identificam objetos mais facilmente do que os adultos, pois o processo nos cega, deixando alguns objetos invis�veis. Lembre-se de aplicar os passos: Identificar Objetos, Classific�-los e eliminar duplicidade, feito isso, voc� ter� o mais complicado que s�o as classes, depois com ajuda de um bom livro de an�lise ou um professor, realizar as cardinalidade n�o ser� problema algum. Refer�ncias
Links �teis
Saiba mais sobre Orienta��o a objetos ;)
Confira outros conte�dos:Plano PRO
Por Douglas Em 2016 Quais informações podemos tirar de um bloco diagrama?A representação através de um bloco-diagrama
Com o uso do bloco diagrama é possível visualizar fenômenos que ocorrem na parte interna do planeta em determinada porção do espaço, como a movimentação das placas tectônicas e o vulcanismo.
Quais informações sobre a estrutura representada Podemos extrair desse bloco diagrama resposta?Resposta verificada por especialistas
As informações sobre a estrutura que podemos extrair desse bloco diagrama são: presença de duas placas tectônicas continentais (Placas Indo-Australiana e Placa Eurasiana) e trata-se de uma região onde a formação do relevo ainda está acontecendo, denominado dobramento moderno.
O que pode ser representado no bloco diagrama?O bloco-diagrama permite representar, além da altura e da largura, a profundidade do trecho retratado.
O que e um bloco diagrama?DIAGRAMA DE BLOCO é um modelo padronizado e eficaz de representar as diversas direções que um algoritmo em seus passos lógicos pode tomar. Em suma, é uma forma visual de representar a sequência lógica subsequente de um determinando processamento.
|