Testing Blog

Testing in the Data Center (Manufacturing No More)

Tuesday, February 09, 2010
Share on Twitter Share on Facebook
Google
Labels: James Whittaker

19 comments :

  1. Anand SubramanianFebruary 10, 2010 at 10:28:00 AM PST

    James, you are poet and a philosopher. You could have enriched the world's greatest libraries with your treatise on human condition. What are you doing as a tester? Why James, why?

    ReplyDelete
    Replies
      Reply
  2. UnknownFebruary 10, 2010 at 10:44:00 AM PST

    So I'm not the only one who sees the hospital analogy!

    What I find interesting is this: hospitals on TV always seem to be run by doctors (see MASH, Scrubs, Grey's Anatomy, House...). And yet very, very few of the software projects I've been on were run by software developers. In dozens of projects I've worked on the project managers were almost always MBA types. One project I was on was managed by a marketing major. Very few of those managers had much, if any, experience writing code.

    Granted, I'm drawing a parallel with television pseudo-reality. Maybe the idea that hospitals are run by old, grizzled veteran doctors doesn't hold water. But the analogous setup sure seems to work better for software.

    ReplyDelete
    Replies
      Reply
  3. Matt DoarFebruary 10, 2010 at 11:32:00 AM PST

    Excellent post! It's not often I hear a new (to me) analogy about software development. And I like the one of health care.

    ReplyDelete
    Replies
      Reply
  4. David KendallFebruary 10, 2010 at 12:19:00 PM PST

    Interesting analogy. As a "doctor", I often feel like there is a health insurance bureaucracy questioning my practices and wanting me to treat every patient the same. And don't forget the pharmaceuticals companies trying to convince me that their magic pills will cure our patients.

    ReplyDelete
    Replies
      Reply
  5. UnknownFebruary 10, 2010 at 12:20:00 PM PST

    James - as one who has led testing for Electronic Medical Record apps, I appreciated your take. In this space there is less 'building' of new code-based functions and more connecting of existing toolsets. This industry tends to late adoption of new approaches/techniques. So hurry up and get real-time monitoring of test procsses hammered out. We'll see it about 2-3 years from now.

    ReplyDelete
    Replies
      Reply
  6. Ganeshram IyerFebruary 10, 2010 at 12:50:00 PM PST

    Wow. Great analogy. Wonder if this should be a pattern similar to the Gang of Four' other ones?

    ReplyDelete
    Replies
      Reply
  7. UnknownFebruary 10, 2010 at 3:28:00 PM PST

    Deming still applies to software development and testing, but not Deming as applied to manufacturing. Deming as applied to product development is perfectly consistent with your observations.

    I agree with the manufacturing-no-more thing, but I think it's a mistake to couple Deming to manufacturing just because software people mistakenly saw software development as manufacturing and proceeded to collude that with Deming.

    Realizing that software development isn't manufacturing is a great step forward. Perspectives like flow-based product development management reflect these realizations, but don't conclude that Deming is obsolete. They conclude that our presumption that software development is manufacturing was never correct.

    Deming is still applicable to product development, but we have to realize that we're doing product development.

    ReplyDelete
    Replies
      Reply
  8. Marlena ComptonFebruary 10, 2010 at 4:17:00 PM PST

    This has been an uncanny week or two in software testing for me, and it includes your post. As the whole Toyota debacle has been unfolding, I've been in the midst of reading "Artful Making" by Austin and Devin. (Your CEO wrote the forward) It mentions Deming in several places. Your post indicates that you feel the ground shifting beneath our definitions of software engineering, development and testing? I do as well.

    ReplyDelete
    Replies
      Reply
  9. ArunFebruary 11, 2010 at 4:53:00 AM PST

    A very interesting analogy between medicine and software testing
    To carry this further:

    I) Software testing

    A) System testing is like doing a master health check up for a human being
    You run through a pre determined set of tests, designed to check that every functionality of the software / human being works well.
    The extra point: At a particular age the human being is more prone to certain diseases (cardiac, blood pressure, eye sight..) – the health checkup will also be designed accordingly - What is similar in the case of software?
    Modifications in a software are likened to aging - modifications are of two forms – a) handling bugs, primarily during initial development – changing the code to handle the bugs initially found and also bugs found after release b) after the software has been released - to handle new features;
    Each of these ‘aging’ have to be handled differently - type a - handled by feature tests and more importantly - regression tests while type b is handled by feature tests primarily, then by integration tests and less by regression tests.

    B) Unit testing is like doing a particular human organ functionality tests (like doing eye tests or checking for blood pressure)
    Here the requirements are spelt out in detail and particular tests are carried out to check these extreme situations are acceptable by the tested unit / organ

    C) A fault is reported on the field in the software – Now similar to an emergency situation in the hospital the test engineer should be able to narrow down the reported fault to possible scenarios and reproduce the fault within the test environment - providing a means for the developer to then identify the module(s) that is faulty and how and rectify it - also providing a means to test that the fault is now handled.

    And yes we need to keep track of the history of the patient (bugs in a particular software, to aid regression testing), the group of patients (bugs in the type of software being tested – similar bugs are likely in certain scenarios – test patterns!), and the environment where the patient lives in (bugs in the accessory software that the software being tested, interacts with)

    ReplyDelete
    Replies
      Reply
  10. RobFebruary 11, 2010 at 11:41:00 AM PST

    Very thought provoking and original. It resonates greatly with our approach to testing the website here at Netflix.

    ReplyDelete
    Replies
      Reply
  11. AnonymousFebruary 11, 2010 at 3:16:00 PM PST

    Metaphors are the problem, not the solution.

    ReplyDelete
    Replies
      Reply
  12. Matt DoarFebruary 12, 2010 at 10:39:00 AM PST

    Isaac wrote: "What I find interesting is this: hospitals on TV always seem to be run by doctors"

    In real life, hospitals are *not* run by doctors. The doctors get to sit in committees with managers, and the managers run the hospitals.

    ReplyDelete
    Replies
      Reply
  13. Murali Kris NandigamaFebruary 12, 2010 at 3:52:00 PM PST

    Your analogies explained the use of "Engineering Analytics" in an original and refreshing way. However, in most of the modern data center applications, not only the data flows through the veins of the Apps but the App itself gets patched. Using your analogy -- think of it as a patient getting blood transfusion as well as organ patching while adding a couple or more new limbs to the body !!.

    It would be a great thing if one can not only visualize the path coverage of the App with real-time data in the data centers but also distinguish how much of that is going through "aged" code vs newly "patched" code.

    Regarding your Deming's reference, you have almost "Glenn Becked" ;)

    ReplyDelete
    Replies
      Reply
  14. radiFebruary 16, 2010 at 12:57:00 PM PST

    Hi James,

    Definitely a thought-provoking post. I really like the analogy between the medical and software fields. Especially the part about testers collaborating with each other and sharing the thoughts of an application. However, the thoughts that come out from a practical point of view make me wonder as to what should be contents of the medical clipboard. Is it an indication of the problematic areas of the software? Is it general notes about every single part of the application under test? Is it notes of the "we've been here, we've tested that" nature? Or maybe it's a combination of all.

    ReplyDelete
    Replies
      Reply
  15. AnonymousFebruary 23, 2010 at 12:47:00 AM PST

    I can understand your analogy with medical environment, altough I feel that is too much metaphore and too few real/practical examples.

    ReplyDelete
    Replies
      Reply
  16. UnknownFebruary 23, 2010 at 12:50:00 PM PST

    Matt Doar wrote: "In real life, hospitals are *not* run by doctors."

    And that's a pity, isn't it? My experience with software development is that having managers who are completely inexperienced in the field practiced by the people they manage results in very poor management decisions.

    Back to James' original post: I'm not sure that "creator" is the right place to put developers in the analogy. Certainly they are present and instrumental in the "birth" of software. But I wouldn't say a developer's role in creation is their primary function on a software project. Reaching again into my own experiences, I spend far more time fixing and enhancing existing software than creating brand new software.

    Software just sort of happens under the right circumstances, if steps aren't taken to prevent it. We developers may help to bring about those circumstances sometimes, but mostly we seem to work to bring software to maturity, keep it going for a few years, and then ease it into end of life. I'm not sure what that makes us.

    ReplyDelete
    Replies
      Reply
  17. Malini Mohan KumarFebruary 26, 2010 at 6:38:00 AM PST

    A different and brilliant perception!

    ReplyDelete
    Replies
      Reply
  18. berkeleyjewApril 1, 2010 at 9:44:00 AM PDT

    Rather than "creator", maybe we can call developers their intellectual "parents"? They should know the most about the applications, obviously, but perhaps not all their extra-curricular activities?

    I feel that extends the metaphor for their involvement in treatment as well. ;)

    ReplyDelete
    Replies
      Reply
  19. Web Hosting SolutionsOctober 27, 2010 at 4:49:00 AM PDT

    Hi James, Interesting analogy, keep updating. These kind of analogy are rare to find on Internet, yaap you need to dive deep into the subject to get through it.

    ReplyDelete
    Replies
      Reply
