The Factory Pattern in API Design: A Usability Evaluation

  • Authors:
  • Brian Ellis;Jeffrey Stylos;Brad Myers

  • Affiliations:
  • Carnegie Mellon University;Carnegie Mellon University;Carnegie Mellon University

  • Venue:
  • ICSE '07 Proceedings of the 29th international conference on Software Engineering
  • Year:
  • 2007

Quantified Score

Hi-index 0.01

Visualization

Abstract

The usability of software APIs is an important and infrequently researched topic. A user study comparing the usability of the factory pattern and constructors in API designs found highly significant results indicating that factories are detrimental to API usability in several varied situations. The results showed that users require significantly more time (p = 0.005) to construct an object with a factory than with a constructor while performing both context-sensitive and context-free tasks. These results suggest that the use of factories can and should be avoided in many cases where other techniques, such as constructors or class clusters, can be used instead.