SlideShare a Scribd company logo
1 of 43
Download to read offline
Introdu¸˜o aos Diagramas de Atividade
       ca

              Alberto Sim˜es
                         o
        alberto.simoes@eu.ipp.pt




    Planeamento de Sistemas de Informa¸˜o
                                      ca
     Mestrado em Informa¸˜o Empresarial
                         ca
                 2012/2013




           Alberto Sim˜es
                      o     Introdu¸˜o aos Diagramas de Atividade
                                   ca                               1/27
Diagramas de Atividade



    Os caso de uso mostram o que o sistema deve fazer;
    Os diagramas de atividade mostram como o fazer;




                     Alberto Sim˜es
                                o     Introdu¸˜o aos Diagramas de Atividade
                                             ca                               2/27
Diagramas de Atividade



    Os caso de uso mostram o que o sistema deve fazer;
    Os diagramas de atividade mostram como o fazer;
    Mostram atividades de alto n´ encadeadas que representam
                                 ıvel
    o processo a ocorrer no sistema;




                     Alberto Sim˜es
                                o     Introdu¸˜o aos Diagramas de Atividade
                                             ca                               2/27
Diagramas de Atividade



    Os caso de uso mostram o que o sistema deve fazer;
    Os diagramas de atividade mostram como o fazer;
    Mostram atividades de alto n´ encadeadas que representam
                                 ıvel
    o processo a ocorrer no sistema;
    S˜o especialmente bons a modelar regras de neg´cio;
     a                                            o




                     Alberto Sim˜es
                                o     Introdu¸˜o aos Diagramas de Atividade
                                             ca                               2/27
Diagramas de Atividade



    Os caso de uso mostram o que o sistema deve fazer;
    Os diagramas de atividade mostram como o fazer;
    Mostram atividades de alto n´ encadeadas que representam
                                 ıvel
    o processo a ocorrer no sistema;
    S˜o especialmente bons a modelar regras de neg´cio;
     a                                            o
    Os diagramas de atividade s˜o os diagramas UML mais
                               a
    acess´
         ıveis:
        usam s´ımbolos similares aos usados na nota¸˜o de fluxogramas;
                                                   ca
        s˜o uteis para descrever processos para uma larga audiˆncia.
         a ´                                                  e




                      Alberto Sim˜es
                                 o     Introdu¸˜o aos Diagramas de Atividade
                                              ca                               2/27
Diagramas de Atividade
Exemplo


  nodo
 inicial
                                                                                   decisão

           Escolher opção
                Criar novo                                [autorizado]        [não autorizado]
           utilizador Blogue
  arco

            Selecionar tipo                                                           Rejeitar
                                                   Criar utilizador
             de utilizador                                                            Utilizador



           Introduzir detalhes                    Enviar e-mail com
  ação
               do utilizador                      detalhes utilizador



            Validar utilizador

                                                                                    nodo
                                                            junção
                                                                                    final

                                 Alberto Sim˜es
                                            o      Introdu¸˜o aos Diagramas de Atividade
                                                          ca                                       3/27
Diagramas de Atividade
Atividades e A¸oes
              c˜


                       nome da                  quadro de
                       atividade                atividade




                     Lavar Carro
                                   espuma   enxaguar            secar




                                                 Ações



       A¸˜es s˜o passos ativos num processo (ou atividade);
         co    a
       Uma a¸˜o pode ser um c´lculo, ou uma tarefa;
              ca                a
       N˜o confundir atividade com a¸˜o, ao descrever um passo
         a                            ca
       num diagrama de atividade, mas n˜o s˜o a mesma coisa;
                                         a a
       A atividade ´ o processo a ser modelado;
                    e
       Uma atividade pode ser colocada dentro de um quadro de
       atividade, juntamente com o nome da atividade;
       O quadro de atividade ´ opcional, e ´ util quando se pretende
                              e            e´
       mostrar mais que uma atividade no mesmo diagrama;
                               Alberto Sim˜es
                                          o              Introdu¸˜o aos Diagramas de Atividade
                                                                ca                               4/27
Diagramas de Atividade
Decis˜es e Jun¸oes
     o        c˜


                             arco de       [autorizado]
                             entrada



                                                      arcos de
                                                       saída



                         guardas
                       (condições)         [não autorizado]

       As decis˜es s˜o usadas quando se precisa de executar uma
                o    a
       sequˆncia de a¸˜es diferente dependendo de uma condi¸˜o;
            e          co                                      ca
       As decis˜es s˜o representadas como nodos em forma de
                o    a
       losango, com um arco de entrada, e m´ltiplos arcos de sa´
                                               u                  ıda;
       Cada ramo de sa´ deve ter uma condi¸˜o (um guarda)
                          ıda                   ca
       escrito entre parˆntesis retos: estas condi¸˜es determinam
                         e                        co
       qual a op¸˜o a seguir;
                  ca
       Apenas um ramo ´ seguido num nodo de decis˜o;
                           e                           a
                          Alberto Sim˜es
                                     o       Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               5/27
Diagramas de Atividade
Decis˜es e Jun¸oes
     o        c˜


                           [nrPalavras = 0]
                                                   Notificar notícia
                                                  não pode ser vazia
                 decisão

                           [nrPalavras > 0 &
                            nrPalavras <= 1000]                                Mostrar
                                                   Guardar notícia
                                                                               estado



                           [nrPalavras > 1000]     Notificar notícia           junção
                                                  demasiado grande


       As condi¸˜es devem ser avaliadas como verdadeiras ou falsas:
               co
       [autorizado] Se a vari´vel autorizado for verdadeira, ent˜o seguir
                               a                                a
                     o arco indicado;
       [nrPalavras > 1000] Se a vari´vel nrPalavras ´ superior a 1000,
                                        a             e
                     ent˜o seguir o arco indicado;
                        a
       Os ramos juntam-se num nodo de jun¸˜o, que marca o final do
                                           ca
       comportamento condicional iniciado no nodo de decis˜o;
                                                          a
       Os nodos de jun¸˜o tamb´m s˜o representados como losangos, mas
                      ca      e   a
       tˆm mais que um ramo de entrada, e apenas um ramo de sa´
        e                                                     ıda.
                               Alberto Sim˜es
                                          o             Introdu¸˜o aos Diagramas de Atividade
                                                               ca                               6/27
Diagramas de Atividade
Decis˜es e Jun¸oes
     o        c˜


                                                   Os diagramas de atividade s˜o
                                                                               a
                                                   mais claros se os guardas nos
                 [em stock]                        nodos de decis˜o forem
                                                                  a
        te s e
       o os qu
           po el
          m ív

                                                   mutuamente exclusivos;
      m p is
    es ão a
  m pç : m




                                                   Se um item estiver em stock e for
ao o O
   a IG
 um ER




                     [esgotado]                    uma encomenda urgente, dois
   P




                                                   guardas s˜o avaliados como
                                                            a
                                                   verdadeiros;
                 [encomenda urgente]
                                                   Qual o ramo seguido, de acordo
                                                   com a especifica¸˜o do UML, est´
                                                                   ca             a
                                                   fora do nosso controlo.
                                                   Podemos resolver esta situa¸˜o
                                                                              ca
                                                   complicada usando guardas
                                                   mutuamente exclusivos.
                                  Alberto Sim˜es
                                             o     Introdu¸˜o aos Diagramas de Atividade
                                                          ca                               7/27
