2006 · 17 citations · 18 references
ComputingComputer ScienceDesign AutomationDiagrammingProgramming LanguagesDiagrammatic RepresentationModel-driven DevelopmentModel-driven Software EngineeringSoftware DesignSoftware ModelingAspect-oriented ModelingAspect-oriented ProgrammingAutomated OperationsUser InteractionViews
When modifying or debugging a software system, among other tasks, developers must often understand and manipulate source code that crosscuts the system's structure. These tasks are made more difficult by limitations of the two approaches currently used to present details of crosscutting structure: tree views and structural diagrams. Tree views force the developer to manually synthesize information from multiple views; structure diagrams quickly suffer from graphical complexity. We introduce an active model as a means of presenting the right information about crosscutting structure to a developer at the right time. An active model is produced as a result of three automated operations---projection, expansion, and abstraction. Combined with particular user interaction features during display, these operations enable a view of the model to be presented to the developer without suffering from the complexity of existing approaches. We have implemented an active model tool, called ActiveAspect, for presenting crosscutting structure described by AspectJ aspects. We report on the results of a case study in which the tool was used effectively by two subjects to implement a modification task to a non-trivial AspectJ system.
18
George W. Furnas · ACM SIGCHI Bulletin · 1986 · 1.6K citations · Full text
George W. Furnas · 1986 · 887 citations · Full text
Programmers use slices when debugging
Mark Weiser · Communications of the ACM · 1982 · 762 citations · Full text