radgradSummary: RadGrad is a system for helping undergraduates “radically” improve their “graduation” prospects, by helping them learn earlier about the range of futures available with a computer science degree and about the benefits from curricular and extracurricular activities.

For more information:

Status: Active Development 2015- present


Read More!

Morea Framework

morea-frameworkSummary:  The Morea Framework provides a new way for educators to build and evolve course websites and their associated curriculum materials based upon a representation involving Modules, Outcomes, Readings, Experiences, and Assessments.

The Morea Framework arose from my experiences teaching ICS 314 as “athletic software engineering” in Fall, 2013 and my desire to...

Read More!

Open Power Quality

opq-screenshotSummary:  In Hawaii, the high cost of energy combined with federal and state subsidies for photovoltaic installation has led to increasing penetration of distributed, intermittent generation in the grid. However, the impact of this change on power quality is not well understood.  The Open Power Quality project pursues the design of...

Read More!

Software Trajectory Analysis

Summary: “Software Trajectory Analysis” (STA) is a knowledge discovery workflow through which researchers and practitioners can discover recurrent behaviors associated with observed software development activities.

STA implements a data-mining framework for knowledge discovery from software processes artifacts. By arranging software process artifacts and applying temporal indexing and...

Read More!

Kukui Cup

Summary: The Kukui Cup is an advanced energy challenge whose goal is to investigate the relationships among energy literacy, sustained energy conservation, and information technology support of behavior change. To create the challenge, we designed and implemented two general purpose open source technologies: WattDepot and Makahiki. WattDepot...

Read More!


Summary:  Makahiki is an open source “serious game engine for sustainability”. It provides a framework for creating serious games for the purpose of education and behavioral change regarding energy, water, food, and waste generation and use. In concert with WattDepot, Makahiki is used as the core technology for the...

Read More!


Summary:  WattDepot is an open source, RESTful web service that collects electricity data (such as current power utilization or cumulative power utilization) from meters and stores it in a database. The data can then be retrieved by other tools for visualization and analysis. It is designed to provide infrastructure for experimentation...

Read More!

Software ICU

Summary:  The “Software ICU” is an analysis  technique for supporting rapid assessment of the “health” of one or more software projects.  Similar to a medical ICU, the Software ICU gathers and presents current values for a variety of project “vital signs” in addition to their recent historical values.


Read More!

Software Project Telemetry

Summary:  Software Project Telemetry is a project management technique that uses software sensors to collect metrics automatically and unobtrusively. It then employs a domain-specific language to represent telemetry trends in software product and process metrics. Project management and process improvement decisions are made by detecting changes in telemetry...

Read More!


Summary:  Zorro is a Hackystat-based application that is designed to help development groups gain insight into their use of test driven design practices and the impact of this use on their software development process and products. Zorro works by analyzing process data gathered by a Hackystat sensor attached...

Read More!


Summary:  This research investigates a set of guidelines called “extreme coverage” for measuring the quality of unit tests independent of the phase of software development. Extreme coverage uses method-level coverage and applies a set of flexible rules that depend upon the system being tested.

Programmers who write unit tests need...

Read More!

Priority Ranked Inspection

Summary:  This research investigates how to prioritize inspection resources and apply them to areas of the system that need them most. It is commonly assumed that defects are not uniformly distributed across all documents in a system. Instead, a relatively small subset of a system accounts for a...

Read More!

Continuous GQM

Summary:  This research investigates the integration of Hackystat metrics collection with the GQM (Goal / Question / Metric) Analysis Paradigm.  GQM is a popular approach for goal-oriented, systematic definition of measurement programs for software-engineering processes and products.  This integration should allow the goal-oriented use of the metric data collected by Hackystat and increase its usefulness for project control.  During the...

Read More!


Summary:  Software engineers generally agree that code reviews reduce development costs and improve software quality by finding defects in the early stages of software development. In addition, code review software tools help the code review process by providing a more efficient means of collecting and analyzing code review data....

Read More!


Summary: SCLC (Source Code Line Counter) counts the size of different types of source code files, providing the number of comment, non-comment, blank, and total lines. In addition, a count of “tokens” is provided for organizations where code layout variability makes line-oriented size counts unreliable for analysis purposes....

Read More!


Summary:  The Collaborative Educational Website (CLEW) is a Java web application intended to support accurate modeling of a collegiate department.  The CLEW System is designed to solve the traditional collegiate department website’s two main problems.  First, it provides interactive services which will allow users to add various kinds of information to the website.  Secondly, the CLEW System addresses the notification...

Read More!


Summary: The goal of TsunamiSim is to investigate the use of web-enabled GIS client-server architectures to dynamically overlay damages and relief efforts onto the geography and infrastructure of a disaster-afflicted region.

When a disaster strikes, response and relief organizations must first assess the location and extent of the damages prior to committing resources. Industrialized nations’ minimize the impact of disasters...

