3093228
T-Clipse: an integrated development environment for two-level grammar
T-Clipse is an Integrated Development Environment (IDE) using Eclipse developed for Two-Level Grammar (TLG), a high-level formal specification language. In our research, given a programming language, TLG is used to specify the syntax and semantics of the language to generate an interpreter for that language. This IDE provides a user-friendly environment for editing and navigation of TLG source codes, as well as parsing and error tracing at the source code level and interpreter generation for programming languages. To build this IDE, we leveraged the extension power of plug-ins in Eclipse as well as a TLG parser prebuilt from an existing lexical analyzer generator and parser generator.
7160160
QoS-UniFrame: a Petri net-based modeling approach to assure QoS requirements of distributed real-time and embedded systems
Assuring quality of service (QoS) requirements is critical when assembling a distributed real-time and embedded (DRE) system from a repository of existing components. This paper presents a two-level approach for assuring satisfaction of QoS requirements in the context of a reduced design space for DRE systems. A dynamic and parallel approach is introduced to prune off the infeasible design spaces at the first level. Evolutionary algorithms cooperating with a domain-specific scripting language then discard less probable design spaces using statistics. These techniques fulfill the collective objectives of pruning and assuring the design space at system assembly time.
1399991
Validation of Distributed Real-Time and Embedded System composition in UniFrame
Distributed Real-Time and Embedded (DRE) Systems are widely applied to large scale and mission critical application domains such as avionics systems and medical imaging. Due to the rapid lifecycle and the complexity of design of the systems, there is an urgent demand to manage the development of robust, COTS, and effective software for vendors. The UniFrame project is a unified framework for seamless integration of distributed heterogeneous software components. This paper describes how the UniFrame approach is applicable to DRE software components. Leveraging the Two-Level Grammar (TLG) specification language and the Vienna Development Method (VDM), a formal methodology for developing DRE components and system code generation is developed for UniFrame.
16252718
QoSPL: A QoS-Driven Software Product Line Engineering Framework for Distributed Real-time and Embedded Systems
The current synergy of Component-Based Software Engineering (CBSE) and Software Product Line Engineering (SPLE) requires evolution to facilitate Distributed Realtime and Embedded (DRE) system construction. Such evolution is driven by inherent Quality of Service (QoS) characteristics in DRE systems. This paper introduces a QoSdriven SPLE framework (QoSPL) as an analysis and design paradigm for constructing a set of DRE systems as a product line. Leveraging separation of concerns, DRE systems are analyzed and designed by a collection of QoS systemic paths, each of which individually determines how well the service performs along the path and as a whole represents a behavioral view of software architecture. The paradigm reduces construction workload from the problems of tangled functional and QoS requirements and abundant infeasible design alternatives, and offers a less subjective QoS evaluation. The adopted formalisms also facilitate high-confidence DRE product line construction.
18135743
A clustering entropy-driven approach for exploring and exploiting noisy functions
Linear, Gaussian, fitness proportional, clustering, and Rosca entropies are succinct measures of diversity that have been applied to balance exploration and exploitation in evolutionary algorithms. In previous studies, an entropy-driven approach using linear entropy explicitly balances and/or searches optimal solutions for the selected unimodal and multimodal functions excluding noisy functions. This paper investigates the reasons for such an exception and introduces a clustering entropy-driven approach to solve the problem. Such an approach provides a coarse-grained diversity measure that filters the noise of functions, varies cluster size and categorizes individuals at the genotype level. The experimental results show that the clustering entropy-driven approach further improves the searching results of noisy functions by one more degree.
7866306
Two-level assurance of QoS requirements for distributed real-time and embedded systems
Assuring quality of service (QoS) requirements is critical when assembling a distributed real-time and embedded (DRE) system from a repository of existing software and hardware components. This paper presents a two-level approach for assuring satisfaction of QoS requirements in the context of a reduced design space for DRE systems. Techniques from artificial intelligence and statistics are used to fulfill these collective objectives at system assembly time. The result not only lessens the overhead of validation of QoS requirements at run-time, but also reduces the development and integration cost of DRE systems.
383574
A simulation approach to verification and validation of formal specifications
Specification simulation is an approach to verifying and validating specifications by well-selected sample data. In this paper we put forward a technique for simulation of formal specifications in order to detect potential faults and validate their desired functions. The important benefit of this technique is it allows us to simulate implicit specifications, which are usually defined with a pair of pre- and postconditions and may not be executable. We discuss ways of simulation case generation, evaluation of logical expressions, and simulation result analysis, and demonstrate how they are applied in practice by examples.
719681
Feature competition in a spike-based winner-take-all VLSI network
Recurrent networks and hardware analogs that perform a winner-take-all computation have been studied extensively. This computation is rarely demonstrated in a spiking network of neurons receiving input spike trains. In this work, we demonstrate this computation not only within a VLSI network but also across networks of integrate-and-fire neurons in a feature competition task. The chip has four populations of neurons receiving input spike trains that represent the outputs of four feature maps. The connectivity within each population is configured so that all the neurons compete with one another. In addition, a second level of competition, which we call the feature competition, can be introduced between all populations (or feature maps). The two levels of competition are useful in a system that has to select both the locations of relevant features and the best feature map that is coded in an input stimulus. The selection process can be completed as fast as after two input spikes
1673600
Inferring Data Transformation Rules to Integrate Semantic Web Services
OWL-S allows selecting, composing and invoking Web Services at different levels of abstraction: selection uses high level abstract descriptions, invocation uses low level grounding ones, while composition needs to consider both high and low level descriptions. In our setting, two Web Services are to be composed so that output from the upstream one is used to create input for the downstream one. These Web Services may have different data models but are related to each other through high and low level descriptions. 
 
Correspondences must be found between components of the upstream data type and the downstream ones. Low level data transformation functions may be required (e.g. unit conversions, data type conversions). The components may be arranged in different XML tree structures. Thus, multiple data transformations are necessary: reshaping the message tree, matching leaves by corresponding types, translating through ontologies, and calling conversion functions. Our prototype compiles these transformations into a set of data transformation rules, using our tableau-based ALC Description Logic reasoner to reason over the given OWL-S and WSDL descriptions, as well as the related ontologies. A resolution-based inference mechanism for running these rules is embedded in an inference queue that conducts data from the upstream to the downstream service, running the rules to perform the data transformation in the process.
9811887
A formal operational semantics for SOFL
SOFL (Structured-Object-Based-Formal Language) is a formal language and method for practical systems development. As a language, it integrates data flow diagrams, VDM-SL, and Petri nets to provide a graphical and textual formal notation for specification construction. Previous publications introducing SOFL are based on its informal semantics. We provide a formal operational semantics which gives a firm foundation for consistent understanding and application of SOFL in practical systems development. Development of the semantics, and application of SOFL to practical systems, have led to some changes in the original definitions. This formal semantics will serve as a firm foundation for building an effective support environment for SOFL.
36526611
Formal Engineering for Industrial Software Development - An Introduction to the SOFL Specification Language and Method
Formal methods have been developed as a rigorous approach to computer systems development over last three decades, but have been facing challenges in fighting for industrial acceptance in general. Most commonly used formal methods do not offer comprehensible structuring mechanism for building complex systems; formal refinement is not sufficient to deal with real development situations; and formal verification requires high skills and is time-intensive, and is therefore expensive to be adopted by industry.