An effort to apply AOP techniques to operating system kernel code.
AOP Empirical Study
Learning about software engineering evaluation methods through assessing AOP.
A crosscutting structure presentation tool.
An aspect-oriented extension to Smalltalk, being developed to explore use of AOP in the incremental compilation Smalltalk environment.
A simple aspect-oriented extension to C, intended to support operating systems and embedded systems programming.
Aspect Mining Tool
a platform being used to explore techniques for working with latent aspects in legacy code.
Aspect-Oriented Design Pattern Implementation
Exploring effects of implementation language on software design patterns
Aspect-Oriented Logic Meta Programming
Using logic meta programs to represent aspects and aspect languages.
Aspect Sand Box
A collection of Scheme-based interpreters for different AOP language semantics.
A tool for visualizing the execution of a Java system at the architectural level.
Behavioural Concern Modelling
An approach to linking behavioural models of a concern to scattered and tangled code to aid software evolution tasks.
Bug Triage
Supporting developers doing bug report triage.
Debugging with control-flow breakpoints.
A tool for automatic and peer critiquing of software designs.
Concern Graphs
A manipulable representation of concerns in existing systems with tool support for Java programs.
Conceptual Modules
An approach to overlay logical structure onto existing code to aid software evolution and reengineering tasks.
Design Rationale Graphs
An approach to linking rationale extracted from design documents to code being investigated in the context of Design Patterns.
Dialogue-Based Aspect-Oriented Refactoring
An approach to refactoring of aspect-oriented systems based on a dialogue between the developer and the refactoring tool.
Emergent Teams
Determining who is working on what team.
Exception Structure
A tool for analyzing exception flow in Java programs and design guidelines for programming with exceptions.
Explicit Programming
Capturing more design concepts in code by adding new vocabulary items.
Using task context to automate web searches.
Focused Learning Environment
Providing a simplified focused UI and step-directed feedback to help users learn.
Leveraging secondary development artifacts to better support distributed development.
Implicit Context
An approach to improving the reusability and evolvability of systems through the reduction of extraneous embedded knowledge.
Information Fragments
          An information fragment model (and prototype tool) that automates the composition of different kinds of information.
Interaction-based Simulation (SE)
A programming approach in which interactions are first-class systems that eases the development of visual simulations.
A query-based code browser.
Lightweight Source Model Extraction (SE)
An approach to extract information from source using hierarchical regular expressions.
Mylyn (originally Mylar)
Using editing and navigation activity to show only the elements of relevance to the task context.
An natural AJDT extension that helps developers write pointcuts.
Predicting Memory Use (SE)
An approach to preduct the memory use of frameworks prior to use.
A Code Browser for Java which supports on-demand remodularization based on logic queries over source code.
Reflexion Models (SE)
A tool to help compare a designer's view of a system with what is really going on in the source and at run-time.
Static-Dynamic Coupling
The Impact of Static-Dynamic Coupling on Remodularization.
A Logic Meta Programming Language For Java.

a place of mind, The University of British Columbia


ICICS/CS Building 201-2366 Main Mall
Vancouver, B.C. V6T 1Z4 Canada
Tel: 604-822-3061 | Fax: 604-822-5485
Undergrad program:
Graduate program:

Emergency Procedures | Accessibility | Contact UBC | © Copyright The University of British Columbia