Research interests:
Software usability, query optimization, information systems architecture, design of Management Information Systems, topics in systems analysis, interfaces to database systems, database query languages, user models, multidatabase systems, information retrieval, indexing techniques.
My primary research interests include various aspects of database query optimization, both in relational environments and in multidatabase systems. I have an active interest in database-related topics such as multiple query optimization, indexing techniques, access methods, schema integration, multidatabase systems, and distributed database systems. The focus of my Ph.D. thesis was exploiting functional dependencies in the optimization of SQL queries in relational databases. A contribution of that work was a set of axioms that allowed the determination of what functional dependencies held in the result of a complex query expression containing outer joins.
I have long been an advocate of software usability. By usability I do not mean simply those issues of interest from a user interface perspective; rather, by usability I mean making all facets of software solutions easier to design, develop, maintain, and comprehend. SQL Anywhere, Sybase iAnywhere’s small-footprint database product for embedded environments and small-to-medium sized businesses, is a market leader due in part to its ability to work well “out-of-the-box” and automatically adapt to changing workloads and its execution environment over time without manual intervention. I believe that most information systems have similar requirements, and my belief is reinforced by my interactions with Sybase iAnywhere customers and development teams and end-users while employed at Great-West Life. Usability requirements of information systems include self-management and self-tuning, robustness (recovery from catastrophic events, including application, server, or network failure), software versioning strategies, database schema evolution, automated quality assurance, and so on.
My work at Sybase iAnywhere has prompted me to consider – and sometimes implement – various ideas that improve the usability of database systems by an application developer. An example of issues in software usability, consider database query languages. The widespread adoption and standardization of the database sublanguage SQL has made it possible to develop and deploy applications on heterogenous platforms with a minimum of fuss. However, composing complex queries in SQL has been shown by academic studies to be exceedingly difficult, particularly for novices, and my 20-year experience with database systems and applications coincides with these findings. While it may be true that some information systems components in today’s computing environment utilize reporting tools that generate SQL queries, and hence are somewhat hidden from the application developer, the vast majority of today’s information systems are still constructed using SQL queries developed by hand. Despite SQL’s acknowledged shortcomings, the usage of SQL is now so pervasive that there has been little or no research into alternative query languages for nearly twenty years. The exception to this situation is the development of English-language query tools, including commercial implementations such as Microsoft’s English Query, EasyAsk, and Sybase iAnywhere’s Answers Anywhere product. However, these tools have not been widely adopted as they are fragile and difficult to properly configure to be useful across a wide user base.
This situation presents a research opportunity: to study issues surrounding the construction of complex SQL queries in the development of SQL-based information systems applications. There are several potential ideas that has been described in the literature that hold the potential to improve the usability and productivity of ad-hoc SQL reporting tools. One idea is to tailor dialogues and error responses based on a task analysis of a user’s typical interaction, which can vary depending on their level of experience; this was the subject of a workshop paper I co-authored with Wm. Cowan in 1992. Another is to permit the user to iteratively construct
complex SQL queries using a combination of SQL and relational algebra primitives. By so doing, the potential exists for the system to automate the query’s construction, and simultaneously detect potential user misconceptions that will lead to unexpected – typically empty – results. In this context, the following research problems must be addressed:
- It is not clear how to support complex relational operators, such as
RECURSIVE UNIONand windowed aggregate functions, in a way that can be understood by inexperienced users. - Once the complete query has been developed interactively, it may be necessary to convert it to a single, concise SQL statement for better comprehension, and possibly converted to an syntactically different but semantically equivalent form for optimal performance.
- A user study will be necessary to determine if the new tool offers improvements in query formulation, and if not, why not.
Service on program committees:
- ACM SIGMOD (2001);
- IEEE International Data Engineering and Applications Symposium (2002);
- VLDB (2004);
- DEXA (2004);
- IEEE Data Engineering (2007);
- IEEE Self-managing Database Workshop (2008, 2009);
- DBTEST Workshop (2009).

Glenn Paulley is a Director of Engineering at Sybase iAnywhere.
