Refactoring Human Roles Solves Systems Problems

Several persistent problems in system administration, deployment, configuration, and usability stem from a common root: the conflation of roles between developers, users, hardware wranglers, and software integrators. We develop a taxonomy of such conflations, and show that identifying each conflation characterizes one or more familiar systems problems. Furthermore, the taxonomy suggests directions for solving these problems: refactor components to produce interfaces that cleanly decouple these roles. Recent trends in web-based client applications and cloud-based services have demonstrated the feasibility of such changes. We describe recent projects our group has done that further decouple the roles, and we use the taxonomy to propose new projects.

[1]  Jon Howell,et al.  The Utility Coprocessor: Massively Parallel Computation from the Coffee Shop , 2010, USENIX Annual Technical Conference.

[2]  Neha Narula,et al.  Native Client: A Sandbox for Portable, Untrusted x86 Native Code , 2009, IEEE Symposium on Security and Privacy.

[3]  Eugene Ciurana,et al.  Google App Engine , 2009 .

[4]  G. Cox,et al.  ~ " " " ' l I ~ " " -" . : -· " J , 2006 .

[5]  Albert G. Greenberg,et al.  Towards a next generation data center architecture: scalability and commoditization , 2008, PRESTO '08.

[6]  Helen J. Wang,et al.  Automatic Misconfiguration Troubleshooting with PeerPressure , 2004, OSDI.

[7]  Jon Howell,et al.  Leveraging Legacy Code to Deploy Desktop Applications on the Web , 2008, OSDI.

[8]  Paul Hudak,et al.  Memory coherence in shared virtual memory systems , 1986, PODC '86.

[9]  Yuan Yu,et al.  Dryad: distributed data-parallel programs from sequential building blocks , 2007, EuroSys '07.

[10]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[11]  Helen J. Wang,et al.  Protection and communication abstractions for web browsers in MashupOS , 2007, SOSP.

[12]  Amin Vahdat,et al.  A scalable, commodity data center network architecture , 2008, SIGCOMM '08.

[13]  Shan Lu,et al.  Flight data recorder: monitoring persistent-state interactions to improve systems management , 2006, OSDI '06.

[14]  Paul Hudak,et al.  Memory coherence in shared virtual memory systems , 1989, TOCS.

[15]  Wei-Ying Ma,et al.  Automated known problem diagnosis with event traces , 2006, EuroSys.