Usability challenges for enterprise service-oriented architecture APIs

An important part of many programming tasks is the use of libraries and other forms of application programming interfaces (APIs). Programming via Web services using a service-oriented architecture (SOA) is an emerging form of API usage. Web services in a business context (called enterprise SOA or E-SOA) add additional complexity in terms of the number of the services, the variety of internal data structures, and service interdependencies. After altering existing human-computer interaction (HCI) methodologies to address the unique context of software development for SOA, we evaluated a large E-SOA API and identified many usability challenges. Prominent results include difficulties developers encountered while assembling data structures in Web service parameters, cycles of errors due to unclear control parameters within data structures, and difficulties with understanding long identifier names. We recommend a tolerance for unspecified objects in automatically-generated Web service proxy code, consistent data structures in parame ters across services, and encoding optional namespace schemes into WSDL files.

[1]  Brian Ellis,et al.  The Factory Pattern in API Design: A Usability Evaluation , 2007, 29th International Conference on Software Engineering (ICSE'07).

[2]  Brad A. Myers,et al.  Development and evaluation of a model of programming errors , 2003, IEEE Symposium on Human Centric Computing Languages and Environments, 2003. Proceedings. 2003.

[3]  Steve Loughran,et al.  Rethinking the Java SOAP Stack ♦ , 2005 .

[4]  David Meredith,et al.  Approaches and Best Practices in Web Service Style, XML Data Binding and Validation – Implications to Securing Web Services , 2008 .

[5]  Jeffrey Stylos,et al.  Usability Implications of Requiring Parameters in Objects' Constructors , 2007, 29th International Conference on Software Engineering (ICSE'07).