Comentários
O diagrama de sequência baseia-se no diagrama de casos de uso, elaborando normalmente um diagrama de sequência para cada caso de uso e apoiando-se no diagrama de classes para determinar os objetos das classes envolvidas no processo.
Fonte: Shutterstock.
Deseja ouvir este material?
Áudio disponível no material digital.
Na descrição da situação-problema, referente à funcionalidade para realização de reservas do módulo Recepção de um sistema de hotelaria, você observou, no recorte do diagrama de casos de uso, a representação do caso de uso “Realizar Reserva”, que interage com o ator primário “Hóspede” e está relacionado com o caso de uso estendido “Emitir Comprovante da Reserva”, o qual subentende que a partir das reservas efetivadas, pode-se emitir o comprovante da reserva. Se o hóspede quiser emiti-lo, sendo uma opção, contudo, para toda reserva registrada, o sistema envia um SMS de confirmação da reserva, indicado pelo relacionamento do tipo inclusão “Enviar SMS Confirmação da Reserva”, obrigatoriamente.
Para elaborar o diagrama de sequência, também foi necessário analisar as classes definidas no diagrama de classes para, assim, identificar os objetos que participam da realização do caso de uso. Como recomendação da UML, para facilitar a construção do diagrama de sequência, é possível elaborar a descrição do cenário de cada caso de uso no formato de roteiro principal e de roteiros alternativos. Outra forma é também desenhar o protótipo da interface do caso de uso.
A Figura 3.15 apresenta o diagrama de sequência referente ao cenário principal do caso de uso “Realizar Reserva”.
O diagrama integra os elementos ator primário “Hospede”, que é o responsável por fornecer os dados da reserva a partir da interação com um ator secundário, funcionário da recepção do hotel (o qual não foi demostrado no diagrama, pois atores secundários são opcionais na representação); o objeto “PaginaReserva” que representa o formulário da interface gráfica correspondente ao caso de uso, o objeto “ControladorReserva, responsável pela interação intermediária entre o objeto “PaginaReserva” do tipo fronteira (boundary) com os demais objetos do tipo entidade (entity), para tratar as regras de negócio e o fluxo da aplicação; os objetos “empresa:Empresa”, “hospede:Hospede” e “tipoApartamento:TipoApartamentoaga” que participam da realização do caso de uso, e o objeto “reserva:Reserva” que é criado ao receber uma mensagem construtora “create”. No eixo Y do diagrama, foram demostradas as trocas de mensagens entre os objetos da interação e, no final, foi inserido um fragmento de interação, que representa a opção de estender a execução do caso de uso “Emitir Comprovante da Reserva”, conforme foi estabelecido um relacionamento de extensão para o caso de uso “Realizar Reserva”.