Making navigation easier in object-oriented programming systems

Li, Yibing (1992). Making navigation easier in object-oriented programming systems. PhD thesis The Open University.


It has been reported that non-expert users have difficulties in finding reusable software components in large object-oriented programming systems and there is a need for help tools. The research reported in this thesis addresses this issue. Described in this thesis is the design of a tool called BRRR, which aims to help non-expert users overcome such difficulties. It is developed for Smalltalk-80, the target system of this research.

BRRR is a query tool with a browsing capacity. It allows users to find necessary components by query. Its design is based on the 'retrieval by reformulation' paradigm (Williams, 1984) which was originally used in the domain of information retrieval. This paradigm allows users to incrementally specify a query by reformulation. When users specify an initial query, BRRR presents the users with an example component which satisfies the query. The users can then construct further queries by using the information presented by the system. In this way, users who are not familiar with the system or who do not know exactly what they want can be guided towards the appropriate information.

During this research, two versions of BRRR were developed: BRRRl and BRRR2. BRRRl was developed initially, based on the 'retrieval by reformulation' principle. After its implementation, a formative, empirical evaluation was conducted on it with a group of users. Based on the findings of the evaluation, BRRR2, an improved version of BRRR1 was developed. BRRR2 incorporates enhanced classification methods and explanation facilities. This new version of the tool was then evaluated empirically with a group of ten users.

The empirical evaluation of BRRR2 showed encouraging results. It demonstrates that the 'retrieval by reformulation' approach used in this research could be used successfully in helping users find reusable software components in object-oriented programming systems.

Viewing alternatives

Download history

Item Actions