Ciência-IUL    Publicações    Descrição Detalhada da Publicação    Exportar

Exportar Publicação

A publicação pode ser exportada nos seguintes formatos: referência da APA (American Psychological Association), referência do IEEE (Institute of Electrical and Electronics Engineers), BibTeX e RIS.

Exportar Referência (APA)
Santos, A. L. & Myers, B. A. (2017). Design annotations to improve API discoverability. Journal of Systems and Software. 126, 17-33
Exportar Referência (IEEE)
A. L. Santos and B. A. Myers,  "Design annotations to improve API discoverability", in Journal of Systems and Software, vol. 126, pp. 17-33, 2017
Exportar BibTeX
	author = "Santos, A. L. and Myers, B. A.",
	title = "Design annotations to improve API discoverability",
	journal = "Journal of Systems and Software",
	year = "2017",
	volume = "126",
	number = "",
	doi = "10.1016/j.jss.2016.12.036",
	pages = "17-33",
	url = ""
Exportar RIS
TI  - Design annotations to improve API discoverability
T2  - Journal of Systems and Software
VL  - 126
AU  - Santos, A. L.
AU  - Myers, B. A.
PY  - 2017
SP  - 17-33
SN  - 0164-1212
DO  - 10.1016/j.jss.2016.12.036
UR  -
AB  - User studies have revealed that programmers face several obstacles when learning application programming interfaces (APIs). A considerable part of such difficulties relate to discovery of API elements and the relationships among them. To address discoverability problems, we show how to complement APIs with design annotations, which document design decisions in a program-processable form for types, methods, and parameters. The information provided by the annotations is consumed by the integrated development environment (IDE) in order to assist API users with useful code completion proposals regarding object creation and manipulation, which facilitate API exploration and learning. As a proof of concept, we developed Dacite, a tool which comprises a set of Java annotations and an accompanying plugin for the Eclipse IDE. A user study revealed that Dacite is usable and effective, and Dacite’s proposals enable programmers to be more successful in solving programming tasks involving unfamiliar APIs.
ER  -