Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Bruce W. Watson is active.

Publication


Featured researches published by Bruce W. Watson.


international conference on implementation and application of automata | 2016

Analyzing Matching Time Behavior of Backtracking Regular Expression Matchers by Using Ambiguity of NFA

Nicolaas Weideman; Brink van der Merwe; Martin Berglund; Bruce W. Watson

We apply results from ambiguity of non-deterministic finite automata to the problem of determining the asymptotic worst-case matching time, as a function of the length of the input strings, when attempting to match input strings with a given regular expression, where the matcher being used is a backtracking regular expression matcher.


IEE Proceedings - Software Engineering. [see also Software, IEE Proceedings] | 2005

Taxonomy-based software construction of SPARE Time: a case study

Lgwa Loek Cleophas; Bruce W. Watson

The authors consider the design and implementation of SPARE Time as an example of taxonomy-based software construction (TABASCO). SPARE Time is a C++ toolkit for keyword pattern matching. It differs from other toolkits in that it is based on a taxonomy of keyword pattern matching algorithms. They discuss the aims of TABASCO and of taxonomy construction and taxonomy-based toolkit design in particular. They show how the taxonomy structure induces the architecture and design of SPARE Time. The taxonomy-oriented derivation also makes the toolkit easier to understand and use. The toolkit – like the taxonomy – contains the well known Knuth–Morris–Pratt, Boyer–Moore, Aho–Corasick and Commentz-Walter algorithms, as well as variants thereof, including more recent algorithms such as Backward Oracle Matching. It is freely available for noncommercial use.


south african institute of computer scientists and information technologists | 2015

SPLicing TABASCO: Custom-Tailored Software Product Line Variants from Taxonomy-Based Toolkits

Ina Schaefer; Christoph Seidl; Lgwa Loek Cleophas; Bruce W. Watson

Taxonomy-Based Software Construction (TABASCO) applies extensive domain analyses to create conceptual hierarchies of algorithmic domains. Those are used as basis for the implementation of software toolkits. The monolithic structure of TABASCO-based toolkits restricts their adoption on resource-constrained or special-purpose devices. In this paper, we address this problem by applying Software Product Line (SPL) techniques to TABASCO-based toolkits: We use software taxonomies as input to creating a conceptual representation of variability as feature models of an SPL. We apply the variability realization mechanism delta modeling to transform realization artifacts, such as source code, to only contain elements for a particular selection of features. Our method is suitable for proactive, reactive and extractive SPL development so that it supports a seamless adoption and evolution of an SPL approach for TABASCO-based toolkits. We demonstrate the feasibility of the method with three case studies by proactively, reactively and extractively transforming TABASCO-based toolkits to SPLs, which allow derivation of variants with custom-tailored functionality.


developments in language theory | 2013

Cuts in Regular Expressions

Martin Berglund; Henrik Björklund; Frank Drewes; Brink van der Merwe; Bruce W. Watson

Most software packages with regular expression matching engines offer operators that extend the classical regular expressions, such as counting, intersection, complementation, and interleaving. Some of the most popular engines, for example those of Java and Perl, also provide operators that are intended to control the nondeterminism inherent in regular expressions. We formalize this notion in the form of the cut and iterated cut operators. They do not extend the class of languages that can be defined beyond the regular, but they allow for exponentially more succinct representation of some languages. Membership testing remains polynomial, but emptiness testing becomes PSPACE-hard.


international workshop on combinatorial algorithms | 2012

A Sequential Recursive Implementation of Dead-Zone Single Keyword Pattern Matching

Bruce W. Watson; Derrick G. Kourie; Tinus Strauss

Earlier publications provided an abstract specification of a family of single keyword pattern matching algorithms [18] which search unexamined portions of the text in a divide-and-conquer fashion, generating dead-zones in the text as they progress. These dead zones are area of text that require no further examination. Here the results are described of implementing in C++ a sequential recursive version of the algorithm family, where all instances of a single keyword p in a text S are sought—the online keyword matching problem where S may not be precomputed.


leveraging applications of formal methods | 2016

Correctness-by-Construction and Post-hoc Verification: A Marriage of Convenience?

Bruce W. Watson; Dg Kourie; Ina Schaefer; Lgwa Loek Cleophas

Correctness-by-construction (CbC), traditionally based on weakest precondition semantics, and post-hoc verification (PhV) aspire to ensure functional correctness. We argue for a lightweight approach to CbC where lack of formal rigour increases productivity. In order to mitigate the risk of accidentally introducing errors during program construction, we propose to complement lightweight CbC with PhV. We introduce lightweight CbC by example and discuss strength and weaknesses of CbC and PhV and their combination, both conceptually and using a case study.


leveraging applications of formal methods | 2016

