{"id":6798,"date":"2022-02-18T10:59:24","date_gmt":"2022-02-18T10:59:24","guid":{"rendered":"https:\/\/www.cybermedian.com\/pt\/?p=6798"},"modified":"2022-04-01T14:18:50","modified_gmt":"2022-04-01T06:18:50","slug":"use-case-analysis-tutorial","status":"publish","type":"post","link":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/","title":{"rendered":"Tutorial de an\u00e1lise de caso de uso"},"content":{"rendered":"<h2><span id=\"What_is_a_Use_Case_Diagram\">O que \u00e9 um diagrama de caso de uso?<\/span><\/h2>\n<p><a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-use-case-diagram\/\">Os diagramas de casos de uso<\/a>\u00a0UML\u00a0s\u00e3o a principal forma de requisitos de sistema\/software para novos programas de software em desenvolvimento.\u00a0O prop\u00f3sito de um diagrama de caso de uso \u00e9 visualizar o que o sistema deve fazer (o qu\u00ea);\u00a0nesta fase, n\u00e3o considera como (como) faz\u00ea-lo.<\/p>\n<p>Uma vez que um caso de uso \u00e9 especificado, ele pode ser representado em uma representa\u00e7\u00e3o textual e visual (ou seja, um diagrama de caso).\u00a0Um conceito chave da modelagem de casos de uso \u00e9 que ela nos ajuda a projetar o sistema da perspectiva do usu\u00e1rio final.\u00a0\u00c9 uma t\u00e9cnica eficaz para comunicar o comportamento do sistema em termos do usu\u00e1rio, especificando todos os comportamentos do sistema vis\u00edveis externamente.<\/p>\n<p>Em outras palavras, o uso do sistema deve ser visto de fora, ou seja, o sistema n\u00e3o deve ser visto de dentro, mas de um n\u00edvel superior para determinar a funcionalidade que o sistema deve fornecer aos atores externos.<\/p>\n<h3><span id=\"Purpose_of_use_case_diagrams\">Objetivo dos diagramas de caso de uso<\/span><\/h3>\n<p><a href=\"https:\/\/online.visual-paradigm.com\/diagrams\/tutorials\/use-case-diagram-tutorial\/\">Os diagramas de caso<\/a>\u00a0de uso geralmente s\u00e3o desenvolvidos nos est\u00e1gios iniciais de desenvolvimento, e as pessoas geralmente usam a modelagem de caso de uso para os seguintes prop\u00f3sitos.<\/p>\n<ul>\n<li>Especificar o contexto de um sistema<\/li>\n<li>Capturar os requisitos de um sistema<\/li>\n<li>Validar a arquitetura de um sistema<\/li>\n<li>Impulsione a implementa\u00e7\u00e3o e gere casos de teste<\/li>\n<li>Desenvolva por analistas, especialistas de dom\u00ednio e usu\u00e1rios finais em conjunto<\/li>\n<\/ul>\n<p>Uma forma padr\u00e3o de diagrama de caso de uso \u00e9 definida na Unified Modeling Language, conforme mostrado no exemplo de diagrama de caso de uso abaixo.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.cybermedian.com\/pt\/wp-content\/uploads\/sites\/11\/2022\/02\/02-use-case-diagram-notations.png\" alt=\"Tutorial de diagrama de caso de uso\" \/><\/p>\n<p><a class=\"edit-template-v1\" href=\"https:\/\/online.visual-paradigm.com\/app\/diagrams\/#diagram:proj=0&amp;type=UseCaseDiagram&amp;gallery=\/repository\/92142a93-2b66-495e-8c97-6fd871672ee6.xml&amp;name=Use%20Case%20Diagram%20Example%3A%20Passenger%20Service\">EDITE ESTE EXEMPLO DE DIAGRAMA DE CASO DE USO<\/a><\/p>\n<h3><span id=\"Elements_of_Use_Case_Diagram\">Elementos do Diagrama de Caso de Uso<\/span><\/h3>\n<h3><span id=\"Actors\">Atores<\/span><\/h3>\n<p>Cada caso de uso ter\u00e1 pelo menos um ator, que pode ser entendido como pelo menos um participante (papel), que n\u00e3o \u00e9 necessariamente uma pessoa, mas pode ser outro sistema ou dispositivo.\u00a0Um ator pode interagir com mais de um caso de uso e um caso de uso pode interagir com mais de um ator.<\/p>\n<p>Os atores n\u00e3o s\u00e3o necessariamente pessoas, ou seja, usu\u00e1rios, mas na verdade podem ser n\u00e3o-pessoas, ou seja, sistemas ou tempo.<\/p>\n<p>Na maioria das vezes, os usu\u00e1rios s\u00e3o pessoas envolvidas no diagrama de casos de uso, como clientes, funcion\u00e1rios, supervisores, etc.<\/p>\n<h3><span id=\"Human_vs_Non-Human_Actors\">Atores humanos vs n\u00e3o humanos<\/span><\/h3>\n<p>De tempos em tempos, o sistema \u00e9 afetado por v\u00e1rios eventos para executar determinadas fun\u00e7\u00f5es em uma determinada situa\u00e7\u00e3o.\u00a0Por exemplo, quando uma auditoria \u00e9 aprovada, o sistema envia proativamente uma carta para notificar as pessoas;\u00a0ent\u00e3o o envio da carta \u00e9 feito automaticamente pelo sistema?\u00a0Este caso de uso \u00e9 realmente acionado pelo tempo, ent\u00e3o o ator \u00e9 Timer;\u00a0por exemplo, este caso de uso pode ser visto como \u201cenviar uma carta automaticamente \u00e0s 5:00 todos os dias\u201d, ent\u00e3o o ator que aciona este evento \u2013 enviar uma carta \u2013 n\u00e3o \u00e9 o sistema, mas na verdade o Ator Timer<\/p>\n<h3><span id=\"Primary_vs_Secondary_Actors\">Atores Prim\u00e1rios vs Secund\u00e1rios<\/span><\/h3>\n<p>Um ator prim\u00e1rio \u00e9 um ator que usa o sistema para atingir um objetivo.\u00a0Os casos de uso documentam as intera\u00e7\u00f5es entre o sistema e os atores para atingir os objetivos do ator prim\u00e1rio.\u00a0Atores secund\u00e1rios s\u00e3o os atores que o sistema precisa ajudar para atingir os objetivos do ator prim\u00e1rio.<\/p>\n<ul>\n<li>Os atores podem ser prim\u00e1rios ou secund\u00e1rios.\u00a0Os atores prim\u00e1rios iniciam intera\u00e7\u00f5es com o sistema.<\/li>\n<li>Os atores secund\u00e1rios s\u00e3o normalmente chamados pelo sistema para obter ajuda e um ator secund\u00e1rio nunca inicia o caso de uso.<\/li>\n<\/ul>\n<p>Observe que: O s\u00edmbolo de um ator n\u00e3o diferencia entre um ator prim\u00e1rio e um ator secund\u00e1rio;\u00a0a diferen\u00e7a deve ser inferida a partir das descri\u00e7\u00f5es de casos de uso (tamb\u00e9m chamadas de narrativas de casos de uso).<\/p>\n<p><strong>Por exemplo:<\/strong><\/p>\n<p>Um agente de cr\u00e9dito banc\u00e1rio deseja revisar o pedido de empr\u00e9stimo de um cliente e parte do processo envolve uma verifica\u00e7\u00e3o de classifica\u00e7\u00e3o de cr\u00e9dito em tempo real.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.cybermedian.com\/pt\/wp-content\/uploads\/sites\/11\/2022\/02\/use-case-diagram-loan-application-review.png\" \/><\/p>\n<p><a class=\"edit-template-v1\" href=\"https:\/\/online.visual-paradigm.com\/app\/diagrams\/#diagram:proj=0&amp;type=UseCaseDiagram&amp;gallery=\/repository\/5d350852-2f12-4bd9-a8a1-9b17ace2132c.xml&amp;name=Use%20Case%20Diagram%3A%20Loan%20Application%20Review\">EDITE ESTE EXEMPLO DE DIAGRAMA DE CASO DE USO<\/a><\/p>\n<ul>\n<li>Nome do Caso de Uso.\u00a0Revise um pedido de empr\u00e9stimo<\/li>\n<li>Ator Prim\u00e1rio.\u00a0Diretor de Empr\u00e9stimo<\/li>\n<li>Ator Secund\u00e1rio.\u00a0Sistema de classifica\u00e7\u00e3o de cr\u00e9dito<\/li>\n<\/ul>\n<h2><span id=\"How_do_I_identify_actors\">Como identificar os atores?<\/span><\/h2>\n<p>Como um ator n\u00e3o \u00e9 necessariamente uma pessoa, mas pode ser um sistema externo, um dispositivo ou um temporizador, encontramos um ator mais espec\u00edfico fazendo as seguintes perguntas<\/p>\n<ul>\n<li>Quem usar\u00e1 o sistema depois de desenvolvido?<\/li>\n<li>De quem ou de quais outros sistemas o sistema precisar\u00e1 obter dados?<\/li>\n<li>Para quem ou para quais outros sistemas o sistema fornecer\u00e1 dados?<\/li>\n<li>A quais outros sistemas o sistema ser\u00e1 associado?<\/li>\n<li>Quem ir\u00e1 manter e administrar o sistema?<\/li>\n<\/ul>\n<p>Essas perguntas nos ajudam a abstrair os atores do sistema.\u00a0Usando caixas eletr\u00f4nicos como exemplo, responder a essas perguntas nos permite encontrar mais atores, ou seja,<\/p>\n<ul>\n<li>O\u00a0<strong>operador<\/strong>\u00a0\u00e9 respons\u00e1vel pela manuten\u00e7\u00e3o e gest\u00e3o do sistema ATM<\/li>\n<li>Os caixas eletr\u00f4nicos tamb\u00e9m precisam se comunicar com\u00a0<strong>servidores back-end<\/strong>\u00a0para obter informa\u00e7\u00f5es sobre contas de usu\u00e1rios.<\/li>\n<\/ul>\n<h3><span id=\"Use_Case\">Caso de uso<\/span><\/h3>\n<p>Um caso de uso representa uma funcionalidade (geralmente um requisito) que se espera que seja implementada pelo sistema.\u00a0Os detalhes de um caso de uso, al\u00e9m de seu nome exclusivo, n\u00e3o s\u00e3o representados visualmente no diagrama;\u00a0esses detalhes s\u00e3o fornecidos na narrativa (descri\u00e7\u00e3o textual) do caso de uso.<\/p>\n<p>Um caso de uso \u00e9 uma lista de a\u00e7\u00f5es ou etapas de eventos que normalmente definem as intera\u00e7\u00f5es entre os pap\u00e9is dos atores e o sistema para atingir um objetivo.\u00a0Os casos de uso s\u00e3o uma t\u00e9cnica \u00fatil para identificar, esclarecer e organizar os requisitos do sistema.\u00a0Um caso de uso consiste em um conjunto de sequ\u00eancias de poss\u00edveis intera\u00e7\u00f5es entre o sistema e o usu\u00e1rio que definem a funcionalidade a ser alcan\u00e7ada e as solu\u00e7\u00f5es para quaisquer erros que possam ser encontrados.<\/p>\n<h3><span id=\"How_to_Identify_Use_Cases\">Como identificar casos de uso?<\/span><\/h3>\n<p>Uma vez que encontramos os atores, podemos determinar os casos de uso do sistema com base nos atores, principalmente observando quais servi\u00e7os cada ator precisa do sistema ou como os atores usam o sistema.\u00a0A identifica\u00e7\u00e3o dos casos de uso pode come\u00e7ar com as seguintes perguntas (para cada participante).<\/p>\n<ul>\n<li>Por que os atores usam o sistema?<\/li>\n<li>O participante cria, modifica, exclui, acessa e armazena dados no sistema?\u00a0Em caso afirmativo, como o ator realiza essas opera\u00e7\u00f5es?<\/li>\n<li>O ator notifica o sistema de certos eventos externos?<\/li>\n<li>O sistema notifica o ator sobre determinados eventos internos?<\/li>\n<\/ul>\n<p>Juntando os itens acima, o diagrama de casos de uso do sistema ATM pode ser representado da seguinte forma.<\/p>\n<p>Caso de Uso \u00e9 apresentado por elipses, de algo est\u00e1tico ou din\u00e2mico, ou de uma tarefa ou sistema.<\/p>\n<h2><span id=\"System_Boundary\">Limite do sistema<\/span><\/h2>\n<p>Os limites do sistema descrevem o sistema agrupando os casos de uso em limites retangulares, e os limites do sistema no Visual Paradigm fornecem o comportamento de conten\u00e7\u00e3o do caso de uso.<\/p>\n<p>Atores s\u00e3o pap\u00e9is (atores humanos ou atores n\u00e3o humanos) que interagem com o sistema em desenvolvimento.\u00a0Portanto, os atores devem ser colocados fora dos limites do sistema e interagir com os casos de uso que s\u00e3o colocados dentro dos limites do sistema.<\/p>\n<p><strong>Observe que:\u00a0<\/strong><\/p>\n<p>Um ator \u00e9 definido pelos limites do sistema.\u00a0Se o limite do sistema que queremos definir \u00e9 limitado ao pr\u00f3prio ATM, ent\u00e3o o servidor backend \u00e9 um sistema externo e pode ser abstra\u00eddo como um ator.<\/p>\n<p>Se o limite do sistema que queremos definir se estende a todo o sistema banc\u00e1rio, onde os caixas eletr\u00f4nicos e os servidores de back-end fazem parte de todo o sistema banc\u00e1rio, o servidor de back-end n\u00e3o \u00e9 mais abstra\u00eddo como um ator.<\/p>\n<h3><span id=\"Relationship\">Rela\u00e7\u00e3o<\/span><\/h3>\n<p>Depois de aprender sobre esses tr\u00eas s\u00edmbolos-chave, continue com o conhecimento de Relacionamentos e desenho de diagramas de caso de uso.\u00a0Um relacionamento direto entre um participante e um caso de usu\u00e1rio \u00e9 desenhado, e o relacionamento \u00e9 usado como uma linha sem setas, indicando um relacionamento bidirecional, chamado de linha de link.<\/p>\n<p>Um caso de uso pode ser\u00a0dividido em v\u00e1rios casos de uso que s\u00e3o conectados por relacionamentos &lt;&lt;include&gt;&gt;, &lt;&lt;extend&gt;&gt; ou &lt;&lt;generalization&gt;&gt; (descritos posteriormente neste post).<\/p>\n<h3><span id=\"Communication_Link_Relationship\">Rela\u00e7\u00e3o de elo de comunica\u00e7\u00e3o<\/span><\/h3>\n<p>Isso representa uma comunica\u00e7\u00e3o bidirecional entre um ator e um caso de uso e, portanto, \u00e9 uma rela\u00e7\u00e3o bin\u00e1ria.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.cybermedian.com\/pt\/wp-content\/uploads\/sites\/11\/2022\/02\/use-case-diagram-binary-relation.png\" \/><\/p>\n<p><a class=\"edit-template-v1\" href=\"https:\/\/online.visual-paradigm.com\/app\/diagrams\/#diagram:proj=0&amp;type=UseCaseDiagram&amp;gallery=\/repository\/1399c965-658e-497a-807c-2a034b502170.xml&amp;name=Use%20Case%20Diagram%20Binary%20Relation\">EDITE ESTE EXEMPLO DE DIAGRAMA DE CASO DE USO<\/a><\/p>\n<h3><span id=\"Include_Relationship\">&lt;&lt;Incluir&gt;&gt; Relacionamento<\/span><\/h3>\n<p>Um relacionamento\u00a0<strong>de inclus\u00e3o<\/strong>\u00a0significa que o caso de uso incluir\u00e1 outros casos de uso.\u00a0O prop\u00f3sito de Incluir Relacionamento \u00e9 usar Incluir Relacionamento para reduzir a repeti\u00e7\u00e3o de descrever o mesmo caso de uso novamente.\u00a0Se muitos casos compartilham a mesma fun\u00e7\u00e3o de por\u00e7\u00e3o, a fun\u00e7\u00e3o pode ser separada e outros casos de uso podem ser inclu\u00eddos no caso.<\/p>\n<p>Por exemplo, o bibliotec\u00e1rio precisa ler o c\u00f3digo para registrar o livro emprestado quando o livro for retirado, e tamb\u00e9m precisa ler o c\u00f3digo para registrar o livro devolvido quando o livro for devolvido, pois ler o c\u00f3digo \u00e9 uma a\u00e7\u00e3o repetitiva , ele pode ser transformado em um caso de uso separado e permitir que o livro emprestado e o livro devolvido incluam este caso.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.cybermedian.com\/pt\/wp-content\/uploads\/sites\/11\/2022\/02\/include-use-case-example.png\" \/><\/p>\n<p><a class=\"edit-template-v1\" href=\"https:\/\/online.visual-paradigm.com\/app\/diagrams\/#diagram:proj=0&amp;type=UseCaseDiagram&amp;gallery=\/repository\/408fe5a6-2153-4359-b101-085709a94e2d.xml&amp;name=Include%20Use%20Case%20Example\">EDITE ESTE EXEMPLO DE DIAGRAMA DE CASO DE USO<\/a><\/p>\n<p>Se um caso de uso A inclui outro caso de uso B, ent\u00e3o a implementa\u00e7\u00e3o de A requer a implementa\u00e7\u00e3o de B para completar sua tarefa.\u00a0No entanto, B \u00e9 independente de si mesmo.\u00a0Ou seja, B n\u00e3o precisa saber nada sobre A. B tamb\u00e9m pode ser inclu\u00eddo em qualquer outro caso de uso.<\/p>\n<h3><span id=\"Extend_Relationship\">&lt;&lt;Estender&gt;&gt; Relacionamento<\/span><\/h3>\n<p>Se um caso de uso B estender outro caso de uso A, ent\u00e3o a implementa\u00e7\u00e3o de A pode incluir condicionalmente a implementa\u00e7\u00e3o de B para completar sua tarefa.\u00a0Ou seja, em alguns casos, A pode completar sua tarefa sem B. No entanto, dependendo das condi\u00e7\u00f5es descritas, A pode exigir B. Nesse caso, B \u00e9 dependente de B. No entanto, dependendo das condi\u00e7\u00f5es descritas, A pode exigir B Neste caso, B \u00e9 dependente de A e n\u00e3o pode existir sozinho.\u00a0Por esta raz\u00e3o, B n\u00e3o pode ser estendido para mais de um caso de uso.\u00a0A narrativa do caso de uso de A incluir\u00e1 as etapas de execu\u00e7\u00e3o exigidas de B;\u00a0este ponto \u00e9 chamado de ponto de extens\u00e3o.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.cybermedian.com\/pt\/wp-content\/uploads\/sites\/11\/2022\/02\/extend-use-case-example.png\" \/><\/p>\n<p><a class=\"edit-template-v1\" href=\"https:\/\/online.visual-paradigm.com\/app\/diagrams\/#diagram:proj=0&amp;type=UseCaseDiagram&amp;gallery=\/repository\/12fa856c-720a-48c6-bb2f-e17e1d630b64.xml&amp;name=Extend%20Use%20Case%20Example\">EDITE ESTE EXEMPLO DE DIAGRAMA DE CASO DE USO<\/a><\/p>\n<p>Vejamos outro exemplo em que o sistema solicita mercadorias automaticamente quando n\u00e3o h\u00e1 estoque para que o gerente n\u00e3o precise executar o pedido diretamente.\u00a0Veja o diagrama de caso de uso abaixo:<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.cybermedian.com\/pt\/wp-content\/uploads\/sites\/11\/2022\/02\/extend-use-case-example-place-order.png\" \/><\/p>\n<p><a class=\"edit-template-v1\" href=\"https:\/\/online.visual-paradigm.com\/app\/diagrams\/#diagram:proj=0&amp;type=UseCaseDiagram&amp;gallery=\/repository\/6bba449e-9dc9-4e16-9f21-4bc838c68479.xml&amp;name=Extend%20Use%20Case%20Example%3A%20Place%20Order\">EDITE ESTE EXEMPLO DE DIAGRAMA DE CASO DE USO<\/a><\/p>\n<h3 id=\"hkCbUWh\"><span id=\"Generalization_Relationship\">Rela\u00e7\u00e3o de generaliza\u00e7\u00e3o<\/span><\/h3>\n<p>O relacionamento generalizado \u00e9 semelhante ao relacionamento generalizado da linguagem orientada a objetos em diagramas de classes e pode ser aplicado \u00e0 generaliza\u00e7\u00e3o de pap\u00e9is (atores) e casos de uso.<\/p>\n<p>Por exemplo, no sistema de reservas, existem dois tipos de m\u00e9todos de reserva: \u201creservar passagem por telefone\u201d e \u201creservar passagem por Online\u201d, e o caso de uso base \u201cbook ticker\u201d, para que voc\u00ea possa usar a generaliza\u00e7\u00e3o para moldar o caso, e adicione &lt;&lt;essential&gt;&gt; ao caso de uso pai (reserva) para indicar o relacionamento generalizado.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.cybermedian.com\/pt\/wp-content\/uploads\/sites\/11\/2022\/02\/generalization-use-case-example-book-ticket.png\" \/><\/p>\n<p><a class=\"edit-template-v1\" href=\"https:\/\/online.visual-paradigm.com\/app\/diagrams\/#diagram:proj=0&amp;type=UseCaseDiagram&amp;gallery=\/repository\/e7c65465-a13b-4188-abcc-1792f687be39.xml&amp;name=Generalization%20Use%20Case%20Example%3A%20Book%20Ticket\">EDITE ESTE EXEMPLO DE DIAGRAMA DE CASO DE USO<\/a><\/p>\n<h3><span id=\"Discuss_the_relationships_in_the_use_case_diagram\">Discutir os relacionamentos no diagrama de caso de uso<\/span><\/h3>\n<ul>\n<li>Em um diagrama de caso de uso geral, representamos apenas os relacionamentos entre atores e casos de uso, ou seja, as associa\u00e7\u00f5es de comunica\u00e7\u00e3o entre eles.<\/li>\n<li>Al\u00e9m disso, tamb\u00e9m podemos descrever a generaliza\u00e7\u00e3o entre participantes e atores e os relacionamentos de inclus\u00e3o, extens\u00e3o e generaliza\u00e7\u00e3o entre casos de uso.<\/li>\n<li>Usamos esses relacionamentos para adaptar o modelo de caso de uso existente e extrair algumas informa\u00e7\u00f5es comuns para reutiliza\u00e7\u00e3o, tornando o modelo de caso de uso mais f\u00e1cil de manter.<\/li>\n<li>No entanto, temos que ter cuidado na escolha dessas rela\u00e7\u00f5es na aplica\u00e7\u00e3o.\u00a0Geralmente, essas rela\u00e7\u00f5es aumentam o n\u00famero de casos de uso e rela\u00e7\u00f5es, aumentando assim a complexidade do modelo de caso de uso.<\/li>\n<li>Al\u00e9m disso, o modelo de caso de uso geralmente \u00e9 ajustado depois de conclu\u00eddo, portanto, n\u00e3o h\u00e1 necessidade de se apressar em abstrair os relacionamentos entre os casos de uso no est\u00e1gio inicial da modelagem de casos de uso.<\/li>\n<\/ul>\n<h3><span id=\"Use_Case_the_Flow_of_Events\">Caso de uso &#8211; o fluxo de eventos<\/span><\/h3>\n<p>O diagrama de caso de uso nos d\u00e1 uma vis\u00e3o geral da funcionalidade do sistema, podemos saber quais participantes ir\u00e3o interagir com o sistema e quais servi\u00e7os cada ator precisa obter do sistema.<\/p>\n<p>O caso de uso descreve a conversa entre os atores e o sistema, mas os detalhes dessa conversa n\u00e3o s\u00e3o representados no diagrama de caso de uso, portanto, para cada caso de uso, podemos descrever os detalhes dessa conversa em termos de um fluxo de eventos.<\/p>\n<h3><span id=\"Use_Case_Scenarios_and_Flow_of_Events_ATM_Withdraw_Money\">Cen\u00e1rios de Caso de Uso e Fluxo de Eventos &#8211; Retirada de Dinheiro em ATM<\/span><\/h3>\n<p>Por exemplo, o caso de \u201cRetirada\u201d em um sistema ATM pode ser representado por um fluxo de eventos da seguinte forma:<\/p>\n<p>Cen\u00e1rio Normal \u2013 Retirada de recursos \u2013 fluxo b\u00e1sico de eventos:<\/p>\n<ol>\n<li>O usu\u00e1rio insere o cart\u00e3o de cr\u00e9dito<\/li>\n<li>Digite o PIN<\/li>\n<li>Insira o valor da retirada<\/li>\n<li>Retira dinheiro<\/li>\n<li>Saia do sistema e recupere o cart\u00e3o de cr\u00e9dito<\/li>\n<\/ol>\n<p>Mas isso apenas descreve o cen\u00e1rio normal do caso de uso de retirada.\u00a0Como um sistema ATM real, tamb\u00e9m devemos considerar v\u00e1rios outros cen\u00e1rios que podem ocorrer, como:<\/p>\n<ul>\n<li>cart\u00f5es de cr\u00e9dito inv\u00e1lidos,<\/li>\n<li>senhas erradas,<\/li>\n<li>saldo de caixa insuficiente na conta do usu\u00e1rio, etc.<\/li>\n<\/ul>\n<p>Todas essas situa\u00e7\u00f5es poss\u00edveis (normais e anormais) s\u00e3o chamadas de cen\u00e1rios do caso de uso e os cen\u00e1rios tamb\u00e9m s\u00e3o chamados de inst\u00e2ncias do caso de uso.\u00a0Os cen\u00e1rios tamb\u00e9m s\u00e3o chamados de inst\u00e2ncias de casos de uso.\u00a0Dentre os v\u00e1rios cen\u00e1rios de um caso de uso, o cen\u00e1rio mais comum \u00e9 descrito pelo processo b\u00e1sico, enquanto os demais cen\u00e1rios s\u00e3o descritos por processos alternativos.<\/p>\n<p><strong>Cen\u00e1rios alternativos<\/strong><\/p>\n<p>Para o caso de uso \u201cRetirada\u201d em um sistema ATM, podemos obter alguns processos alternativos da seguinte forma.<\/p>\n<p>Retirada \u2013 processos alternativos de eventos.<\/p>\n<ol>\n<li>Cen\u00e1rio alternativo I: O usu\u00e1rio pode optar por sair em qualquer etapa do processo b\u00e1sico e ir para a etapa 5 do processo b\u00e1sico.<\/li>\n<li>Processo alternativo II: Na etapa 1 do processo b\u00e1sico, o usu\u00e1rio insere um cart\u00e3o de cr\u00e9dito inv\u00e1lido, o sistema exibe um erro e sai do cart\u00e3o de cr\u00e9dito e o caso de uso \u00e9 encerrado.<\/li>\n<li>Processo alternativo III: Na etapa 2 do processo b\u00e1sico, o usu\u00e1rio digita uma senha incorreta, o sistema apresenta um erro e solicita que o usu\u00e1rio reinsira a senha e retorne \u00e0 etapa 2 do processo b\u00e1sico;\u00a0ap\u00f3s tr\u00eas entradas de senha incorretas, o cart\u00e3o de cr\u00e9dito \u00e9 confiscado pelo sistema e o caso de uso \u00e9 encerrado.<\/li>\n<li>\u2026<\/li>\n<\/ol>\n<p>Combinando o cen\u00e1rio b\u00e1sico e os cen\u00e1rios alternativos, todas as v\u00e1rias situa\u00e7\u00f5es que podem ocorrer em um caso de uso podem ser claramente descritas.\u00a0Ao descrever o fluxo de eventos de um caso de uso, queremos descrever todos os cen\u00e1rios poss\u00edveis o m\u00e1ximo poss\u00edvel para garantir a integridade dos requisitos.<\/p>\n<h3><span id=\"Use_Case_Model_vs_Use_Case_Diagrams\">Modelo de Caso de Uso x Diagramas de Caso de Uso<\/span><\/h3>\n<p>\u00c9 importante evitar o equ\u00edvoco de que um\u00a0<strong>diagrama de caso de uso<\/strong>\u00a0composto por atores e casos de uso \u00e9 um modelo de caso de uso, pois um diagrama de caso de uso \u00e9 apenas uma representa\u00e7\u00e3o visual dos servi\u00e7os que o sistema pode fornecer, nos dando uma ideia geral do funcionalidade do sistema.<\/p>\n<p>O\u00a0<strong>modelo de caso de uso<\/strong>\u00a0consiste em um diagrama de caso de uso e uma descri\u00e7\u00e3o detalhada de cada caso de uso, a especifica\u00e7\u00e3o do caso de uso, que \u00e9 fornecida como modelo no RUP.<\/p>\n<p><strong>Breve descri\u00e7\u00e3o<\/strong><br \/>\nUma breve descri\u00e7\u00e3o da fun\u00e7\u00e3o e prop\u00f3sito do caso de uso.<\/p>\n<p><strong>Fluxo de Eventos\u00a0<\/strong><br \/>\nFluxo de Eventos deve representar todos os cen\u00e1rios, incluindo cen\u00e1rios b\u00e1sicos e alternativos.<\/p>\n<p><strong>Cen\u00e1rios de Caso de Uso<\/strong><br \/>\nInclua cen\u00e1rios de sucesso e cen\u00e1rios de falha, e os cen\u00e1rios s\u00e3o principalmente uma combina\u00e7\u00e3o de fluxos b\u00e1sicos e alternativos.<\/p>\n<p><strong>Requisitos Especiais<\/strong><br \/>\nDescrever os requisitos n\u00e3o funcionais (incluindo desempenho, confiabilidade, disponibilidade, escalabilidade, etc.) e restri\u00e7\u00f5es de projeto (sistema operacional, ferramentas de desenvolvimento, etc.) associados ao caso de uso.<\/p>\n<p><strong>Pr\u00e9-condi\u00e7\u00e3o<\/strong><br \/>\nO estado em que o sistema deve estar antes que o caso de uso possa ser executado.<\/p>\n<p><strong>P\u00f3s-condi\u00e7\u00f5es<\/strong><br \/>\nO conjunto de estados em que o sistema pode estar ap\u00f3s a execu\u00e7\u00e3o do caso de uso.<\/p>\n<p>Uma especifica\u00e7\u00e3o de caso de uso \u00e9 essencialmente uma representa\u00e7\u00e3o textual, com a op\u00e7\u00e3o de usar diagramas de estado, diagramas de atividades ou diagramas de sequ\u00eancia para ajudar a descrever o fluxo de eventos com mais clareza.\u00a0Qualquer representa\u00e7\u00e3o gr\u00e1fica de interfaces de usu\u00e1rio e processos, ou outros gr\u00e1ficos, ou seja, wireframes, podem ser anexados ao caso de uso, desde que ajudem a melhorar a clareza da representa\u00e7\u00e3o.<\/p>\n<p>Por exemplo:<\/p>\n<ul>\n<li>diagramas de atividades s\u00e3o \u00fateis para descrever processos de decis\u00e3o complexos,<\/li>\n<li>diagramas de transi\u00e7\u00e3o de estado s\u00e3o \u00fateis para descrever o comportamento do sistema relacionado ao estado e<\/li>\n<li>diagramas de seq\u00fc\u00eancia s\u00e3o apropriados para descrever mensagens baseadas em tempo.<\/li>\n<\/ul>\n<h3><span id=\"Use_Case_Tools\">Ferramentas de caso de uso<\/span><\/h3>\n<p><strong>Vers\u00e3o online<\/strong><\/p>\n<p>A vers\u00e3o gratuita da ferramenta de desenho\u00a0<a href=\"https:\/\/online.visual-paradigm.com\/diagrams\/solutions\/free-use-case-diagram-tool\/\">Visual Paradigm Online<\/a>\u00a0(VP Online) suporta UML, ERD e organogramas.\u00a0Voc\u00ea pode desenhar diagramas de caso de uso rapidamente com o editor de desenho UML intuitivo.\u00a0Esta ferramenta UML gratuita n\u00e3o possui an\u00fancios, per\u00edodo de acesso limitado e restri\u00e7\u00f5es como n\u00famero de diagramas, n\u00famero de formas, etc. Desenhe UML livremente.\u00a0Desenhe UML livremente.\u00a0voc\u00ea possui os diagramas que cria para fins pessoais e n\u00e3o comerciais.<\/p>\n<p><strong>Vers\u00e3o para computador<\/strong><\/p>\n<p>O\u00a0<a href=\"https:\/\/www.visual-paradigm.com\/solution\/free-use-case-tool\/\">Visual Paradigm Community Edition<\/a>\u00a0, dispon\u00edvel desde 2004, fornece um software UML gratuito apenas para fins n\u00e3o comerciais, apoiando usu\u00e1rios que est\u00e3o dando seus primeiros passos na modelagem UML, bem como aqueles que precisam de um software de modelagem UML gratuito e multiplataforma para uso pessoal, como aplicar UML em projetos de alunos.<\/p>\n<p><strong>Refer\u00eancias<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-use-case-diagram\/\">O que \u00e9 o Diagrama de Caso de Uso?<\/a><\/li>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/types-of-actor-in-use-case-model\/\">Tipos de Ator no Modelo de Caso de Uso<\/a><\/li>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/sysml\/identify-user-requirements-with-use-case-diagrams\/\">Identifique os requisitos do usu\u00e1rio com diagramas de caso de uso<\/a><\/li>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/use-case\/what-is-use-case-specification\/\">O que \u00e9 Especifica\u00e7\u00e3o de Caso de Uso?<\/a><\/li>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/agile-software-development\/user-story-vs-use-case\/\">Hist\u00f3ria de usu\u00e1rio versus caso de uso para desenvolvimento de software \u00e1gil<\/a><\/li>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/agile-software-development\/what-is-use-case-driven-approach-for-agile\/\">Abordagem Orientada a Casos de Uso para Desenvolvimento \u00c1gil<\/a><\/li>\n<\/ul>\n<h3><span id=\"UML_Resources\">Recursos UML<\/span><\/h3>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-uml\/\">O que \u00e9 UML?<\/a><\/li>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/why-uml-modeling\/\">Por que modelagem UML?<\/a><\/li>\n<li><a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/overview-of-the-14-uml-diagram-types\/\">Vis\u00e3o geral dos 14 tipos de diagrama UML<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Os diagramas de caso de uso UML s\u00e3o a principal forma de requisitos de sistema\/software para novos programas de software em desenvolvimento. O objetivo de um diagrama de caso de uso \u00e9 visualizar o que o sistema deve fazer (o qu\u00ea); nesta fase, ele n\u00e3o considera como (como) faz\u00ea-lo.\u00a0<\/p>\n","protected":false},"author":1,"featured_media":6968,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","footnotes":""},"categories":[13,3],"tags":[52,63,62,53],"class_list":["post-6798","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-online-diagrams","category-unified-modeling-language","tag-cn-done","tag-es-done","tag-ja-done","tag-tw-done"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Tutorial de an\u00e1lise de caso de uso - Cibermediano<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutorial de an\u00e1lise de caso de uso - Cibermediano\" \/>\n<meta property=\"og:description\" content=\"Os diagramas de caso de uso UML s\u00e3o a principal forma de requisitos de sistema\/software para novos programas de software em desenvolvimento. O objetivo de um diagrama de caso de uso \u00e9 visualizar o que o sistema deve fazer (o qu\u00ea); nesta fase, ele n\u00e3o considera como (como) faz\u00ea-lo.\u00a0\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/\" \/>\n<meta property=\"og:site_name\" content=\"Cibermediano\" \/>\n<meta property=\"article:published_time\" content=\"2022-02-18T10:59:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-01T06:18:50+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png\" \/>\n<meta name=\"author\" content=\"vpadmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png\" \/>\n<meta name=\"twitter:creator\" content=\"@vpadmin\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"vpadmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/\"},\"author\":{\"name\":\"vpadmin\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a\"},\"headline\":\"Tutorial de an\u00e1lise de caso de uso\",\"datePublished\":\"2022-02-18T10:59:24+00:00\",\"dateModified\":\"2022-04-01T06:18:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/\"},\"wordCount\":3247,\"commentCount\":15,\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png\",\"keywords\":[\"cn-done\",\"es-done\",\"ja-done\",\"tw-done\"],\"articleSection\":[\"Online Diagrams\",\"Unified Modeling Language\"],\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/\",\"url\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/\",\"name\":\"Tutorial de an\u00e1lise de caso de uso - Cibermediano\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png\",\"datePublished\":\"2022-02-18T10:59:24+00:00\",\"dateModified\":\"2022-04-01T06:18:50+00:00\",\"author\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage\",\"url\":\"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png\",\"contentUrl\":\"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png\",\"width\":\"1170\",\"height\":\"665\",\"caption\":\"Tutorial de an\u00e1lise de caso de uso\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.cybermedian.com\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorial de an\u00e1lise de caso de uso\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/#website\",\"url\":\"https:\/\/www.cybermedian.com\/pt\/\",\"name\":\"Cibermediano\",\"description\":\"Aprendendo uma coisa nova todos os dias\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.cybermedian.com\/pt\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a\",\"name\":\"vpadmin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g\",\"caption\":\"vpadmin\"},\"sameAs\":[\"https:\/\/x.com\/vpadmin\"],\"url\":\"https:\/\/www.cybermedian.com\/pt\/author\/vpadmin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tutorial de an\u00e1lise de caso de uso - Cibermediano","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/","og_locale":"pt_PT","og_type":"article","og_title":"Tutorial de an\u00e1lise de caso de uso - Cibermediano","og_description":"Os diagramas de caso de uso UML s\u00e3o a principal forma de requisitos de sistema\/software para novos programas de software em desenvolvimento. O objetivo de um diagrama de caso de uso \u00e9 visualizar o que o sistema deve fazer (o qu\u00ea); nesta fase, ele n\u00e3o considera como (como) faz\u00ea-lo.\u00a0","og_url":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/","og_site_name":"Cibermediano","article_published_time":"2022-02-18T10:59:24+00:00","article_modified_time":"2022-04-01T06:18:50+00:00","og_image":[{"url":"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png","type":"","width":"","height":""}],"author":"vpadmin","twitter_card":"summary_large_image","twitter_image":"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png","twitter_creator":"@vpadmin","twitter_misc":{"Escrito por":"vpadmin","Tempo estimado de leitura":"16 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#article","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/"},"author":{"name":"vpadmin","@id":"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a"},"headline":"Tutorial de an\u00e1lise de caso de uso","datePublished":"2022-02-18T10:59:24+00:00","dateModified":"2022-04-01T06:18:50+00:00","mainEntityOfPage":{"@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/"},"wordCount":3247,"commentCount":15,"image":{"@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png","keywords":["cn-done","es-done","ja-done","tw-done"],"articleSection":["Online Diagrams","Unified Modeling Language"],"inLanguage":"pt-PT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/","url":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/","name":"Tutorial de an\u00e1lise de caso de uso - Cibermediano","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/pt\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage"},"image":{"@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png","datePublished":"2022-02-18T10:59:24+00:00","dateModified":"2022-04-01T06:18:50+00:00","author":{"@id":"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a"},"breadcrumb":{"@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/"]}]},{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#primaryimage","url":"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png","contentUrl":"https:\/\/online.visual-paradigm.com\/images\/features\/uml-tool\/03-use-case-diagram-example-atm.png","width":"1170","height":"665","caption":"Tutorial de an\u00e1lise de caso de uso"},{"@type":"BreadcrumbList","@id":"https:\/\/www.cybermedian.com\/pt\/use-case-analysis-tutorial\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cybermedian.com\/pt\/"},{"@type":"ListItem","position":2,"name":"Tutorial de an\u00e1lise de caso de uso"}]},{"@type":"WebSite","@id":"https:\/\/www.cybermedian.com\/pt\/#website","url":"https:\/\/www.cybermedian.com\/pt\/","name":"Cibermediano","description":"Aprendendo uma coisa nova todos os dias","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cybermedian.com\/pt\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-PT"},{"@type":"Person","@id":"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a","name":"vpadmin","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/www.cybermedian.com\/pt\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g","caption":"vpadmin"},"sameAs":["https:\/\/x.com\/vpadmin"],"url":"https:\/\/www.cybermedian.com\/pt\/author\/vpadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/posts\/6798","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/comments?post=6798"}],"version-history":[{"count":7,"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/posts\/6798\/revisions"}],"predecessor-version":[{"id":10143,"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/posts\/6798\/revisions\/10143"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/media\/6968"}],"wp:attachment":[{"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/media?parent=6798"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/categories?post=6798"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cybermedian.com\/pt\/wp-json\/wp\/v2\/tags?post=6798"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}