- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- An active help system to improve program navigation
Open Collections
UBC Theses and Dissertations
UBC Theses and Dissertations
An active help system to improve program navigation Viriyakattiyaporn, Petcharat
Abstract
Software development environments have evolved to make it easy for third parties to integrate a variety of tools into the environment. Previous research has shown that developers often do not use or know all of the tools available in development environments that they regularly use. The most common solution to alleviate this problem is to provide a means to search through passive help documents. However, this approach requires a developer to be able to express her desires in a form understood by a search engine. To overcome this limitation, we propose using an active help system to automatically recommend to a developer tools that are appropriate to the developer’s current goal. We introduce an active help system to recommend navigation tools because previous research has shown a substantial amount of effort expended by a developer on a software evolution task is related to navigation. Our approach infers which structurally related pieces of information are of interest to a developer and determines when the navigation performed by the developer between the related information is suboptimal. In suboptimal navigation situations, our approach recommends a tool that would enable more efficient navigation. Our approach was implemented as a prototypical active help system, called Spy glass, in IBM’s Rational Team Concert development environment. To investigate whether and under what conditions Spyglass helps or hinders a developer in navigation, two empirical studies were conducted: a longitudinal user study in an undergraduate software engineering course and a laboratory user study comparing Spyglass to a passive tutorial. The longitudinal study provided feedback to improve the user interface of Spyglass and provided evidence that the developers who were novice to the development environment liked the idea of having an active help system in the environment. The laboratory study confirmed that Spyglass can help developers navigate between code elements more efficiently. The developers in the laboratory study also confirmed their desire for a system like Spyglass. The laboratory study also revealed that Spyglass requires improvements to its accuracy.
Item Metadata
Title |
An active help system to improve program navigation
|
Creator | |
Publisher |
University of British Columbia
|
Date Issued |
2009
|
Description |
Software development environments have evolved to make it easy for third parties to
integrate a variety of tools into the environment. Previous research has shown that
developers often do not use or know all of the tools available in development environments that they regularly use. The most common solution to alleviate this problem is to provide a means to search through passive help documents. However, this approach requires a developer to be able to express her desires in a form understood by a search engine.
To overcome this limitation, we propose using an active help system to automatically recommend to a developer tools that are appropriate to the developer’s current
goal. We introduce an active help system to recommend navigation tools because previous research has shown a substantial amount of effort expended by a developer on a
software evolution task is related to navigation. Our approach infers which structurally related pieces of information are of interest to a developer and determines when the navigation performed by the developer between the related information is suboptimal. In suboptimal navigation situations, our approach recommends a tool that would enable more efficient navigation. Our approach was implemented as a prototypical active help system, called Spy glass, in IBM’s Rational Team Concert development environment. To investigate whether and under what conditions Spyglass helps or hinders a developer in navigation, two empirical studies were conducted: a longitudinal user study in an undergraduate software engineering course and a laboratory user study comparing Spyglass to a passive tutorial. The longitudinal study provided feedback to improve the user interface
of Spyglass and provided evidence that the developers who were novice to the development environment liked the idea of having an active help system in the environment. The laboratory study confirmed that Spyglass can help developers navigate between code elements more efficiently. The developers in the laboratory study also confirmed their desire for a system like Spyglass. The laboratory study also revealed that Spyglass requires improvements to its accuracy.
|
Extent |
3108998 bytes
|
Genre | |
Type | |
File Format |
application/pdf
|
Language |
eng
|
Date Available |
2009-11-12
|
Provider |
Vancouver : University of British Columbia Library
|
Rights |
Attribution-NonCommercial-NoDerivatives 4.0 International
|
DOI |
10.14288/1.0051654
|
URI | |
Degree | |
Program | |
Affiliation | |
Degree Grantor |
University of British Columbia
|
Graduation Date |
2009-05
|
Campus | |
Scholarly Level |
Graduate
|
Rights URI | |
Aggregated Source Repository |
DSpace
|
Item Media
Item Citations and Data
Rights
Attribution-NonCommercial-NoDerivatives 4.0 International