API usability: CHI'2009 special interest group meeting
CHI '09 Extended Abstracts on Human Factors in Computing Systems
Improving Documentation for eSOA APIs through User Studies
IS-EUD '09 Proceedings of the 2nd International Symposium on End-User Development
Conversations in developer communities: a preliminary analysis of the yahoo! pipes community
Proceedings of the fourth international conference on Communities and technologies
A field study of API learning obstacles
Empirical Software Engineering
Using intelligent tutors to enhance student learning of application programming interfaces
Journal of Computing Sciences in Colleges
What should developers be aware of? An empirical study on the directives of API documentation
Empirical Software Engineering
Methods towards API usability: a structural analysis of usability problem categories
HCSE'12 Proceedings of the 4th international conference on Human-Centered Software Engineering
Studying the Documentation of an API for Enterprise Service-Oriented Architecture
Journal of Organizational and End User Computing
Hi-index | 0.00 |
As software grows more complex, software developers’ productivity is increasingly defined by their ability to effectively reuse code. Even APIs (application programming interfaces) and other code explicitly intended for reuse are often difficult and time consuming for developers to use. This paper describes the user-centered design and evaluation process we evolved in redesigning SAP’s BRFplus - a business rules engine, whose API was created for platform development, but which is now also increasingly being used by application developers - even though it was not initially designed with their specific needs in mind. Our API redesign attempts to take both the initial as well as the new emergent user requirements into account. A usability evaluation of our proposed changes to the API suggests that our user-centered design process was successful in helping to create an API that significantly improved users’ productivity and better matches the different users’ needs.