Software Practices Lab Homepage
People
Publications
Papers
Theses
Projects
Information Fragments
Mylyn
Registration-Based Abstraction
Summarizing Software Artifacts
past projects...
Reading Group
SPL Wiki [local access]

Behavioural Concern Modelling

  

All too often, modifications to an existing software system are made in an ad-hoc manner. If the code related to the modification is well-localized, an ad-hoc approach can be effective. When the relevant points crosscut the system structure, this approach begins to fall apart: developers have a difficult time estimating how long it will take to complete the modification task, the code added and changed as part of the modification introduces defects into the system, amongst other problems.

We hypothesize that a developer could perform a modification task more systematically if the developer can iteratively build up a behavioural model of the concern that is linked to the source. The developer can then query the interactions between the source representing different parts of a concern.

We call this approach Behavioural Concern Modelling (BCM). In this approach, a developer posits all or part of a finite-state machine (FSM) representing the behaviour of a concern or concerns, and then uses the BCM tool to determine how data- and control-flows relate to the posited state machine. The BCM tool builds on previous work in conceptual moduless (CMs). Our BCM tool supports CMs for Java. A developer can represent the states and transitions of an FSM with CMs.

People

  • Albert Lai
  • Gail Murphy