9 research outputs found
Pragmatics Annotated Coloured Petri Nets for Protocol Software Generation and Verification
Abstract. PetriCode is a tool that supports automated generation of protocol software from a restricted class of Coloured Petri Nets (CPNs) called Pragmatics Annotated Coloured Petri Nets (PA-CPNs). PetriCode and PA-CPNs have been designed with five main requirements in mind, which include the same model being used for verification and code generation. The PetriCode approach has been discussed and evaluated in earlier papers already. In this paper, we give a formal definition of PA-CPNs and demonstrate how the specific structure of PA-CPNs can be exploited for verification purposes
Aspect-oriented model-driven code generation approach for improving code reusability and maintainability
Software development teams always need methods that can help in producing high-quality software with reduced development effort and delivery time. Model-Driven Engineering (MDE) as well as Aspect-Oriented Software Development (AOSD) techniques help in reducing the delivery time, and also positively contribute to quality of the produced software. Through the use of AOSD techniques in combination with MDE, an integration of excellent abstraction mechanisms of MDE and capabilities of AOSD with regards to modularity and composition of concerns can be perceived, which is expected to enhance the positive effects of both techniques. To this end, different integration approaches have appeared in literature, but aspect-oriented code generation has advantages over the other approaches. Consequently, a number of aspect-oriented code generation approaches have been offered, but all such approaches lack several features mandatory to materialize a workable integration of aspect technologies in the context of MDE. To address these issues, this research was conducted to present an approach for aspect-oriented model-driven code generation, which focuses on elaborating the conceptual relationship between design models and the implementation code, and exploits the same to obtain aspect-oriented code that is more reusable and maintainable. The key outcomes of this research are the elaboration of the conceptual mappings between elements of visual design and constructs of the code, mapping of the visual models to implementation-specific text-based models, and a technique for generation of aspect-oriented code. The applicability of the proposed approach is shown by the use of case studies, whereas the quality of the approach is measured using reusability and maintainability metrics. A comparison of the proposed approach with existing approaches substantiates its efficacy in terms of reusability and maintainability of code, showing an outperformance of other approaches by the proposed approach against 78% of the employed quality metrics
Desenvolvimento de uma ferramenta de geração de código para um sistema de informação
A análise de requisitos de software e design de software são tradicionalmente inconsistentes,
nomeadamente na perspetiva de modelação de negócios, software e rastreabilidade de
implementação [1]. Este problema poderá fazer com que a fase de desenvolvimento dos
projetos seja um processo mais demorado que o esperado, e quando um dos modelos sofre uma
alteração também poderá fazer com que potencialmente não esteja garantida a rastreabilidade,
a partir de qualquer um dos modelos, até à implementação do código.
O problema maior das possíveis alterações dosrequisitos e de não ser mantida a atualização dos
modelos, é que por vezes a adaptação de um sistema, já implementado ou em vias de
implementação, não é simples, podendo fazer com que estas alterações tenham um custo
elevado, tal como um impacto negativo relativamente ao tempo de implementação, podendo
inclusivamente inviabilizar o projeto [2].
O objetivo deste projeto passa pelo desenvolvimento de uma ferramenta que permita gerar o
código que possa ser utilizado, por sua vez, no Hydra Code Generator para gerar o código para
a plataforma Hydra, de forma a estabelecer uma relação direta entre a modelação do negócio e
a implementação, e assim acelerar o processo de implementação do software, e tornar a fase
de desenvolvimento de software mais rápida e automatizada. O código deverá ser gerado tendo
em conta uma modelação de um processo de negócio. A modelação será assim baseada numa
abordagem aplicada a uma ferramenta de geração de código para a framework Hydra [3].
A principal contribuição deste projeto visa acelerar e automatizar o processo de
desenvolvimento de software utilizado na Universidade da Madeira, automatizando a
implementação com a geração de uma Domain Specific Language (DSL) para a framework Hydra,
através da implementação da relação entre o modelo de negócio, o Plataform Independent
Model (PIM), e o modelo de implementação, o Plataform Specific Model (PSM), de forma a
conseguir gerar a interface do utilizador, a lógica de negócio e a base de dados.
Posteriormente, foram realizados casos de estudo como forma de testar e verificar o
funcionamento da ferramenta implementada assim como verificar as suas limitações.Requirements analysis in software and software design are traditionally inconsistent, namely
from the perspective of business modeling, software and implementation traceability [1]. This
problem can make the development phase of the projects a process that takes longer than
expected, and when one of the models is changed, it can also make the traceability not
guaranteed, from any of the models to code implementation.
The biggest problem with possible changes in system requirements and not keeping the the
models updated is that sometimes the adaptation of a system, already implemented or in the
process of being implemented, is not simple, which can cause these changes to have a high cost,
as well as a negative impact in the implementation time, which may even make the project
unfeasible [2].
The objective of this project involves the development of a tool that allows the generation of
code that can be used, in the Hydra Code Generator to generate the code for the Hydra platform,
in order to establish a direct relationship between business modeling and implementation, and
speeding up the software implementation process, and making the software development
phase faster and more automated. The code should be generated taking into account a business
process modeling. The modeling will be based on an approach applied to a code generation tool
for the Hydra framework [3].
The main contribution of this project aims to accelerate and automate the software
development process used at the University of Madeira, automating the implementation with
the generation of a Domain Specific Language (DSL) for the Hydra framework, through the
implementation of the relationship between the business model, the Platform Independent
Model (PIM), and the implementation model, the Platform Specific Model (PSM), in order to
generate the user interface, the business logic and the database.
Later, case studies were carried out as a way of testing and checking the operation of the
implemented tool and to verify its limitations
Entwicklung und Analyse eines Zug-zentrischen Entfernungsmesssystems mittels Colored Petri Nets
Based on the technology trends, the train control system should weaken the proportion of ground facilities, and give trains more individual initiative than in the past. As a result, the safety and flexibility of the train control system can be further improved. In this thesis, an enhanced movement authority system is proposed, which combines advantages of the train-centric communication with current movement authority mechanisms. To obtain the necessary train distance interval data, the onboard equipment and a new train-to-train distance measurement system (TTDMS) are applied as normal and backup strategies, respectively.
While different location technologies have been used to collect data for trains, the development and validation of new systems remain challenges. In this thesis, formal approaches are presented for developing and verifying TTDMS. To assist the system development, the Colored Petri nets (CPNs) are used to formalize and evaluate the system structure and its behavior. Based on the CPN model, the system structure is validated. Additionally, a procedure is proposed to generate a Code Architecture from the formal model. The system performance is assessed in detection range and accuracy. Therefore both mathematical simulation and practical measurements validation are implemented. The results indicate that the system is feasible to carry out distance measurements both in metropolitan and railway lines, and the formal approaches are reusable to develop and verify other systems.
As the target object, TTDMS is based on a spread-spectrum technology to accomplish distance measurement. The measurement is carried out by applying Time of Arrival (TOA) to calculate the distance between two trains, and requires no synchronized time source of transmission. It can calculate the time difference by using the autocorrelation of Pseudo Random Noise (PRN) code. Different from existing systems in air and maritime transport, this system does not require any other localization unit, except for communication architecture.
To guarantee a system can operate as designed, it needs to be validated before its application. Only when system behaviors have been validated other relative performances' evaluations make sense. Based on the unambiguous definition of formal methods, TTDMS can be described much clearer by using formal methods instead of executable codes.Basierend auf technologischen Trends sollte das Zugbeeinflussungssystem den Anteil der Bodenanlagen reduzieren und den Zügen mehr Eigeninitiative geben als in der Vergangenheit, da so die funktionale Sicherheit und die Flexibilität des Zugbeeinflussungssystems erhöht werden können. In dieser Arbeit wird ein verbessertes System vorgeschlagen, das die Vorteile der zugbezogenen Kommunikation mit den aktuellen Fahrbefehlsmechanismen kombiniert. Um die notwendigen Daten des Zugabstandsintervalls zu erhalten, werden die Bordausrüstung und ein neues Zug-zu-Zug-Entfernungsmesssystem (TTDMS) als normale bzw. Backup-Strategien angewendet.
Während verschiedene Ortungstechnolgien zur Zugdatenerfassung genutzt wurden, bleibt die Entwicklung und Validierung neuer Systeme eine Herausforderung. In dieser Arbeit werden formale Ansätze zur Entwicklung und Verifikation von TTDMS vorgestellt. Zur Unterstützung der Systementwicklung werden CPNs zur Formalisierung und Bewertung der Systemstruktur und ihres Verhaltens eingesetzt. Basierend auf dem CPN-Modell wird die Systemstruktur validiert. Zusätzlich wird eine Methode vorgeschlagen, mit der eine Code-Architektur aus dem formalen Modell generiert werden kann. Die Systemleistung wird im Erfassungsbereich und in der Genauigkeit beurteilt. Daher werden sowohl eine mathematische Simulation als auch eine praktische Validierung der Messungen implementiert. Die Ergebnisse zeigen, dass das System in der Lage ist, Entfernungsmessungen in Metro- und Eisenbahnlinien durchzuführen. Zudem sind die formalen Ansätze bei der Entwicklung und Verifikation anderer Systeme wiederverwendbar.
Die Abstandsmessung mit TTDMS basiert auf einem Frequenzspreizungsverfahren. Die Messung wird durchgeführt, indem die Ankunftszeit angewendet wird, um den Abstand zwischen zwei Zügen zu berechnen. Dieses Verfahren erfordert keine Synchronisierung der Zeitquellen der Übertragung. Der Zeitunterschied kann damit berechnet werden, indem die Autokorrelation des Pseudo-Random-Noise-Codes verwendet wird. Im Unterschied zu Systemen im Luft- und Seeverkehr benötigt dieses System keine andere Lokalisierungseinheit als die Kommunikationsarchitektur.
Um zu gewährleisten, dass ein System wie vorgesehen funktioniert, muss es validiert werden. Nur wenn das Systemverhalten validiert wurde, sind Bewertungen anderer relativer Leistungen sinnvoll. Aufgrund ihrer eindeutigen Definition kann das TTDMS mit formalen Methoden klarer beschrieben werden als mit ausführbaren Codes
Eighth Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools, Aarhus, Denmark, October 22-24, 2007
This booklet contains the proceedings of the Eighth Workshop on Practical Use of Coloured Petri Nets and the CPN Tools, October 22-24, 2007. The workshop is organised by the CPN group at the Department of Computer Science, University of Aarhus, Denmark. The papers are also available in electronic form via the web pages: http://www.daimi.au.dk/CPnets/workshop0
Tenth Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools Aarhus, Denmark, October 19-21, 2009
This booklet contains the proceedings of the Tenth Workshop on Practical Use of Coloured Petri Nets and the CPN Tools, October 19-21, 2009. The workshop is organised by the CPN group at the Department of Computer Science, University of Aarhus, Denmark. The papers are also available in electronic form via the web pages: http://www.cs.au.dk/CPnets/events/workshop0
Arquitectura asimétrica multicore con procesador de Petri
Se ha determinado, en una arquitectura multi-Core SMP, el lugar donde incorporar el PP o el HPP sin alterar el ISA del resto de los core.
Se ha obtenido una familia de procesadores que ejecutan los algoritmos de Petri para dar solución a sistemas reactivos y concurrentes, con una sólida verificación formal que permite la programación directa de los procesadores. Para esto, se ha construido el hardware de un PP y un HPP, con un IP-Core en una FPGA, integrado a un sistema multi-Core SMP, que ejecuta distintos tipo de RdP.
Esta familia de procesadores es configurable en distintos aspectos:
- Tamaño del procesador (cantidad de plazas y transiciones).
- Procesadores con tiempo y procesadores temporales.
- Arquitectura heterogénea, que permite distribuir los recursos empleados para instanciar el procesador según se requiera, y obtener un ahorro sustancial.
- La posibilidad de configurar el procesador en pos de obtener los requerimientos y minimizar los recursos. Muy valorado en la construcción de sistemas embebidos.
En los sistemas con alta necesidad de concurrencia y sincronización, donde se ha evaluado este procesador, las prestaciones han mostrado una importante mejora en el desempeño.
El procesador tiene la capacidad de resolver simultáneamente, por conjuntos múltiples disparos, lo que disminuye los tiempos de consulta y decisión, además los programas ejecutados cumplen con los formalismos de las RdP extendidas y sincronizadas, y los resultados de su ejecución son determinísticos. Los tiempos de respuesta para determinar una sincronización son de dos ciclos por consulta (entre la solicitud de un disparo y la respuesta).Facultad de Informátic