Results 11 -
16 of
16
Using Association Metrics to Help Users Navigate API Documentation
- IEEE SYMPOSIUM ON VISUAL LANGUAGES AND HUMAN-CENTRIC COMPUTING
, 2010
"... In the past decade there has been spectacular growth in the number and size of third-party libraries, frameworks, toolkits and other Application Programming Interfaces (APIs) available to modern software developers. However, the time-saving advantages of code re-use are commonly hampered by the dif ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
In the past decade there has been spectacular growth in the number and size of third-party libraries, frameworks, toolkits and other Application Programming Interfaces (APIs) available to modern software developers. However, the time-saving advantages of code re-use are commonly hampered by the difficulty in finding the correct methods for a given task among the thousands of irrelevant ones. We have developed a tool called Apatite that helps address this issue by letting programmers browse APIs by viewing associations between their components. Apatite indicates which items of an API are popular in different contexts and allows browsing by initially selecting verbs (methods and actions) in addition to classes and packages. The associations are calculated by leveraging existing search engine data and source code, and verbs are identified by parsing the documentation descriptions. Apatite is available on the web and is being used by developers worldwide on a regular basis.
found at the ENTCS Macro Home Page. Fundamental Nano-Patterns to Characterize and Classify Java Methods
"... Replace this file with prentcsmacro.sty for your meeting, ..."
Multi-touch Table User Interfaces for Collaborative Visual Software Analytics
, 2010
"... Most software visualization systems and tools are designed from a single-user perspective and are bound to the desktop, IDEs, and the web. These design decisions do not allow users to collaboratively analyse software or easily interact and navigate software visualizations. We are building collaborat ..."
Abstract
- Add to MetaCart
Most software visualization systems and tools are designed from a single-user perspective and are bound to the desktop, IDEs, and the web. These design decisions do not allow users to collaboratively analyse software or easily interact and navigate software visualizations. We are building collaborative, interactive, multi-touch software visualization applications for multi-touch tables. Our user studies will outline the strengths and weaknesses of designing multi-touch software visualization applications and inform how users collaboratively conduct visual software analytics with multi-touch table user interfaces. CONTENTS
Semantic Web-based Source Code Search
"... Abstract. The ability to search for source code on the Internet has proven to be essential for many common software development and maintenance tasks. However, available code search engines are typically limited to lexical searches and do not take in consideration the underlying semantics of source ..."
Abstract
- Add to MetaCart
Abstract. The ability to search for source code on the Internet has proven to be essential for many common software development and maintenance tasks. However, available code search engines are typically limited to lexical searches and do not take in consideration the underlying semantics of source code such as the program structure or language. Especially object-oriented source code, which includes inheritance and polymorphism, is often not modeled to a level in which it can be queried sufficiently. In this paper, we present a Semantic Web-based approach to source code search that uses ontologies to model and connect source code fragments extracted from repositories on the Internet. This modeling approach allows us to reason and search across project boundaries while dealing with incomplete knowledge and ambiguities. In comparison with other search tools, we incrementally build our knowledge base without the need to re-visit fragments or compile the source code. Our search engine is scalable and allows us to process and query a large code base collected from opensource projects.
IdentifyingWordRelationsinSoftware:
"... Modernsoftwaresystemsaretypicallylargeandcomplex, making comprehension of these systems extremely ..."
Abstract
- Add to MetaCart
Modernsoftwaresystemsaretypicallylargeandcomplex, making comprehension of these systems extremely
An Empirical Investigation of Opportunistic Programming: Interleaving Web Foraging, Learning, and Writing Code
"... This paper investigates the role of online resources in problem solving. We look specifically at how programmers—an exemplar form of knowledge workers—opportunistically interleave Web foraging, learning, and writing code. We describe two studies of how programmers use online resources. The first stu ..."
Abstract
- Add to MetaCart
This paper investigates the role of online resources in problem solving. We look specifically at how programmers—an exemplar form of knowledge workers—opportunistically interleave Web foraging, learning, and writing code. We describe two studies of how programmers use online resources. The first study, conducted in the lab, found that programmers leverage the Web with three distinct intentions: They engage in just-in-time learning of new skills and approaches, they extend their skills, and they strategically delegate their memory to online resources. The results also suggest that queries for different purposes have different styles and durations. Do query styles robustly vary with intent, or is this result an artifact of the particular lab setting? To address this question, we analyzed a month-long set of Web queries to a commercial programming framework’s online information sources. In this dataset, query style also corresponded to intent. These results contribute to a theory of online resource usage in programming, and suggest opportunities for tools to facilitate opportunistic programming.