Diagramas de Atividade
Decis˜es e Jun¸oes
     o        c˜




       [em stock e encomenda normal]


        [esgotado e encomenda normal]




        [esgotado e encomenda urgente]

       [em stock e encomenda urgente]




                                Alberto Sim˜es
                                           o     Introdu¸˜o aos Diagramas de Atividade
                                                        ca                               8/27
Diagramas de Atividade
Decis˜es e Jun¸oes
     o        c˜




                                                                             [encomenda normal]


       [em stock e encomenda normal]                       [esgotado]


        [esgotado e encomenda normal]
                                                                             [encomenda urgente]




                                                                             [encomenda normal]
        [esgotado e encomenda urgente]

       [em stock e encomenda urgente]                      [em stock]



                                                                             [encomenda urgente]




                                Alberto Sim˜es
                                           o     Introdu¸˜o aos Diagramas de Atividade
                                                        ca                                         8/27
Diagramas de Atividade
Exerc´ 1
     ıcio


  Crie um diagrama de atividades baseado na seguinte narrativa:
          O departamento de compras faz a gest˜o de pedidos
                                                a
      realizados por outros departamentos da empresa. Um
      funcion´rio do departamento de compras recebe e
              a
      monitoriza um pedido desde que ´ solicitado at´ que
                                       e            e
      chegue ` empresa. Para todos os pedidos abaixo de
              a
      1500e, o funcion´rio preenche um formul´rio de
                       a                       a
      encomenda, e envia-o para um vendedor aprovado.
      Pedidos acima dos 1500e tˆm de ser enviados ao
                                  e
      vendedor para que este envie or¸amentos. Quando os
                                     c
      or¸amentos retornam, o funcion´rio seleciona um destes
        c                            a
      or¸amentos, e preenche um formul´rio de encomenda, e
        c                                a
      envia-o para o vendedor.


                        Alberto Sim˜es
                                   o     Introdu¸˜o aos Diagramas de Atividade
                                                ca                               9/27
Diagramas de Atividades
Exerc´ 2
     ıcio




  Tendo em conta o seu conhecimento sobre o funcionamento de um
  sistema multibanco, esquematize um diagrama de atividade que
  corresponda ao processo de levantamento de dinheiro.


  Tenha em aten¸˜o poss´
                 ca       ıveis falhas do sistema, como sejam o
  c´digo errado, saldo insuficiente, dinheiro em caixa insuficiente,
   o
  etc.




                         Alberto Sim˜es
                                    o     Introdu¸˜o aos Diagramas de Atividade
                                                 ca                               10/27
Diagramas de Atividade
Concorrˆncia
       e


     Considere o processo de
     montagem de um
     computador:
       1   Preparar a caixa;
       2   Preparar a placa m˜e;a
       3   Instalar a placa m˜e;
                               a
       4   Instalar os discos;
       5   Instalar placas de v´ ıdeo,
           som e rede.
     Suponha que todo este
     processo pode ser acelerado,
     preparando a caixa e a placa
     m˜e ao mesmo tempo.
       a
     Como modelar?


                              Alberto Sim˜es
                                         o     Introdu¸˜o aos Diagramas de Atividade
                                                      ca                               11/27
Diagramas de Atividade
Concorrˆncia
       e


     Considere o processo de
     montagem de um
     computador:                                                                Junção
       1   Preparar a caixa;
       2   Preparar a placa m˜e;a
       3   Instalar a placa m˜e;
                               a
       4   Instalar os discos;                                      Preparar
                                                                     Caixa
       5   Instalar placas de v´ ıdeo,
           som e rede.
     Suponha que todo este
     processo pode ser acelerado,                                    Preparar
                                                                    placa mãe
     preparando a caixa e a placa
     m˜e ao mesmo tempo.
       a
     Como modelar?                                             Divisão



                              Alberto Sim˜es
                                         o     Introdu¸˜o aos Diagramas de Atividade
                                                      ca                                 11/27
Diagramas de Atividade
Concorrˆncia
       e



                 Preparar
                  Caixa

                                        instalar        instalar     instalar placas
                                      placa mãe          discos      som,rede,video

                  Preparar
                 placa mãe




       Na divis˜o, o fluxo ´ dividido em dois ou mais fluxos
               a           e
       simultˆneos, iniciando as suas tarefas ao mesmo tempo;
             a
       A jun¸˜o significa que todas as a¸˜es de entrada devem
            ca                         co
       terminar antes de o fluxo continuar;
       A nota¸˜o ´ semelhante para a divis˜o e a jun¸˜o, mas ´ f´cil
              ca e                        a         ca       e a
       reparar na diferen¸a, dado o n´mero de fluxos que entram ou
                         c           u
       saem.
                             Alberto Sim˜es
                                        o          Introdu¸˜o aos Diagramas de Atividade
                                                          ca                               12/27
Diagramas de Atividades
Exerc´ 3
     ıcio

  Esquematize um diagrama de atividades para o seguinte processo:

  Numa agˆncia de viagens o processo de reserva de um voo ´ realizado
           e                                               e
  pelo funcion´rio, de acordo com as recomenda¸˜es do cliente.
              a                                co
  Pretende-se modelar o processo de reserva e compra de um bilhete via
  e-mail para clientes da agˆncia.
                            e
  O funcion´rio recebe o pedido de propostas de voo, com informa¸˜o da
            a                                                      ca
  cidade de partida, destino, e datas desejadas. O funcion´rio responde
                                                            a
  com um conjunto de poss´  ıveis voos e respetivos custos.
  O cliente escolhe um dos voos, ou indica que n˜o quer nenhum deles. Se
                                                 a
  n˜o quiser nenhum deles o processo termina. Se indicar um voo, o
   a
  funcion´rio emite uma fatura para o cliente, enviando-a via email e, ao
         a
  mesmo tempo, faz um pedido de reserva dos bilhetes.
  Quando o cliente pagar, via Multibanco, o funcion´rio emite o recibo e,
                                                   a
  ao mesmo tempo, faz o pedido de emiss˜o dos bilhetes eletr´nicos.
                                         a                   o
  Assim que a emiss˜o ´ confirmada, ´ enviado novo e-mail para o cliente
                    a e              e
  com o recibo e os bilhetes.
                          Alberto Sim˜es
                                     o     Introdu¸˜o aos Diagramas de Atividade
                                                  ca                               13/27
Diagramas de Atividade
Invocar Outras Atividades




       `
       A medida que se adiciona detalhe ao diagrama de atividade, o
       diagrama pode tornar-se demasiado grande;
       Por outro lado, algumas sequˆncias de a¸˜es podem ocorrer
                                   e          co
       mais que uma vez;
       Quando isto acontece, pode-se aumentar a legibilidade
       colocando detalhe de uma a¸˜o num diagrama separado;
                                 ca
       Indica-se que uma a¸˜o ´, na verdade, uma atividade definida
                          ca e
       num outro diagrama, colocando o s´ımbolo .




                            Alberto Sim˜es
                                       o     Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               14/27
Diagramas de Atividade
Invocar Outras Atividades

  Atividade pr´-definida
              e

                            Preparar Placa Mãe

                                    Instalar      Instalar
                                      CPU        Memórias




                                Alberto Sim˜es
                                           o     Introdu¸˜o aos Diagramas de Atividade
                                                        ca                               15/27
