Spelling suggestions: "subject:"deactive systems"" "subject:"eactive systems""
1 |
A Bigraphical Vending Machine as a Webservice: From Specification and Analysis to Implementation using the Bigraph Toolkit SuiteGrzelak, Dominik 24 April 2023 (has links)
A bigraph-driven vending machine is implemented. The application is realized as a Spring-based webservice. Actions can be initiated by REST endpoints.
The system follows a rule-based architecture, where possible operations are grounded on a rule set. Bigraphical Reactive Systems are used for the specification and execution. The actual state of the application is a bigraph stored in a database, which can be viewed and altered directly in the database. A history of states is kept - the application can be transferred to any prior state. The application can be updated or extended by merely changing the bigraphical database model.:First Part:
A system of a vending machine is specified and analyzed using BDSL.
This concerns the static and dynamic aspects of the system.
Second Part:
The analysis results are re-used for the implementation using Bigraph Framework.
The application is realized as a webservice that is built using the Spring framework. / Ein bigraph-gesteuerter Verkaufsautomat wird implementiert. Die Anwendung ist als Spring-basierter Webservice realisiert. Aktionen können über REST-Endpunkte initiiert werden.
Das System folgt einer regelbasierten Architektur, bei der die möglichen Operationen auf einem Regelsatz beruhen. Für die Spezifikation und Ausführung werden Bigraphical Reactive Systems verwendet. Der aktuelle Zustand der Anwendung ist ein in einer Datenbank gespeicherter Bigraph, der direkt in der Datenbank eingesehen und verändert werden kann. Es wird eine Historie der Zustände geführt - die Anwendung kann in einen beliebigen früheren Zustand überführt werden. Die Anwendung kann aktualisiert oder erweitert werden, indem lediglich das bigraphische Datenbankmodell geändert wird.:First Part:
A system of a vending machine is specified and analyzed using BDSL.
This concerns the static and dynamic aspects of the system.
Second Part:
The analysis results are re-used for the implementation using Bigraph Framework.
The application is realized as a webservice that is built using the Spring framework.
|
2 |
Análise de mutantes no contexto de sistemas reativos : uma contribuição para o estabelecimento de estratégias de teste e validação / The Mutation analysis in the context of reactive systems : uma contribuição para o estabelecimento de estratégias de teste e validação testing and validationFabbri, Sandra Camargo Pinto Ferraz 21 October 1996 (has links)
Este trabalho propõe a extensão do critério Análise de Mutantes, originalmente desenvolvido para o teste de programas, para sua aplicação no teste de especificações do aspecto comportamental de Sistemas Reativos. Esses sistemas constituem hoje um componente fundamental em várias atividades humanas e, em geral, falhas nos mesmos podem envolver grandes riscos a vida ou ao patrimônio. Isso toma imprescindível um maior rigor no processo de desenvolvimento e, em particular, na atividade de teste, que é fundamentalmente baseada em simulação, não fornecendo critério que avalie essa atividade de forma quantitativa. A proposta aborda a aplicação da Análise de Mutantes na validação de especificações de Sistemas Reativos baseadas em três técnicas formais, que possuem apoio gráfico, mais utilizadas para este fim: Máquinas de Estados Finitos, Redes de Petri e Statecharts. Para a aplicação do critério nesse contexto, estabeleceu-se um paralelo entre os níveis de programa e de especificação, quanto as suas hipóteses básicas do programador competente e do efeito de acoplamento. Foram definidos os operadores de mutação para cada uma das três técnicas consideradas, além de critérios de mutação alternativa que visam a minimização no custo de aplicação do critério. Foram realizados, manualmente, dois experimentos com o objetivo de validar os mecanismos propostos. Um deles foi aplicado em Máquinas de Estados Finitos e o outro, em Redes de Petri. Os resultados mostram evidências do aspecto complementar do critério Análise de Mutantes em relação as formas disponíveis de teste de especificações existentes na literatura. Apresenta-se também um protótipo da ferramenta Proteum-RSIFSM que apóia a aplicação da Análise de Mutantes em Máquinas de Estados Finitos e discute-se a instanciação dessa ferramenta para apoiar a aplicação do critério nos contextos de Statecharts e Redes de Petri / Reactive Systems are a fundamental component in severa1 activities and failures in these systems may cause risks to life or financia1 losses. Thus, the development process and particularly the test activity must be carried on with extreme care. This work proposes the use of Mutation Analysis - a technique originally proposed at program level testing - in the context of testing and validation of specifications of Reactive Systems; three graphical techniques are considered: Finite State Machines, Petri Nets and Statecharts. Currently, the test of such specifications is mainly based on simulation. The relevance of a test adequacy assessment criterion for such activity has been recognized by many researchers and practitioners and constitutes the objective of this work. The application of Mutation Analysis in this context is based in the assumption that the basic hypothesis valid to the program level - the hypothesis of the competent programmer and coupling effect also hold to the specification level. Mutation operators are defined for the three specification techniques. Also, alternative criteria were defined aiming at reducing the cost of application of Mutation Analysis in this context. Two experiments were manually conducted in order to validate the proposed ideas. The results show evidences of the complementary aspects among existent methods and Mutation Analysis for testing specifications of Reactive Systems. A prototype of Proteum-RSIFSM, a to01 to support Mutation Analysis for Finite State Machines is presented and its extensions to Statecharts and to Petri Nets are discussed
|
3 |
Algorithms and Tools for Learning-based Testing of Reactive SystemsSindhu, Muddassar January 2013 (has links)
In this thesis we investigate the feasibility of learning-based testing (LBT) as a viable testing methodology for reactive systems. In LBT, a large number of test cases are automatically generated from black-box requirements for the system under test (SUT) by combining an incremental learning algorithm with a model checking algorithm. The integration of the SUT with these algorithms in a feedback loop optimizes test generation using the results from previous outcomes. The verdict for each test case is also created automatically in LBT. To realize LBT practically, existing algorithms in the literature both for complete and incremental learning of finite automata were studied. However, limitations in these algorithms led us to design, verify and implement new incremental learning algorithms for DFA and Kripke structures. On the basis of these algorithms we implemented an LBT architecture in a practical tool called LBTest which was evaluated on pedagogical and industrial case studies. The results obtained from both types of case studies show that LBT is an effective methodology which discovers errors in reactive SUTs quickly and can be scaled to test industrial applications. We believe that this technology is easily transferrable to industrial users because of its high degree of automation. / <p>QC 20130312</p>
|
4 |
Attentiveness: Reactivity at ScaleHartman, Gregory S. 01 December 2010 (has links)
Clients of reactive systems often change their priorities. For example, a human user of an email viewer may attempt to display a message while a large attachment is downloading. To the user, an email viewer that delayed display of the message would exhibit a failure similar to priority inversion in real-time systems.
We propose a new quality attribute, attentiveness, that provides a unified way to model the forms of redirection offered by application-level reactive systems to accommodate the changing priorities of their clients, which may be either humans or systems components. Modeling attentiveness as a quality attribute provides system designers with a single conceptual framework for policy and architectural decisions to address trade-offs among criteria such as responsiveness, overall performance, behavioral predictability, and state consistency.
|
5 |
A formal framework for the specification of interactive systemsButterworth, Richard J. January 1997 (has links)
We are primarily concerned with interactive systems whose behaviour is highly reliant on end user activity. A framework for describing and synthesising such systems is developed. This consists of a functional description of the capabilities of a system together with a means of expressing its desired 'usability'. Previous work in this area has concentrated on capturing 'usability properties' in discrete mathematical models. We propose notations for describing systems in a 'requirements' style and a 'specification' style. The requirements style is based on a simple temporal logic and the specification style is based on Lamport's Temporal Logic of Actions (TLA) [74]. System functionality is specified as a collection of 'reactions', the temporal composition of which define the behaviour of the system. By observing and analysing interactions it is possible to determine how 'well' a user performs a given task. We argue that a 'usable' system is one that encourages users to perform their tasks efficiently (i.e. to consistently perform their tasks well) hence a system in which users perform their tasks well in a consistent manner is likely to be a usable system. The use of a given functionality linked with different user interfaces then gives a means by which interfaces (and other aspects) can be compared and suggests how they might be harnessed to bias system use so as to encourage the desired user behaviour. Normalising across different users anq different tasks moves us away from the discrete nature of reactions and hence to comfortably describe the use of a system we employ probabilistic rather than discrete mathematics. We illustrate that framework with worked examples and propose an agenda for further work.
|
6 |
Índice de desempenho aplicado a sistemas reativos baseados em conceitos entrópicos. / Performance index applied to reactive systems based on entropic concepts.GOÉS, Paulo Guilherme Silva. 14 March 2018 (has links)
Submitted by Johnny Rodrigues (johnnyrodrigues@ufcg.edu.br) on 2018-03-14T21:19:45Z
No. of bitstreams: 1
PAULO GUILHERME SILVA DE GOÉS - DISSERTAÇÃO PPGEQ 2016..pdf: 2059035 bytes, checksum: 422a69768c36f09a757f3e56b6dd7eb0 (MD5) / Made available in DSpace on 2018-03-14T21:19:45Z (GMT). No. of bitstreams: 1
PAULO GUILHERME SILVA DE GOÉS - DISSERTAÇÃO PPGEQ 2016..pdf: 2059035 bytes, checksum: 422a69768c36f09a757f3e56b6dd7eb0 (MD5)
Previous issue date: 2016-11-07 / CNPq / As aplicações de novas metodologias para análise e otimização de sistemas reativos podem ser consideradas como fatores decisivos para o crescimento e a consolidação de um dado processo industrial. Vários estudos demonstram que quando fundamentações termodinâmicas, especialmente a segunda lei, são inseridas na metodologia de análise e otimização de processos químicos, melhores resultados são obtidos. Tal fato ocorre devido a capacidade da segunda lei da termodinâmica de mensurar, através da entropia, a tendência de a energia fluir em uma direção particular para que uma distribuição de energia mais uniforme seja alcançada. Tornando-se, assim, a entropia, uma propriedade de fundamental importância na análise de tais processos. Entretanto, apesar do crescente desenvolvimento destas metodologias, observa-se uma carência nos indicadores que comprovam a melhoria do sistema em estudo, isto é, falta
um indicador que consiga de maneira simples e objetiva identificar a direção do estado ótimo de operação. Portanto, este trabalho teve por objetivo o desenvolvimento de um índice de desempenho entrópico para aplicação em sistemas reacionais, o qual está fundamentado na termodinâmica clássica, em especial no conceito da máxima entropia. Tal indicador utiliza o conceito básico da máxima entropia para indicar o quão eficientemente se processou uma determinada reação química, de modo a atingir a máxima produtividade do produto de principal interesse econômico, e consequentemente, a mínima entropia do sistema final. Para ilustrar o desempenho do índice desenvolvido, utilizou-o como parâmetro para a escolha do melhor estado de operação em três estudos de casos. Através do índice desenvolvido, pode-se de maneira simples afirmar qual é a melhor condição de operação, para comprovar tal premissa um conjunto de indicadores clássicos são utilizados de maneira auxiliar. Os resultados indicam ser o índice consistente, eficiente e relevando ainda o quão afastado o processo se encontra da sua condição ótima, além de ser de fácil aplicação. / The applications of new methodologies for analysis and optimization of reactive systems can be considered as decisive factor for the growth and consolidation of a given industrial process. Several studies demonstrate that when thermodynamics fundamentals, especially the second law, are inserted in the methodology of analysis and optimization of chemical process, better results are obtained. This is due to the ability of the second law of thermodynamics to measure, through entropy, the tendency for energy to flow in a particular direction so that a more uniform energy distribution is achieved. Thus, entropy becomes a property of fundamental importance in the analysis of such process. However, despite the growing development of these methodologies, there is a lack indicators that prove the improvement of the system under study, that is, an indicator that simply and objectively identifies the direction of the optimal operating state is lacking. Therefore, the objective of this work was the development of an entropic performance index for application in reactional systems, which is based on classical thermodynamics, especially in the concept of maximum entropy. This indicator uses the basic concept of maximum entropy to indicate how efficiently a given chemical reaction has been processed in order to achieve the maximum productivity of the product of primary economic interest and consequently, the minimum entropy of the final system. To illustrate the performance of the develop index, it was used as a parameter for choosing the best state of
operation in three case studies. Through the developed index, one can easily state which is the best operating condition, to prove this premise a set of classic indicators are used in a auxiliary way. The results indicate that the index is consistent, efficient and also reveals how far the process is from its optimal condition, besides being easy to apply.
|
7 |
Critères de test et génération de séquences de tests pour des systèmes réactifs synchrones modélisés par des équations flots de données et contrôlés par des automates étendus, / Test criteria and automatic test sequences generation for synchronous reactive systems specified by dataflow equations and controled by extended automataJunke, Christophe 09 January 2012 (has links)
Nous nous intéressons aux approches formelles pour le développement de systèmes réactifs critiques. Le langage synchrone Lustre pour la spécification de tels systèmes a subit des évolutions majeurs au cours des dernières années en intégrant dans sa sémantique à base flots de données synchrones des constructions de plus haut-niveau appelées automates de modes (dans le langage Scade 6). Ceux-ci mettent en œuvre l’activation de modes de calculs en fonction des états et des transitions de l’automate, et reposent pour cela sur la sémantique des horloges du langage Lustre. En particulier, nous étudiions la prise en compte des horloges et des automates de modes dans l’outil de génération de tests GATeL dédié à l’origine au langage Lustre mono-horloge (flots de données purs). GATeL génère automatiquement des séquences de tests pour un modèle à partir d’un objectif de test décrit en Lustre à travers une exploration en arrière des dépendances entre flots et selon des teniques de résolution de contraintes. Nous présentons ces différents domaines et la mise en oeuvre des modifications apportées à l’outil pour prendre en compte les automates de modes. Enfin, nous définissons des critères de couverture structurelle pour les automates de modes et montrons alors comment, en les traduisant de manière automatique sous forme d’objectifs de tests, GATeL permet de générer des séquences couvrant ces critères. / Lustre is a synchronous dataflow-oriented language for the specification of reactive systems. Since its definition, it has been extended to support mode automata, a formalism in which computation modes are activated according to an extended state-machine. The semantics of mode-automata is heavily based on an appropriate use of the clock sampling features of Lustre. We present the modifications made in GATeL, an automatic test sequences generator originally designed for a mono-rate subset of Lustre. GATeL performs a lazy goal-oriented test sequences generation, based on constraint logic programming. We modify it so that it can handle the temporal constraints of clocks internally and efficiently generate tests sequences from state-maines specifications. We also present some existing structural test criteria for state-machines and adapt them to the specific case of mode-automata.
|
8 |
Análise de mutantes no contexto de sistemas reativos : uma contribuição para o estabelecimento de estratégias de teste e validação / The Mutation analysis in the context of reactive systems : uma contribuição para o estabelecimento de estratégias de teste e validação testing and validationSandra Camargo Pinto Ferraz Fabbri 21 October 1996 (has links)
Este trabalho propõe a extensão do critério Análise de Mutantes, originalmente desenvolvido para o teste de programas, para sua aplicação no teste de especificações do aspecto comportamental de Sistemas Reativos. Esses sistemas constituem hoje um componente fundamental em várias atividades humanas e, em geral, falhas nos mesmos podem envolver grandes riscos a vida ou ao patrimônio. Isso toma imprescindível um maior rigor no processo de desenvolvimento e, em particular, na atividade de teste, que é fundamentalmente baseada em simulação, não fornecendo critério que avalie essa atividade de forma quantitativa. A proposta aborda a aplicação da Análise de Mutantes na validação de especificações de Sistemas Reativos baseadas em três técnicas formais, que possuem apoio gráfico, mais utilizadas para este fim: Máquinas de Estados Finitos, Redes de Petri e Statecharts. Para a aplicação do critério nesse contexto, estabeleceu-se um paralelo entre os níveis de programa e de especificação, quanto as suas hipóteses básicas do programador competente e do efeito de acoplamento. Foram definidos os operadores de mutação para cada uma das três técnicas consideradas, além de critérios de mutação alternativa que visam a minimização no custo de aplicação do critério. Foram realizados, manualmente, dois experimentos com o objetivo de validar os mecanismos propostos. Um deles foi aplicado em Máquinas de Estados Finitos e o outro, em Redes de Petri. Os resultados mostram evidências do aspecto complementar do critério Análise de Mutantes em relação as formas disponíveis de teste de especificações existentes na literatura. Apresenta-se também um protótipo da ferramenta Proteum-RSIFSM que apóia a aplicação da Análise de Mutantes em Máquinas de Estados Finitos e discute-se a instanciação dessa ferramenta para apoiar a aplicação do critério nos contextos de Statecharts e Redes de Petri / Reactive Systems are a fundamental component in severa1 activities and failures in these systems may cause risks to life or financia1 losses. Thus, the development process and particularly the test activity must be carried on with extreme care. This work proposes the use of Mutation Analysis - a technique originally proposed at program level testing - in the context of testing and validation of specifications of Reactive Systems; three graphical techniques are considered: Finite State Machines, Petri Nets and Statecharts. Currently, the test of such specifications is mainly based on simulation. The relevance of a test adequacy assessment criterion for such activity has been recognized by many researchers and practitioners and constitutes the objective of this work. The application of Mutation Analysis in this context is based in the assumption that the basic hypothesis valid to the program level - the hypothesis of the competent programmer and coupling effect also hold to the specification level. Mutation operators are defined for the three specification techniques. Also, alternative criteria were defined aiming at reducing the cost of application of Mutation Analysis in this context. Two experiments were manually conducted in order to validate the proposed ideas. The results show evidences of the complementary aspects among existent methods and Mutation Analysis for testing specifications of Reactive Systems. A prototype of Proteum-RSIFSM, a to01 to support Mutation Analysis for Finite State Machines is presented and its extensions to Statecharts and to Petri Nets are discussed
|
9 |
Incremental Learning and Testing of Reactive SystemsSindhu, Muddassar January 2011 (has links)
This thesis concerns the design, implementation and evaluation of a specification based testing architecture for reactive systems using the paradigm of learning-based testing. As part of this work we have designed, verified and implemented new incremental learning algorithms for DFA and Kripke structures.These have been integrated with the NuSMV model checker to give a new learning-based testing architecture. We have evaluated our architecture on case studies and shown that the method is effective. / QC 20110822
|
10 |
Using Explicit State Space Enumeration For Specification Based Regression TestingChakrabarti, Sujit Kumar 01 1900 (has links)
Regression testing of an evolving software system may involve significant challenges. While, there would be a requirement of maximising the probability of finding out if the latest changes to the system has broken some existing feature, it needs to be done as economically as possible. A particularly important class of software systems are API libraries. Such libraries would typically constitute a very important component of many software systems. High quality requirements make it imperative to continually optimise the internal implementation of such libraries without affecting the external interface. Therefore, it is preferred to guide the regression testing by some kind of formal specification of the library.
The testing problem comprises of three parts: computation of test data, execution of test, and analysis of test results. Current research mostly focuses on the first part. The objective of test data computation is to maximise the probability of uncovering bugs, and to do it with as few test cases as possible. The problem of test data computation for regression testing is to select a subset of the original test suite running which would suffice to test for bugs probably inserted in the modifications done after the last round of testing. A variant of this problem is that of regression testing of API libraries. The regression testing of an API is usually done by making function calls in such a way that the sequence of function calls thus made suffices a test specification. The test specification in turn embodies some concept of completeness.
In this thesis, we focus on the problem of test sequence computation for the regression testing of API libraries. At the heart of this method lies the creation of a state space model of the API library by reverse engineering it by executing the system, with guidance from an formal API specification. Once the state space graph is obtained, it is used to compute test sequences for satisfying some test specification. We analyse the theoretical complexity of the problem of test sequence computation and provide various heuristic algorithms for the same.
State space explosion is a classical problem encountered whenever there is an attempt of creating a finite state model of a program. Our method also faces this limitation. We explore a simple and intuitive method of ameliorating this problem – by simply reducing the size of the state vector. We develop the theoretical insights into this method. Also, we present experimental results indicating the practical effectiveness of this method.
Finally, we bring all this together into the design and implementation of a tool called Modest.
|
Page generated in 0.083 seconds