Multi-Sincronização em menssage sequence charts - Mérylyn Carneiro Falcão, Flávia (2008)
Message Sequence Charts (MSC) é uma linguagem gráfica, usada na academia e na indústria, cujo objetivo é descrever o comportamento de componentes de sistemas e seus ambientes. A sintaxe e a semântica de um diagrama MSC padrão são definidos pelo International Telecommunication Union. A motivação para esse trabalho foi originada a partir de esforços para modelar cenários de aplicações de aparelhos móveis com o objetivo de automatizar a geração de testes, no contexto de uma colaboração entre Centro de Informática da Universidade Federal de Pernambuco (CIn- UFPE) e a Motorola, no contexto do projeto Brasil Test Center (BTC). Ao modelar algumas destas aplicações que envolvem múltipla sincronização utilizando como linguagem de modelagem, MSC padrão, constatou-se que os diagramas são de difícil entendimento ou com um comportamento diferente do desejado. É proposta neste trabalho uma extensão de MSC com o objetivo de permitir a descrição de mensagens síncronas, que permitem descrever eventos instantâneos (abstraindo-se a duração do tempo real para que a conexão seja estabelecida) e podendo envolver várias instâncias de MSC. Essa extensão é conservativa, no sentido que o comportamento das construções existentes não é afetado pela mesma; além disso, em um mesmo diagrama é possível conter mensagens síncronas e mensagens assíncronas. Foi desenvolvido um algoritmo de transformação, que a partir de um diagrama escrito na notação MSC estendido, gera um diagrama correspondente na notação de MSC padrão. Este algoritmo tem por objetivo permitir a transitividade entre as notações e demonstrar suas equivalências. Este algoritmo de transformação implementa mensagens síncronas como uma seqüência de mensagens assíncronas seguindo um algoritmo particular de handshake. A segunda contribuição desse trabalho é a definição de uma semântica para a notação padrão e estendida de MSC. Essa definição é dada em termos da álgebra de processos CSP (Communicating Sequential Processes). O formalismo introduzido na notação de Message Sequence Charts com CSP permite mostrar a equivalência entre um diagrama na notação de MSC estendido e seu correspondente descrito em MSC padrão, gerado a partir do algoritmo de transformação. Além disso, modelar MSC como um processo descrito na notação CSP permite uma análise sobre seus diagramas, usando um rico conjunto de leis algébricas de CSP, bem como o uso de ferramentas, como FDR2 e o Probe. Finalmente, para validar a estratégia proposta, desenvolveu-se um exemplo que ilustra a utilização da notação estendida de MSC, notação síncrona; a conversão desta notação para a notação padrão e a equivalência entre o MSC estendido e o padrão. Mostramos, ainda, o uso da ferramenta Power Tool Kit(PTK) para geração de casos de teste a partir de diagramas MSC