Add comment
Load more...

The comments you read and contribute here belong only to the person who posted them. We reserve the right to remove off-topic comments.

  

Labels


  • TotT 104
  • GTAC 61
  • James Whittaker 42
  • Misko Hevery 32
  • Code Health 31
  • Anthony Vallone 27
  • Patrick Copeland 23
  • Jobs 18
  • Andrew Trenk 13
  • C++ 11
  • Patrik Höglund 8
  • JavaScript 7
  • Allen Hutchison 6
  • George Pirocanac 6
  • Zhanyong Wan 6
  • Harry Robinson 5
  • Java 5
  • Julian Harty 5
  • Adam Bender 4
  • Alberto Savoia 4
  • Ben Yu 4
  • Erik Kuefler 4
  • Philip Zembrod 4
  • Shyam Seshadri 4
  • Chrome 3
  • Dillon Bly 3
  • John Thomas 3
  • Lesley Katzen 3
  • Marc Kaplan 3
  • Markus Clermont 3
  • Max Kanat-Alexander 3
  • Sonal Shah 3
  • APIs 2
  • Abhishek Arya 2
  • Alan Myrvold 2
  • Alek Icev 2
  • Android 2
  • April Fools 2
  • Chaitali Narla 2
  • Chris Lewis 2
  • Chrome OS 2
  • Diego Salas 2
  • Dori Reuveni 2
  • Jason Arbon 2
  • Jochen Wuttke 2
  • Kostya Serebryany 2
  • Marc Eaddy 2
  • Marko Ivanković 2
  • Mobile 2
  • Oliver Chang 2
  • Simon Stewart 2
  • Stefan Kennedy 2
  • Test Flakiness 2
  • Titus Winters 2
  • Tony Voellm 2
  • WebRTC 2
  • Yiming Sun 2
  • Yvette Nameth 2
  • Zuri Kemp 2
  • Aaron Jacobs 1
  • Adam Porter 1
  • Adam Raider 1
  • Adel Saoud 1
  • Alan Faulkner 1
  • Alex Eagle 1
  • Amy Fu 1
  • Anantha Keesara 1
  • Antoine Picard 1
  • App Engine 1
  • Ari Shamash 1
  • Arif Sukoco 1
  • Benjamin Pick 1
  • Bob Nystrom 1
  • Bruce Leban 1
  • Carlos Arguelles 1
  • Carlos Israel Ortiz García 1
  • Cathal Weakliam 1
  • Christopher Semturs 1
  • Clay Murphy 1
  • Dagang Wei 1
  • Dan Maksimovich 1
  • Dan Shi 1
  • Dan Willemsen 1
  • Dave Chen 1
  • Dave Gladfelter 1
  • David Bendory 1
  • David Mandelberg 1
  • Derek Snyder 1
  • Diego Cavalcanti 1
  • Dmitry Vyukov 1
  • Eduardo Bravo Ortiz 1
  • Ekaterina Kamenskaya 1
  • Elliott Karpilovsky 1
  • Elliotte Rusty Harold 1
  • Espresso 1
  • Felipe Sodré 1
  • Francois Aube 1
  • Gene Volovich 1
  • Google+ 1
  • Goran Petrovic 1
  • Goranka Bjedov 1
  • Hank Duan 1
  • Havard Rast Blok 1
  • Hongfei Ding 1
  • Jason Elbaum 1
  • Jason Huggins 1
  • Jay Han 1
  • Jeff Hoy 1
  • Jeff Listfield 1
  • Jessica Tomechak 1
  • Jim Reardon 1
  • Joe Allan Muharsky 1
  • Joel Hynoski 1
  • John Micco 1
  • John Penix 1
  • Jonathan Rockway 1
  • Jonathan Velasquez 1
  • Josh Armour 1
  • Julie Ralph 1
  • Kai Kent 1
  • Kanu Tewary 1
  • Karin Lundberg 1
  • Kaue Silveira 1
  • Kevin Bourrillion 1
  • Kevin Graney 1
  • Kirkland 1
  • Kurt Alfred Kluever 1
  • Manjusha Parvathaneni 1
  • Marek Kiszkis 1
  • Marius Latinis 1
  • Mark Ivey 1
  • Mark Manley 1
  • Mark Striebeck 1
  • Matt Lowrie 1
  • Meredith Whittaker 1
  • Michael Bachman 1
  • Michael Klepikov 1
  • Mike Aizatsky 1
  • Mike Wacker 1
  • Mona El Mahdy 1
  • Noel Yap 1
  • Palak Bansal 1
  • Patricia Legaspi 1
  • Per Jacobsson 1
  • Peter Arrenbrecht 1
  • Peter Spragins 1
  • Phil Norman 1
  • Phil Rollet 1
  • Pooja Gupta 1
  • Project Showcase 1
  • Radoslav Vasilev 1
  • Rajat Dewan 1
  • Rajat Jain 1
  • Rich Martin 1
  • Richard Bustamante 1
  • Roshan Sembacuttiaratchy 1
  • Ruslan Khamitov 1
  • Sam Lee 1
  • Sean Jordan 1
  • Sebastian Dörner 1
  • Sharon Zhou 1
  • Shiva Garg 1
  • Siddartha Janga 1
  • Simran Basi 1
  • Stan Chan 1
  • Stephen Ng 1
  • Tejas Shah 1
  • Test Analytics 1
  • Test Engineer 1
  • Tim Lyakhovetskiy 1
  • Tom O'Neill 1
  • Vojta Jína 1
  • automation 1
  • dead code 1
  • iOS 1
  • mutation testing 1


