Flyer U120-0397 biomed.txt Why Ada for Medical Devices: A Biomedical Engineer's View of Ada By Robert C. Leif, Ada_Med Division of Newport Instruments 5648 Toyon Rd. San Diego CA 92115 Tel: (619) 582-0437 Email: 76137.2164@CompuServe.com Ensuring Dependability Most of the medical devices I have worked on have included a significant software component. No simple solution exists to ensure that the software is dependable; however, using Ada provides a beginning. The United States Department of Defense (DoD) certifies that any compiler it "validates" has passed numerous tests in the validation test suite and Ada compiler vendors, such as Alsys, provide meaningful warranties. The use of Ada for developing expensive, dangerous weapons and for projects requiring a high level of safety, such as air traffic control and aircraft, has established an infrastructure of standards and experience for Ada programmers in specifying, designing, creating, and testing the software. In the United States, if a manufacturer's 510K or Premarket Approval Form fails to substantiate that the product is safe and effective to the Food and Drug Administration's satisfaction, then the device cannot be sold in the country. Even after the sale, a patient can sue the manufacturer for malpractice and negligence if the device harms him or her. Now limited to the United States, the FDA's stringent guidelines are being tailored by the International Organization for Standardization (ISO) for the European Community. Hence, manufacturers will have a harder time avoiding tight standards for high quality by searching outside the United States for their markets. Choosing Ada Experimental necessity prompted my using Ada for medical devices. I was developing a system to use in researching how to determine the compatibility of organs for transplant candidates. In order to measure the differences between populations of blood cells and to find populations in 3-dimensional data, I needed a good method for separating cells and a means with which to analyze them. The solution was to build an Automated Multiparameter Analyzer for Cells (Leif 1970). In 1972, the only reasonable solution was to use a computer, for the estimated throughput was 5,000 cells per second with 8 parameters per cell. The resulting system performs as follows: The Coulter VCS (Volume Conductivity Scatter) blood cell analyzer illuminates a blood sample with a helium-neon laser as the blood passes through the transducer. The VCS measures simultaneously the white cells volume and opacity, plus the differences between the light's scatter in gangles when it bounces off the white cells. The combination of these parameters allows researchers to separate the white cells into five classes. Two Ada programs then group the blood samples according to the three vectors. If the one class of the donor's white blood cells, the lymphocytes, react with antibodies from the recipient's blood, the Ada program provides a means to quantify the reaction. The results help in research to determine whether the candidate's body will reject the transplanted organ. Building an Instrument The work on the algorithmic projects demonstrated the necessity for a true 32-bit 386 compiler. Studies indicated that, at the time, the only 386 compiler that could handle very large data structures, compile other test code (primarily acquired from STARS), and had a meaningful warranty was produced by Alsys. We purchased the Alsys Ada Compiler for developing the planned new mid-range hematology instrument mostly on two factors: the excellent training courses available from Westley Mackey in software engineering and Eugene Bingue in Ada and AdaSAGE, and the fact that Alsys Ada produced true 32-bit code under Microsoft DOS that did not require overlays. Two programmers, one who was already familiar with Ada, wrote the 2,833 Ada statements in two years; 996 statements were reused in the second program from the first. One obstacle was that Ada lacked support from third-party vendors; for example, we had to develop a screen generator in-house. In addition, we could not use the Thor tool or AdaSAGE because our new version of Alsys Ada was no longer compatible with the AdaSAGE libraries. However, the proof was in the pudding: the system's software was finished before the hardware. Both in terms of good manufacturing practices and of cost savings, Ada is, I believe, the correct language for medical devices. The improvements scheduled for Ada 95 will significantly facilitate further development of the instrument. The language's dependability will help manufacturers meet increasingly stringent and international standards and its portability makes it a logical choice for large biomedical projects where laboratories share code (such as in the human genome project and the space cytometer). References Department of Health and Human Services, Food and Drug Administration, 21 CFR Part 820, Medical Devices; Current Good Manufacturing Practice (CGMP) Regulations; Proposed Revisions; Request for Comments; Proposed Rule, Federal Register, 58, No.224, p 61952-61986 (November 23,1993). R. C. Leif, I. Rosello, D. Simler, G. P. Garcia, and S. B. Leif; "Ada Software for Cytometry". Analytical and Quantitative Cytology and Histology 13 440-450 (1991). R. C. Leif, J. Sara, I. Burgess, M. Kelly, S. B. Leif, and T. Daly, "The Development of Software in the Ada Language for a Mid-Range Hematology Analyzer". Tri-Ada `93, p 340-346 (1993A). ********************** The views, opinions, and findings contained in this report are those of the author(s) and should not be construed as an official Agency position, policy, or decision, unless so designated by other official documentation. Copyright 1996. IIT Research Institute. All rights assigned to the U.S. Government (Ada Joint Program Office). Permission to reprint this flyer, in whole or in part, is granted, provided the AdaIC is acknowledged as the source. ********************** Ada Information Clearinghouse (AdaIC) P.O. Box 1866 Falls Church, VA 22041 Telephone: 1-800-AdaIC-11 (1-800/232-4211) or 703/681-2466 Fax: 703/681-2869 E-mail: adainfo@sw-eng.falls-church.va.us The AdaIC is sponsored by the Ada Joint Program Office and operated by IIT Research Institute.