IEC 62304 & ISO 13485 for Embedded Medical Device Software

Share

In one of our latest articles on integrating AI/ML into regulated medical devices, we broke down how machine learning is changing the game in medtech. To be taken seriously in regulated markets, your software needs structure. That means solid processes, clear documentation, and systems that hold up when your product leaves the lab and enters the real world.

This time, we’re looking at embedded medical device software. So, let’s be direct right away: clean code isn’t the whole story (especially when patient safety is on the line!). A single bug or a missing risk control can quickly turn into something serious.

That’s why IEC 62304 and ISO 13485 for embedded systems matter so much. One defines how you build medical software, while the other sets the rules for the quality system around it. Together, they give you the framework to stay compliant, stay safe, and stay audit-ready.

A quick look at what we’ll explore:

  • Why IEC 62304 and ISO 13485 matter for embedded medical device software
  • What tends to go wrong when there’s no formal development process
  • How risk management influences design, testing, and documentation
  • What working compliance looks like
  • First-hand lessons from embedded projects we’ve helped bring to life

What is IEC 62304 and why does it matter?

What happens when embedded software in a medical device goes wrong?
Sometimes, nothing serious. Other times, it means a missed heartbeat or the wrong dose of medication. That’s why embedded medical device software standards like IEC 62304 matter.

IEC 62304 is the go-to standard for building medical device software in a way that prioritizes patient safety. It defines your software development lifecycle (SDLC), and this SDLC lives inside your ISO 13485 quality system. The standard lays out how your development process should work.

That’s especially important for embedded systems, where software risks often stay hidden until something breaks. IEC 62304 helps you keep things predictable, especially when it counts.

 

Understanding software risk

One of the first steps in IEC 62304 is to figure out how risky your software could be if something goes wrong. This process is known as software safety classification. It sets the tone for how thorough your process needs to be.

 

Software safety class

What it means

Impact on your process

Class A

No possible injury

Fewer formalities required

Class B

Might cause non-serious harm

Requires stronger controls

Class C

Could cause serious harm or death

Demands the most rigorous approach

 

💡Watch out
Software safety class doesn’t align with your device’s class under MDR or FDA. Just because your device is labeled Class II doesn’t mean your software is Class B. If your firmware controls dosing or monitors heart function, you’re likely looking at Class C, even if the hardware itself isn’t.

Let’s say your team is building firmware for a connected insulin pump. That firmware directly impacts dosing decisions. If it fails, there’s a real risk to the patient. That alone justifies a Class C classification, and it’s up to you to prove your process matches that level of risk.

Overall, this standard isn’t meant to make your life harder but to ensure that when the device ships, it’s safe (safe by design, safe in production, and safe even when things go sideways).

Overview of ISO 13485 for medical device software

You can follow IEC 62304, write good code, and test it properly. But without proper ISO 13485 compliance, your work still won’t hold up during an audit.

IEC 62304 defines how you build and maintain your software. ISO 13485 is the quality system that surrounds that process. If the two don’t align, things will break down (usually at the worst possible time).

ISO 13485 is the international standard for medical device quality management systems. It outlines how you manage design, suppliers, manufacturing, and post-market actions. While it doesn’t give software-specific rules, it provides the framework where your 62304-aligned development must live.

 

How it connects to embedded software

ISO 13485 might seem like something for the quality team, but if you’re working on embedded medical software, it affects your work directly.

You can’t start coding until your requirements are properly documented and approved, as required by the QMS. If you’re using open-source or third-party libraries, they count as suppliers, and you’ll need to review and document them.

Later, if there’s a complaint tied to the software, it could trigger a CAPA. You’ll need to explain what went wrong, how you fixed it, and how you’ll prevent it from happening again.

It all happens outside your IDE, but it shapes how your team works. That’s why ISO 13485 matters. It makes sure your software is not just functional, but also traceable and ready for certification.

Why it matters

You can follow IEC 62304 and write solid code. But if your medical device quality management system doesn’t back it up, the audit can still fail.

Auditors care about how decisions are made and risks are managed. If your QMS doesn’t show that, you’ve got a gap.

 

💡Good to know
ISO 13485 is required in Europe and widely used in the U.S. because it aligns with FDA expectations.

7 Key processes in IEC 62304

Once you understand the purpose of IEC 62304 and how it fits within ISO 13485, the next logical question is: how do you actually work with it? The standard outlines several core processes that any compliant medical device software must go through. But instead of viewing these as dry formalities, it helps to think of each process as solving a practical problem during development. Each of these sits under ISO 13485’s design and development controls.

 

Software development planning

Before anything gets built, you need a plan. Who’s doing what? How is the work organized? What’s the safety class?

This is where you set expectations and define what documents are needed for traceability. For Class B or C, that often includes architecture diagrams, test plans, and traceability tables.
The plan is a part of your ISO 13485 records and helps show that you had structure from day one.

 

Software requirements analysis