Archive


  • ►  2025 (1)
    • ►  Jan (1)
  • ►  2024 (13)
    • ►  Dec (1)
    • ►  Oct (1)
    • ►  Sep (1)
    • ►  Aug (1)
    • ►  Jul (1)
    • ►  May (3)
    • ►  Apr (3)
    • ►  Mar (1)
    • ►  Feb (1)
  • ►  2023 (14)
    • ►  Dec (2)
    • ►  Nov (2)
    • ►  Oct (5)
    • ►  Sep (3)
    • ►  Aug (1)
    • ►  Apr (1)
  • ►  2022 (2)
    • ►  Feb (2)
  • ►  2021 (3)
    • ►  Jun (1)
    • ►  Apr (1)
    • ►  Mar (1)
  • ►  2020 (8)
    • ►  Dec (2)
    • ►  Nov (1)
    • ►  Oct (1)
    • ►  Aug (2)
    • ►  Jul (1)
    • ►  May (1)
  • ►  2019 (4)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Jul (1)
    • ►  Jan (1)
  • ►  2018 (7)
    • ►  Nov (1)
    • ►  Sep (1)
    • ►  Jul (1)
    • ►  Jun (2)
    • ►  May (1)
    • ►  Feb (1)
  • ►  2017 (17)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Oct (1)
    • ►  Sep (1)
    • ►  Aug (1)
    • ►  Jul (2)
    • ►  Jun (2)
    • ►  May (3)
    • ►  Apr (2)
    • ►  Feb (1)
    • ►  Jan (2)
  • ►  2016 (15)
    • ►  Dec (1)
    • ►  Nov (2)
    • ►  Oct (1)
    • ►  Sep (2)
    • ►  Aug (1)
    • ►  Jun (2)
    • ►  May (3)
    • ►  Apr (1)
    • ►  Mar (1)
    • ►  Feb (1)
  • ►  2015 (14)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Oct (2)
    • ►  Aug (1)
    • ►  Jun (1)
    • ►  May (2)
    • ►  Apr (2)
    • ►  Mar (1)
    • ►  Feb (1)
    • ►  Jan (2)
  • ►  2014 (24)
    • ►  Dec (2)
    • ►  Nov (1)
    • ►  Oct (2)
    • ►  Sep (2)
    • ►  Aug (2)
    • ►  Jul (3)
    • ►  Jun (3)
    • ►  May (2)
    • ►  Apr (2)
    • ►  Mar (2)
    • ►  Feb (1)
    • ►  Jan (2)
  • ►  2013 (16)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Oct (1)
    • ►  Aug (2)
    • ►  Jul (1)
    • ►  Jun (2)
    • ►  May (2)
    • ►  Apr (2)
    • ►  Mar (2)
    • ►  Jan (2)
  • ►  2012 (11)
    • ►  Dec (1)
    • ►  Nov (2)
    • ►  Oct (3)
    • ►  Sep (1)
    • ►  Aug (4)
  • ►  2011 (39)
    • ►  Nov (2)
    • ►  Oct (5)
    • ►  Sep (2)
    • ►  Aug (4)
    • ►  Jul (2)
    • ►  Jun (5)
    • ►  May (4)
    • ►  Apr (3)
    • ►  Mar (4)
    • ►  Feb (5)
    • ►  Jan (3)
  • ▼  2010 (37)
    • ►  Dec (3)
    • ►  Nov (3)
    • ►  Oct (4)
    • ►  Sep (8)
    • ►  Aug (3)
    • ►  Jul (3)
    • ►  Jun (2)
    • ►  May (2)
    • ►  Apr (3)
    • ►  Mar (3)
    • ▼  Feb (2)
      • Interview with Copeland
      • Testing in the Data Center (Manufacturing No More)
    • ►  Jan (1)
  • ►  2009 (54)
    • ►  Dec (3)
    • ►  Nov (2)
    • ►  Oct (3)
    • ►  Sep (5)
    • ►  Aug (4)
    • ►  Jul (15)
    • ►  Jun (8)
    • ►  May (3)
    • ►  Apr (2)
    • ►  Feb (5)
    • ►  Jan (4)
  • ►  2008 (75)
    • ►  Dec (6)
    • ►  Nov (8)
    • ►  Oct (9)
    • ►  Sep (8)
    • ►  Aug (9)
    • ►  Jul (9)
    • ►  Jun (6)
    • ►  May (6)
    • ►  Apr (4)
    • ►  Mar (4)
    • ►  Feb (4)
    • ►  Jan (2)
  • ►  2007 (41)
    • ►  Oct (6)
    • ►  Sep (5)
    • ►  Aug (3)
    • ►  Jul (2)
    • ►  Jun (2)
    • ►  May (2)
    • ►  Apr (7)
    • ►  Mar (5)
    • ►  Feb (5)
    • ►  Jan (4)

Feed

  • Google
  • Privacy
  • Terms