{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,13]],"date-time":"2025-11-13T18:21:54Z","timestamp":1763058114550,"version":"3.41.0"},"reference-count":53,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2017,12,27]],"date-time":"2017-12-27T00:00:00Z","timestamp":1514332800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Commun. ACM"],"published-print":{"date-parts":[[2017,12,27]]},"abstract":"<jats:p>Ordinary users need tools that automate the selection of custom-tailored faults to inject.<\/jats:p>","DOI":"10.1145\/3152483","type":"journal-article","created":{"date-parts":[[2017,12,27]],"date-time":"2017-12-27T18:50:34Z","timestamp":1514400634000},"page":"54-61","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["Abstracting the geniuses away from failure testing"],"prefix":"10.1145","volume":"61","author":[{"given":"Peter","family":"Alvaro","sequence":"first","affiliation":[{"name":"University of California Santa Cruz"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Severine","family":"Tymon","sequence":"additional","affiliation":[{"name":"Microsoft, CNET, VMware, and Oracle"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2017,12,27]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/2987550.2987555"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/2723372.2723711"},{"key":"e_1_2_1_3_1","unstructured":"Andrus K. Personal communication 2016.  Andrus K. Personal communication 2016."},{"key":"e_1_2_1_4_1","unstructured":"Aniszczyk C. Distributed systems tracing with Zipkin. Twitter Engineering; https:\/\/blog.twitter.com\/2012\/distributed-systems-tracing-with-zipkin.  Aniszczyk C. Distributed systems tracing with Zipkin. Twitter Engineering; https:\/\/blog.twitter.com\/2012\/distributed-systems-tracing-with-zipkin."},{"key":"e_1_2_1_5_1","unstructured":"Barth D. Inject failure to make your systems more reliable. DevOps.com; http:\/\/devops.com\/2014\/06\/03\/inject-failure\/.  Barth D. Inject failure to make your systems more reliable. DevOps.com; http:\/\/devops.com\/2014\/06\/03\/inject-failure\/."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2016.60"},{"key":"e_1_2_1_7_1","unstructured":"Beyer B. Jones C. Petoff J. Murphy N.R. Site Reliability Engineering. O'Reilly 2016.   Beyer B. Jones C. Petoff J. Murphy N.R. Site Reliability Engineering. O'Reilly 2016."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2080.357392"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/234533.234549"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2934872.2934910"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.14778\/2994509.2994530"},{"volume-title":"Proceedings of the 11th Usenix Conference on Operating Systems Design and Implementation","year":"2014","author":"Chow M.","key":"e_1_2_1_12_1"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/357775.357777"},{"volume-title":"T. ORCHESTRA: A Fault Injection Environment for Distributed Systems. In Proceedings of the 26th International Symposium on Fault-tolerant Computing","year":"1996","author":"Dawson S.","key":"e_1_2_1_14_1"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/3149.214121"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.5555\/1792734.1792763"},{"key":"e_1_2_1_17_1","unstructured":"Gopalani N. Andrus K. Schmaus B. FIT: Failure injection testing. Netflix Technology Blog; http:\/\/techblog.netflix.com\/2014\/10\/fit-failure-injection-testing.html.  Gopalani N. Andrus K. Schmaus B. FIT: Failure injection testing. Netflix Technology Blog; http:\/\/techblog.netflix.com\/2014\/10\/fit-failure-injection-testing.html."},{"key":"e_1_2_1_18_1","first-page":"7","volume":"8","author":"Gray J.","year":"1985","journal-title":"Tandem Technical Report"},{"volume-title":"Proceedings of the 8th Usenix Conference on Networked Systems Design and Implementation","year":"2011","author":"Gunawi H.S.","key":"e_1_2_1_19_1"},{"volume-title":"Addison-Wesley Professional","year":"2003","author":"Holzmann G.","key":"e_1_2_1_20_1"},{"key":"e_1_2_1_21_1","unstructured":"Honeycomb. 2016; https:\/\/honeycomb.io\/.  Honeycomb. 2016; https:\/\/honeycomb.io\/."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.14778\/2850583.2850595"},{"key":"e_1_2_1_23_1","unstructured":"Izrailevsky Y. Tseitlin A. The Netflix Simian Army. Netflix Technology Blog; http:\/\/techblog.netflix.com\/2011\/07\/netflix-simian-army.html.  Izrailevsky Y. Tseitlin A. The Netflix Simian Army. Netflix Technology Blog; http:\/\/techblog.netflix.com\/2011\/07\/netflix-simian-army.html."},{"key":"e_1_2_1_24_1","unstructured":"Jepsen. Distributed systems safety research 2016; http:\/\/jepsen.io\/.  Jepsen. Distributed systems safety research 2016; http:\/\/jepsen.io\/."},{"key":"e_1_2_1_25_1","unstructured":"Jones N. Personal communication 2016.  Jones N. Personal communication 2016."},{"key":"e_1_2_1_26_1","unstructured":"Kafka 0.8.0. Apache 2013; https:\/\/kafka.apache.org\/08\/documentation.html.  Kafka 0.8.0. Apache 2013; https:\/\/kafka.apache.org\/08\/documentation.html."},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/12.364536"},{"key":"e_1_2_1_29_1","unstructured":"Killian C.E. Anderson J.W. Jhala R. Vahdat A. Life death and the critical transition: Finding liveness bugs in systems code. Networked System Design and Implementation (2007); 243--256.   Killian C.E. Anderson J.W. Jhala R. Vahdat A. Life death and the critical transition: Finding liveness bugs in systems code. Networked System Design and Implementation (2007); 243--256."},{"key":"e_1_2_1_30_1","unstructured":"Kingsbury K. Call me maybe: Kafka 2013; http:\/\/aphyr.com\/posts\/293-call-me-maybe-kafka.  Kingsbury K. Call me maybe: Kafka 2013; http:\/\/aphyr.com\/posts\/293-call-me-maybe-kafka."},{"key":"e_1_2_1_31_1","unstructured":"Kingsbury K. Personal communication 2016.  Kingsbury K. Personal communication 2016."},{"key":"e_1_2_1_32_1","unstructured":"Lafeldt M. The discipline of Chaos Engineering. Gremlin Inc. 2017; https:\/\/blog.gremlininc.com\/the-discipline-of-chaos-engineering-e39d2383c459.  Lafeldt M. The discipline of Chaos Engineering. Gremlin Inc. 2017; https:\/\/blog.gremlininc.com\/the-discipline-of-chaos-engineering-e39d2383c459."},{"volume-title":"Distributed Systems---Architecture and Implementation, An Advanced Cours","year":"1980","author":"Lampson B.W.","key":"e_1_2_1_33_1"},{"key":"e_1_2_1_34_1","unstructured":"LightStep. 2016; http:\/\/lightstep.com\/.  LightStep. 2016; http:\/\/lightstep.com\/."},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2009.5270313"},{"volume-title":"No Starch Press","year":"2008","author":"Matloff N.","key":"e_1_2_1_36_1"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/2213836.2213875"},{"key":"e_1_2_1_38_1","unstructured":"Microsoft Azure Documentation. Introduction to the fault analysis service 2016; https:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/service-fabric-testability-overview\/.  Microsoft Azure Documentation. Introduction to the fault analysis service 2016; https:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/service-fabric-testability-overview\/."},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.5555\/1060289.1060297"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.5555\/1855741.1855760"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1989323.1989459"},{"key":"e_1_2_1_43_1","unstructured":"OpenTracing. 2016; http:\/\/opentracing.io\/.  OpenTracing. 2016; http:\/\/opentracing.io\/."},{"key":"e_1_2_1_44_1","unstructured":"Pasquier T.F. J.-M. Singh J. Eyers D.M. Bacon J. CamFlow: Managed data-sharing for cloud services 2015; https:\/\/arxiv.org\/pdf\/1506.04391.pdf.  Pasquier T.F. J.-M. Singh J. Eyers D.M. Bacon J. CamFlow: Managed data-sharing for cloud services 2015; https:\/\/arxiv.org\/pdf\/1506.04391.pdf."},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/50202.50214"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.5555\/3154580.3154593"},{"key":"e_1_2_1_47_1","unstructured":"Reinhold E. Rewriting Uber engineering: The opportunities microservices provide. Uber Engineering 2016; https:\/\/eng.uber.com\/building-tincup\/.  Reinhold E. Rewriting Uber engineering: The opportunities microservices provide. Uber Engineering 2016; https:\/\/eng.uber.com\/building-tincup\/."},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/357401.357402"},{"volume-title":"Sun Microsystems. In Proceedings of the","year":"1986","author":"Sandberg R.","key":"e_1_2_1_49_1"},{"key":"e_1_2_1_50_1","unstructured":"Shkuro Y. Jaeger: Uber's distributed tracing system. Uber Engineering 2017; https:\/\/uber.github.io\/jaeger\/.  Shkuro Y. Jaeger: Uber's distributed tracing system. Uber Engineering 2017; https:\/\/uber.github.io\/jaeger\/."},{"key":"e_1_2_1_51_1","unstructured":"Sigelman B.H. et al. Dapper a large-scale distributed systems tracing infrastructure. Technical report. Research at Google 2010; https:\/\/research.google.com\/pubs\/pub36356.html.  Sigelman B.H. et al. Dapper a large-scale distributed systems tracing infrastructure. Technical report. Research at Google 2010; https:\/\/research.google.com\/pubs\/pub36356.html."},{"key":"e_1_2_1_52_1","unstructured":"Shenoy A. A deep dive into Simoorg: Our open source failure induction framework. Linkedin Engineering 2016; https:\/\/engineering.linkedin.com\/blog\/2016\/03\/deep-dive-Simoorg-open-source-failure-induction-framework.  Shenoy A. A deep dive into Simoorg: Our open source failure induction framework. Linkedin Engineering 2016; https:\/\/engineering.linkedin.com\/blog\/2016\/03\/deep-dive-Simoorg-open-source-failure-induction-framework."},{"volume-title":"Proceedings of the 6th Usenix Symposium on Networked Systems Design and Implementation","year":"2009","author":"Yang J.","key":"e_1_2_1_53_1"},{"key":"e_1_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.5555\/646704.702012"},{"volume-title":"Proceedings of the 11th Usenix Conference on Operating Systems Design and Implementation","year":"2014","author":"Zhao X.","key":"e_1_2_1_55_1"}],"container-title":["Communications of the ACM"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3152483","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3152483","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T02:13:31Z","timestamp":1750212811000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3152483"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,12,27]]},"references-count":53,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2017,12,27]]}},"alternative-id":["10.1145\/3152483"],"URL":"https:\/\/doi.org\/10.1145\/3152483","relation":{},"ISSN":["0001-0782","1557-7317"],"issn-type":[{"type":"print","value":"0001-0782"},{"type":"electronic","value":"1557-7317"}],"subject":[],"published":{"date-parts":[[2017,12,27]]},"assertion":[{"value":"2017-12-27","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}