370 research outputs found
Towards Practical Graph-Based Verification for an Object-Oriented Concurrency Model
To harness the power of multi-core and distributed platforms, and to make the
development of concurrent software more accessible to software engineers,
different object-oriented concurrency models such as SCOOP have been proposed.
Despite the practical importance of analysing SCOOP programs, there are
currently no general verification approaches that operate directly on program
code without additional annotations. One reason for this is the multitude of
partially conflicting semantic formalisations for SCOOP (either in theory or
by-implementation). Here, we propose a simple graph transformation system (GTS)
based run-time semantics for SCOOP that grasps the most common features of all
known semantics of the language. This run-time model is implemented in the
state-of-the-art GTS tool GROOVE, which allows us to simulate, analyse, and
verify a subset of SCOOP programs with respect to deadlocks and other
behavioural properties. Besides proposing the first approach to verify SCOOP
programs by automatic translation to GTS, we also highlight our experiences of
applying GTS (and especially GROOVE) for specifying semantics in the form of a
run-time model, which should be transferable to GTS models for other concurrent
languages and libraries.Comment: In Proceedings GaM 2015, arXiv:1504.0244
An Introduction to Ontologies and Ontology Engineering
In the last decades, the use of ontologies in information systems has become more and more popular in various fields, such as web technologies, database integration, multi agent systems, natural language processing, etc. Artificial intelligent researchers have initially borrowed the word “ontology” from Philosophy, then the word spread in many scientific domain and ontologies are now used in several developments. The main goal of this chapter is to answer generic questions about ontologies, such as: Which are the different kinds of ontologies? What is the purpose of the use of ontologies in an application? Which methods can I use to build an ontology
An Object-Oriented Framework for Designing Reusable and Maintainable DEVS Models using Design Patterns
Design patterns are well practices to share software development experiences.
These patterns allow enhancing reusability, readability and maintainability of
architecture and code of software applications. As simulation applies
computerized models to produce traces in order to obtain results and
conclusions, designers of simulation explored design patterns to make the
simulation code more reusable, more readable and easy to maintain, in addition
to design complex software oriented simulation modeling.
In DEVS (Discrete Event System specification), the designers have
successfully designed simulations, frameworks, tools, etc. However, some issues
remain still open and should be explored like how a piece of code that
implements a set of states, events and transitions may be reused to design a
new DEVS model? How may a DEVS model be extended to a new formalism? Etc.
In this paper, we address these issues and we propose a set of patterns that
may serve as guidelines to designers of DEVS models and its extensions and may
contribute to the design of an operational simulation framework. These patterns
are inspired partly by the available designs of DEVS community and software
engineering developers
Towards a Framework for a Domain Specific Open Query Language for Building Information Models
In this paper we present the on-going development of a framework for a Domain Specific Open Query Language for Building Information Models. This query language will make it possible to retrieve data from building information models stored on the open source bimserver.org model server. Even though some partial solutions to this problem already have been suggested, none of them are open source, domain specific, platform independent and implemented at the same time. This paper provides an overview of existing approaches and conceptual sketches of the language in development
Model-driven software engineering for construction engineering: Quo vadis?
Models are an inherent part of the construction industry, which leverages from the steady advancements in information and communication technology. One of these advancements is Building Information Modeling (BIM), which denotes the move from 2D drawings to having semantically rich models of the objects subject to construction. Additionally, the way stakeholders collaborate in construction projects and their organization is revisited. This is commonly denoted as Integrated Project Delivery (IPD). Both BIM and IPD originate from the basic principles of Lean Construction, the vision to minimize waste, increase value, and continuous improvement. The application of Model-driven Software Engineering (MDSE) to BIM is a natural choice. Although several approaches utilizing MDSE for BIM have been proposed, so far no structured overview of the current state of the art has been conducted. Such an overview is vitally needed, because the existing literature is fragmented among multiple research areas. Consequently, in this paper, we present a systematic literature review on the application of MDSE to BIM, IPD and Lean Construction resulting in a systematically derived taxonomy, which we used to classify 97 papers published between 2008 and 2018. Based on the taxonomy, we provide an analysis of the classified research showing (a) where the discourse on model-driven construction engineering currently is, (b) the state of the art of model-driven techniques in construction engineering and (c) open research challenges
- …