Warwick Irwin
University of Canterbury
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Warwick Irwin.
computer supported collaborative learning | 2007
Nilufar Baghaei; Antonija Mitrovic; Warwick Irwin
We present COLLECT-UML, a constraint-based intelligent tutoring system (ITS) that teaches object-oriented analysis and design using Unified Modelling Language (UML). UML is easily the most popular object-oriented modelling technology in current practice. While teaching how to design UML class diagrams, COLLECT-UML also provides feedback on collaboration. Being one of constraint-based tutors, COLLECT-UML represents the domain knowledge as a set of constraints. However, it is the first system to also represent a higher-level skill such as collaboration using the same formalism. We started by developing a single-user ITS that supported students in learning UML class diagrams. The system was evaluated in a real classroom, and the results showed that students’ performance increased significantly. In this paper, we present our experiences in extending the system to provide support for collaboration as well as domain-level support. We describe the architecture, interface and support for collaboration in the new, multi-user system. The effectiveness of the system has been evaluated in two studies. In addition to improved problem-solving skills, the participants both acquired declarative knowledge about effective collaboration and did collaborate more effectively. The participants have enjoyed working with the system and found it a valuable asset to their learning.
ieee international software metrics symposium | 2003
Warwick Irwin; Neville Churcher
Software metrics are a valuable tool in helping software engineers to develop large, complex software systems. However, it is vital that transparency and precision are maintained at all stages. We contend that without grammars we cannot define metrics rigorously, without transparent and powerful parsing tools we cannot collect data accurately and without flexible configurable visualisation we cannot exploit the full potential of our data. We report the development of JST, a semantic analyser for Java, and show how it is incorporated into our pipeline-based approach to metrics collection and visualisation. We describe a new visualisation, class clusters, which not only demonstrate the data generated by our tools but also illustrate the value of 3D virtual worlds for visualising software metrics.
australian software engineering conference | 2006
Blair Neate; Warwick Irwin; Neville Churcher
The concept of pagerank has proved successful in allowing search engines to identify important pages in the World Wide Web. In this paper, we describe the application of the pagerank concept to the domain of software in order to derive a new family of metrics, CodeRank, which captures aspects of software not readily obtainable from other metrics. We have implemented a tool, CODERANKER, to compute values of CodeRank metrics using a full semantic model which we have developed. We present some results and discuss the use of CodeRank metrics in their interpretation
australian software engineering conference | 2010
Matthew Harward; Warwick Irwin; Neville Churcher
Software engineers need to design, implement, comprehend and maintain large and complex software systems. Awareness of information about the properties and state of individual artifacts, and the process being enacted to produce them, can make these activities less error-prone and more efficient. In this paper we advocate the use of code colouring to augment development environments with rich information overlays. These in situ visualisations are delivered within the existing IDE interface and deliver valuable information with minimal overhead. We present CoderChrome, a code colouring plug-in for Eclipse, and describe how it can be used to support and enhance software engineering activities.
asia-pacific software engineering conference | 2005
Carl Cook; Warwick Irwin; Neville Churcher
Collaborative software engineering (CSE) is a rapidly growing field. Tools such as IDEs are now beginning to incorporate new collaborative features. We have developed several real-time CSE tools which support fine-grained collaboration. In this paper we present an empirical evaluation to investigate the potential benefits of our tools for collaborative source code development. Our results show that for the two typical types of collaborative programming scenarios studied, users of CSE tools achieve task completion rates at least twice as fast as those obtained from their single-user counterparts. Additionally, participants indicated strong support for the concept of CSE tools. These results encourage us to continue developing our CSE tools, and to investigate their use in other software engineering contexts.
australian software engineering conference | 2005
Warwick Irwin; Carl Cook; Neville Churcher
The ability to parse source code, in order to extract information from it, is an essential element of software engineering research and practice. However, serious practical difficulties often arise from factors such as ambiguities in standard grammars and inflexible parsing tools. For example, substantial changes to standard grammars may be needed in order to meet the limitations of parsing engines; this threatens the accuracy, completeness and consistency of the information available. Good parsing on its own is not enough: an inadequate semantic model limits the information available to tool builders. In our work, we have developed an approach to parsing and semantic modelling which addresses issues such as these. Our approach is based on a more flexible LR parser generator which includes the use of generalised LR (GLR) parsing to accommodate ambiguous grammars. This allows us to decouple syntactic and semantic analysis. In this paper, we present our parser generator, yakyacc, and our semantic model for Java, JST, and discuss the benefits of their use in software engineering research. The resulting parsers may be used in a variety of contexts, either as the basis for integrated applications or as components in an application pipeline containing a number of other tools. We illustrate the benefits of our approach with representative examples from two of our current software engineering research projects.
australian software engineering conference | 2007
Neville Churcher; Sarah Frater; Cong Phuoc Huynh; Warwick Irwin
Heuristics have long been recognised as a way to tackle problems which are intractable because of their size or complexity. They have been used in software engineering for purposes such as identification of favourable regions of design space. Some heuristics in software engineering can be expressed in high-level abstract terms while others are more specific. Heuristics tend to be couched in terms which make them hard to automate. In our previous work we have developed robust semantic models of software in order to support the computation of metrics and the construction of visualisations which allow their interpretation by developers. In this paper, we show how software engineering heuristics can be supported by a semantic model infrastructure. Examples from our current work illustrate the value of combining the rigour of a semantic model with the human mental models associated with heuristics.
international conference on evaluation of novel approaches to software engineering | 2011
Janina Voigt; Warwick Irwin; Neville Churcher
The idea of using contracts to specify interfaces and interactions between software components was proposed several decades ago. Since then, a number of tools providing support for software contracts have been developed. In this paper, we explore eleven such technologies to investigate their approach to various aspects of software contracts. We present the similarities as well as the areas of significant disagreement and highlight the shortcomings of existing technologies. We briefly introduce PACT, a software contract tool under development, explaining its approach to various aspects of software contracts.
asia-pacific software engineering conference | 2004
Carl Cook; Neville Churcher; Warwick Irwin
software visualization | 1999
Neville Churcher; Lachlan Keown; Warwick Irwin