IEC 62304 - Develop an Architecture for the Interfaces of Software Items

MediKit

Starting to get Involved
#1
What does IEC 62304 cl 5.3.2 - Develop an ARCHITECTURE for the interfaces of SOFTWARE ITEMS refers to?
What does ARCHITECTURE of the interfaces means?

Is it expecting descriptions of the methods instead of defining the actual interfaces? For examples, there are two MCUs and one SOFTWARE ITEM in each, for 5.3.2 it is about the communication protocol between the MCUs?

And for two SOFTWARE ITEMS in the same application communicate through a message queue, the message queue structure is the architecture of the interface?

Am I on the right track or totally wrong?

Thanks.
 
Elsmar Forum Sponsor

yodon

Staff member
Super Moderator
#2
What we typically do is just show an architecture diagram depicting all the software items and the interfaces (sw - sw and hw - sw). Where appropriate, you can identify the communication protocol but you don't need to get down to the message structure at this point. The architecture also addresses the means to support safety requirements and so there may be some aspects in the interfaces that also support safety.

By and large, 62304 just reflects good software engineering practices with the level of design / documentation increasing as risk to patients increase. The higher the risk, the more the expectation is to spend on the up-front work. (Hard to argue that.). For the most part, then, you do what makes most sense for your needs to properly design and maintain the system with an eye on the appropriate level of risk mitigation.
 

MediKit

Starting to get Involved
#3
Hi Yodon,

Thanks for your reply. Just to clarify - do you mean you just need to show the linkages between the sw - sw and sw - hw, without defining what data is transferred? I can see how specifying or describing the interface details are useful and can be reviewed and verified. Without the details I am not sure how we can verify the architecture in a meaningful way. All you can do is to check that a software item is calling a function or sending a message to any software item, without knowing if they are connected correctly.

Apology if these are very basic questions as I do not have a lot of architecture design / documentation experience. Thanks.
 

yodon

Staff member
Super Moderator
#4
No apologies necessary. It's not very prescriptive in the standard.

We generally push down the details of the interface to a lower-level document; i.e., an Interface Control Document.

At the architecture level, it's mostly just recognition that the interfaces exist and partitioning for safety. You raise a good point about "verification" of the architecture. The requirements just say (for verification of sw architecture):
a) the ARCHITECTURE of the software implements SYSTEM and software requirements including those relating to RISK CONTROL;
b) the software ARCHITECTURE is able to support interfaces between SOFTWARE ITEMS and between SOFTWARE ITEMS and hardware; and
c) the MEDICAL DEVICE ARCHITECTURE supports proper operation of any SOUP items.

So the documentation at the architecture level (for interfaces) just needs to be enough to show the architecture can support the interfaces.
 

MediKit

Starting to get Involved
#5
What does 'the software ARCHITECTURE is able to support interfaces' actually mean? In terms of software design, I believe interfaces are part of the architecture? So by definition the interfaces must be 'supported' by the architecture?

In the standard it defines ARCHITECTURE as 'organizational structure of a SYSTEM or component. So the verification involves verifying that the organization structure of the SYSTEM supports interfaces between the SOFTWARE ITEMS? It does not sounds right.

Somehow I find the wording very confusing and does not seem to align with common software terminology.
 

yodon

Staff member
Super Moderator
#6
The "verify" wording (requirement,s architecture, detailed design, etc.) is a bit curious but if you just think of those as detailed reviews, it makes a little more sense. A detailed review (with appropriate personnel) of the architecture showing how the interfaces are incorporated is what we do and the minutes of the review assert the conclusion that the architecture supports the interfaces.
 

MediKit

Starting to get Involved
#7
Hi Yodon,

To help my understanding, could you please comment on my example below?

Let's say I have a simple device that has a heater controlled by a single MCU. My architecture has two SOFTWARE ITEMS - A) Heater driver library which generate a PWM to control the heating element, it has some API such as SetHeaterDuty, DisableHeater etc and B) Controller which implement some sort of control algorithm. The controller interface with the heater driver through the API

SW-B (Controller) - APIs - SW-A (Heater driver) ---- hardware

1) So the APIs are the interfaces between the two SOFTWARE ITEMS?
2) The Heater Driver Library is the interface between the Software and Hardware?
3) For verification, we review the connection between Controller to hardware, and concludes that the architecture allow the Controller to interface with the hardware through the API to the Heater Driver and to the actual hardware.

Am I on the right track?

Many thanks for your help.
 

yodon

Staff member
Super Moderator
#8
Looks like you're on the right track to me. Any rationale you can provide for WHY you believe #3 is the case would strengthen your argument. Not exactly sure what, if anything, you could add but it's worth considering.

There are 2 other things to 'verify' with the architecture so don't forget those!
 
