Skip to content

Revision History

Rev. no. Description Author(s) Reviewers Date (Persian) Authors' Signature Reviewers' Signature
1. (Describe changes made)

1. Regulatory References

Regulatory references:

IEC 62304, para. 5.3.1 and 5.3.2 [class B, C]

Relevant other documentation:

  • SOP Software Development
  • User needs / stakeholder requirements
  • Design input / software requirements
  • (...)

2. Software Systems

In compliance with DIN EN 62304, we subdivide our software on three levels: software systems, software components and software units.

Here, describe your internal software systems. The IEC 62304 defines those as an “integrated collection of software items organized to accomplish a specific function or set of functions.”

NOTE: Ideally, you would add an illustrating diagram to the Annex and reference it here.

2.1. Frontend

Enter description, for example:

  • Function: user interface display
  • Software safety classification and rationale (You have a base safety classification for your entire project, and every subsystem inherits that be default. However, you can prove some subsystems have a lower less risky grade. But for example, if the global grade is B, all subsystems are at least B, and some can be proven to be A.)
  • Runtime
  • Deployment
  • User groups ( as stated in [[IEC62304/templates/user-needs-list]] doc)

2.2. Backend

Enter description, for example:

  • Function: managing patient data and medical images.
  • Software safety classification and rationale
  • Runtime (e.g. JVM)
  • Deployment (e.g. Docker container)
  • User group

2.3. Algorithm

Enter description, for example:

  • Function: taking medical images as input and output a prediction.
  • Software safety classification and rationale
  • Runtime (e.g. JVM)
  • Deployment (e.g. Docker container)
  • User group

3. Software Units

Describe your internal software units. The IEC 62304 defines those as a “software item [any identifiable part of a program. These are basically classes, functions, or modules that you write unit tests for.

  • Wearable device poller (regularly checks whether wearable device has new data and downloads it)
  • Notification service (sends messages to Apple / Google for push notifications of mobile apps)
  • BluetoothConnectionManager
  • DataRepository

4. Database

Describe your databases. For example:

  • Relational database: Postgres v14

5. IT Security

5.1. Encryption of data

\<enter content>

5.1.1. Data at rest

\<enter content>

5.1.2. Data in transit

Example content:

  • Data in transit is encrypted with state-of-the-art encryption, e.g. SSL, TLS.
  • Additionally, we create a Virtual Private Network (VPC) which prevents the Compute Instances from being exposed to the public internet. The algorithm and the database are therefore not publicly reachable; they are only reachable by the backend.
  • Or any usage of any particular JSON, protobuf schema.

Template Copyright openregulatory.com. See template license.

Please don't remove this notice even if you've modified contents of this template.