Formal validation and verification of a medical software critical component (original) (raw)
Related papers
How to Assure Correctness and Safety of Medical Software: The Hemodialysis Machine Case Study
Lecture Notes in Computer Science, 2016
Medical devices are nowadays more and more software dependent, and software malfunctioning can lead to injuries or death for patients. Several standards have been proposed for the development and the validation of medical devices, but they establish general guidelines on the use of common software engineering activities without any indication regarding methods and techniques to assure safety and reliability. This paper takes advantage of the Hemodialysis machine case study to present a formal development process supporting most of the engineering activities required by the standards, and provides rigorous approaches for system validation and verification. The process is based on the Abstract State Machine formal method and its model refinement principle.
A Formal Framework for Modelling and Validating Medical Systems
Studies in health technology and informatics, 2001
Medical computerised systems which have a major effect on human lives (e.g. those used for diagnosis, therapy, surgery, in the intensive care units, etc) are considered as safety critical systems. Such systems are sometimes responsible for major damages and injuries due to unpredicted malfunction. Misleading user requirements, errors in the specification and in the implementation are the usual reasons responsible for non-safe systems. This paper advocates the use of an integrated formal framework based on a computational machine (X-Machine), in the development of safety critical medical systems. This formal framework gives the ability to intuitively as well as formally model a system, then automatically check if the produced model has all the desired properties, and finally test if the implementation is equivalent to the specification by applying a complete set of test cases. Therefore, the use of this framework in the development of systems in safety critical medical domains can assure that the final product is valid with respect to the user requirements by revealing errors during the whole development life cycle and subsequently add to the confidence of their use. The proposed framework is accompanied by an example, which demonstrates the use of X-Machines in specification, testing and verification.
Improving Verification & Validation in the Medical Device Domain
The benefits of effective verification and validation activities in the medical device domain include increased usability and reliability, decreased failure rate and recalls and reduced risks to patients and users. Though there is guidance on verification and validation in multiple standards in the medical device domain, these are difficult for the manufacturer to implement, as there is no consolidated information on how they can be successfully achieved. The paper is intended to highlight three major areas for improvement in the medical device software development domain. This research is based on an analysis of available literature in the field of verification and validation in generic software development, safety-critical and medical device software domains. Additionally, we also performed a review of the standards and process improvement models available in these domains.
Methods for Preclinical Validation of Software as a Medical Device
Proceedings of the 13th International Joint Conference on Biomedical Engineering Systems and Technologies, 2020
Software as a medical device is subject to dedicated regulatory requirements before it can be used on human beings. The certification process in Europe requires that sufficient data on clinical benefits are available before the device is CE marked. This position paper describes our proposal of a risk-based approach to technical and preclinical validation of software as medical devices. This approach ensures that all technical solutions for safety are implemented in the software and that all information for safe use is consistent before the software can be made available to patients. This approach is compliant to the main international standards ISO 13485 on quality systems and ISO 14971 on risk management and therefore ensures regulatory compliance as well as patient protection. This integrated approach allows the designers of the software to integrate regulatory and safety testing in the technical testing of the candidate release version of the device. This approach ensures patient safety and regulatory compliance at the same time as technical functionality.
Software Technology: Methods and Tools, 2019
The development of medical devices is a safety-critical process, because a failure or a malfunction of the device can cause serious injuries to the patients whom use it. The application of a rigorous process for their development reduces the risk of failures since validation and verification activities can be performed in a objective, reproducible, and documentable manner. In this paper we present an approach based on the Abstract State Machine (ASM) formal method. Starting from the model, validation and verification (V&V) techniques can be applied. Furthermore, by step-wise refinement, a final model can be obtained, which can be automatically translated to C ++ code. The process is applied to the smart pill box case study. Starting from the ASM model, we generate C ++ code for the Arduino platform after the application of V&V activities. Furthermore, we introduce regulation (IEC62304) and guidelines (FDA General Principles of Software Validation) that support the developer in medical software development. In particular, we explain how ASMs formal process can be compliant with them.
A Model-Based Approach to Support Validation of Medical Cyber-Physical Systems
Sensors, 2015
Medical Cyber-Physical Systems (MCPS) are context-aware, life-critical systems with patient safety as the main concern, demanding rigorous processes for validation to guarantee user requirement compliance and specification-oriented correctness. In this article, we propose a model-based approach for early validation of MCPS, focusing on promoting reusability and productivity. It enables system developers to build MCPS formal models based on a library of patient and medical device models, and simulate the MCPS to identify undesirable behaviors at design time. Our approach has been applied to three different clinical scenarios to evaluate its reusability potential for different contexts. We have also validated our approach through an empirical evaluation with developers to assess productivity and reusability. Finally, our models have been formally verified considering functional and safety requirements and model coverage.
Risk-Based Testing Approach for Medical Devices Software
2020
A successful "medical device" development requires the collaboration between designers, developers, and quality engineers to be able to assess needs, functional requirements, specifications, and problems at every stage of development. The quality control of the developing process is achieved through a predefined set of policies, quality assessment, and the management of activities to eliminate defects and weaknesses wherever the development process. The paper presents a successful approach to the development of a new medical device that will successfully pass all stages of certification to obtain a CE-mark.
Communications in Computer and Information Science, 2014
Software development is frequently challenged with quality concerns. One of the primary reasons for such issues is the very nature of the software development process. First, it can be difficult to accurately and completely identify the requirements for a software development product. Also, the implementation on various platforms and the need to integrate with sometimes unforeseeable additional systems adds complexity. For safety critical domains, such as the medical device and healthcare sectors, these hurdles are amplified. Whereas a failure in a desktop application may be resolved through a restart with no harm incurred, a failure in a medical device can have life threatening consequences. Our work in the Regulated Software Research Centre (RSRC) aims to support medical device producers in the production of safer medical device software. In this paper, we describe the MDevSPICE framework and how it addresses the safety concerns faced by medical device producers.
Compositional Verification of a Medical Device System
2013
Complex systems are by necessity hierarchically organized. Decomposition into subsystems allows for intellectual control , as well as enabling different subsystems to be created by distinct teams. This decomposition affects both requirements and architecture. The architecture describes the structure and this affects how requirements "flow down" to each subsystem. Moreover, discoveries in the design process may affect the requirements. Demonstrating that a complex system satisfies its requirements when the subsystems are composed is a challenging problem. In this paper, we present a medical device case example where we apply an iterative approach to architecture and verification based on software architectural models. We represent the hierarchical composition of the system in the Architecture Analysis & Design Language (AADL), and use an extension to the AADL language to describe the requirements at different levels of abstraction for compositional verification. The component-level behavior for the model is described in Simulink/Stateflow. We assemble proofs of system level properties by using the Simulink Design Verifier to establish component-level properties and an open-source plug-in for the OSATE AADL environment to perform the compositional verification of the architecture. This combination of verification tools allows us to iteratively explore design and verification of detailed behavioral models, and to scale formal analysis to large software systems.
Envisioning a Requirements Specification Template for Medical Device Software
Lecture Notes in Computer Science, 2014
In many health jurisdictions, software is considered to be medical device software (MDS), when it is used to analyze patient data in order to render a diagnosis or monitor the patient's health; when it is to be used by a patient to diagnose an ailment; or when it is used to deliver functionality for a medical device. Flaws in MDS can result in patient harm, including death. Legislators and regulatory agencies publish guidelines and regulatory standards that are aimed at ensuring the safety, security and dependability of MDS. These guidelines and standards universally agree that a complete and consistent requirement specification is vital to the success of medical device software. Moreover, we observe that regulators are shifting from being process focused to being product focused in their approval guidance. In this paper, we review challenges associated with requirements used in the development of MDS, current standards and guidelines relevant to MDS, and existing templates for requirement specifications. We then propose a set of design objectives for a 'good' MDS requirements template and propose a template structure for MDS requirement specification fulfilling all the design objectives. Our template is, by design, tailored to facilitate the gathering and documenting of high quality requirements for MDS.