It is common to think that regulatory requirements like IEC 62304 are burdensome and a “necessary evil.” Perhaps it depends on your mindset, but I see them as a significant opportunity for any business that is truly committed to a real process of ongoing improvement.
Let me cite a case in point.
Today, I was writing a software requirements specification for a client. The specification applied to the software licensing subsystem in their product software. This is subsystem that determines what capabilities of their product have been licensed by a given customer, and hence, whether that customer may use those capabilities.
I produced my first draft of the SRS and emailed it within the client’s organization, asking for redlines. Standard operating procedure in engineering organizations.
A little later in the day, one of the client’s engineers and I sat down to discuss his comments. As we did, and after about thirty minutes, I recognized that we could make a very significant simplification in the how the subsystem would work. It really was a thing of beauty, and we both recognized it as such.
The simplification was such that it allowed for the licensing subsystem to be independent of the business logic that the client would implement as part of their sales process. In other words, the client’s Sales function would be free to design whatever licensing rules they wanted, and the licensing subsystem in the product would be able to implement it without any changes.
The take-away is that following the IEC 62304 standard caused us to invest more time up-front in requirements analysis. That, in turn, led to the discovery of a major simplification in how the licensing subsystem will work. And that simplification will ensure that the licensing subsystem will not have to be revised then next time the client decides to change the business rules associated with product feature licensing.
Finally, this simplification also means that we will be able to auto-generate some of the test cases necessary to show that the licensing subsystem has been carefully verified.
IEC 62304 – whether it’s a blessing or a curse is entirely up to you!