Diagramas de Atividade
Invocar Outras Atividades

  Atividade pr´-definida
              e

                            Preparar Placa Mãe

                                    Instalar        Instalar
                                      CPU          Memórias




  Atividade de alto n´
                     ıvel


                Preparar
                 Caixa
                                        Instalar          Instalar        Instalar Placas
                                       Placa mãe           Discos        Som, Video, Rede
               ⋔ Preparar
               Placa mãe




                                Alberto Sim˜es
                                           o       Introdu¸˜o aos Diagramas de Atividade
                                                          ca                                15/27
Diagramas de Atividades
Exerc´ 4
     ıcio




      Esquematize o processo de pagamento de servi¸o ou compra
                                                   c
      no multibanco. Tenha em aten¸˜o poss´
                                   ca     ıveis falhas do sistema.


      Tendo em conta o diagrama anterior e o realizado no exerc´ ıcio
      2, analise como modularizar estes dois processos, colocando-os
      como diagramas independentes invocados por um diagrama de
      alto n´
            ıvel.




                        Alberto Sim˜es
                                   o     Introdu¸˜o aos Diagramas de Atividade
                                                ca                               16/27
Diagramas de Atividade
Eventos Temporais


       Por vezes o tempo ´ um fator importante na atividade;
                         e




                        Alberto Sim˜es
                                   o     Introdu¸˜o aos Diagramas de Atividade
                                                ca                               17/27
Diagramas de Atividade
Eventos Temporais


       Por vezes o tempo ´ um fator importante na atividade;
                         e
       ´ poss´ modelar per´
       E     ıvel           ıodos em espera;
                                         esperar
                                          3 dias

                         enviar                          enviar
                       encomenda                        factura




                        Alberto Sim˜es
                                   o       Introdu¸˜o aos Diagramas de Atividade
                                                  ca                               17/27
Diagramas de Atividade
Eventos Temporais


       Por vezes o tempo ´ um fator importante na atividade;
                         e
       ´ poss´ modelar per´
       E     ıvel           ıodos em espera;
                                         esperar
                                          3 dias

                         enviar                               enviar
                       encomenda                             factura




       Ou processos que iniciam em intervalos regulares de tempo;
                              todos os
                            2 segundos

                                           atualizar barra
                                           de progresso




                        Alberto Sim˜es
                                   o       Introdu¸˜o aos Diagramas de Atividade
                                                  ca                               17/27
Diagramas de Atividades
Objetos


          Nos diagramas de atividades ´ poss´ usar objetos;
                                      e     ıvel
          Representam os dados a fluir ao longo da atividade;
          Um objeto representa algo que est´ dispon´ em
                                           a       ıvel
          determinado ponto da atividade;
          Podem ser usados para mostrar que um objeto ´ criado, usado
                                                      e
          ou modificado, por alguma das a¸˜es circundantes;
                                         co




                           Alberto Sim˜es
                                      o     Introdu¸˜o aos Diagramas de Atividade
                                                   ca                               18/27
Diagramas de Atividades
Objetos


          Nos diagramas de atividades ´ poss´ usar objetos;
                                      e     ıvel
          Representam os dados a fluir ao longo da atividade;
          Um objeto representa algo que est´ dispon´ em
                                           a       ıvel
          determinado ponto da atividade;
          Podem ser usados para mostrar que um objeto ´ criado, usado
                                                      e
          ou modificado, por alguma das a¸˜es circundantes;
                                         co


            Receber Pedido
                                Encomenda
                                                     ⋔ Aprovar               Submeter
            de Encomenda                             Pagamento              Encomenda




                             Objeto




                                 Alberto Sim˜es
                                            o     Introdu¸˜o aos Diagramas de Atividade
                                                         ca                               18/27
Diagramas de Atividades
Objetos

          ´
          E poss´ representar um objeto a mudar de estado ao longo de
                ıvel
          uma atividade.
          O estado do objeto ´ representado em parˆntesis retos.
                             e                    e




                             Alberto Sim˜es
                                        o     Introdu¸˜o aos Diagramas de Atividade
                                                     ca                               19/27
Diagramas de Atividades
Objetos

          ´
          E poss´ representar um objeto a mudar de estado ao longo de
                ıvel
          uma atividade.
          O estado do objeto ´ representado em parˆntesis retos.
                             e                    e

          Receber Pedido   Encomenda          ⋔ Aprovar        Encomenda            Submeter
          de Encomenda     [pendente]        Pagamento         [aprovada]          Encomenda




                                  Alberto Sim˜es
                                             o        Introdu¸˜o aos Diagramas de Atividade
                                                             ca                                19/27
Diagramas de Atividades
Objetos

          ´
          E poss´ representar um objeto a mudar de estado ao longo de
                ıvel
          uma atividade.
          O estado do objeto ´ representado em parˆntesis retos.
                             e                    e

          Receber Pedido   Encomenda          ⋔ Aprovar        Encomenda            Submeter
          de Encomenda     [pendente]        Pagamento         [aprovada]          Encomenda



          Para al´m de funcionar como entrada ou sa´ de a¸˜es, os objetos
                 e                                 ıda   co
          tamb´m podem servir de entrada ou sa´ de uma atividade.
               e                               ıda
          A entrada ou sa´ de uma atividade s˜o desenhadas como objetos
                          ıda                    a
          ligeiramente fora do limite do quadro da atividade.




                                  Alberto Sim˜es
                                             o        Introdu¸˜o aos Diagramas de Atividade
                                                             ca                                19/27
Diagramas de Atividades
Objetos

          ´
          E poss´ representar um objeto a mudar de estado ao longo de
                ıvel
          uma atividade.
          O estado do objeto ´ representado em parˆntesis retos.
                             e                    e

          Receber Pedido   Encomenda             ⋔ Aprovar        Encomenda            Submeter
          de Encomenda     [pendente]           Pagamento         [aprovada]          Encomenda



          Para al´m de funcionar como entrada ou sa´ de a¸˜es, os objetos
                 e                                 ıda   co
          tamb´m podem servir de entrada ou sa´ de uma atividade.
               e                               ıda
          A entrada ou sa´ de uma atividade s˜o desenhadas como objetos
                          ıda                    a
          ligeiramente fora do limite do quadro da atividade.

           Aprovar Pagamento

                                                 Autorizar          Atualizar
                               Calcular
          Encomenda                              Cartão de           Estado             Encomenda
                                Total
                                                  Crédito          Encomenda




                                     Alberto Sim˜es
                                                o        Introdu¸˜o aos Diagramas de Atividade
                                                                ca                                  19/27
Diagramas de Atividades
Envio e Rece¸˜o de Sinais
            ca


       As atividades podem envolver intera¸˜es com pessoas,
                                          co
       sistemas ou processos externos;
       Por exemplo:
             ao autorizar um pagamento por cart˜o de cr´dito, ´ necess´rio
                                                 a        e     e       a
             verificar o cart˜o, interagindo com o servi¸o de aprova¸˜o,
                            a                          c           ca
             disponibilizado pela companhia do cart˜o de cr´dito;
                                                    a       e
       Nos diagramas de atividade, os sinais representam intera¸˜es
                                                               co
       com participantes externos.




                            Alberto Sim˜es
                                       o     Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               20/27