Correctness-by-Construction \wedge Taxonomies \Rightarrow Deep Comprehension of Algorithm Families

Lgwa Loek Cleophas; Dg Kourie; Vreda Pieterse; Ina Schaefer; Bruce W. Watson

Correctness-by-construction (CbC) is an approach for developing algorithms inline with rigorous correctness arguments. A high-level specification is evolved into an implementation in a sequence of small, tractable refinement steps guaranteeing the resulting implementation to be correct. CbC facilitates the design of algorithms that are more efficient and more elegant than code that is hacked into correctness. In this paper, we discuss another benefit of CbC, i.e., that it supports the deep comprehension of algorithm families. We organise the different refinements of the algorithms carried out during CbC-based design in a taxonomy. The constructed taxonomy provides a classification of the commonality and variability of the algorithm family and, hence, provides deep insights into their structural relationships. Such taxonomies together with the implementation of the algorithms as toolkits provide an excellent starting point for extractive and proactive software product line engineering.


international conference on software reuse | 2016

Tax-PLEASE--Towards Taxonomy-Based Software Product Line Engineering

Ina Schaefer; Christoph Seidl; Lgwa Loek Cleophas; Bruce W. Watson

Modern software systems, in particular in mobile and cloud-based applications, exist in many different variants in order to adapt to changing user requirements or application contexts. Software product line engineering allows developing these software systems by managed large-scale reuse in order to achieve shorter time to market. Traditional software product line engineering approaches use a domain variability model which only captures the configuration options of the product variants, but does not provide any guideline for designing and implementing reusable artifacts. In contrast, software taxonomies structure software domains from an abstract specification of the functionality to concrete implementable variants by successive correctness-preserving refinements. In this paper, we propose a novel software product line engineering process based on a taxonomy-based domain analysis. The taxonomys hierarchy provides guidelines for designing and implementing the product lines reusable artifacts while at the same time specifying possible configuration options. By deriving reusable product line artifacts from a software taxonomy, the well-defined structuring of the reusable artifacts yields improved maintainability and evolvability of the product line.


south african institute of computer scientists and information technologists | 2012

Performance assessment of dead-zone single keyword pattern matching

Melanie Mauch; Derrick G. Kourie; Bruce W. Watson; Tinus Strauss

A so-called dead-zone pattern matching family of algorithms has previously been proposed as a concept. Here the performance of several instances of the family are empirically investigated. An abstract description of the algorithm family is given, as well as of these instances. This leads to a total of five different implementations of the algorithm. The time-performance of each of these implemented variants was then compared against those of the well-known Horspool and Boyer-Moore pattern matching algorithms, the latter being representative of the best-known pattern matchers currently available. Various data sets, pattern selections and pattern lengths were used, but the same Horspool-like shift tables were used throughout by the dead-zone variants. It was found that in some contexts variants of the dead zone algorithm compare very favourably against the Horspool and Boyer-Moore algorithms.


Archive | 2017

Security and Privacy for the Internet of Things Communication in the SmartCity

Ralf C. Staudemeyer; Henrich C. Pöhls; Bruce W. Watson

Growing SmartCities means that the amount of information processed and stored to manage a city’s infrastructure (e.g., traffic, public transport, electricity) is growing as well. To manage this, SmartCities are deploying truly distributed and highly scalable information and communication (ICT) infrastructure, connecting a conglomerate of smart devices and ‘smart things’. In recent years, the term Internet-of-Things (IoT) was coined to describe constrained systems that react via sensors to physical changes in its environment and may be able to influence that environment via actuators. While ICT generally helps to ‘mine’ collected information, the IoT complements this with direct access to a sensor’s data or even taking immediate corrective action. Using the capabilities of the IoT to monitor and control the SmartCity implies numerous devices communicate data about the city its citizens. The communicated data is used to make decisions that will affect many citizens, and if not secured correctly, attackers (or other ‘errors’) could disrupt operation of the SmartCity. Moreover, collected data possibly impinges on basic privacy rights if not gathered, communicated and processed correctly. This chapter provides a primer on general information security, its main goals, and the basic IoT security challenges in the SmartCity. Built upon the basic IT security goals of confidentiality, integrity, and availability, this chapter addresses security and privacy problems faced in the communication aspects of the SmartCity. We highlight that security is a crucial enabler for the ICT-dependent SmartCity to base the decisions on reliable data and to execute commands securely. We specifically point out that security starts at the very beginning of the data collection and communication process. On top of this, we focus on major issues related to private communication, as privacy is a key acceptance factor for an ICT-enabled SmartCity by its citizens.

Collaboration


Dive into the Bruce W. Watson's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Dg Kourie

Stellenbosch University

View shared research outputs
Top Co-Authors

Avatar

Ina Schaefer

Braunschweig University of Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge