797,665 research outputs found
Formal Modelling, Testing and Verification of HSA Memory Models using Event-B
The HSA Foundation has produced the HSA Platform System Architecture
Specification that goes a long way towards addressing the need for a clear and
consistent method for specifying weakly consistent memory. HSA is specified in
a natural language which makes it open to multiple ambiguous interpretations
and could render bugs in implementations of it in hardware and software. In
this paper we present a formal model of HSA which can be used in the
development and verification of both concurrent software applications as well
as in the development and verification of the HSA-compliant platform itself. We
use the Event-B language to build a provably correct hierarchy of models from
the most abstract to a detailed refinement of HSA close to implementation
level. Our memory models are general in that they represent an arbitrary number
of masters, programs and instruction interleavings. We reason about such
general models using refinements. Using Rodin tool we are able to model and
verify an entire hierarchy of models using proofs to establish that each
refinement is correct. We define an automated validation method that allows us
to test baseline compliance of the model against a suite of published HSA
litmus tests. Once we complete model validation we develop a coverage driven
method to extract a richer set of tests from the Event-B model and a user
specified coverage model. These tests are used for extensive regression testing
of hardware and software systems. Our method of refinement based formal
modelling, baseline compliance testing of the model and coverage driven test
extraction using the single language of Event-B is a new way to address a key
challenge facing the design and verification of multi-core systems.Comment: 9 pages, 10 figure
Population Potentials and Development Levels: Empirical Findings in the European Union
In this paper we deal with the issue of the spatial structure of Europe. In order to carry out our study, we use the technique of gravity models to compute population potentials, and then plot potential maps, which allow us to represent the main lines of force in terms of the geographical distribution of the population and consequently the main economic activity in the area as well. We also use the data which corresponds to the future acceding countries in order to better analyse the effects of European Union enlargement from a spatial perspective. The findings about the spatial structure of Europe were carried out to a further stage, testing econometrically the explanatory power that population potentials have on the levels of development. Using a logarithm specification for the relationship between population potentials and levels of development and estimating cross-section regressions for different time periods we evaluated if the explanatory power of the population potentials was hold constant over time or if on the contrary it was decreasing as long as we move forward testing our model for the latest data available (1999). Our proposed relationship was estimated in different years, 1982, 1989, 1994, 1997 and 1999. What we have found is that closeness to large consumer markets or in other words, market potential, was an important explanatory variable for regional income in the early eighties and that it has decreased its significance in determining regions income on the 1990´s. Thus dynamic income regions have also emerged in the periphery, and need not necessarily be close to rich regions. The main reasons for this tendency reside in a trend towards the delocalisation of economic activities driven by technical advances in transport, information and communication, together with tendencies towards convergence in a unified economic space and the impulse generated by the new EU regional policy which began in 1987 after the European Single Act. JEL classification: A12; J11; N30; R23 Keywords: Spatial structure; Population Potential contours; Spatial planning; Potential maps; Population settlements
Incorporating Agile with MDA Case Study: Online Polling System
Nowadays agile software development is used in greater extend but for small
organizations only, whereas MDA is suitable for large organizations but yet not
standardized. In this paper the pros and cons of Model Driven Architecture
(MDA) and Extreme programming have been discussed. As both of them have some
limitations and cannot be used in both large scale and small scale
organizations a new architecture has been proposed. In this model it is tried
to opt the advantages and important values to overcome the limitations of both
the software development procedures. In support to the proposed architecture
the implementation of it on Online Polling System has been discussed and all
the phases of software development have been explained.Comment: 14 pages,1 Figure,1 Tabl
Living Innovation Laboratory Model Design and Implementation
Living Innovation Laboratory (LIL) is an open and recyclable way for
multidisciplinary researchers to remote control resources and co-develop user
centered projects. In the past few years, there were several papers about LIL
published and trying to discuss and define the model and architecture of LIL.
People all acknowledge about the three characteristics of LIL: user centered,
co-creation, and context aware, which make it distinguished from test platform
and other innovation approaches. Its existing model consists of five phases:
initialization, preparation, formation, development, and evaluation.
Goal Net is a goal-oriented methodology to formularize a progress. In this
thesis, Goal Net is adopted to subtract a detailed and systemic methodology for
LIL. LIL Goal Net Model breaks the five phases of LIL into more detailed steps.
Big data, crowd sourcing, crowd funding and crowd testing take place in
suitable steps to realize UUI, MCC and PCA throughout the innovation process in
LIL 2.0. It would become a guideline for any company or organization to develop
a project in the form of an LIL 2.0 project.
To prove the feasibility of LIL Goal Net Model, it was applied to two real
cases. One project is a Kinect game and the other one is an Internet product.
They were both transformed to LIL 2.0 successfully, based on LIL goal net based
methodology. The two projects were evaluated by phenomenography, which was a
qualitative research method to study human experiences and their relations in
hope of finding the better way to improve human experiences. Through
phenomenographic study, the positive evaluation results showed that the new
generation of LIL had more advantages in terms of effectiveness and efficiency.Comment: This is a book draf
On the User Perception of Configurable Reference Process Models - Initial Insights
Enterprise Systems potentially lead to significant efficiency gains but require a well-conducted configuration process. A configurable reference modelling language based on the widely used EPC notation, which can be used to specify Configurable EPCs (C-EPCs), has been developed to support the task of Enterprise Systems configuration. This paper presents a laboratory experiment on C-EPCs and discusses empirical data on the comparison of C-EPCs to regular EPCs. Using the Method Adoption Model we report on modeller’s perceptions as to the usefulness and ease of use of C-EPCs, concluding that C-EPCs provide sufficient yet improvable conceptual support towards reference model configuration
Recommended from our members
Modular and Safe Event-Driven Programming
Asynchronous event-driven systems are ubiquitous across domains such as device drivers, distributed systems, and robotics. These systems are notoriously hard to get right as the programmer needs to reason about numerous control paths resulting from the complex interleaving of events (or messages) and failures. Unsurprisingly, it is easy to introduce subtle errors while attempting to fill in gaps between high-level system specifications and their concrete implementations.This dissertation proposes new methods for programming safe event-driven asynchronous systems.In the first part of the thesis, we present ModP, a modular programming framework for compositional programming and testing of event-driven asynchronous systems.The ModP module system supports a novel theory of compositional refinement for assume-guarantee reasoning of dynamic event-driven asynchronous systems. We build a complex distributed systems software stack using ModP.Our results demonstrate that compositional reasoning can help scale model-checking (both explicit and symbolic) to large distributed systems.ModP is transforming the way asynchronous software is built at Microsoft and Amazon Web Services (AWS). Microsoft uses ModP for implementing safe device drivers and other software in the Windows kernel.AWS uses ModP for compositional model checking of complex distributed systems. While ModP simplifies analysis of such systems, the state space of industrial-scale systems remains extremely large.In the second part of this thesis, we present scalable verification and systematic testing approaches to further mitigate this state-space explosion problem.First, we introduce the concept of a delaying explorer to perform prioritized exploration of the behaviors of an asynchronous reactive program. A delaying explorer stratifies the search space using a custom strategy (tailored towards finding bugs faster), and a delay operation that allows deviation from that strategy. We show that prioritized search with a delaying explorer performs significantly better than existing approaches for finding bugs in asynchronous programs.Next, we consider the challenge of verifying time-synchronized systems; these are almost-synchronous systems as they are neither completely asynchronous nor synchronous.We introduce approximate synchrony, a sound and tunable abstraction for verification of almost-synchronous systems. We show how approximate synchrony can be used for verification of both time-synchronization protocols and applications running on top of them.Moreover, we show how approximate synchrony also provides a useful strategy to guide state-space exploration during model-checking.Using approximate synchrony and implementing it as a delaying explorer, we were able to verify the correctness of the IEEE 1588 distributed time-synchronization protocol and, in the process, uncovered a bug in the protocol that was well appreciated by the standards committee.In the final part of this thesis, we consider the challenge of programming a special class of event-driven asynchronous systems -- safe autonomous robotics systems.Our approach towards achieving assured autonomy for robotics systems consists of two parts: (1) a high-level programming language for implementing and validating the reactive robotics software stack; and (2) an integrated runtime assurance system to ensure that the assumptions used during design-time validation of the high-level software hold at runtime.Combining high-level programming language and model-checking with runtime assurance helps us bridge the gap between design-time software validation that makes assumptions about the untrusted components (e.g., low-level controllers), and the physical world, and the actual execution of the software on a real robotic platform in the physical world. We implemented our approach as DRONA, a programming framework for building safe robotics systems.We used DRONA for building a distributed mobile robotics system and deployed it on real drone platforms. Our results demonstrate that DRONA (with the runtime-assurance capabilities) enables programmers to build an autonomous robotics software stack with formal safety guarantees.To summarize, this thesis contributes new theory and tools to the areas of programming languages, verification, systematic testing, and runtime assurance for programming safe asynchronous event-driven across the domains of fault-tolerant distributed systems and safe autonomous robotics systems
Requirements traceability in model-driven development: Applying model and transformation conformance
The variety of design artifacts (models) produced in a model-driven design process results in an intricate relationship between requirements and the various models. This paper proposes a methodological framework that simplifies management of this relationship, which helps in assessing the quality of models, realizations and transformation specifications. Our framework is a basis for understanding requirements traceability in model-driven development, as well as for the design of tools that support requirements traceability in model-driven development processes. We propose a notion of conformance between application models which reduces the effort needed for assessment activities. We discuss how this notion of conformance can be integrated with model transformations
- …