Diagramas de Atividades
Envio e Rece¸˜o de Sinais
            ca


       As atividades podem envolver intera¸˜es com pessoas,
                                          co
       sistemas ou processos externos;
       Por exemplo:
              ao autorizar um pagamento por cart˜o de cr´dito, ´ necess´rio
                                                  a        e     e       a
              verificar o cart˜o, interagindo com o servi¸o de aprova¸˜o,
                             a                          c           ca
              disponibilizado pela companhia do cart˜o de cr´dito;
                                                     a       e
       Nos diagramas de atividade, os sinais representam intera¸˜es
                                                               co
       com participantes externos.


                               Enviar                  Receber
                               Sinal                    Sinal




         Calcular   Enviar Pedido para aprovação       Receber                 Atualizar
          Total          do Cartão de Crédito          Resposta           Estado Encomenda




                               Alberto Sim˜es
                                          o        Introdu¸˜o aos Diagramas de Atividade
                                                          ca                                 20/27
Diagramas de Atividades
Envio e Rece¸˜o de Sinais
            ca


       Receber um Sinal tem o efeito de acordar a a¸˜o;
                                                   ca
             O recetor do sinal saber´ como reagir ao sinal, e espera que
                                     a
             esse sinal chegue, sem saber exatamente quando;




                            Alberto Sim˜es
                                       o     Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               21/27
Diagramas de Atividades
Envio e Rece¸˜o de Sinais
            ca


       Receber um Sinal tem o efeito de acordar a a¸˜o;
                                                   ca
             O recetor do sinal saber´ como reagir ao sinal, e espera que
                                     a
             esse sinal chegue, sem saber exatamente quando;

       Enviar um Sinal tem apenas o efeito de enviar um sinal ou
       mensagem para um participante externo, que saber´ como
                                                        a
       reagir.
             No entanto, esse comportamento n˜o ´ modelado no diagrama
                                             a e
             de atividades.




                            Alberto Sim˜es
                                       o     Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               21/27
Diagramas de Atividades
Envio e Rece¸˜o de Sinais
            ca


       Receber um Sinal tem o efeito de acordar a a¸˜o;
                                                   ca
             O recetor do sinal saber´ como reagir ao sinal, e espera que
                                     a
             esse sinal chegue, sem saber exatamente quando;

       Enviar um Sinal tem apenas o efeito de enviar um sinal ou
       mensagem para um participante externo, que saber´ como
                                                        a
       reagir.
             No entanto, esse comportamento n˜o ´ modelado no diagrama
                                             a e
             de atividades.

       Os sinais s˜o ass´
                  a     ıncronos:
             a atividade n˜o espera por uma resposta depois de enviar um
                           a
             sinal: simplesmente move-se imediatamente para a pr´xima
                                                                 o
             a¸˜o;
              ca
             ao receber um sinal, a atividade espera por uma resposta, e s´
                                                                          o
             avan¸a quando a recebe;
                  c

                            Alberto Sim˜es
                                       o     Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               21/27
Diagramas de Atividades
Envio e Rece¸˜o de Sinais
            ca




       ´
       E poss´ usar a rece¸˜o de um sinal no in´ do fluxo de um
             ıvel         ca                   ıcio
       diagrama;
       Significa que quando a atividade est´ ativa, esse nodo aguarda
                                          a
       por um sinal;
       Assim que o sinal ´ recebido, a atividade inicia;
                         e




                            Alberto Sim˜es
                                       o     Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               22/27
Diagramas de Atividades
Envio e Rece¸˜o de Sinais
            ca




       ´
       E poss´ usar a rece¸˜o de um sinal no in´ do fluxo de um
             ıvel         ca                   ıcio
       diagrama;
       Significa que quando a atividade est´ ativa, esse nodo aguarda
                                          a
       por um sinal;
       Assim que o sinal ´ recebido, a atividade inicia;
                         e


            Receber                  Processar                 Despachar
           Encomenda                Encomenda                  Encomenda




                            Alberto Sim˜es
                                       o     Introdu¸˜o aos Diagramas de Atividade
                                                    ca                               22/27
