Underactive or failure of one or both kidneys has life-threatening consequences for a person. Toxins are no longer removed from the body. A crucial treatment method is dialysis, which takes over the functions of the kidneys and detoxifies the body. Dialysis procedures are offered in dialysis centers, intensive care units, and at home. The best-known dialysis procedures include hemodialysis and peritoneal dialysis.
Multifunctional dialysis machines are an ideal addition to these treatment methods. With different types of tubing sets and filters, different treatments can be performed with a single device.
The treatment methods that can be performed are:
This allows for individualized treatment. The multifunctional dialysis machines have bags for dialysate, substitute, citrate calcium, and filtrate on board. This makes the device completely mobile, which is a huge advantage. The other hemodialysis machines are stationary or require an osmosis water treatment unit.
The most important fluids used in the dialysis machine are the dialysate, substitute, citrate calcium, and filtrate.
The dialysate is an aqueous solution that removes or adds components to the blood depending on its potassium and calcium composition. If the concentration of the two components is higher than in the blood, the substance diffuses into the blood. Otherwise, the substance is removed from the blood.
The substitute is an electrolyte solution used to balance the patient's fluid balance during a pre- or post-dilution dialysis procedure.
Citrate calcium is an agent used to prevent blood clotting. For some patients, it is more tolerable than heparin.
The filtrate is a fluid that contains the harmful substances in the blood.
Multifunctional dialysis machines play an important role in intensive care units. During the patient's stay, they maintain kidney function, as the patient loses consciousness during the coma phase. It is therefore necessary to test these machines over a long period of time.
The software is developed according to the V-model. The model is divided into individual phases of development and testing.
After the requirements and acceptance criteria have been verified by functional tests, further errors in the individually created tests are to be found by means of permanent stress tests and experience-based tests. In order to obtain a realistic field situation, the software of the multifunctional dialysis machine is subjected to an automated stress test in the laboratory 24 hours a day for one week. If necessary, this can also take longer. Test benches are available for this purpose to achieve continuous treatment. The test benches contain valves for controlling the individual water-filled bags to simulate the patient, filtrate, dialysate, substitute, and citrate calcium, a pump for filling the bags, and a laboratory computer for controlling the actuators. A program is used to simulate the inputs of a nurse. The analysis of device data is also tool-supported. The test runs and test benches are regularly maintained to ensure that the tests run smoothly. The transported and repaired devices are also checked for functionality.
After verifying the requirements, permanent stress tests and experience-based tests are used to find any further errors that could not be found during the test phase due to the limited testing time.
Since dialysis machines in intensive care units must run 24 hours a day to maintain kidney function in comatose patients, the dialysis machines are subjected to this situation in a test laboratory. Test benches are used for the stress tests to automatically fill the bags of the test setup. This maintains a closed circuit.
Two types of tests are used in the test laboratory: stress tests and experience-based tests.
Stress tests are performed to test the robustness of the system under continuous extreme conditions. A program is used for this purpose, which replaces continuous input by the nursing staff. This makes it possible to quickly enter data into the system in order to detect errors in the system response.
The automation program triggers alarms by manipulating software variables (e.g., blood detection in the filtrate) and initiates actions on the dialysis machine (e.g., bag change).
Experience-based testing is based on the experience and specialist knowledge of the tester. It can reveal errors that are not found by formal procedures.
Individual stress test cases can be performed by using different start settings for the simulated device functions of the automation program.
The exploratory tests can be performed both automatically and manually.
The advantages of automated stress tests are:
The advantages of experience-based testing are:
There are also challenges that must be overcome with the types of tests used.
Automated stress tests:
This includes fixing software bugs, updating the program, and adding new features to the program.
Experience-based testing:
In the preparation phase, the test engineer creates tests, determines the appropriate test settings for the automation program, installs the new dialysis machine software, and updates the automation program and the test bench software.
During the test run, the test setups and test benches are maintained by the test engineer.
Software crashes and software blockers are analyzed by the test engineer and discussed with the developers. The results are stored in error tickets in the database.
To ensure that the stress tests run smoothly, the dialysis machine software, the automated stress test program, and the test bench must be maintained regularly.
The maintenance work is carried out by the test engineer without software support.
The software of the multifunction device, the automated stress test program, and the test bench are manually checked for errors (e.g., bags cannot be filled automatically due to software errors). The hoses, sensors, and actuators of a dialysis machine and the test bench are also manually checked for errors (e.g., hoses and bags can become brittle. Wires on the valves on the test bench may no longer be making contact). Hoses and cables may need to be re-routed or cables soldered. The operating system of the laboratory computer, the automation program, and the test bench software must be updated regularly.
During testing, software errors can cause the device to shut down. This can be caused, for example, by missing software variables, queries for incorrect values, and simultaneous access to variables. An unauthorized change in the software status can cause a software blocker. Software crashes and software blockers must be eliminated to improve the dialysis device software and ensure that tests run smoothly.
During the root cause analysis, the test engineer analyzes the decoded device data and manually reproduces the software errors or software blockers on a dialysis device. Manual reproduction on the device allows influences from other programs to be ruled out. Depending on requirements, a test setup and manual or tool-supported recording of measurement results may be necessary. This is followed by evaluation of the measurement results, discussion with the development team, and archiving of the software errors in the database using error tickets.
After transport and repair, dialysis machines may be damaged or still defective. This could alter the test results and impair the test phases. Commissioning is therefore necessary.
Commissioning is carried out according to a protocol. Among other things, the dialysis machine is checked for damage, the machine is functionally tested, the battery is checked for proper functioning, and the machine data is downloaded. After a review, the protocol is archived in a database.
The use of permanent stress tests and experience-based tests is a crucial step in ensuring the quality and stability of software.
These two testing methods enable a deeper and more comprehensive analysis of the software than more conventional testing methods. The testing methods used reveal more critical errors.
Although the time required to create and maintain the automation and gather experience is high, the effort pays off in the long run. Companies that accept this effort benefit from robust software that becomes more stable and resilient.
Overall, stress tests and experience-based tests are important testing methods in modern software development. They ensure that the software meets requirements and functions reliably under real and extreme conditions.
Do you have any questions or would you like to learn more about our services? We are always available and look forward to talking with you.
Firstname:
Lastname:
E-Mail Address:
Phone:
Subject:
Your message:
Yes, I consent to my personal data being collected and stored electronically. My data will only be used for the purpose of responding to my inquiry. I have taken note of the privacy policy.
You are currently viewing a placeholder content from OpenStreetMap. To access the actual content, click the button below. Please note that doing so will share data with third-party providers.
You need to load content from hCaptcha to submit the form. Please note that doing so will share data with third-party providers.
You are currently viewing a placeholder content from Google Maps. To access the actual content, click the button below. Please note that doing so will share data with third-party providers.