Abstract
Human-centered design can make application programming interfaces easier for developers to use.
- Beaton, J., Jeong, S.Y., Xie, Y., Stylos, J., and Myers, B.A. Usability challenges for enterprise service-oriented architecture APIs. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (Herrsching am Ammersee, Germany, Sept. 15--18). IEEE Computer Society Press, Washington, D.C., 2008, 193--196. Google ScholarDigital Library
- Blackmon, M.H., Polson, P.G., Kitajima, M., and Lewis, C. Cognitive walkthrough for the Web. In Proceedings of the Conference on Human Factors in Computing Systems (Minneapolis, MN, Apr. 20--25). ACM, Press, New York, 2002, 463--470. Google ScholarDigital Library
- Bloch, J. Effective Java Programming Language Guide. Addison-Wesley, Boston, MA, 2001. Google ScholarDigital Library
- Clarke, S. API Usability and the Cognitive Dimensions Framework, 2003; http://blogs.msdn.com/stevencl/archive/2003/10/08/57040.aspxGoogle Scholar
- Cwalina, K. and Abrams, B. Framework Design Guidelines, Conventions, Idioms, and Patterns for Reusable .NET Libraries. Addison-Wesley, Upper-Saddle River, NJ, 2006. Google ScholarDigital Library
- Ellis, B., Stylos, J., and Myers, B.A. The factory pattern in API design: A usability evaluation. In Proceedings of the International Conference on Software Engineering (Minneapolis, MN, May 20--26). IEEE Computer Society Press, Washington, D.C., 2007, 302--312. Google ScholarDigital Library
- Fahl, S., Harbach, M., Perl, H., Koetter, M., and Smith, M. Rethinking SSL development in an appified world. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security (Berlin, Germany, Nov. 4--8). ACM Press, New York, 2013, 49--60. Google ScholarDigital Library
- Faulring, A., Myers, B.A., Oren, Y., and Rotenberg, K. A case study of using HCI methods to improve tools for programmers. In Proceedings of Workshop on Cooperative and Human Aspects of Software Engineering at the International Conference on Software Engineering (Zürich, Switzerland, June 2). IEEE Computer Society Press, Washington, D.C., 2012, 37--39. Google ScholarDigital Library
- Gamma, E., Helm, R., Johnson, R., and Vlissides, J. Design Patterns. Addison-Wesley, Reading, MA, 1995.Google ScholarDigital Library
- Grill, T., Polacek, O., and Tscheligi, M. Methods towards API usability: A structural analysis of usability problem categories. In Proceedings of the Fourth International Conference on Human-Centered Software Engineering, M. Winckler et al., Eds. (Toulouse, France, Oct. 29--31). Springer, Berlin, Germany, 2012, 164--180. Google ScholarDigital Library
- Henning, M. API design matters. ACM Queue 5, 4 (May--June, 2007), 24--36. Google ScholarDigital Library
- Kirschner, B. The Perceived Relevance of APIs. Apigee Corporation, San Jose, CA, 2015; http://apigee.com/about/api-best-practices/perceived-relevance-apisGoogle Scholar
- Ko, A.J., Myers, B.A., and Aung, H.H. Six learning barriers in end-user programming systems. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (Rome, Italy, Sept. 26--29). IEEE Computer Society Press, Washington, D.C., 2004, 199--206. Google ScholarDigital Library
- Ko, A.J., Myers, B.A., Coblenz, M., and Aung, H.H. An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks. IEEE Transactions on Software Engineering 33, 12 (Dec. 2006), 971--987. Google ScholarDigital Library
- Mooty, M., Faulring, A., Stylos, J., and Myers, B.A. Calcite: Completing code completion for constructors using crowds. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (Leganés-Madrid, Spain, Sept. 21--25). IEEE Computer Society Press, Washington, D.C., 2010, 15--22. Google ScholarDigital Library
- Nielsen, J. Usability Engineering. Academic Press, Boston, MA, 1993. Google ScholarCross Ref
- Oracle Corp. Secure Coding Guidelines for the Java Programming Language, Version 4.0, 2014; http://www.oracle.com/technetwork/java/seccodeguide-139067.htmlGoogle Scholar
- Rama, G.M. and Kak, A. Some structural measures of API usability. Software: Practice and Experience 45, 1 (Jan. 2013), 75--110; https://engineering.purdue.edu/RVL/Publications/RamaKakAPIQ_SPE.pdf Google ScholarDigital Library
- Robillard, M. and DeLine, R. A field study of API learning obstacles. Empirical Software Engineering 16, 6 (Dec. 2011), 703--732. Google ScholarDigital Library
- Scheller, T. and Kuhn, E. Automated measurement of API usability: The API concepts framework. Information and Software Technology 61 (May 2015), 145--162. Google ScholarDigital Library
- Stylos, J., Busse, D.K., Graf, B., Ziegler, C., Ehret, R., and Karstens, J. A case study of API design for improved usability. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (Herrsching am Ammersee, Germany, Sept. 20--24). IEEE Computer Society Press, Washington, D.C., 2008, 189--192. Google ScholarDigital Library
- Stylos, J. and Clarke, S. Usability implications of requiring parameters in objects' constructors. In Proceedings of the International Conference on Software Engineering (Minneapolis, MN, May 20--26). IEEE Computer Society Press, Washington, D.C., 2007, 529--539. Google ScholarDigital Library
- Stylos, J., Faulring, A., Yang, Z., and Myers, B.A. Improving API documentation using API usage information. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (Corvallis, OR, Sept. 20--24). IEEE Computer Society Press, Washington, D.C., 2009, 119--126. Google ScholarDigital Library
- Stylos, J. and Myers, B.A. Mapping the space of API design decisions. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (Coeur d'Alene, ID, Sept 23--27). IEEE Computer Society Press, Washington, D.C., 2007, 50--57. Google ScholarDigital Library
- Stylos, J. and Myers., B.A. The implications of method placement on API learnability. In Proceedings of the 16th ACM SIGSOFT Symposium on Foundations of Software Engineering (Atlanta, GA, Sept. 23--27). ACM Press, New York, 2008, 105--112. Google ScholarDigital Library
Index Terms
- Improving API usability
Recommendations
Human-centered methods for improving API usability
WAPI '17: Proceedings of the 1st International Workshop on API Usage and EvolutionApplication programming interfaces (APIs) are the way that developers reuse functionality supplied in libraries, software development kits (SDKs), toolkits, frameworks, etc. By adapting a variety of user-centered methods from human-computer interaction (...
API usability peer reviews: a method for evaluating the usability of application programming interfaces
CHI '10: Proceedings of the SIGCHI Conference on Human Factors in Computing SystemsWe describe a usability inspection method to evaluate Application Programming Interfaces (APIs). We found the method useful as it identified usability defects in Microsoft's .NET Framework, of which 59% were new and 21% were fixed. Based on a comparison ...
An API Design Process in Terms of Usability: A Case Study on Building More Usable APIs for Smart TV Platform
COMPSACW '14: Proceedings of the 2014 IEEE 38th International Computer Software and Applications Conference WorkshopsProducts are released based on various platforms. An Application programing interface (API) is important to develop platform based applications effectively. Previously, we had some difficulties in developing applications using our platform APIs. Their ...
Comments