For safety and effectiveness, the U.S. Food and Drug Administration (FDA) requires that software must be validated in the medical device industry. The software includes programs that are embedded in instruments and used in production/manufacturing process control, in which programmable logic controllers (PLCs) are widely used. The development and validation of a PLC program generally involves establishing software design (SD) structure, defining software requirements specification (SRS), conducting hazard analysis (HA), coding, and testing. The tasks are best accomplished through team efforts, with members taking the lead in activities suited to their skills within an organization; for example, SRS from the operation and the quality assurance (QA) departments; HA from emergency, health and safety (EHS); and coding from engineering. An integrated approach to these tasks would help a software project manager coordinate the team efforts effectively. This article describes an integrated approach to software development and validation in PLC programming. In this approach, the software development and validation start by establishing a normalized SD structure. This normalized structure is then incorporated into a traceability matrix (TM) of the SRS, into modules of program, and into test logs—such that every item defined in SRS or HA is registered in the normalized SRS TM table, coded in the normalized modules, tested, and documented in the normalized test logs. As the software system has a normalized structure, it becomes easy for different team members to define, review, code, test, document, and approve the relevant tasks within the software development and validation lifecycle.
Read full abstract