About Us 

(Excerpts from the ISRG section of the 1997 CS Department Annual Report)


The Information Systems Research Group focuses on the meaning and interpretation of information, particularly the exchange of information between a human user and a computer. This theme manifests itself in many different research topics: the development of programming languages and environments, the ergonomics of human-computer interfaces, cognitive issues in information systems and management, notations for specifying parallel object oriented systems, design patterns and system development methods. The core on which all the work focuses is the notion of design: design as a human cognitive activity, design processes and notations, design as an activity supported by a computer-based system. 

The group has a strong and ongoing thread of work looking at methods and processes for computer-based systems development. Refinements of the "prototyping for requirements capture" work is now looking at embedding these ideas into CASE tools for object-oriented computer-based systems development. This and work on integrating HCI, SSM, SOMA and Moses into a usable OO method for systems development is our contribution to the Omega consortium (started by Henderson-Sellers and Graham, and now expanding to include ourselves, Constantine, Odell, Wirfs-Brock, and others). 

The work on parallel object-oriented systems continues to be strong: this area of work has been funded by ESPRIT, EPSRC/DTI and EPSRC projects, providing a total of about 600k pounds over the last four years. The current core activity revolves around the development of UC++, which is a support framework for parallel programming using C++. UC++ has evolved through a number of versions and has developed to the point where we are looking to build serious, high performance, parallel applications to test our ideas about the integration of C++ and active objects. We hope that continued collaboration with the EUROPA working group, whose goal is to create a European standard for parallel C++, will create further opportunities for the testing and continued refinement of UC++. With UC++ becoming established attention is being given to the process of designing robust parallel applications. Notably, the use of design patterns and pattern languages is being explored as an objective way of defining the architecture of parallel object-oriented applications. 

The group's functional programming research, covers theory, implementation, and application. The development of the theoretical foundations for a resource-aware type system will provide a basis for more intelligent compilation; by studying the programming behaviour of students we provide strong evidence for the provision of new language features; we are exploring the applicability of functional programming to the genetic programming paradigm; and we have developed a new visual programming language and environment (CLOVER) which provides a fusion of functional and object oriented programming. We are currently investigating the use of a spreadsheet interface as a route to programming in CLOVER - this has resulted in a novel extension to the spreadsheet metaphor, providing object-oriented structuring mechanisms, a rich type system, and substantially greater expressive power. Functional and genetic programming work within the group has attracted donations and research sponsorship from Andersen Consulting, together with funding for a CASE PhD from both Andersen Consulting and North End Communications. The functional genetic programming work is also receiving research funding as part of the joint research programme that has recently been started with the Friends of the Earth. 

Our work on design support environments has expanded recently. Empirical studies remain central to this research and we continue to explore techniques which can help us to interpret design activities and to develop vocabularies for representing design ideas. Our focus has been on supporting the conceptual stages of design, on facilitating cross- functional communication during the initial stages of product design, and on formalising and capturing design rationale and design history for a variety of purposes. 

Our database work has recently investigated the issues of dealing with incomplete and default information and how such incompleteness affects traditional database design. Hypertext databases are gaining much wider attention, since the WWW has become ubiquitous in our daily interaction with computers. We are currently developing heuristic algorithms for navigation through Hypertext databases using the WWW as a testbed for our ideas. Database work has also continued on the graph-based Hypernode model in collaboration with Macquarie University in Sydney. 

Our aim for the future is to exploit the main strength of the group: the unique combination of complementary threads of research expertise. For example, our expertise in functional and object-oriented programming has led to the development of a radically new programming language (CLOVER). Similarly, we aim to target those research aspects where we can make a unique contribution to the tools, techniques and environments which support the development of or use of information systems.