• 🍔🍔🍔
    link
    fedilink
    281 year ago

    can anyone with more insight explain what checks and balances had to have failed for this to make it to the field? i understand that this is like obviously potentially lethal but i don’t really know how this kind of thing would normally be prevented.

    • @LwL
      link
      25
      edit-2
      1 year ago

      Usually something in the testing process, or perhaps the testing process itself is lacking. For medical applications it should be pretty rigorous as the consequences if something slips through can be very bad.

      If this is a new feature, then every step of the process designed to make sure it works failed. Which those are precisely will depend on the project, it could mean that multiple devs and QA had a look and either missed it or didn’t think to test for it. Where I work the developer implementing a feature tests it, then 2 other developers review the code, one of them also tests it, then it goes to dedicated QA who will test it more in depth and also do regression tests (checking that existing functionality still works). The testing QA member also checks with another QA member about anything they may have missed in their test steps. But this can vary heavily, also depending on the general model of development cycle (agile or waterfall) etc - though I’m working on much less critical software, no ones going to get injured even if nothing works correctly.

      If the bug was introduced through an update to this or another feature, their regression tests might be lacking.

      It’s also possible (though imo extremely negligient for such an application) that they don’t have dedicated QA in the first place, and even don’t require their devs to test comprehensively in place of dedicated QA.

      Or, they found the bug, but management didn’t want to allocate the resources to fix it.

      Imo something like this slipping through shows negligience of some form, it’s impossible to guarantee bug-free software, but this is not some obscure, hard to reproduce error.