Assignment 13, Jun Chen
Ye, Y., & Fischer, G. (2002) "Supporting Reuse by Delivering Task-Relevant and Personalized Information." In Proceedings of 2002 International Conference on Software Engineering (ICSE'02), Orlando, FL, pp. 513-523.
1. what do you consider the main message of the paper?
The main message is that information delivery is a good mechanism to support software reuse.
2. how is this work applicable to your own
2.1. work?
I write code from time to time. It happened not only once that I wrote a function by myself, which actually existed in the library. If I knew the existence of that function, a lot of time could have been saved and my code would look cleaner. Therefore, I think the technique described in this paper is useful to a programmer.
2.2. interests?
I play a role as users. I would be interested in using this technique in my work.
3. do you have ideas how the work in the paper could or should be further developed?
The idea of making context-based suggestions, or delivering right information at the right time, can be applied to many other domains.
4. have you used any reuse libraries
4.1. if not: why not?
n/a
4.2. if yes: which ones? did the libraries have any particular strengths and weaknesses?
C/C++ library and Java library. The Java library is organized via a better hierarchy than C library. This hierarchy helps me search for functions I want. But, the early learning time is long. I need to at least read materials to understand the top-level package first.
5. How does Codebroker infer the "task-at-hand"?
CodeBroker delivers components by using doc comments and signatures. Whenever a software developer finishes entering a comment, the contents of the doc comment are extracted as a query, and components from the repository that match it are shown in the user interface. Likewise, whenever the signature definition is finished, CodeBroker extracts the signature, which is then combined with the preceding doc comment as a query to retrieve matching components.
6. what are the trade-offs between
6.1. to let the systems infer the task-at-hand
It is difficult for the system to precisely infer the task-at-hand. The system might give users un-relevant components. If the system can always give the exact components, the gain is obvious.
6.2. versus that the users specifies the task at hand?
Users often can do a better job at specifying the task-at-hand. But the problem, which is also one main issue this paper tried to solve, is that users might not unaware of L4-L3. This seriously limits the user.
|