[pt] Contratos de software podem ser escritos como expressões lógicas capazes
de identificar falhas que ocorrem durante a utilização de um software. É possível
implementar a verificação de um contrato em um software através de assertivas
executáveis. No entanto, a forma como assertivas convencionais são
implementadas não é diretamente aplicável a sistemas distribuídos, uma vez que
apresentam dificuldades para avaliar expressões temporais, tampouco as
expressões podem envolver propriedades de diferentes processos. Este trabalho
propõe um mecanismo baseado em logs com meta-informações para a verificação
de contratos em sistemas distribuídos. Uma gramática para redigir contratos
possibilita operações temporais, ou seja, permite a especificação de condições
entre eventos, em diferentes instantes de tempo, ou mesmo garante uma sequência
de eventos, durante um período de tempo. O fluxo de eventos gerado é avaliado
assincronamente em relação à utilização do sistema, pela comparação com
contratos, previamente escritos de acordo com a gramática, que representam as
expectativas sobre o comportamento normal do sistema. / [en] Software contracts can be written as assertions that identify failures
observed while using the software. Software contracts can be implemented
through executable assertions. However, conventional assertions are not directly
applicable in distributed systems, as they present difficulties to evaluate temporal
expressions, as well as expressions involving properties of different processes.
This work proposes a mechanism based on logs with meta-information to evaluate
contracts in distributed systems. A grammar to write contracts enable temporal
operations, e.g., allows specifying conditions between events at different
timestamps, or even guaranteeing a sequence of events over a period of time. The
flow of events is evaluated asynchronously in relation to the system execution, by
comparison with contracts, previously written according to the grammar,
representing the expectations on the behavior of the system.
Identifer | oai:union.ndltd.org:puc-rio.br/oai:MAXWELL.puc-rio.br:24308 |
Date | 19 March 2015 |
Creators | PEDRO DE GOES CARNAVAL ROCHA |
Contributors | ARNDT VON STAA |
Publisher | MAXWELL |
Source Sets | PUC Rio |
Language | Portuguese |
Detected Language | Unknown |
Type | TEXTO |
Page generated in 0.0027 seconds