Thread starter Similar threads Forum Replies Date
M Risk Analysis Flow - Confusion between ISO 14971 and IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 7
D IEC 62304 Risk Classification - With and without hardware control IEC 62304 - Medical Device Software Life Cycle Processes 2
M IEC 62304 Class A Project IEC 62304 - Medical Device Software Life Cycle Processes 15
B Clause 5.1.12 of Technical Standard IEC 62304/A1 IEC 62304 - Medical Device Software Life Cycle Processes 4
P IEC 62304 - evaluation of integration and system testing IEC 62304 - Medical Device Software Life Cycle Processes 4
P Risk acceptability alignment between ISO 14971 and IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 6
D Required Checklist Showing Compliance to IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 11
P Proposed revision of IEC 62304 - 2019 IEC 62304 - Medical Device Software Life Cycle Processes 6
S Relationship between IEC 62304 problem resolution and ISO 13485 IEC 62304 - Medical Device Software Life Cycle Processes 8
P IEC 62304:2006 A1:2015 - Software from the early 1990s IEC 62304 - Medical Device Software Life Cycle Processes 4
B IEC 62304:2015 vs IEC 62304:2006 + AMD1 IEC 62304 - Medical Device Software Life Cycle Processes 4
F IEC 62304 - Segregation and communication between software items IEC 62304 - Medical Device Software Life Cycle Processes 1
B Class IIB Device - IEC 62304 Software Classification IEC 62304 - Medical Device Software Life Cycle Processes 13
B IEC 62304 - Update Checklist IEC 62304 - Medical Device Software Life Cycle Processes 2
L Connection between IEC 62304 and Chapter 14 of IEC 60601-1 IEC 60601 - Medical Electrical Equipment Safety Standards Series 2
S Does IEC 62304 require documenting unresolved anomalies for all safety classes? IEC 62304 - Medical Device Software Life Cycle Processes 4
A SOP for software validation of software in medical device IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 5
T I need to make test reports according IEC 62304 & IEC 62366 IEC 62366 - Medical Device Usability Engineering 2
D Changing software classification via software - IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 3
D Software as risk control - Confused on one aspect of IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 20
K Trying to figure out what satisfies a few aspects of IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 2
Y IEC 62304 Section 4.3(a) - 100% probability of failure IEC 62304 - Medical Device Software Life Cycle Processes 3
Y Application of IEC/EN 62304 at an advanced stage of software development IEC 62304 - Medical Device Software Life Cycle Processes 4
T Is there any requirement to be compliant with IEC 62304 while implementing ISO 13485 ISO 13485:2016 - Medical Device Quality Management Systems 5
L Documentation Planning - IEC 62304 Clause 5.1.8 IEC 62304 - Medical Device Software Life Cycle Processes 2
C Software for Medical Devices - Requirements Content for compliance with IEC 62304 IEC 62304 - Medical Device Software Life Cycle Processes 1
W CPU BIST IEC 62304 - Embedded code has CPU instruction tests IEC 62304 - Medical Device Software Life Cycle Processes 2
K IEC 62304 Amd 1 2015 - Figure 3 – Assigning Software Safety Classification IEC 62304 - Medical Device Software Life Cycle Processes 11
K Risk Reduction by Risk Control: IEC:62304-Class C ISO 14971 - Medical Device Risk Management 15
C Per IEC 62304, are DHF documents Configuration Items? IEC 62304 - Medical Device Software Life Cycle Processes 5
P IEC 62304 AMD1:2015: What's new vs.the 2006 Edition? IEC 62304 - Medical Device Software Life Cycle Processes 4
F FDA PMK 510(k) - IEC 62304 Software Components Segregation Other US Medical Device Regulations 3
M IEC 62304 Applicability - GUI Control Software IEC 62304 - Medical Device Software Life Cycle Processes 3
B Our NB says that IEC 62304 is an ISO 14971 Requirement ISO 14971 - Medical Device Risk Management 1
B Clarification on interpretation of some EN ISO 14971:2012 & IEC 62304:2006 req's ISO 14971 - Medical Device Risk Management 46
H ISO 14971 vs. IEC 62304 vs. 98/79/EC vs. ISO 13485 (Software Medical Device) ISO 14971 - Medical Device Risk Management 1
D A desperate call for help - IEC 62304 software IEC 62304 - Medical Device Software Life Cycle Processes 5
B IEC 62304:2006/AMD1:2015 Changes for Class A Software IEC 62304 - Medical Device Software Life Cycle Processes 3
M IEC 62304, ISO 14971 and FDA Medical Device SW Guidance 21 CFR Part 820 - US FDA Quality System Regulations (QSR) 5
K IEC 62304 - Compliance steps IEC 62304 - Medical Device Software Life Cycle Processes 2
K ISO 14971 and IEC 62304 - Medical Device Software House ISO 14971 - Medical Device Risk Management 9
S Software Test Report including IEC 62304 classification IEC 62304 - Medical Device Software Life Cycle Processes 4
A Mapping of IEC 62304 artefacts (SRS, SAD, etc) to the 820.30 phases IEC 62304 - Medical Device Software Life Cycle Processes 5
W IEC 62304 vs. IMDRF SaMD Guideline Risk Class IEC 62304 - Medical Device Software Life Cycle Processes 5
C New IEC/TR 80002-3 Guidance for IEC 62304 - June 2014 IEC 62304 - Medical Device Software Life Cycle Processes 2
R IEC 62304 was brought up during an FDA Inspection/Audit IEC 62304 - Medical Device Software Life Cycle Processes 6
O Electronic Fever Thermometer - Why not IEC 62304 Class C? IEC 62304 - Medical Device Software Life Cycle Processes 7
R IEC 62304 - Medical Device Wi-Fi Radio Requirements IEC 62304 - Medical Device Software Life Cycle Processes 5
A Dental Laser Certification IEC 62304 for a Firmware IEC 62304 - Medical Device Software Life Cycle Processes 1
A Requirements for Software to be CE Mark Compliant - IEC 62304 Medical Device Software IEC 62304 - Medical Device Software Life Cycle Processes 14
Similar threads


















































Top Bottom