Introdução ao Diagrama de Sequência
É um diagrama usado pela UML (Unified Modeling Language ou Linguagem de Modelagem Unificada) que representa graficamente a ordem em que as ações acontecem dentro de uma determinada funcionalidade do sistema. Tem como base o diagrama de caso de uso, pois normalmente há um diagrama de sequência para cada caso de uso.
Também depende de outro diagrama, o de classe, uma vez que as classes dos objetos que aparecem no diagrama estão descritas no diagrama de classe;
Em uma funcionalidade chamada “Autorizar Acesso”, executamos um método chamado “Conferir Login”, por exemplo, a partir disso temos uma sequência de instruções, comandos e troca de mensagens que são ilustradas pelo diagrama.
Este diagrama considera a interação entre todos os componente tais como mensagens enviadas, quando e quais métodos são chamados, como os objetos interagem entre si, etc.
Diagramas de sequência são conhecidos como diagramas de eventos ou cenários de eventos.
Componentes de um Diagrama de Sequência
A linha de vida representa o tempo em que um objeto existe durante um processo;
Os atores envolvidos neste diagrama são idênticos aos atores usados em casos de uso; geralmente o ator primário é responsável por enviar a mensagem inicial que inicia a interação entre os objetos;
Objetos que representam a instância de classes envolvidas no processo;
Possui também as as trocas de mensagens, que representam a comunicação entre objetos e/ou atores. Estas podem ser de:
Ator para ator, representando uma “conversa” entre eles;
Ator para objeto (muito usado) pois o ator produz um evento que força o disparo de um método no objeto;
Objeto para ator indicando a resposta de uma solicitação de serviço feito pelo próprio ator;
Mensagens de retorno dada a um objeto que o chamou;
Mensagens de auto chamada que partem da linha de vida de um objeto e atingem a linha de vida do próprio objeto;
Aplicabilidade
Comumente aplicado em desenvolvimento de software para entender as necessidades de um novo sistema ou para documentar um processo existente.
Analogia com o mundo real
Pode definir a representação do mundo real em determinada ação, como comprar pão na padaria, solicitar um orçamento ou serviço, etc. Possui atores que podem ser pessoas reais, mensagens que são trocadas entre os envolvidos, ações que podem ser disparadas como contar dinheiro, ligar para telefone, conferir cadastro, dentre outras ações.
Vantagens
Este diagrama ilustra um conjunto de interações entre componentes de um sistema — facilitando o entendimento de desenvolvedores que trabalham no projeto, e auxilia na compreensão de cada funcionalidade, detalhando em um cenário existente ou que poderá existir em sua implementação. O mesmo diagrama pode servir como documentação.
Ganhos de otimização e organização da equipe: menos perda de tempo e maior solução de problemas — visto que já foram encontrados na criação do diagrama.
Desvantagens
Como nem tudo são flores, caso o contexto onde for aplicado for grande, demanda maior tempo para gerenciar e manter o diagrama assim como exige engajamento de mais pessoas no processo;
Autores
Este artigo faz parte da disciplina de Engenharia de Software, pela Universidade Luterana do Brasil. Professor Vinicius Silveira Magnus. Desenvolvido por Vicente Patricio, Karine Jappe e Luciel Vitor.