S 264 Validation Spreadsheet Applications
S 264 Validation Spreadsheet Applications
S 264 Validation Spreadsheet Applications
Publication from
www.labcompliance.com
Global on-line resource for validation and compliance
Copyright by Labcompliance. This document may only be saved and viewed or printed
for personal use. Users may not transmit or duplicate this document in whole or in part,
in any medium. Additional copies and licenses for department, site or corporate use can
be ordered from www.labcompliance.com/solutions.
While every effort has been made to ensure the accuracy of information contained in
this document, Labcompliance accepts no responsibility for errors or omissions. No
liability can be accepted in any way.
Labcompliance offers books, master plans, complete Quality Packages with validation
procedures, scripts and examples, SOPs, publications, training and presentation
material, user club membership with more than 300 downloads and audio/web
seminars. For more information and ordering, visit www.labcompliance.com/solutions
Page 2 of 14
Company Name:
Controls:
Superseded Document
N/A, new
N/A
Effective Date
Jan 1, 2004
Signatures:
Author
Approver
I indicate that I have reviewed this SOP, and find it meets all
applicable business requirements and that it reflects the
procedure described. I approve it for use.
Name:
Signature:
Date:
Reviewer
________________________________
________________________________
________________________________
________________________________
________________________________
________________________________
I indicate that I have reviewed this SOP and find that it meets all
applicable quality requirements and company standards. I
approve it for use.
Name:
Signature:
Date:
________________________________
________________________________
________________________________
Page 3 of 14
1. PURPOSE
Quality standards, regulatory agencies and some company policies require software
used for evaluation of critical data to be properly validated. Spreadsheet
applications are considered as software and should be validated to demonstrate
suitability for their intended use. The purpose of this operating procedure is to
ensure that Spreadsheet applications are validated during their development and
installation and periodically reevaluated during operation.
2. SCOPE
Validation of Spreadsheet applications used in regulated environments. Examples
are Excel Spreadsheets. The procedure applies whenever firms develop
Spreadsheet applications with and without VBA scripts.
3. GLOSSARY/DEFINITIONS
VBA - Visual Basic for Applications, Macro programming language for Microsoft
Office Products.
Note: For other definitions, see www.labcompliance.com/glossary.
4. REFERENCE DOCUMENTS
4.1. Validation Master Plan for Equipment and Computer Systems.
(Not part of this SOP, example can be ordered from
www.labcompliance.com/books/masterplan.htm)
4.2. SOP ###: Risk-Based Validation of Equipment and Computer Systems.
Available through: www.labcompliance.com/solutions/sops.
4.3. SOP ###: Change Control of Software and Computer Systems.
Available through: www.labcompliance.com/solutions/sops.
4.4. SOP ###: Development and Use of Spreadsheets in GxP/Part11
Environments.
Available through: www.labcompliance.com/solutions/sops.
Page 4 of 14
4.5. SOP ###: Development and Maintenance of Test Scripts for Equipment
Hardware, Software and Systems.
Available through: www.labcompliance.com/solutions/sops.
4.6. SOP ###: Training for GxP, 21 CFR Part 11 and Computer Validation.
Available through: www.labcompliance.com/solutions/sops.
5. RESPONSIBILITIES
5.1. User
5.1.1. Defines user requirements.
5.1.2. Tests prototypes for usability.
5.1.3. Performs functional testing.
5.1.4. Proofreads user information.
5.1.5. Writes bug reports and enhancement requests.
5.2. Developer
5.2.1. Understands the user's environment and workflow.
5.2.2. Writes design specifications.
5.2.3. Reviews design specifications.
5.2.4. Writes code.
5.2.5. Reviews code.
5.2.6. Develops installation procedure.
5.2.7. Writes user information.
5.3. Validation Group
5.3.1. Prepares and maintain inventories of Spreadsheets.
5.3.2. Approves test procedures.
5.3.3. Develops programming standards and naming conventions.
5.3.4. Reviews test protocols.
5.4. Quality Assurance
5.4.1. Develops test plan.
5.4.2. Approves test protocols.
5.4.3. Approves release of Spreadsheet applications.
Page 5 of 14
6. PROCEDURE
The extent of Spreadsheet validation depends on its complexity and on the impact
of the Spreadsheet on product quality. Any step can be passed over as long as
there is a sufficient explanation that the skipped step has no relevance for the
Spreadsheet accuracy.
6.1. Requirement Specifications (User)
Use steps in Attachment 7.1 to document URS.
6.1.1. Describe the task, how the problem is solved now and how the new
Spreadsheet will solve it more efficiently.
6.1.2. Describe user requirements (what the user wants to do with the
Spreadsheet), computer requirements (computer hardware, operating
system), regulatory requirements (GLP/GMP/GCP, 21 CFR Part 11) and
security requirements.
6.1.3. Specify minimum hardware and software requirements.
6.1.4. Describe the required skill level of the end users.
6.1.5. Describe how extensively and for long the Spreadsheet is intended to be
used.
6.2. Functional Specifications (Developer, review by user)
6.2.1. Describe the Spreadsheet in terms of the functions it will perform, and
write it in such a way that it is understood by both software developers
and by users.
6.2.2. Review the functional description against the requirement specifications.
References may be given to the user documentation.
Functional specifications are written by the developer. Note: Requirements from
6.1 and functions from 6.2 may be combined in one list. In this case the
complete list is written by the user and reviewed by the developer.
6.3. Design Specification (Developer)
6.3.1. Define how specified functional, security and regulatory specifications
can best be implemented.
6.3.2. Discuss alternative solutions, if any. Use programming standards and
naming conventions from your organization if available. Define file
structure, e.g., whether to use one Excel workbook with multiple sheets
or several single-sheet workbooks.
6.3.3. Define how to handle errors, e.g., how the application detects and deals
with errors.
Page 6 of 14
6.3.4. Discuss the Spreadsheet design with at least one other competent
person.
6.3.5. Develop a matrix that references the design elements to
requirement/functional specifications. Use Attachment 7.2.
6.3.6. Review the design specifications against the requirement/functional
specifications. Use Attachment 7.3.
6.3.7. Document formulas or algorithms used within the program for data
analysis, processing, conversion or other manipulations.
6.4. Implementing the Code (Developer)
6.4.1. Write the code according to design specifications from 6.3 and by using
programming standards from your organization if available.
6.4.2. Annotate the code using documentation standards from your organization
if available. Annotation must be such that other people whose education
and experience are similar to the programmer can understand it.
6.4.3. The code documentation must clearly state the Spreadsheet title, revision
number and file name.
6.5. Structural Testing (Developer)
6.5.1. Testing includes structural code testing (white box testing, code review)
as well as functional testing (black box testing). Tests should be
traceable to user requirements and functional specifications. Structural
testing should be done by the programmer and at least one other person,
preferably another programmer.
6.5.2. Develop a matrix that references the source code elements to the design
specification. Use Attachment 7.4.
6.5.3. Check the code for mechanical errors (syntax) and logical errors (correct
implementation of formulas).
6.5.4. At least one other programmer should check the code as described in
6.5.3.
Note: For larger projects, structural testing should firstly be done by individual
developers and afterwards by a team.
6.6. Functional Testing (User)
6.6.1. Functional testing tests the program functions (black box testing). Tests
should be traceable to user requirements and functional specifications.
Test plans should be prepared by the validation group and approved by
the QA department. Functional testing should be performed by
anticipated users.
Page 7 of 14
Page 8 of 14
Page 9 of 14
Page 10 of 14
7. ATTACHMENTS
7.1. Attachment User Requirement Specifications
7.1.1. Introduction
7.1.1.1. The Application:
Describe the application.
7.1.1.2. Current Procedures and Limitations:
Describe current procedure and limitations.
7.1.1.3. The Plan to Overcome Current Limitations:
Describe how the new Spreadsheet will improve the process.
7.1.1.4. Operators:
Describe the type of operators who will use the Spreadsheet.
7.1.1.5. Hardware and Software Environment:
Describe current PC hardware, software and networking
environment.
7.1.2. Specifications
Specifications should describe:
7.1.2.1. Tasks the program should perform.
7.1.2.2. Usability and aesthetics.
7.1.2.3. Plausibility/limits of data entry.
7.1.2.4. Security/data integrity and traceability functions.
7.1.2.5. Check for potential process or equipment problem.
7.1.2.6. Computer hardware and software.
Page 11 of 14
User Requirement
Reviewer
Name:
Signature:
Date:
Comment
________________________________
________________________________
________________________________
Page 12 of 14
Reviewer
Code Section
Name:
Signature:
Date:
Comment
________________________________
________________________________
________________________________
User Requirement
Test
Page 13 of 14
7.6. Attachment - Test Cases for each function. Test cases should include
boundaries, high load and stress testing (unexpected entries).
Spreadsheet Title:
Revision Number:
File Name:
Test Number:
Specification:
Purpose of Test:
Medium 0
High 0
Test Person:
Printed Name: __________ Signature: __________ Date: ________
Page 14 of 14
Spreadsheet Title:
Revision Number:
File Name:
Number
Test
Result
Corrective Action