Diagrama de Atividades
Exerc´
     ıcio


  Considere novamente uma agˆncia de viagens, e o processo de
                            e
  marca¸˜o de um hotel.
       ca

  O cliente dirige-se ` agˆncia de viagens e indica onde pretende o
                      a e
  hotel. A funcion´ria da agˆncia apresenta um conjunto de
                   a          e
  alternativas que o cliente deve validar. Se o cliente escolher uma
  dessas alternativas, ´ feito o pedido ao hotel para a reserva do
                       e
  quarto.
  Assim que o hotel confirma a reserva, o cliente faz o pagamento, e
  ´ emitido um voucher com informa¸˜o da reserva, bem como o
  e                                ca
  recibo respetivo.
  O hotel pode indicar que o quarto j´ n˜o est´ dispon´
                                     a a      a       ıvel, e nesse
  caso a funcion´ria do hotel apresente um novo conjunto de
                 a
  alternativas ao cliente.

                         Alberto Sim˜es
                                    o     Introdu¸˜o aos Diagramas de Atividade
                                                 ca                               23/27
Diagrama de Atividades
Pistas




         Uma atividade pode envolver v´rios participantes diferentes,
                                      a
         como diferentes grupos ou papeis numa organiza¸˜o;
                                                         ca
         Por exemplo:
             Uma atividade de processamento de uma encomenda necessita
             do departamento financeiro (para cobrar ao cliente) e do
             departamento de expedi¸˜o (para o envio);
                                     ca
             Um processo de suporte t´cnico pode necessitar de v´rios
                                       e                           a
             n´
              ıveis de suporte, como o call-center, suporte t´cnico, etc.
                                                             e
         O uso de pistas mostra quais os participantes respons´veis por
                                                              a
         cada a¸˜es;
               co




                           Alberto Sim˜es
                                      o     Introdu¸˜o aos Diagramas de Atividade
                                                   ca                               24/27
Diagrama de Atividades
Pistas



                                                     [problema
                                                                      Informar
         Call Center




                               Anotar                conhecido]                                Terminar
                                                                       Cliente
                               Queixa                                                          Chamada
                                                                      Solução
                                         [else]

                                                               [existe
         Suporte Técnico




                                                                alternativa]    Informar
                                 Investigar
                                                                                 Cliente
                                 Problema
                                                                               Alternativa
                                                  [else]



                                                     [urgente]          Adicionar
                            Investigar                                                                 Informar
                                                                        à BD de
                           Severidade                                                                   Cliente
                                                                     falhas críticas
         Engenharia




                                                                       Adicionar
                                                      [else]
                                                                       à BD de
                                                                      solicitações



                                                  Alberto Sim˜es
                                                             o           Introdu¸˜o aos Diagramas de Atividade
                                                                                ca                                25/27
Diagrama de Atividades
Exerc´
     ıcios


  O processo de inscri¸˜o num gin´sio ´ descrito do seguinte modo:
                      ca         a e

  O sujeito interessado submete um formul´rio, juntamente com o
                                         a
  pagamento de uma taxa de inscri¸˜o.
                                  ca
  Posteriormente ´ realizado um exame m´dico, resultando num
                  e                       e
  relat´rio m´dico que ser´ devidamente arquivado. Se a avalia¸˜o
       o      e            a                                  ca
  do exame ´ positiva, segue-se uma avalia¸˜o f´
             e                             ca ısico-motora por um
  personal trainer, e ´ elaborado um programa personalizado de
                      e
  treino.
  Se a avalia¸˜o do exame m´dico for negativa, o relat´rio m´dico ´
             ca               e                       o     e     e
  entregue ao indiv´
                   ıduo, e a inscri¸˜o anulada.
                                   ca
  O processo de inscri¸˜o no gin´sio conclui ao ser estabelecido o
                      ca        a
  valor da respetiva mensalidade, de acordo com o programa de
  treino definido.
                         Alberto Sim˜es
                                    o     Introdu¸˜o aos Diagramas de Atividade
                                                 ca                               26/27
Diagramas de Atividades
Considera¸oes Finais
         c˜




       Esta apresenta¸˜o introduz cerca de 80% da nota¸˜o habitual
                     ca                               ca
       usada em diagramas de atividade;
       Quando um diagrama n˜o cabe numa p´gina, usam-se
                              a              a
       conectores, pequenos c´
                             ırculos, com um n´mero inscrito, que
                                              u
       correspondem aos pontos de liga¸˜o;
                                        ca
       Acima de tudo, o UML ´ uma linguagem extens´
                               e                       ıvel: para
       al´m da nota¸˜o base, os seus utilizadores s˜o convidados a
         e          ca                             a
       introduzir outros detalhes que possam ser relevantes;




                        Alberto Sim˜es
                                   o     Introdu¸˜o aos Diagramas de Atividade
                                                ca                               27/27

More Related Content

What's hot

Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Adriano Tavares
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
 
Análise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaAnálise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaCursoSENAC
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareCloves da Rocha
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosjormad
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-Mauro Pereira
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoVinícius de Paula
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de RequisitosCloves da Rocha
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Leinylson Fontinele
 

What's hot (20)

Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Diagrama de Casos de Uso
Diagrama de Casos de UsoDiagrama de Casos de Uso
Diagrama de Casos de Uso
 
Análise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaAnálise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de Sequencia
 
Modelos de Engenharia de Software
Modelos de Engenharia de SoftwareModelos de Engenharia de Software
Modelos de Engenharia de Software
 
Teste de Software - Introdução
Teste de Software - IntroduçãoTeste de Software - Introdução
Teste de Software - Introdução
 
Aula 06 - Diagrama de classes
Aula 06 - Diagrama de classesAula 06 - Diagrama de classes
Aula 06 - Diagrama de classes
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Aula 07 - Diagrama de sequencia
Aula 07 - Diagrama de sequenciaAula 07 - Diagrama de sequencia
Aula 07 - Diagrama de sequencia
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Aula 7 - Modelagem de Software
Aula 7 - Modelagem de SoftwareAula 7 - Modelagem de Software
Aula 7 - Modelagem de Software
 
Diagrama de sequência
Diagrama de sequênciaDiagrama de sequência
Diagrama de sequência
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
Fundamentos da Engenharia de Software
Fundamentos da Engenharia de SoftwareFundamentos da Engenharia de Software
Fundamentos da Engenharia de Software
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Aula4 levantamento requisitos
Aula4 levantamento requisitosAula4 levantamento requisitos
Aula4 levantamento requisitos
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 

Viewers also liked (12)

Aula diagrama de classes
Aula diagrama de classesAula diagrama de classes
Aula diagrama de classes
 
Modulo Algorítmica III - Julio Vasquez
Modulo Algorítmica III - Julio VasquezModulo Algorítmica III - Julio Vasquez
Modulo Algorítmica III - Julio Vasquez
 
8 02
8 028 02
8 02
 
Diagrama de Classe
Diagrama de ClasseDiagrama de Classe
Diagrama de Classe
 
Projeto de sistemas com UML - Parte 2
Projeto de sistemas com UML - Parte 2Projeto de sistemas com UML - Parte 2
Projeto de sistemas com UML - Parte 2
 
Aula7 diagrama classes
Aula7 diagrama classesAula7 diagrama classes
Aula7 diagrama classes
 
Aula 7 diagramas_classes2
Aula 7 diagramas_classes2Aula 7 diagramas_classes2
Aula 7 diagramas_classes2
 
Diagrama de classes
Diagrama de classesDiagrama de classes
Diagrama de classes
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
 
Fluxograma de atividades
Fluxograma de atividadesFluxograma de atividades
Fluxograma de atividades
 
Exemplo especificacaoderequisitos(locadora)
Exemplo especificacaoderequisitos(locadora)Exemplo especificacaoderequisitos(locadora)
Exemplo especificacaoderequisitos(locadora)
 
Bases De Dados
Bases De DadosBases De Dados
Bases De Dados
 

More from Alberto Simões

Language Identification: A neural network approach
Language Identification: A neural network approachLanguage Identification: A neural network approach
Language Identification: A neural network approachAlberto Simões
 
Making the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionaryMaking the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionaryAlberto Simões
 
Dictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry TranslationDictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry TranslationAlberto Simões
 
EMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized DictionariesEMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized DictionariesAlberto Simões
 
Aula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de SequênciaAula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de SequênciaAlberto Simões
 
Aula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de InformaçãoAula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de InformaçãoAlberto Simões
 
Building C and C++ libraries with Perl
Building C and C++ libraries with PerlBuilding C and C++ libraries with Perl
Building C and C++ libraries with PerlAlberto Simões
 
Processing XML: a rewriting system approach
Processing XML: a rewriting system approachProcessing XML: a rewriting system approach
Processing XML: a rewriting system approachAlberto Simões
 
Arquitecturas de Tradução Automática
Arquitecturas de Tradução AutomáticaArquitecturas de Tradução Automática
Arquitecturas de Tradução AutomáticaAlberto Simões
 
Extracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução AutomáticaExtracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução AutomáticaAlberto Simões
 

More from Alberto Simões (20)

Source Code Quality
Source Code QualitySource Code Quality
Source Code Quality
 
Language Identification: A neural network approach
Language Identification: A neural network approachLanguage Identification: A neural network approach
Language Identification: A neural network approach
 
Google Maps JS API
Google Maps JS APIGoogle Maps JS API
Google Maps JS API
 
Making the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionaryMaking the most of a 100-year-old dictionary
Making the most of a 100-year-old dictionary
 
Dictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry TranslationDictionary Alignment by Rewrite-based Entry Translation
Dictionary Alignment by Rewrite-based Entry Translation
 
EMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized DictionariesEMLex-A5: Specialized Dictionaries
EMLex-A5: Specialized Dictionaries
 
Modelação de Dados
Modelação de DadosModelação de Dados
Modelação de Dados
 
Aula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de SequênciaAula 04 - Introdução aos Diagramas de Sequência
Aula 04 - Introdução aos Diagramas de Sequência
 
Aula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de InformaçãoAula 01 - Planeamento de Sistemas de Informação
Aula 01 - Planeamento de Sistemas de Informação
 
Building C and C++ libraries with Perl
Building C and C++ libraries with PerlBuilding C and C++ libraries with Perl
Building C and C++ libraries with Perl
 
PLN em Perl
PLN em PerlPLN em Perl
PLN em Perl
 
Classification Systems
Classification SystemsClassification Systems
Classification Systems
 
Redes de Pert
Redes de PertRedes de Pert
Redes de Pert
 
Dancing Tutorial
Dancing TutorialDancing Tutorial
Dancing Tutorial
 
Processing XML: a rewriting system approach
Processing XML: a rewriting system approachProcessing XML: a rewriting system approach
Processing XML: a rewriting system approach
 
Sistemas de Numeração
Sistemas de NumeraçãoSistemas de Numeração
Sistemas de Numeração
 
Álgebra de Boole
Álgebra de BooleÁlgebra de Boole
Álgebra de Boole
 
Arquitecturas de Tradução Automática
Arquitecturas de Tradução AutomáticaArquitecturas de Tradução Automática
Arquitecturas de Tradução Automática
 
Extracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução AutomáticaExtracção de Recursos para Tradução Automática
Extracção de Recursos para Tradução Automática
 
Dicionário Aberto
Dicionário AbertoDicionário Aberto
Dicionário Aberto
 

Aula 03 - Introdução aos Diagramas de Atividade

  • 1. Introdu¸˜o aos Diagramas de Atividade ca Alberto Sim˜es o alberto.simoes@eu.ipp.pt Planeamento de Sistemas de Informa¸˜o ca Mestrado em Informa¸˜o Empresarial ca 2012/2013 Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 1/27
  • 2. Diagramas de Atividade Os caso de uso mostram o que o sistema deve fazer; Os diagramas de atividade mostram como o fazer; Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 2/27
  • 3. Diagramas de Atividade Os caso de uso mostram o que o sistema deve fazer; Os diagramas de atividade mostram como o fazer; Mostram atividades de alto n´ encadeadas que representam ıvel o processo a ocorrer no sistema; Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 2/27
  • 4. Diagramas de Atividade Os caso de uso mostram o que o sistema deve fazer; Os diagramas de atividade mostram como o fazer; Mostram atividades de alto n´ encadeadas que representam ıvel o processo a ocorrer no sistema; S˜o especialmente bons a modelar regras de neg´cio; a o Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 2/27
  • 5. Diagramas de Atividade Os caso de uso mostram o que o sistema deve fazer; Os diagramas de atividade mostram como o fazer; Mostram atividades de alto n´ encadeadas que representam ıvel o processo a ocorrer no sistema; S˜o especialmente bons a modelar regras de neg´cio; a o Os diagramas de atividade s˜o os diagramas UML mais a acess´ ıveis: usam s´ımbolos similares aos usados na nota¸˜o de fluxogramas; ca s˜o uteis para descrever processos para uma larga audiˆncia. a ´ e Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 2/27
  • 6. Diagramas de Atividade Exemplo nodo inicial decisão Escolher opção Criar novo [autorizado] [não autorizado] utilizador Blogue arco Selecionar tipo Rejeitar Criar utilizador de utilizador Utilizador Introduzir detalhes Enviar e-mail com ação do utilizador detalhes utilizador Validar utilizador nodo junção final Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 3/27
  • 7. Diagramas de Atividade Atividades e A¸oes c˜ nome da quadro de atividade atividade Lavar Carro espuma enxaguar secar Ações A¸˜es s˜o passos ativos num processo (ou atividade); co a Uma a¸˜o pode ser um c´lculo, ou uma tarefa; ca a N˜o confundir atividade com a¸˜o, ao descrever um passo a ca num diagrama de atividade, mas n˜o s˜o a mesma coisa; a a A atividade ´ o processo a ser modelado; e Uma atividade pode ser colocada dentro de um quadro de atividade, juntamente com o nome da atividade; O quadro de atividade ´ opcional, e ´ util quando se pretende e e´ mostrar mais que uma atividade no mesmo diagrama; Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 4/27
  • 8. Diagramas de Atividade Decis˜es e Jun¸oes o c˜ arco de [autorizado] entrada arcos de saída guardas (condições) [não autorizado] As decis˜es s˜o usadas quando se precisa de executar uma o a sequˆncia de a¸˜es diferente dependendo de uma condi¸˜o; e co ca As decis˜es s˜o representadas como nodos em forma de o a losango, com um arco de entrada, e m´ltiplos arcos de sa´ u ıda; Cada ramo de sa´ deve ter uma condi¸˜o (um guarda) ıda ca escrito entre parˆntesis retos: estas condi¸˜es determinam e co qual a op¸˜o a seguir; ca Apenas um ramo ´ seguido num nodo de decis˜o; e a Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 5/27
  • 9. Diagramas de Atividade Decis˜es e Jun¸oes o c˜ [nrPalavras = 0] Notificar notícia não pode ser vazia decisão [nrPalavras > 0 & nrPalavras <= 1000] Mostrar Guardar notícia estado [nrPalavras > 1000] Notificar notícia junção demasiado grande As condi¸˜es devem ser avaliadas como verdadeiras ou falsas: co [autorizado] Se a vari´vel autorizado for verdadeira, ent˜o seguir a a o arco indicado; [nrPalavras > 1000] Se a vari´vel nrPalavras ´ superior a 1000, a e ent˜o seguir o arco indicado; a Os ramos juntam-se num nodo de jun¸˜o, que marca o final do ca comportamento condicional iniciado no nodo de decis˜o; a Os nodos de jun¸˜o tamb´m s˜o representados como losangos, mas ca e a tˆm mais que um ramo de entrada, e apenas um ramo de sa´ e ıda. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 6/27
  • 10. Diagramas de Atividade Decis˜es e Jun¸oes o c˜ Os diagramas de atividade s˜o a mais claros se os guardas nos [em stock] nodos de decis˜o forem a te s e o os qu po el m ív mutuamente exclusivos; m p is es ão a m pç : m Se um item estiver em stock e for ao o O a IG um ER [esgotado] uma encomenda urgente, dois P guardas s˜o avaliados como a verdadeiros; [encomenda urgente] Qual o ramo seguido, de acordo com a especifica¸˜o do UML, est´ ca a fora do nosso controlo. Podemos resolver esta situa¸˜o ca complicada usando guardas mutuamente exclusivos. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 7/27
  • 11. Diagramas de Atividade Decis˜es e Jun¸oes o c˜ [em stock e encomenda normal] [esgotado e encomenda normal] [esgotado e encomenda urgente] [em stock e encomenda urgente] Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 8/27
  • 12. Diagramas de Atividade Decis˜es e Jun¸oes o c˜ [encomenda normal] [em stock e encomenda normal] [esgotado] [esgotado e encomenda normal] [encomenda urgente] [encomenda normal] [esgotado e encomenda urgente] [em stock e encomenda urgente] [em stock] [encomenda urgente] Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 8/27
  • 13. Diagramas de Atividade Exerc´ 1 ıcio Crie um diagrama de atividades baseado na seguinte narrativa: O departamento de compras faz a gest˜o de pedidos a realizados por outros departamentos da empresa. Um funcion´rio do departamento de compras recebe e a monitoriza um pedido desde que ´ solicitado at´ que e e chegue ` empresa. Para todos os pedidos abaixo de a 1500e, o funcion´rio preenche um formul´rio de a a encomenda, e envia-o para um vendedor aprovado. Pedidos acima dos 1500e tˆm de ser enviados ao e vendedor para que este envie or¸amentos. Quando os c or¸amentos retornam, o funcion´rio seleciona um destes c a or¸amentos, e preenche um formul´rio de encomenda, e c a envia-o para o vendedor. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 9/27
  • 14. Diagramas de Atividades Exerc´ 2 ıcio Tendo em conta o seu conhecimento sobre o funcionamento de um sistema multibanco, esquematize um diagrama de atividade que corresponda ao processo de levantamento de dinheiro. Tenha em aten¸˜o poss´ ca ıveis falhas do sistema, como sejam o c´digo errado, saldo insuficiente, dinheiro em caixa insuficiente, o etc. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 10/27
  • 15. Diagramas de Atividade Concorrˆncia e Considere o processo de montagem de um computador: 1 Preparar a caixa; 2 Preparar a placa m˜e;a 3 Instalar a placa m˜e; a 4 Instalar os discos; 5 Instalar placas de v´ ıdeo, som e rede. Suponha que todo este processo pode ser acelerado, preparando a caixa e a placa m˜e ao mesmo tempo. a Como modelar? Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 11/27
  • 16. Diagramas de Atividade Concorrˆncia e Considere o processo de montagem de um computador: Junção 1 Preparar a caixa; 2 Preparar a placa m˜e;a 3 Instalar a placa m˜e; a 4 Instalar os discos; Preparar Caixa 5 Instalar placas de v´ ıdeo, som e rede. Suponha que todo este processo pode ser acelerado, Preparar placa mãe preparando a caixa e a placa m˜e ao mesmo tempo. a Como modelar? Divisão Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 11/27
  • 17. Diagramas de Atividade Concorrˆncia e Preparar Caixa instalar instalar instalar placas placa mãe discos som,rede,video Preparar placa mãe Na divis˜o, o fluxo ´ dividido em dois ou mais fluxos a e simultˆneos, iniciando as suas tarefas ao mesmo tempo; a A jun¸˜o significa que todas as a¸˜es de entrada devem ca co terminar antes de o fluxo continuar; A nota¸˜o ´ semelhante para a divis˜o e a jun¸˜o, mas ´ f´cil ca e a ca e a reparar na diferen¸a, dado o n´mero de fluxos que entram ou c u saem. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 12/27
  • 18. Diagramas de Atividades Exerc´ 3 ıcio Esquematize um diagrama de atividades para o seguinte processo: Numa agˆncia de viagens o processo de reserva de um voo ´ realizado e e pelo funcion´rio, de acordo com as recomenda¸˜es do cliente. a co Pretende-se modelar o processo de reserva e compra de um bilhete via e-mail para clientes da agˆncia. e O funcion´rio recebe o pedido de propostas de voo, com informa¸˜o da a ca cidade de partida, destino, e datas desejadas. O funcion´rio responde a com um conjunto de poss´ ıveis voos e respetivos custos. O cliente escolhe um dos voos, ou indica que n˜o quer nenhum deles. Se a n˜o quiser nenhum deles o processo termina. Se indicar um voo, o a funcion´rio emite uma fatura para o cliente, enviando-a via email e, ao a mesmo tempo, faz um pedido de reserva dos bilhetes. Quando o cliente pagar, via Multibanco, o funcion´rio emite o recibo e, a ao mesmo tempo, faz o pedido de emiss˜o dos bilhetes eletr´nicos. a o Assim que a emiss˜o ´ confirmada, ´ enviado novo e-mail para o cliente a e e com o recibo e os bilhetes. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 13/27
  • 19. Diagramas de Atividade Invocar Outras Atividades ` A medida que se adiciona detalhe ao diagrama de atividade, o diagrama pode tornar-se demasiado grande; Por outro lado, algumas sequˆncias de a¸˜es podem ocorrer e co mais que uma vez; Quando isto acontece, pode-se aumentar a legibilidade colocando detalhe de uma a¸˜o num diagrama separado; ca Indica-se que uma a¸˜o ´, na verdade, uma atividade definida ca e num outro diagrama, colocando o s´ımbolo . Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 14/27
  • 20. Diagramas de Atividade Invocar Outras Atividades Atividade pr´-definida e Preparar Placa Mãe Instalar Instalar CPU Memórias Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 15/27
  • 21. Diagramas de Atividade Invocar Outras Atividades Atividade pr´-definida e Preparar Placa Mãe Instalar Instalar CPU Memórias Atividade de alto n´ ıvel Preparar Caixa Instalar Instalar Instalar Placas Placa mãe Discos Som, Video, Rede ⋔ Preparar Placa mãe Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 15/27
  • 22. Diagramas de Atividades Exerc´ 4 ıcio Esquematize o processo de pagamento de servi¸o ou compra c no multibanco. Tenha em aten¸˜o poss´ ca ıveis falhas do sistema. Tendo em conta o diagrama anterior e o realizado no exerc´ ıcio 2, analise como modularizar estes dois processos, colocando-os como diagramas independentes invocados por um diagrama de alto n´ ıvel. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 16/27
  • 23. Diagramas de Atividade Eventos Temporais Por vezes o tempo ´ um fator importante na atividade; e Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 17/27
  • 24. Diagramas de Atividade Eventos Temporais Por vezes o tempo ´ um fator importante na atividade; e ´ poss´ modelar per´ E ıvel ıodos em espera; esperar 3 dias enviar enviar encomenda factura Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 17/27
  • 25. Diagramas de Atividade Eventos Temporais Por vezes o tempo ´ um fator importante na atividade; e ´ poss´ modelar per´ E ıvel ıodos em espera; esperar 3 dias enviar enviar encomenda factura Ou processos que iniciam em intervalos regulares de tempo; todos os 2 segundos atualizar barra de progresso Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 17/27
  • 26. Diagramas de Atividades Objetos Nos diagramas de atividades ´ poss´ usar objetos; e ıvel Representam os dados a fluir ao longo da atividade; Um objeto representa algo que est´ dispon´ em a ıvel determinado ponto da atividade; Podem ser usados para mostrar que um objeto ´ criado, usado e ou modificado, por alguma das a¸˜es circundantes; co Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 18/27
  • 27. Diagramas de Atividades Objetos Nos diagramas de atividades ´ poss´ usar objetos; e ıvel Representam os dados a fluir ao longo da atividade; Um objeto representa algo que est´ dispon´ em a ıvel determinado ponto da atividade; Podem ser usados para mostrar que um objeto ´ criado, usado e ou modificado, por alguma das a¸˜es circundantes; co Receber Pedido Encomenda ⋔ Aprovar Submeter de Encomenda Pagamento Encomenda Objeto Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 18/27
  • 28. Diagramas de Atividades Objetos ´ E poss´ representar um objeto a mudar de estado ao longo de ıvel uma atividade. O estado do objeto ´ representado em parˆntesis retos. e e Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 19/27
  • 29. Diagramas de Atividades Objetos ´ E poss´ representar um objeto a mudar de estado ao longo de ıvel uma atividade. O estado do objeto ´ representado em parˆntesis retos. e e Receber Pedido Encomenda ⋔ Aprovar Encomenda Submeter de Encomenda [pendente] Pagamento [aprovada] Encomenda Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 19/27
  • 30. Diagramas de Atividades Objetos ´ E poss´ representar um objeto a mudar de estado ao longo de ıvel uma atividade. O estado do objeto ´ representado em parˆntesis retos. e e Receber Pedido Encomenda ⋔ Aprovar Encomenda Submeter de Encomenda [pendente] Pagamento [aprovada] Encomenda Para al´m de funcionar como entrada ou sa´ de a¸˜es, os objetos e ıda co tamb´m podem servir de entrada ou sa´ de uma atividade. e ıda A entrada ou sa´ de uma atividade s˜o desenhadas como objetos ıda a ligeiramente fora do limite do quadro da atividade. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 19/27
  • 31. Diagramas de Atividades Objetos ´ E poss´ representar um objeto a mudar de estado ao longo de ıvel uma atividade. O estado do objeto ´ representado em parˆntesis retos. e e Receber Pedido Encomenda ⋔ Aprovar Encomenda Submeter de Encomenda [pendente] Pagamento [aprovada] Encomenda Para al´m de funcionar como entrada ou sa´ de a¸˜es, os objetos e ıda co tamb´m podem servir de entrada ou sa´ de uma atividade. e ıda A entrada ou sa´ de uma atividade s˜o desenhadas como objetos ıda a ligeiramente fora do limite do quadro da atividade. Aprovar Pagamento Autorizar Atualizar Calcular Encomenda Cartão de Estado Encomenda Total Crédito Encomenda Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 19/27
  • 32. Diagramas de Atividades Envio e Rece¸˜o de Sinais ca As atividades podem envolver intera¸˜es com pessoas, co sistemas ou processos externos; Por exemplo: ao autorizar um pagamento por cart˜o de cr´dito, ´ necess´rio a e e a verificar o cart˜o, interagindo com o servi¸o de aprova¸˜o, a c ca disponibilizado pela companhia do cart˜o de cr´dito; a e Nos diagramas de atividade, os sinais representam intera¸˜es co com participantes externos. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 20/27
  • 33. Diagramas de Atividades Envio e Rece¸˜o de Sinais ca As atividades podem envolver intera¸˜es com pessoas, co sistemas ou processos externos; Por exemplo: ao autorizar um pagamento por cart˜o de cr´dito, ´ necess´rio a e e a verificar o cart˜o, interagindo com o servi¸o de aprova¸˜o, a c ca disponibilizado pela companhia do cart˜o de cr´dito; a e Nos diagramas de atividade, os sinais representam intera¸˜es co com participantes externos. Enviar Receber Sinal Sinal Calcular Enviar Pedido para aprovação Receber Atualizar Total do Cartão de Crédito Resposta Estado Encomenda Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 20/27
  • 34. Diagramas de Atividades Envio e Rece¸˜o de Sinais ca Receber um Sinal tem o efeito de acordar a a¸˜o; ca O recetor do sinal saber´ como reagir ao sinal, e espera que a esse sinal chegue, sem saber exatamente quando; Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 21/27
  • 35. Diagramas de Atividades Envio e Rece¸˜o de Sinais ca Receber um Sinal tem o efeito de acordar a a¸˜o; ca O recetor do sinal saber´ como reagir ao sinal, e espera que a esse sinal chegue, sem saber exatamente quando; Enviar um Sinal tem apenas o efeito de enviar um sinal ou mensagem para um participante externo, que saber´ como a reagir. No entanto, esse comportamento n˜o ´ modelado no diagrama a e de atividades. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 21/27
  • 36. Diagramas de Atividades Envio e Rece¸˜o de Sinais ca Receber um Sinal tem o efeito de acordar a a¸˜o; ca O recetor do sinal saber´ como reagir ao sinal, e espera que a esse sinal chegue, sem saber exatamente quando; Enviar um Sinal tem apenas o efeito de enviar um sinal ou mensagem para um participante externo, que saber´ como a reagir. No entanto, esse comportamento n˜o ´ modelado no diagrama a e de atividades. Os sinais s˜o ass´ a ıncronos: a atividade n˜o espera por uma resposta depois de enviar um a sinal: simplesmente move-se imediatamente para a pr´xima o a¸˜o; ca ao receber um sinal, a atividade espera por uma resposta, e s´ o avan¸a quando a recebe; c Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 21/27
  • 37. Diagramas de Atividades Envio e Rece¸˜o de Sinais ca ´ E poss´ usar a rece¸˜o de um sinal no in´ do fluxo de um ıvel ca ıcio diagrama; Significa que quando a atividade est´ ativa, esse nodo aguarda a por um sinal; Assim que o sinal ´ recebido, a atividade inicia; e Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 22/27
  • 38. Diagramas de Atividades Envio e Rece¸˜o de Sinais ca ´ E poss´ usar a rece¸˜o de um sinal no in´ do fluxo de um ıvel ca ıcio diagrama; Significa que quando a atividade est´ ativa, esse nodo aguarda a por um sinal; Assim que o sinal ´ recebido, a atividade inicia; e Receber Processar Despachar Encomenda Encomenda Encomenda Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 22/27
  • 39. Diagrama de Atividades Exerc´ ıcio Considere novamente uma agˆncia de viagens, e o processo de e marca¸˜o de um hotel. ca O cliente dirige-se ` agˆncia de viagens e indica onde pretende o a e hotel. A funcion´ria da agˆncia apresenta um conjunto de a e alternativas que o cliente deve validar. Se o cliente escolher uma dessas alternativas, ´ feito o pedido ao hotel para a reserva do e quarto. Assim que o hotel confirma a reserva, o cliente faz o pagamento, e ´ emitido um voucher com informa¸˜o da reserva, bem como o e ca recibo respetivo. O hotel pode indicar que o quarto j´ n˜o est´ dispon´ a a a ıvel, e nesse caso a funcion´ria do hotel apresente um novo conjunto de a alternativas ao cliente. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 23/27
  • 40. Diagrama de Atividades Pistas Uma atividade pode envolver v´rios participantes diferentes, a como diferentes grupos ou papeis numa organiza¸˜o; ca Por exemplo: Uma atividade de processamento de uma encomenda necessita do departamento financeiro (para cobrar ao cliente) e do departamento de expedi¸˜o (para o envio); ca Um processo de suporte t´cnico pode necessitar de v´rios e a n´ ıveis de suporte, como o call-center, suporte t´cnico, etc. e O uso de pistas mostra quais os participantes respons´veis por a cada a¸˜es; co Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 24/27
  • 41. Diagrama de Atividades Pistas [problema Informar Call Center Anotar conhecido] Terminar Cliente Queixa Chamada Solução [else] [existe Suporte Técnico alternativa] Informar Investigar Cliente Problema Alternativa [else] [urgente] Adicionar Investigar Informar à BD de Severidade Cliente falhas críticas Engenharia Adicionar [else] à BD de solicitações Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 25/27
  • 42. Diagrama de Atividades Exerc´ ıcios O processo de inscri¸˜o num gin´sio ´ descrito do seguinte modo: ca a e O sujeito interessado submete um formul´rio, juntamente com o a pagamento de uma taxa de inscri¸˜o. ca Posteriormente ´ realizado um exame m´dico, resultando num e e relat´rio m´dico que ser´ devidamente arquivado. Se a avalia¸˜o o e a ca do exame ´ positiva, segue-se uma avalia¸˜o f´ e ca ısico-motora por um personal trainer, e ´ elaborado um programa personalizado de e treino. Se a avalia¸˜o do exame m´dico for negativa, o relat´rio m´dico ´ ca e o e e entregue ao indiv´ ıduo, e a inscri¸˜o anulada. ca O processo de inscri¸˜o no gin´sio conclui ao ser estabelecido o ca a valor da respetiva mensalidade, de acordo com o programa de treino definido. Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 26/27
  • 43. Diagramas de Atividades Considera¸oes Finais c˜ Esta apresenta¸˜o introduz cerca de 80% da nota¸˜o habitual ca ca usada em diagramas de atividade; Quando um diagrama n˜o cabe numa p´gina, usam-se a a conectores, pequenos c´ ırculos, com um n´mero inscrito, que u correspondem aos pontos de liga¸˜o; ca Acima de tudo, o UML ´ uma linguagem extens´ e ıvel: para al´m da nota¸˜o base, os seus utilizadores s˜o convidados a e ca a introduzir outros detalhes que possam ser relevantes; Alberto Sim˜es o Introdu¸˜o aos Diagramas de Atividade ca 27/27