CS-2017-01 | ||||
---|---|---|---|---|
Title |
Revisiting the CLBlood Model: Formulation Enhancements and Online Deployment | |||
Authors |
Spencer R. Van Leeuwen, Gladimir V. G. Baranoski and Bradley W. Kimmel | |||
Abstract |
CLBlood is a cell-based light interaction model for human blood previously developed by the Natural Phenomena Simulation Group (NPSG) at the University of Waterloo. In this report, we revisit several elements of its formulation and describe appropriate enhancements. Furthermore, we compare our current and previous results to demonstrate that the predictive capabilities of our model have been fully preserved in its revised version. We also showcase the online deployment of CLBlood. | |||
Date | February 2017 | |||
Report | CS-2017-01 (PDF) |
CS-2017-02 | ||||
---|---|---|---|---|
Title |
Renormalization of NoSQL Database Schemas | |||
Authors |
Michael J. Mior and Kenneth Salem | |||
Abstract |
NoSQL applications often use denormalized databases in order to meet performance goals, but this introduces complications. In particular, application evolution may demand changes in the underlying database schema, which may in turn require further application revisions. The NoSQL DBMS itself can do little to aid in this process, as it has no understanding of application-level denormalization. In this paper, we describe a procedure for reconstructing a normalized conceptual schema from a denormalized NoSQL database. Exposing the conceptual schema provides application developers with information that can be used to guide application and database evolution. The procedure’s input includes functional and inclusion dependencies, which may be mined from the NoSQL database. We illustrate the effectiveness of this procedure using several application case studies. | |||
Date | April 3, 2017 | |||
Report | CS-2017-02 (PDF) |
CS-2017-03 | ||||
---|---|---|---|---|
Title |
Database Managed CPU Performance Scaling for Improved Energy Efficiency | |||
Authors |
Mustafa Korkmaz, Martin Karsten, Kenneth Salem and Semih Salihoglu | |||
Abstract |
Dynamic voltage and frequency scaling (DVFS) is a technique for adjusting the speed and power consumption of processors, allowing performance to be traded for reduced power consumption. Since CPUs are typically the largest consumers of power in modern servers, DVFS can have a significant impact on overall server power consumption. Modern operating systems include DVFS governors, which interact with the processor to manage performance and power consumption according to some system-level policy. In this paper, we argue that for database servers, DVFS can be managed more effectively by the database management system. We present a power-aware database request scheduling algorithm called POLARIS. Unlike operating system governors, POLARIS is aware of database units of work and database performance targets, and can achieve a better power/performance tradeoff by exploiting this knowledge. We implemented POLARIS in SHORE-MT, and we show that it can improve both power consumption and performance relative to operating system baselines. | |||
Date | June 2017 | |||
Report | CS-2017-03 (PDF) |
CS-2017-04 | ||||
---|---|---|---|---|
Title |
Symmetry Reduction and Compositional Verification of Timed Automata | |||
Authors |
Hoang Linh Nguyen and Richard Trefler | |||
Abstract |
Timed automata provide a model for studying the behavior of finite-state systems as they evolve over time. We describe a technique that incorporates automatic symmetry detection and symmetry reduction in the analysis of systems modeled by timed automata. Our prototype extends the realtime model checker PAT with symmetry reduction using state swaps to reduce time and memory consumption. Moreover, our approach detects structural symmetries arising from process templates of real-time systems, requiring no additional input from the user. The technique involves finding all variables of type process identifier and computing the largest subgroup of candidate symmetries that induce automorphisms. Our technique is fully automatic, and not restricted to fully symmetric systems. We then combine elements of compositional proof, abstraction and local symmetry to decide whether a safety property holds for every process instance in a parameterized family of real-time process networks. Analysis is performed on a small cut-off network; that is, a small instance whose compositional proof generalizes to the entire parametric family. Our results show that verification is decidable in time polynomial in the state space of the cut-off instance. We apply these ideas to analyze Fischer’s protocol and the CSMA/CD protocol. | |||
Date |
August 2017 | |||
Report | CS-2017-04 (PDF) |
CS-2017-05 | ||||
---|---|---|---|---|
Title |
Data-intensive Applications Using the WIDE Software Platform | |||
Authors |
Donald Cowan | |||
Abstract |
The WIDE (Web Informatics Development Environment) software platform has been under development for over 15 years by researchers in the University of Waterloo Computer Systems Group (UWCSG). The WIDE platform has been used to develop over 80 data-intensive web and mobile software systems in many different sectors including land development and planning, environmental modelling and monitoring, First Nations, volunteerism, social indicators, community information, health, arts and culture, and built heritage. The objective of each application is to manage and use community information assets for community benefit. The community can be either geographic or a community of interest or practice. The UWCSG software team has worked with many different partner organizations in producing the different services and range from local NGOs, businesses, universities and research centres, to all levels and types of government including First Nations groups and the United Nations. | |||
Date | October 11, 2017 | |||
Report | CS-2017-05 (PDF) |
CS-2017-06 | ||||
---|---|---|---|---|
Title |
The Socially Smart Community — Practical Uses of Community-level Socio-economic Indicators | |||
Authors |
Donald Cowan, Paulo Alencar, Kyle Young, Bryan Smale, Ryan Erb and Fred McGarry | |||
Abstract |
There is a large amount of discussion in the literature about smart cities where the focus of the discourse is on gathering and analyzing real-time data from smartphones or other sensors to support public services such as vehicular traffic flow and utility consumption or to infer human behaviour. There does not appear to be any discussion of ‘socially’ smart cities where the focus is on using citizens as ‘smart sensors.’ Here the citizens’ interactions with a community’s services are captured in a timely fashion to derive socio-economic indicators about characteristics of the population relevant to sectors such as education, food security, health, housing, community participation, community safety, income levels and government and to use those as a basis for monitoring community well-being or the effectiveness of government, social service and economic policies designed to produce community improvement. This paper provides the motivation for and description of a community-level socio-economic indica- tor system to support the socially smart community. The system will accept timely indicator base data from many different community sources and operate on that data using various software tools and maps. The data can be combined in various ways to show single indicators and relationships among indicators. In addition, multiple layers of data can be displayed on a map showing various geographic relationships. An initial version of this approach and related system to collect community-level social and economic data and display appropriate socio-economic indicators while protecting individual privacy, is being deployed in a mixed urban-rural community in Southwestern Ontario, Canada. The web site can be found at myPerthHuron.ca. | |||
Date |
October 11, 2017 | |||
Report | CS-2017-06 (PDF) |
CS-2017-07 | ||||
---|---|---|---|---|
Title |
The United Nations and Open Data | |||
Authors |
Donald Cowan, Paulo Alencar, Doug Mulholland, Fred McGarry and Colin Mayfield | |||
Abstract |
The United Nations through the United Nations University International Network on Water, Environment and Health (UNU-INWEH) has embarked on a number of projects related to the environment and supported by freely available data akin to open data. These projects all use a common knowledge platform called Knowledge Integration and Management United Nations University (KIM-UNU) developed by the University of Waterloo Computer Systems Group (UWCSG) and the Centre for Community Mapping COMAP). This paper describes the platform and its use in these specific projects on international water (IW:Science), sustainable land management (KM:Land) and safe water provisioning (HydroSanitas). | |||
Date | October 11, 2017 | |||
Report | CS-2017-07 |
CS-2017-08 | ||||
---|---|---|---|---|
Title |
Canopus: A Scalable and Massively Parallel Consensus Protocol | |||
Authors |
Sajjad Rizvi, Bernard Wong and Srinivasan Keshav | |||
Abstract |
Achieving consensus among a set of distributed entities (or participants) is a fundamental problem at the heart of many distributed systems. A critical problem with most consensus protocols is that they do not scale well. As the number of participants trying to achieve consensus increases, increasing network traffic can quickly overwhelm the network from topology-oblivious broadcasts, or a central coordinator for centralized consensus protocols. Thus, either achieving strong consensus is restricted to a handful of participants, or developers must resort to weaker models of consensus. We propose Canopus, a highly-parallel consensus protocol that is ‘plug-compatible’ with ZooKeeper, which exploits modern data center network topology, parallelism, and consensus semantics to achieve scalability with respect to the number of participants and throughput (i.e., the number of key-value reads/writes per second). In our prototype implementation, compared to EPaxos and ZooKeeper, Canopus increases through put by more than 4x and 16x respectively for read-heavy workloads. | |||
Date | December 2017 | |||
Report | CS-2017-08 (PDF) |
CS-2017-09 | ||||
---|---|---|---|---|
Title |
A Catalog of Software Development Rules for Agile Methods | |||
Authors |
Ulisses Telemaco, Renata Mesquita, Toacy Oliveira, Gláucia Melo, Paulo Alencar | |||
Abstract |
Background: Software Development is typically complex, unpredictable and dependent on knowledge workers. Software Processes are an attempt to handle development complexity by defining a set of elements such as workflows, roles, templates and rules. This paper focuses on software development rules which are restrictions applied to software process. Rules are often described in natural language and spread among many documents. Representing software development rules in natural language has at least two drawbacks: (a) Following rules become hard since it depends on the expertise of the workers and (b) Compliance checking — which is the act of verify whether rules are properly followed — is often performed without the support of specialized systems. The lack of a computational solution to guide the team or to support compliance checking is a problem since these activities performed manually are more error-prone, costly and less scalable if compared with automatic or semi-automatic approaches. Problem: Any automation initiative starts with the formal representation of compliance elements and a structured catalog that presents software development rules prone to formal verification is still missing. Aim: This study aims at identifying a set of software development rules based on agile methods and that may be susceptible to a formal verification. Method: A literature review as well as semi-structured interviews with practitioners were conducted to identify a set of agile software development rules. Result: We identified a set of 10 rules for agile methods that were considered relevant according to research criteria. The rules are presented in a structured catalog. | |||
Date | December 2017 | |||
Report | CS-2017-09 (PDF) |