5150850
Formalizing UML Models with Object-Z
The Unified Modeling Language (UML) has been developed as a standard language for object-oriented designs. Through its graphical and intuitive diagrams, software analysis and design process become easy. However, this graphical notation lacks precisely defined semantics. It is difficult to determine whether the design is consistent, unambiguous and complete. This paper provides a method of formalizing UML models. It gives the transforming rules from UML models to Object-Z constructs. With this method, the semantics of UML models are directly expressed in formal language Object-Z. The UML class, sequence and statechart diagrams are formalized using this method. A tool OZRose is developed to automate the transforming process.
17865149
A framework for specification-based class testing
Class testing is the base of object-oriented software testing. It involves three aspects: testing each method, testing the relations among class methods and testing the inheriting relation between class and subclass. Rather than concerning the whole class testing process, most specification-based class testing focuses on the methods of generating test cases from the class specification. As a result, the class testing process and test cases cannot be unified and managed in a consistent and convenient way. This paper introduces a test class framework (TCF) that is used to structure the test cases and test deriving process of the class under testing. This framework clearly denotes the process of deriving test cases and test suites from a class specification. It facilitates the construction and management of test cases. Object-Z notation is used to express the framework and class specification.
35610063
A Specification-Based Approach to Testing Polymorphic Attributes
The object-oriented features, such as aggregation, inheritance and polymorphism, facilitate software reuse and improve software quality. But those features also cause new problems that traditional testing techniques cannot resolve effectively. Existing researches on object-oriented software testing are mainly based on some graph representations and seldom consider the combinational effect of aggregation, inheritance and polymorphism. For some model-based specifications that do not include graph representations, it is difficult to use the graph based testing techniques to derive test cases. This paper provides an approach to deriving test cases for testing the combinational effect of aggregation, inheritance and polymorphism from a model-based class specification. This approach contains two techniques at intra-class and inter-class testing levels and is mechanized using the algorithms presented in this paper. Finally, through the experimental analysis, we present the effectiveness and applicability of our testing approach.
38352937
Z User Studio: An integrated support tool for Z specifications
This paper introduces an integrated Z support tool, Z User Studio (ZUS), which was developed by the Formal Methods Research Group of Shanghai University. ZUS is an interactive, single-user tool, running under MS-Windows and NT It supports the production of well-formed Z specifications by providing facilities for building, editing, checking and viewing Z specification documents. It displays the Z constructs and symbols, as they would appear in most popular book on Z ZUS has two modes for editing specifications, text-based editor and graphical editor. The graphical editor provides a hierarchical structure directory for every current Z specification. ZUS implements a computer aided test cases generator (TCG).
14344981
Mutation operators for Object-Z specification
As a powerful means of measuring a test set, mutation testing has been applied to program-based testing for a long time. However, with the development of formal specification technique, the formal specifications also play an important role in software testing. For measuring the quality of the specification-based test cases, researchers provide some mutation operators for the logic predicates. With the emergence of the object-oriented formal specifications, these mutation operators cannot completely model the faults arise in an object-oriented specification and from the misunderstanding of the specification. This paper investigates the faults that may occur in the object-oriented specifications, and gives a set of mutation operators for the Object-Z specifications to model these faults. These mutation operators provide an approach to measuring specification-based test cases and validating the Object-Z specifications.
8242993
Designing Web-Based Systems in Social Context: A Goal and Scenario Based Approach
In order to design a better web-based system, a designer would like to have notations to visualize how design experts’ know-how can be applied according to one’s specific social and technology situation. We propose the combined use of a goal-oriented language GRL and a scenarios-oriented notation UCM for representing design knowledge of web-based systems and information systems in general. Goals are used to depict business objectives, functional and non-functional system requirements. Tasks are used in the exploration of alternative technologies and their operationalizations into system constructs. Actors are used to do role-based analysis on social relationships. Scenarios are used to describe elaborated business processes or workflow. The approach is illustrated with an example of designing a web-based training system.
16202224
Distributed query adaptation and its trade-offs
Adaptive query processing in large distributed systems has seen increasing importance due to the rising environmental fluctuations in a growing Internet. We describe Ginga, an adaptive query processing engine that combines proactive (compile-time) alternative query plan generation with reactive (run-time) monitoring of network delays. The core of Ginga approach is the notion of adaptation space and mechanisms for coordinating and integrating different kinds of query adaptation. An adaptation space consists of a set of adaptation triggers and a set of adaptation cases associated with the triggers. Each adaptation case describes a specific adaptation opportunity of the query execution when changes to the runtime environment are detected. Our experimental results show that Ginga query adaptation can achieve significant performance improvements (up to 40% of response time gain) for processing distributed queries over the Internet.
4673942
XPACK: A High-Performance WEB Document Encoding
XML is an increasingly popular data storage and exchange format whose popularity can be attributed to its self-describing syntax, acceptance as a data transmission and archival standard, strong internationalization support, and a plethora of supporting tools and technologies. However, XML’s verbose, repetitive, text-oriented document specification syntax is a liability for many emerging applications such as mobile computing and distributed document dissemination. This paper presents XPack, an efficient XML document compression system that exploits information inherent in the document structure to enhance compression quality. Additionally, the utilization of XML structure features in XPack’s design should provide valuable support for structure-aware queries over compressed documents. Taken together, the techniques employed in the XPack compression scheme provide a foundation for efficiently storing, transmitting, and operating over Web documents. Initial experimental results demonstrate that XPack can reduce the storage requirements for Web documents by up to 20% over previous XML compression techniques. More significantly, XPack can simultaneously support operations over the documents, providing up to two orders of magnitude performance improvement for certain document operations when compared to equivalent operations on unencoded XML documents.
14851951
Process Mining by Measuring Process Block Similarity
Mining, discovering, and integrating process-oriented services has attracted growing attention in the recent years. Workflow precedence graph and workflow block structures are two important factors for comparing and mining processes based on distance similarity measure. Some existing work has done on comparing workflow designs based on their precedence graphs. However, there lacks of standard distance metrics for comparing workflows that contain complex block structures such as parallel OR, parallel AND. In this paper we present a quantitative approach to modeling and capturing the similarity and dissimilarity between different workflow designs, focusing on similarity and dissimilarity between the block structures of different workflow designs. We derive the distance-based similarity measures by analyzing the workflow block structure of the participating workflow processes in four consecutive phases. We first convert each workflow dependency graph into a block tree by using our block detection algorithm. Second, we transform the block tree into a binary tree to provide a normalized reference structure for distance based similarity analysis. Third, we construct a binary branch vector by encoding the binary tree. Finally, we calculate the distance metric between two binary branch vectors.
14925524
Vulnerabilities and security threats in structured overlay networks: a quantitative analysis
A number of recent applications have been built on distributed hash tables (DHTs) based overlay networks. Almost all DHT-based schemes employ a tight deterministic data placement and ID mapping schemes. This feature on one hand provides assurance on location of data if it exists, within a bounded number of hops, and on the other hand, opens doors for malicious nodes to lodge attacks that can potentially thwart the functionality of the overlay network. This paper studies several serious security threats in DHT-based systems through two targeted attacks at the overlay network's protocol layer. The first attack explores the routing anomalies that can be caused by malicious nodes returning incorrect lookup routes. The second attack targets the ID mapping scheme. We disclose that the malicious nodes can target any specific data item in the system; and corrupt/modify the data item to its favor. For each of these attacks, we provide quantitative analysis to estimate the extent of damage that can be caused by the attack; followed by experimental validation and defenses to guard the overlay networks from such attacks.