This step connects functionality to risk. Each requirement needs to map back to the risk controls defined in ISO 14971.

Why? Because if a feature manages risk, you need to prove it. Each requirement should link to something in your risk file. That’s what auditors (and your future self too) will expect to see. Under ISO 13485, these requirements must be verified and validated, tying 62304 directly into broader QMS obligations.

 

Software architectural design

Now’s the time to decide how everything fits together. Speed matters, but so does making sure the system can handle something going wrong.

Good architecture separates critical functions from non-critical ones. That way, if something breaks, it doesn’t bring the whole system down. And for Class C software, this structure can determine how much testing and review you’ll need.

 

Software detailed design

Here’s where you sketch out how each component will behave. You document how the component receives data, processes it, and what it returns.

Agile teams might hesitate here. But even in iterative development, this level of detail is useful. It ensures everyone’s on the same page. And when you reach verification, you’ll be glad the groundwork is there.

 

Software unit implementation and verification

Now it’s time to write the code and make sure each function does what it’s supposed to. How much testing you need depends on the software safety class.

For Class A, basic tests are often enough. Class C, on the other hand, requires more rigor (e.g. code reviews, coverage checks, and sometimes static analysis). In fact, the higher the risk, the deeper you’ll need to go.

 

Software integration and system testing

Once the parts are tested, you bring them together. In fact, this phase plays a key role in embedded software validation for medical devices.

Integration testing checks how well components interact. System testing looks at the software as a whole. Does it do what it’s supposed to? Is it safe? Your testing should confirm both, and trace back to the original requirements.

 

Software release

Releasing a build is a formal decision that comes with responsibility.

By this point, you should have completed testing, tracked versions, and documented known issues. Everything needed for certification should be in place.

If problems show up later, this documentation helps explain what was known and how decisions were made.

Software risk management according to IEC 62304

With IEC 62304, risk management becomes part of writing software. It uses ISO 14971 principles to help you spot and control software‑related risks before they reach real patients.

Not sure what that actually looks like? Here’s a breakdown.

 

Identifying hazardous situations

Start by looking for any scenario where the software could go off track. That includes everything from a major failure to subtle bugs that could still lead to harm.

 

Implementing risk control measures

When the risks are clear, you need to decide how to keep them in check. Some controls are built into the software. Others come from hardware or user instructions.

 

Type of control

Example

Built into the software

Emergency shutdown sequence

Backed by hardware

Backup power or hardware lock

Requires user action

On-screen warning message

 

Verifying effectiveness of risk controls

Controls only count if they work. You’ll need to confirm that each one does what it’s supposed to. Depending on the risk, that could mean testing, simulation, or formal reviews.

 

Documentation and traceability

You’ll need to show the link between each risk, how it’s managed, and how you know the control works. This traceability helps your team stay aligned and makes audits easier to handle.

 

💡Good to know
A clear and complete risk traceability file not only makes audits smoother but also helps quickly understand what went wrong if a problem shows up after release.

4 IEC 62304 compliance challenges and common mistakes

Some medical device software regulatory compliance problems show up more than others. Especially with IEC 62304. In most cases, they trace back to how risk is managed under ISO 14971, usually when the software safety class is defined too late or just on paper.

  1. One of the most common mistakes is delaying software safety classification. Teams often start development without defining the safety class. The problem is you now need to go back and collect all the evidence that matches the chosen class. And if it’s Class B or C, you’re likely missing key traceability or test depth.
  2. Another common issue is the disconnect between architecture and code. Diagrams might look clean, but the repository often tells a different story. As modules shift and interfaces evolve, the design on paper can quickly fall out of sync with the actual implementation. When this gap widens, it creates friction during reviews and leads to unnecessary complications during audits.
  3. Another pattern we often see is documentation that’s created just for the audit. On paper, everything might look complete. But if the team doesn’t actually use those documents day to day, the gap between development and compliance quickly widens.
  4. There’s also the mismatch between process and practice. Your QMS might describe a neat, compliant workflow. But your real tools (e.g. Confluence, Jira, Git) might tell a very different story. When those don’t align, traceability suffers. Auditors notice this very quickly as it’s very obvious when the paperwork says one thing but Jira, Git, and real commits tell a different story.

These issues are common. But they’re also avoidable if you build IEC 62304 compliance into your actual workflow.

4 Best practices for IEC 62304 & ISO 13485 implementation

The thing is you don’t need a perfect process from day one. But if you’re working with medical device software, it’s smart to get a few key things right early. Our compliance experts prepared a couple of decisions that can save you from serious delays (either during audits or after release).

Best Practices Checklist for IEC 62304 & ISO 13485 Implementation

Integrate early with your QMS

Your software team and your quality team should not be living in separate worlds. If your QMS is a Word folder and your actual dev process lives in Jira or Confluence, you’ve got a disconnect.

