Olá sejam bem-vindos ao canal engenharia de software com ênfase ml Eu sou professor J Denis GES e eu já atuo na área de modelagem de software há vários anos eu tenho quatro livros publicados sobre o assunto e eu já ministrei diversas palestras e cursos técnicos sobre modelagem de software utilizando a linguagem uml na aula de hoje eu vou iniciar a tratar sobre o diagrama de atividades que é um dos diagramas de mais baixo nível da uml me permite representar modelos de fluxo de controle e de dados e também modelos que representam partes de sistemas de
informação e também modelos de negócio como nós vamos ver ao longo deste vídeo Então vamos dar início ao nosso conteúdo então eu gosto sempre de fazer uma pequena propaganda o meu primeiro livro foi umr uma abordagem prática que na época tratava da umr 1.5 mas já abordava a ml2 depois eu lancei o livro O ml2 Guia de consulta rápida que era exclusivo sobre a ml2 depois eu lancei o MR2 guia prático e finalmente eu lancei o meu livro mais completo mais atualizado que é o MR2 uma abordagem prática que se encontra na terceira Edição Mas
vamos dar início ao conteúdo então o diagrama de atividades como eu já falei é o diagrama de mais baixo nível da umr e de diagramas de atividade eh essencialmente contém modelos de fluxo de controle e de dados mas eles suportam outros fluxos também Em algumas situações como fluxos de objeto e fluxo de de exceção que serão estudados ao longo dess dessas aulas Então esse diagrama ele apresenta muitas semelhantes muitas semelhanças com os antigos eh fluxogramas que eram utilizados para desenvolver a lógica de programação ã Então como eu falei anteriormente o diagrama de atividades ele é
utilizado para modelar atividades o nome já diz Essas atividades podem descrever computação procedural modelagem de sistemas de informação e modelagem organizacional para engenharia de processo de negócio e fluxo de trabalho vamos explicar cada um deles então computação procedural é o tipo de modelo representado pelo diagrama de atividades de mais baixo nível basicamente ele contém os passos necessários para que uma operação ou seja um método ou um algoritmo possa ser concluído então Nessa situação a um diagrama de atividades ele representa uma sequência de condições que permitem coordenar os comportamentos de nível mais baixo da uml mais
detal com ní nível técnico mais detalhado um nível bem passo a passo como concluir uma operação ou um algoritmo já na modelagem de sistemas de informação eh o nome já diz ele o diagrama de atividades representa processos a nível de sistema então o diagrama de atividade ele pode demonstrar a a lógica de um caso de uso Ah ele pode detalhar melhor as etapas de um caso de uso isso é é útil para ajudar a compreender a complexidade real desse caso de uso ou para validar a definição eh estabelecida durante o A modelagem de casos de
uso anterior Ah e também no caso da modelagem organizacional que representa processo de negócio e fluxo de trabalho já é o diagram de atividade já representam eh processo um nível um pouco mais alto eles definem as etapas necessárias para que um processo seja executado e nesse caso o diagrama de atividades ele como eu falei eh representa um processo de um nível mais alto e com detalhamento não Tão Profundo ã um diagrama de atividades que representa um fluxo de trabalho pode representar o conjunto de setores porque passa uma informação durante um determinado processo por exemplo ah
na verdade A modelagem de negócio em alguns processos de desenvolvimento como no caso do Rational unified process ou processo Unificado o diagrama de atividades ele pode utilizar pode ser aplicado antes mesmo de se identificar os casos de uso ele serve justamente para ajudar a identificar Quais são os casos de uso necessários a um determinado sistema Então existe uma disciplina exclusiva para isso no processo Unificado que é justamente A modelagem de negócios e durante a modelagem de negócios os diagramas de atividade eles são utilizados para representar os Flux os fluxos de trabalho dos setores H ou
por onde o software será eh executado por onde a informação de um determinado processo irá passar e ser transformada ah e também para representar os fluxos de trabalho gerais do próprio sistema então como eu falei anteriormente os modelos de negócio eles podem ajudar a identificar muitos dos casos de uso que são necessários ao software que está para ser desenvolvido bom eu vou falar um pouquinho sobre idade normalmente mas não Obrigatoriamente um diagrama de atividade contém uma única atividade porém ele pode conter mais de uma ã Se isso for considerado necessário Ah uma atividade ela vai
conter um conjunto de ações que são os passos que são executados durante aela atividade mas essas ações nem sempre vão estar explícitas em alguns casos eh a atividade ela é apenas referenciada e as suas e suas ações elas estão suprimidas no caso eh em situações que o diagrama está muito grande por exemplo ã então uma atividade ela especifica a coordenação de execuções de comportamentos subordinados por meio de um modelo de fluxo de controle de dados então Eh esses comportamentos eles podem ser iniciados devido a outros comportamentos do modelo terminarem a sua execução e por objetos
e ou dados se tornarem disponíveis e pela ocorrência de eventos externos entre outras possibilidades uma atividade na uml é representada por um retângulo com as bordas redondas como nós podemos ver nesse exemplo Ah uma atividade ela pode eventualmente possuir pré e pós condições eu pessoalmente não utilizo muito isso mas existe essa possibilidade então Aqui nós temos o exemplo aqui nós temos a atividade Abrir conta comum que tem como pré-condição que para abrir uma conta corrente é preciso ser maior de idade e uma pós-condição que é necessário realizar o depósito inicial na verdade essas pré e
pós condições são idênticas às representadas na documentação do caso de uso do processo de abertura de conta comum definido nos vídeos sobre o diagrama de caso de uso mas Aqui também está contido nessa atividade Ah eu vou falar um pouquinho sobre nós de ação os nós de ação são os elementos básicos de uma atividade basicamente um nó de ação representa um passo que deve ser executado durante uma atividade ã e o nó de ação ele é atômico Isso significa que ele não pode ser dividido o nó de ação ele possui um símbolo semelhante à atividade
ou seja um retângulo com as bordas arredondadas só que ele é bem menor que a atividade ã as atividades elas podem conter ações de diversos tipos a mais comum é o passo básico ã quando se está modelando um algoritmo ou um método mas eventualmente elas podem ser utilizadas para representar ocorrências de funções primitivas como a execução de uma função aritmética elas podem ser utilizadas também para invocar o comportamento ã de outras atividades ah eventualmente um um nó de ação pode invocar um método por exemplo Ah um nó de ação ele pode representar uma ação de
comunicação como envio ou recebimento de sinais e podem também representar a manipulação de objetos como a leitura a gravação de atributos a instanciação de um novo objeto a destruição de um objeto isso é feito por meio de fluxos de objetos que será ensinado em outros vídeos Ah eu vou falar um pouquinho sobre o fluxo de controle essencialmente um fluxo de controle ele é um conector que vai ligar dois nós de ação esse conector ele envia sinais de controle que são chamados de tokens de um nó para o outro então Aqui nós temos um conector que
liga as ações receber número da conta e consultar conta então aqui o fluxo de controle ele é representado por uma seta que aponta do nó anterior e atinge o novo nó Ah então um sinal no diagrama de de atividades também conhecido como token ele é ele pode conter valores de controle valores de objetos e valores de dados esses dois últimos valores eles só são transmitidos quando se utiliza fluxo de objetos como eu falei isso vai ser vai ser ensinado nas próximas aulas Ah e um fluxo de controle ele pode conter também uma descrição que facilita
a compreensão daquele daquele fluxo Isso é opcional Eu não costumo utilizar com muita frequência uma condição de guarda que estabelece como o nome já diz a condição para que algo ocorra isso é mais utilizado quando se utilizam nós de decisão uma condição de guarda Como já foi visto anteriormente é um texto entre colchetes que estabelece uma condição e uma ou mais mais restrições como por exemplo a quantidade máxima de sinais que pode ser transmitido veremos esse tipo de exemplo em outros vídeos Ah um outro tipo de componente do diagrama de atividades é o nó Inicial
o nó Inicial ele pertence ao grupo de nós de controle que servem para controlar o fluxo da atividade e ele basicamente ele determina o início do fluxo então ele determina que a partir daquele momento a atividade eh começou a ser executada então o nó Inicial era representado por um círculo preenchido então Aqui nós temos um círculo preenchido que indica o início da atividade e um fluxo de controle que atinge o primeiro nó dessa atividade o primeiro nó de ação dessa atividade que é o recebimento que representa o recebimento do número da conta bom e nós
temos o node final de atividade que identifica que a atividade foi concluída e ele é representado por um círculo vazio contendo um círculo preenchido dentro dele então depois da ação de apresentar o saldo há um fluxo de controle que eh indica o final da atividade a partir desse momento a atividade é encerrada nós temos também um outro nó de controle que é o nó de decisão ou nó de união Ah normalmente esse nó de decisão ele é acompanhado de condições de guarda ou seja um texto entre colchetes ah basicamente ele representa quando Ah é necessário
escolher entre seguir um fluxo ah em detrimento de outros fluxos possíveis então ele representa um teste representa uma situação em que eu tenho que eu tenho que decidir a partir da dos valores eh possuídos das condições atuais qual fluxo eu devo seguir eventualmente o nó de decisão ele pode ser utilizado para unir um fluxo que foi dividido anteriormente então nessa situação ele se chama nó de União então Aqui nós temos o exemplo de nó de decisão que é representado por um por um losângulo então depois que a ação consultar conta é executada é disparar o
fluxo de controle atinge sinal de decisão onde se decide se o processo será encerrado caso a a conta seja inválida que é representada a condição representada por um texto ent tri colchetes ou seja uma condição de guarda Então se essa conta não existir então a atividade é encerrada o fluxo de de controle atinge um node final de atividade ou então se a conta for vada passa-se a ação de receber a senha então isso aqui é um exemplo simples de nó de decisão e Aqui nós temos um exemplo simples de diagrama de atividade que representa a
atividade de emissão de saldo do Sistema de Controle bancário que nós estamos modelando ao longo dessas aulas então o processo se inicia com o recebimento do número da conta depois se passa para a ação de consultar conta em seguida Como já foi explicado anteriormente se decide se o processo vai ser encerrado caso a conta seja inválida ou se se a conta for válida se recebe a senha depois se valida a senha se passa a um novo nó de decisão onde se decide se o processo será encerrado caso a conta a senha seja inválida ou se
caso a senha seja válida quando como demonstra a condição de guarda se vai consultar o saldo da conta e o saldo da conta será apresentado ao cliente e depois disso a ade será encerrada Este é um exemplo bem simples de diagrama de atividades nós vamos melhorá-lo nos vídeos seguintes mas esse serve de exemplo básico de um diagrama de atividade então nós nós concluímos a primeira aula sobre o diagrama de atividade eu espero que essa aula tenha sido útil para vocês e se esse vídeo for foi considerado válido foi considerado útil eu peço que vocês deem
um like para esse vídeo que compartilhem com outras pessoas interessadas sobre o assunto e se vocês ainda não estão inscritos que se inscrevam no canal obrigado pela atenção nós nos vemos nos vídeos seguintes