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.