Read More!


Summary: Inca is a system designed to improve the efficiency and effectiveness of course approval request processing. This research project involves: (1) the design of the system as an n-tier Enterprise JavaBean application; (2) the evaluation of the system as a solution to some of the administrative and educational problems faced by the ICS department after two semesters of usage...

Read More!


Summary:  VCommerce research investigates how to design and evaluate an ecommerce simulation environment in order to better understand the process of teaching high tech entrepreneurship.

In the modern internet economy,  entreprenurial skills are increasingly important for professional success and advancement. Traditional computer science curriculums do not provide students with...

Read More!


Summary:  Hackystat is an open source framework for collection, analysis, visualization, interpretation, annotation, and dissemination of software development process and product data. Hackystat users typically attach software ‘sensors’ to their development tools, which unobtrusively collect and send “raw” data about development to a web service called the Hackystat SensorBase...

Read More!


Summary: To solve some of the problems inherent in current mailing list archives, we propose a process called condensation whereby one can strip out all the extraneous, conversational aspects of the data stream leaving only the pearls of interconnected wisdom. The Mailing List Condensation System (MCS) will allow certain types of mailing list communities to create condensed archives which are...

Read More!


Summary: The goal of javaJAM is to create a virtual environment for assisting developers with reviewing and discussing software source, documentation, and comments.

Software application developers need to share information in order to design, implement and improve software. Such collaboration involves the sharing of source code and documentation. Collaboration also...

Read More!

PSP Data Quality

Summary:  This research investigates how natural human error during data collection and analysis impacts on PSP analysis results. The Personal Software Process (PSP) is used by software engineers to gather and analyze data about their work, and to produce empirically based evidence for the improvement of planning and quality in future projects. Published studies have suggested that adopting the PSP...

Read More!


Summary:  The goal of the JavaWizard (JWiz) project is to uncover information about the kinds of errors made by Java programmers, and use this information to determine ways in which to improve overall Java software quality.  Better understanding of Java programming errors could lead to improvements in Java software...

Read More!


Summary: Effective program size measurement is difficult to accomplish. Factors such as program implementation language, programmer experience and application domain influence the effectiveness of particular size metrics to such a degree that it is unlikely that any single size metric will be appropriate for all applications.

This research introduces a...

Read More!


Summary:  Project LEAP results from a recognition that many software process improvement initiatives suffer from one or more of the following problems:

  • Heavyweight development process constraints. For example, many process improvement initiatives require adherence to strict documentation, audit, and development phase constraints.
  • Measurement dysfunction. The use of process metrics for...

    Read More!


Summary:  The goal of Project HI-TIME was to improve telecommunications policy planning by implementing an iterative, interactive, computer-mediated collaborative planning process. Such a process would enable the State’s telecommunications infrastructure plan to be more efficiently and effectively upgraded to reflect technology and policy shifts in local communities.

In early 1995, the State of Hawaii began work on a revision to its telecommunications...

Read More!


Summary: The goal of Flashmail research was to investigate the nature of time-dependent electronic messages and to evaluate one form of tool support for such messages. Flashmail, to our knowledge, was the earliest implementation of an “instant messaging system”.

Although e-mail has many strengths as a computer-mediated communication (CMC) tool,...

Read More!


Summary:  CSRS is a computer-supported software review system that enables declarative definition of review processes and provides instrumented data collection facilities.

Formal technical review (FTR) is a cornerstone of software quality assurance. However, the labor-intensive and manual nature of review, along with basic unresolved questions about its process and...

Read More!


Summary: The goal of AEN research is to develop a better understanding of the nature of collaborative hypertext authoring. AEN research is intended to provide insight into the process and tool support required for the development of high quality, jointly-authored hypertext documents.

With the advent of the World Wide Web,...

Read More!


Summary: URN is an Egret-based system designed to address the “information explosion” that occurs through use of world-wide information resources such as the Internet USENET newsgroups, gopher, and so forth. The problems in filtering relevant and useful knowledge from the avalanche of unrelated, low quality, or outdated information posted and accessible is well-known.

URN attempts to exploit collaboration among people with...

Read More!


Summary:  The goal of CLARE research is to construct a useful representation for human learning of scientific literature that also supports useful computational manipulations. The combination of the representation and related computational services should actually lead to improved performance by learners on selected collaborative learning tasks.

Knowledge representation is not only fundamental to machine learning, but is also essential to human...

Read More!


Summary: The Egret framework provides tool support for the construction of computer-supported cooperative work applications.  From 1990-1996, CSDL research involved the development of  a collaborative learning environment (CLARE), a collaborative software review system (CSRS), a collaborative hypertext authoring environment (AEN), a collaborative messaging environment (Flashmail), a collaborative editor (Shemacs), and a collaborative filtering environment (URN). The Egret framework emerged from our...

Read More!