Ideally, you want the software lifecycle defined in your QMS to mirror what the team actually does. If you’re using sprints, CI/CD, or test automation, they should be reflected in the quality system. In other words, your IEC 62304-aligned software lifecycle should live inside your ISO 13485 quality system (not outside it!). In practice, that often means mapping your IEC 62304 lifecycle directly onto the tools your team already uses (eg. Jira, Confluence, Git) and making sure your ISO 13485 procedures actually reference those tools.

 

💡Good to know
Auditors aren’t looking for a perfect QMS on paper. They want to see that your documented process matches how the work is actually done.

 

Apply Agile methodologies the right way

IEC 62304 doesn’t ban Agile, but it does expect structure.

That means you need to show how work was planned, executed, and verified. If your backlog has no connection to your risk file or requirements, that’s a red flag. But if your user stories or tasks link to test cases or risk controls, you’re in good shape.

 

💡Pro tip
Screenshots of Jira boards and Confluence pages can work as artifacts. Just make sure they show the right information and aren’t taken out of context.

 

Keep proper documentation for all software lifecycle stages

Some teams document only for the audit. The result is you have docs that no one reads and that often don’t match the actual code.

Useful documentation works differently. It tracks what’s really being built. That means design docs reflect the real system, test plans grow with the product, and requirements are written before development begins. When the team relies on the docs, they stay current, simply because they have to.

 

💡Pro tip
It’s fine to start small. You don’t need a complex setup on day one. One shared document for design and another for tests can be enough (as long as they’re kept up to date and your team knows exactly where to find them of course).

 

Make regular training and audit readiness a habit

Audits shouldn’t come as a surprise. If your team works in line with IEC 62304 and ISO 13485, the audit should just confirm what’s already in place.

Keep things simple but consistent. Internal checks and occasional mock audits help you spot gaps before they become problems. Just as important, make sure training records are complete. If someone joins the team, give them a 20-minute rundown on the standard.

 

💡Good to know
Wondering what makes for solid audit prep? It’s when your team understands the rules and why they matter. If everyone can explain their work clearly, there’s no need for a last-minute scramble.

Our experience with turning a prototype into a compliant medical device

Prototype → Compliant device

One of our clients, a European startup building an embedded medical device, had prioritized rapid prototyping over compliance and process discipline. Their wearable device worked, collecting data and pushing it to a local dashboard. But they were nowhere near IEC 62304 for embedded software readiness, or anything close to ISO 13485 certified software.

They realized this approach wouldn’t be acceptable in medtech, not with embedded software that affects real patients.

The problem:

The issue started with a lack of structure. There was no defined safety class, the architecture didn’t match the code, and no one could confidently explain how risk was managed. In addition, the paperwork looked fine at first glance, but it didn’t reflect the real development process. What the team did day-to-day looked nothing like what the quality system claimed.

What we did:

  • Helped the team define the software safety class early and document the rationale.
  • Refactored the system architecture to match what was actually in the repo.
  • Set up a lightweight documentation workflow inside their existing tools (Jira + Confluence).
  • Brought the dev team into the loop so they understood how ISO 13485 and IEC 62304 applied to their embedded software.
  • Added automated traceability mapping between user stories, code commits, and tests.

What the client achieved:

  • Cleared their first ISO 13485 audit without major findings.
  • Cut onboarding time for new engineers by 40%.
  • Reached MVP launch with software and documentation fully aligned to IEC 62304 Class B expectations.
  • Landed their first pilot with a hospital group.

How Yalantis supports your medtech journey

We’ve looked at why IEC 62304 and ISO 13485 are essential when it comes to embedded medical device software. As we’ve seen, clean code alone doesn’t cut it as without the right structure (risk-based development, traceability, documentation, and QMS alignment) you’re left exposed during audits and real-world use.

If that sounds familiar or you’re aiming to avoid these challenges altogether, Yalantis can offer assistance from our top experts. We help medtech companies align their development workflows with IEC 62304, embed them into ISO 13485-compliant quality systems, and get their embedded software ready for market.

FAQ

What is the difference between IEC 62304 and ISO 13485?

IEC 62304 focuses on how you build your software. It defines the steps and documentation needed to manage software risk. ISO 13485 looks at the bigger picture. It covers how your whole quality system is run. You’ll need both if your device has software and you’re going for certification.

Is IEC 62304 mandatory for all medical devices?

Not always. But if your device relies on software to function, or that software could affect safety, it’s hard to avoid. Most notified bodies expect you to follow it, especially for embedded systems or anything beyond Class A. Even when it’s not named in the law, many regulators and notified bodies treat IEC 62304 as the de-facto state of the art for safety-relevant medical software.

What are common mistakes in software risk management for medical devices?

One of the big ones is choosing the safety class too late and not adjusting the process to match. Another is having risk controls on paper that aren’t built into the code. We also see teams listing risks but skipping traceability. That becomes a problem fast when the auditors show up.

Rate this article

Share this article

5/5.0

based on 15 reviews