olá meu nome é douglas eu vou ensinar tudo que você precisa saber sobre diagramas de casos de uso miami vamos começar com uma visão geral e em seguida a gente a profunda mais falando de sistemas atores caso de uso e relacionamentos e por fim vamos criar um diagrama completo de casos de uso juntos usando exemplos bem detalhados para você entender bem todos esses conceitos você já teve uma ideia que fazia todo o sentido na sua cabeça mas ao tentar explicá lá ninguém entendia talvez fizesse um novo aplicativo e toda vez que você fale do assunto
as pessoas realmente não consegue imaginar como interagiriam com o aplicativo o qual seria sua função para esse tipo de situação um diagrama de caso de uso é bastante útil aqui vai uma descrição simples de um diagrama de casos de uso primeiro ele mostra um sistema um aplicativo em seguida mostra as pessoas organizações ou outros sistemas que interagem com ele e por fim mostra o fluxo básico daquilo que o sistema o aplicativo faz é um diagrama que dá uma visão geral normalmente não entrou em muitos detalhes no entanto é uma ótima maneira de comunicar idéias complexas
de forma simples antes de realmente entramos no tutorial vamos falar um pouco sobre como criar um diagrama de casos de uso dá para dizer com o papel caneta mas com um aplicativo de diagramação fica muito mais fácil hoje eu vou usar lucchetti você pode usar também de graça é só clicar no link para acessar o site do chat colocar seu endereço de email em questão de segundos você vai ter uma conta gratuita do chat é bem fácil de usar e se você criar uma conta agora você poderá me acompanhar na criação de um diagrama de
casos de uso o exemplo que eu vou dar já já analisaremos quatro elementos diferentes dos diagramas de casos de uso em sistemas atores casos de uso e relacionamentos vamos começar com os sistemas um sistema é aquilo que você estiver desenvolvendo pode ser um site um software um processo de negócios um aplicativo e por aí vai um sistema é representado por um retângulo e nome do nosso sistema inserido no topo vamos criar um diagrama de casos de uso para um aplicativo simples de operação bancária vamos chamar o nosso sistema de aplicativos bancário este retângulo ajuda a
definir a extensão desse sistema tudo o que acontece dentro do aplicativo bancário ocorre dentro do retângulo o que estiver fora desse retângulo não acontece no aplicativo bancário o próximo elemento é o ator representa por esse boneco palito o ator é algo ou alguém que usa nosso sistema para atingir uma meta o ator pode ser uma pessoa organização outro sistema um dispositivo externo enfim quem ou que usar a nosso aplicativo bancário o ator que mais faz sentido neste caso é um cliente são os clientes que baixaram e usar o nosso aplicativo bancário outro fator importante para
o nosso diagrama é o banco banco fornecer informações para o funcionamento do nosso aplicativo bancário como transações e saldos de contas seguem algumas considerações a trabalhar com atores primeiro é importante notar que os atores são objetos externos por isso devemos posicioná los fora do nosso sistema segundo quando pensamos em atores devemos pensar em classes ou categorias isso significa que nosso aplicativo bancário o ator não será um indivíduo específico uma determinada organização não devemos controlar os nossos atores com o joão e banco do brasil vamos manter as coisas bem categóricas mesmo bem podemos dizer que tanto
o cliente quanto o banco usar o nosso aplicativo e agora podemos discutir o que são atores primários e secundários um ator principal inicia a utilização do sistema enquanto o ator secundário reagir portanto nosso exemplo quem é o ator principal e quem o ator secundário o ator principal é o cliente o cliente iniciará o uso do nosso sistema ele vai pegar o celular a abrir nosso aplicativo bancário começar a usar por outro lado o banco o ator secundário o banco só vai agir depois que o cliente realizar algo se o cliente usa o aplicativo para ver
quanto dinheiro tem sua conta somente neste momento o banco vai se envolver com o nosso sistema e fornecer o saldo os atores principais devem ser posicionados a esquerda do sistema e os atores secundários à direita isso reforça visualmente o fato de que o cliente é que dá início a essa interação com o aplicativo bancário e em seguida é o banco que reage o próximo elemento é o caso de uso e agora que a gente realmente começa a descrever o que o nosso sistema faz o caso de uso é representado por esta forma oval e representa
uma ação que realiza uma tarefa dentro do sistema nós vamos posicionar dentro do retângulo porque são ações que ocorrem dentro do aplicativo bancário mas afinal o que nosso aplicativo bancário faz vai ser bem simples nosso aplicativo bancário tirar que o cliente faça login verifique saldo de sua conta faça transferências e pague contas então se é isso que nosso aplicativo bancário fácil teremos caso de uso para descrever cada uma dessas ações teremos casos de uso do chamado fazer login consultar saldo fazer transferência e fazer pagamento veja que a descrição de cada caso de uso começa com
um verbo para reforçar a idéia de que uma ação é realizada queremos que eles sejam suficientemente descritivos se esse caso de uso foi chamado apenas de transferência seria vago demais por fim é recomendável organizar seus casos de uso em uma ordem lógica sempre que possível por isso colocamos o login no topo é a primeira coisa a acontecer quando o cliente usar nosso aplicativo bancário o elemento final dos diagramas de casos de uso são os relacionamentos o ator usa nosso sistema para atingir uma meta portanto cara tu tem que interagir com pelo menos um dos casos
de uso dentro do nosso sistema nosso exemplo o cliente vai fazer login no aplicativo bancário então traçamos uma linha sólida entre o ator e caso de uso para exibir esse relacionamento esse tipo de relacionamento é chamado de associação e significa que ocorre uma comunicação ou interação simples o cliente interagir com o resto dos casos de uso também ele vai consultar saldo fazer transferências e fazer pagamentos então vamos traçar linhas sólidas para cada um desses casos de uso também atores secundários também terão relacionamentos lembre-se cada dor tem que interagir com pelo menos um dos casos de
uso agora com quais caso de uso o banco interagirá quando o cliente quiser consultar seu saldo no aplicativo banco fornecer o valor correto vamos traçar uma linha entre o banco e consultar saldo da mesma forma quando o cliente quiser fazer uma transferência ou fazer um pagamento o banco realizará essas transações não precisamos traçar uma linha entre banco e fazer login porque esse processo acontece dentro do aplicativo bancário não há necessidade de o banco se envolver com o processo de login além da associação há três outros tipos de relacionamentos inclusão extensão e generalização vamos elaborar nosso
diagrama com mais casos de uso para poder explicar esse tipo de relacionamento quando o cliente insere suas informações de login nosso aplicativo bancário verifica sem antes de concluir o processo de login no entanto se assim estiver incorreta o aplicativo bancário exibirá uma mensagem de erro então vamos criar dois novos casos de uso um para verificar senha e outro para exibir erro de login quando o cliente quiser fazer uma transferência fazer um pagamento nosso aplicativo bancário se certificará de que há dinheiro suficiente para concluir essas transações portanto vamos criar outro caso de uso chamado verificar saldo
disponível e por fim quando o cliente quiser realizar o pagamento nosso aplicativo bancário oferecer a opção de pagar sua conta corrente ou de sua conta poupança portanto vamos criar mais dois casos de uso chamados pagar da conta corrente e pagar da conta poupança vamos voltar ao caso de uso de verificar senha e falar sobre relacionamentos novamente como ação deveria ficar 100 e se relaciona com o resto o diagrama nenhum dos nossos atores está iniciando essa ação diretamente ela acontecerá dentro do nosso aplicativo bancário sempre que houver uma tentativa de fazer login isso se chama um
relacionamento de inclusão um relacionamento de inclusão mostra a dependência de um caso de uso base em caso de uso incluído cada vez que em caso de uso base for realizado o caso de uso incluídos será realizado também em outras palavras o caso de uso base requer um caso de uso incluído para ser completo quando você tiver um relacionamento de inclusão faça uma linha tracejada com uma seta apontada para o caso de uso incluindo portanto nosso exemplo fazer login no caso de uso bazin e verificar a senha é o caso de uso incluído toda vez que
um cliente fizer log nosso aplicativo bancário vai verificar a 100 automaticamente o caso de uso fazer login não estará completo até que verificar senha esteja completo também portanto fazemos uma linha tracejada com a seta apontada para o caso de uso incluído e escrevemos incluir entre aspas angulares o próximo tipo de relacionamento é a extensão um relacionamento de extensão tem um caso de uso base em um caso de uso estendido quando caso de uso base for realizado o caso de uso estendido ocorrerá às vezes mas nem sempre é o caso de uso estendido só ocorre se
determinar os critérios forem cumpridos em outras palavras você tem a opção de estender o comportamento do caso de uso base quando você tiver um relacionamento de extensão faz uma linha tracejada com uma seta apontada para o caso de uso base no nosso exemplo fazer login em um caso de uso base e exibe erro de login é um caso de uso estendido nosso aplicativo bancário não exibirá uma mensagem de áudio login toda vez que o cliente fizer login isso acontecerá somente quando o cliente inserir uma senha incorreta como é o relacionamento de extensão fazemos uma linha
tracejada com uma seta apontada para o caso de uso base e escrevemos estender entre aspas angulares esperamos que se explique detalhadamente a diferença entre relacionamentos de inclusão de extensão em todo caso segue um exemplo básico para ajudar a diferenciar os dois quando você espirra você fecha os olhos e se um relacionamento de inclusão porque acontece todas às vezes é inevitável porém se você espirrar talvez alguém diga saúde isso é um relacionamento de extensão porque complementa o espirro mas não é necessário no processo ou espirrar lembre se de que a inclusão ocorre sempre enquanto a extensão
ocorre só às vezes e não se esqueça de que as setas aponta em direções opostas uma observação a considerar é que mais de um caso de uso base pode apontar para o mesmo caso de uso incluído ou estendido por exemplo tanto fazer transferência quando fazer pagamento apontaram para verificar saldo disponível como um caso de uso incluído queremos que nosso aplicativo bancário faça essa verificação sempre que um desses casos de uso base ocorrer não é necessário duplicar o caso de uso de verificar saldo disponível quanto mais simples e diagrama for melhor o último tipo de relacionamento
será abordado é a generalização também conhecido como herança a fazer um pagamento nosso aplicativo bancário você pode fazê lo de sua conta corrente ou conta poupança nessa situação fazer um pagamento a um caso de uso geral que pagar da conta poupança que pagar da conta corrente são casos de uso especializados você também pode usar os termos primário e secundário cada caso de uso secundário compartilha das características do respectivo caso de uso primário mas cada secundário acrescenta algo novo para mostrar que se trata de uma generalização tratamos esse tipo de seta do secundário para o primário
é possível que as generalizações em caso de uso como temos aqui é possível também ter generalizações com atores em determinadas situações pode ser necessário distinguir entre um cliente novo eo cliente fidelizado ambos podem ser características secundárias de um ator mais geral que seria simplesmente cliente isso permite termos determinados comportamentos ou qualidades exclusivas para cada um desses secundários uma ótima forma ser discutido rapidamente é o caso de uso com pontos de extensão veja um exemplo aqui o nome do caso de uso está acima da linha ea ponte de extensão abaixo da linha os pontos de extensão
são apenas uma versão detalhada de relacionamentos de extensão neste caso de uso indica que o cliente pode configurar seu perfil no nosso aplicativo bancário e esses pontos de extensão indicam que quando um cliente está configurando o seu perfil ter a opção de navegar para outras telas se o cliente estiver confuso ele pode acessar a ajuda de perfil e se quiser saber mais informações sobre seus dados pessoais pode acessar informações de privacidade os pontos de uso de extensão ramificam para casos de uso estendidos acessar a ajuda de perfil e exibir informações de privacidade podemos ainda acrescentar
uma observação para mostrar quais tipos de condições levariam esses pontos de extensão agora temos um diagrama de casos de uso completo contendo diversos elementos que ajudam a explicar o que nós o aplicativo bancário realmente faz esse foi um exemplo bastante básico no entanto lembre se de que até mesmo sistemas complexos devem ser reduzidos a uma visualização simples das funcionalidades comportamentos e relacionamentos deixe os detalhes para outros tipos de diagramas caso queira ver mais detalhes desse exemplo clique no cartão você encontrará esse mesmo exemplo de aplicativo bancário além de vários outros exemplos e recursos obrigado para
assistir a este tutorial sobre a grama de casos de uso ml assim nosso canal para ver mais setoriais deixe um comentário casa tem alguma sugestão à pergunta e por fim clique no link para criar uma conta gratuita do chat e começar a criar seus próprios dramas do ml hoje mesmo [Música]