CHAPTER TWENTY-TWO
Testing and Quality Assurance for Workforce Management Systems1
IN THIS CHAPTER, TESTING AND quality assurance are discussed as an important component of the workforce management (WFM) implementation project. These activities are crucial checks on the system to avoid problems at a later date. This chapter describes the different types of testing that work best for the type of system that is being implemented. Considerations for determining testing strategies and preparation, such as the appropriate data sets and functions, are described. The systems development life cycle is revisited in an outlined quality assurance process that can be scaled to meet a specific organization's needs. Planning for effective testing begins in the analysis phase and continues through development and implementation. Testing and quality assurance for WFM systems are processes that can help the Workforce Asset Management Professional (WAM-Pro) organize and prepare for a project.
22.1 TESTING AND QUALITY ASSURANCE ON WFM SYSTEMS BEFORE RELEASE TO OPERATIONS
Testing a WFM system being implemented in an organization is often a misunderstood and questioned effort. The misunderstandings and questions are usually about what testing is, why it is needed in such detail, how much is needed, who should do it, and how it is done. WFM system testing is comprised of not only technology validation and certification, but also process and outcome assessment to verify whether the system is robust enough to deliver the desired tactical and strategic objectives. It is a matter not only of Is it working technically? but also Does it work operationally?
In this chapter, the example of overtime as both tactical (related to computation and compliance) and strategic (related to cost reduction) will be used to explore the various aspects of testing.
The WAM-Pro's job is to avoid misunderstandings that can lead to a lack of, inadequate, or inappropriate testing that does not fully verify that the WFM is ready for release. The risks of implementing a system without thorough testing include: significant problems and shortcomings that impact the organization financially and operationally, and a loss of credibility and confidence in the system by the user and organization. The WAM-Pro uses testing as a way to guard against this by undergoing an adequate testing process that verifies the WFM system is ready for use.
The formal term for testing is quality assurance. It is a process comprised of sequential events that examines the new system in detail. It requires preparation, consistency, and focus for it to be completed correctly. It is also an insurance policy that the WFM system will work appropriately and as expected based on the requirements defined by the business during the requirements phase of the overall project.
The following material outlines the quality assurance process recommended for the implementation of a WFM system. The chapter contains the core information and primary concepts about quality assurance as well as specific examples. As with many of the recommended processes and methods, quality assurance is a scalable effort based on the size and complexity of the system and organization. It is also one of the more important efforts of the WFM implementation project.
(a) Different Types of WFM Testing Systems
One of the areas of confusion when testing WFM systems is related to the type of system that is being implemented. In addition to understanding the size and complexity of the WFM being installed, the WAM-Pro must also understand what type of overall system is being implemented. For simplicity the types of systems have been classified as internally developed, commercial, service provided, and matrix.
Internally developed WFM systems are those that have their requirements defined, designed, and programmed internally by the organization that will use the system. These systems are the more challenging to test due to the newness of the software application code. With the availability of many commercial WFM systems today, few organizations develop their own WFM system from ground up. However, many companies develop supplemental functions and add-on capabilities to commercial systems that require testing.
Commercially developed WFM systems are those available in the marketplace from vendors specializing in those types of systems. There is a wide variety of this type of system with an equally wide range of functions and capabilities. Many of these systems have been in the marketplace for a length of time that has allowed testing and use by customers to find major problems that might occur with these kinds of software. In general, the commercial systems are configurable, which means they have a set of switches to allow changes and customization in some of the functions. In some cases the commercial software will allow for integrated or customized programming that could change how the functions work. And, in other cases the commercial software will allow add-on programs that do not change the original software but do allow the supplemental software to work and function as part of the WFM system. The situation with the commercial software will dictate the type of testing that will need to be performed.
Service-provided WFM systems are those where another company provides the system functions being requested by a customer. The services are usually standard. However, many of the servicing companies do have configurations that can be changed per the customer needs and they often allow add-on software to complete the requirements if needed. In these situations the testing is usually split between the service company and the customers. In general the service provider's WFM systems have well-tested software due to long-term usage. However, the configurations and any supplemental programming will still need to be tested.
A matrix WFM system is one that has a mix of internally developed software applications, commercial software, and possibly service-provided systems that have been integrated to create a complete WFM system for an organization. The strategy for this situation is more complex and requires more testing than the single WFM system type.
While the strategies for testing any of the just described systems may vary in complexity and length, testing is required for each of them to validate that they work as expected.
(b) Understanding Testing and Quality Assurance
Many of the aspects of testing a system and the processes associated with quality assurance are misunderstood. This is due to the variety of business and organization structures and sizes that occur. When involved in a systems project it is helpful to understand the following.
Companies that develop their own software usually have a quality assurance (QA) department that tests software. The complexity and type of software will dictate the size and approaches used by a QA department to complete the testing. Companies that do not develop their own software generally do not have systems QA departments to test their software and systems.
When purchasing and implementing a system from a vendor, the customer still needs to have a testing process to determine that the system is working and configured correctly to meet the unique requirements of that organization. WFM system testing is distinctive from other software applications and business processes for a number of reasons. There are typically more end users, a greater need for controls to reduce financial impact, administrative as well as operational requirements of system performance and outcome, potential hidden practices, numerous hardware components, and a host of regulations, rules, and expectations that are difficult to simulate and test. If the organization does not understand how to organize the testing process, then it will be necessary and worth the expense to engage with a consultant who knows how to complete the checklist of testing requirements.
The WAM-Pro should make certain that testing support is stipulated in the sales contract or a separate contract may need to be negotiated to provide testing assistance from a consulting firm.
(c) Determining the Strategy and Preparation for Testing
The following areas define a strategy that will utilize the selected testing process, lay out the organization of the testing process, and describe what will be considered acceptable results.
(d) Different Types of Testing
For WFM systems there are several testing phases. New or upgraded components go through unit testing, integration testing, system and stress testing, and user acceptance testing. Sometimes regression testing is done as well.
i. Unit Testing
Unit testing is performed on each specific component of system design. For timekeeping systems an isolated pay rule is tested to validate that the architecture of the many parts of the rule work under a set of conditions. Within a pay rule a meal rule would also be tested to verify that the parameters of proper meal rule computation are working. Unit testing is often done by the person who builds the component to make certain their design is workable.
An example of unit testing, daily overtime rules apply if an employer is subject to a state-based daily overtime regulation for hourly workers. The employer must pay time and half for all hours over 10 per day. These hours are paid in the Daily OT pay code. The hours should not count toward the weekly overtime calculation (over 40 per week).
ii. System and Stress Testing
System and stress testing are more comprehensive evaluations of how the system is working as a whole. WFM systems operate using combinations of features and functions and there is considerable interconnectedness between them. Schedules and timecards share and depend on the proper configuration. Users operate within the application on a number of levels and rely on the proper assignment of user rights and accessible data and functions. One kink in the underlying setup can make an important workspace or function unworkable. WFM systems also undergo cyclical periods of heavy use throughout the days and months. Payroll cycle deadlines increase the activity that WFM systems handle as well as shift schedules that result in peak times of employee inputs. Stress, or “load,” testing helps the WAM-Pro validate that the new or changed system can handle these requirements.
iii. Integration Testing
Integration testing essentially tests larger aspects of system workability. Integration system testing is used to test whether the system works well with other systems and whether the data delivered and received is usable and performs as expected in related systems. Interface testing for WFM systems, for example, is done to determine whether the data sent from the WFM system to the payroll system performs as expected and produces accurate payments.
iv. User Acceptance Testing
User acceptance testing (UAT) is the opportunity to allow testing participants from the end-user community to validate whether the system performs as expected. These testers test the expected and unexpected and help flush out potential gaps or problems before the system goes live. The WAM-Pro can also use the UAT phase to identify potential improvements where things work but not as well as might be possible. UAT testing can also help prove whether the training of the new system is acceptable or where training content should be enhanced or modified.
v. Regression Testing
Regression testing may be needed when WFM systems are reworked for bugs, patches, or moderate enhancements. In these situations, often none of the customer's unique setup changes, but the underlying software or code has been modified. The WAM-Pro leads the efforts to determine if the changes will change the expected behavior of the system and preserve any previous known problem fixes in the application. This is often done by rerunning prior test scenarios, testing for known problems and critical outputs, and perhaps executing stress testing exercises. When the specific fix is well documented, the scope of regression testing can be pared down to isolate the areas of potential impact rather than testing every aspect of the current system.
(e) Selecting Appropriate Testing Participants
Testing is an enterprise effort. Even though the WMO may be in charge, testing participants come from a number of areas because of the subject matter expertise needed for testing. This is especially true with user acceptance testing. One of the keys to testing is to have the right people selected and involved. It does no good to have someone test a system where they know nothing about the business areas or type of system they are testing.
The following is an example testing team. Depending on the size of the organization, one or more people may fill each role:
(f) Tools for Testing—Automated and Tracking
There are a variety of tools available to assist with testing. These tools may range from automated testing systems that populate the system with data and complete rapid numbers of automatic testing to internal test environments prepopulated with customer-specific testing scenarios and data that are reused and enhanced over time to electronic or paper spreadsheets that track requirement and function testing that is completed manually. WFM system testing does not easily accommodate a preconfigured testing harness that comes with the application because the systems are designed to be highly configurable to the customer's business requirements. For example, not every employer operates in California so testing for those overtime computations is only appropriate for specific customers. Table 22.1 shows a sample spreadsheet layout identifying the test items and what type of difference, if any, the new configuration produced that was unexpected. The progression of testing moves from left to right and includes a place for the tester to document the modifications (remediation) used to correct the problem.
Table 22.2 shows a sample testing worksheet used to identify and track testing items and test outcomes.
Each item is numbered and described, and a testing group is assigned (what set of employee data will be used). The number of test records is determined and the description of the requirement to be tested is listed. The tester should include the expected performance or outcome and any variance found during testing. For example: Clocks are updated with schedules every night, but the update routine takes four hours instead of 30 minutes. If a root cause is known, that is listed as well. For example: The updates include all information instead of just new or updated records increasing the size of the update file. The tester records their name. The test lead may prepopulate the testing documents with “weighting” that alerts everyone to the importance of certain test items as critical or not.
(g) Quality Assurance Process
QA is not simply the process of testing. It starts early with the analysis and design phases through implementation and concludes with the testing activities. The following is a generalized testing and QA process overview. Some organizations will have a more or less extensive process depending on the size and complexity of the project. Depending on the type of WFM technology being developed or purchased and configured, the actual tasks and sequence may vary. The WAM-Pro's job is to organize the process to be efficient while comprehensive enough to facilitate the successful release to the user community.
i. Analysis Phase of Project
The project finds its origins when the WAM-Pro receives the executive management goals and objectives for the WFM system. Prior to the actual analysis, the goals, objectives, and expectations should be well defined by management. This will provide the parameters for most of the requirements being developed and documented.
After the requirements have been defined they will need to be reviewed by the stakeholder community and approved. The WAM-Pro leads this effort, which includes an estimated costing effort to determine what implementing the requirements will cost the organization.
Next is the budgeting process. Based on the requirement and market research, the WAM-Pro begins work on estimating costs for the WFM system. In some cases, the cost will reduce the requirements and the activities that follow. Based on the approved requirements, a testing strategy will be developed. This will include the types of testing, the complexity and amount, standards, metrics, and expected results and processes.
The WAM-Pro then moves to the task of creating a compliance matrix. After the testing strategy and preparation have been completed, a matrix is created that includes the testing areas to be tested, indicating whether they have passed or failed and where the individual areas are in relation to the process.
The development of the test plan and testing preparation is the WAM-Pro's tactical approach and tools to execute the testing. It will include schedules, resources, what is being tested and how the overall process will be managed, the development of use cases, testing scripts, data development or preparation, and other materials that will verify the requirements are being delivered to address the organizational expectations.
The last activity in the analysis is to verify that all needed testing has been identified and that the materials to complete testing have been or will be created. The WAM-Pro creates the testing sign-off and makes certain that the testing process and outcome documentation is in place.
ii. Development Phase of Testing
The design and build phase of new systems and features is what most people focus on. However, the success of that phase is predicated on a solid, effective development of the testing. The following shows where testing fits in the system development process:
iii. Implementation Phase of Project
The implementation phase is where the project takes on a heightened level of visibility. The WAM-Pro is crucial to orchestrating an uneventful go-live for the new system. Careful progress through this critical phase makes certain that the organization and system are both ready. The following is an outline of the primary steps in system deployment:
Figure 22.1 shows the life cycle for the development or purchase of a WFM system and the testing and QA cycle.
iv. Testing and Quality Assurance Outcomes
The testing of any system or device before it is released to the user community is important. The ultimate outcomes of testing include:
Many organizations that do not understand the purposes and benefits from testing and QA downplay the importance of the process only to find out that a failed system disrupts business and may not provide the management and business expectations for the organization. The WAM-Pro plays by the adage “expect what you inspect” and institutes a solid testing plan.
(h) Quality Assurance Terminology
The terms related to testing and QA are often confusing due to similarity and because many organizations customize their own testing processes and methods to fit their organization. The definition for a term in one organization may differ slightly from that of another. A word of advice: When working with any organization, request the definition of its testing terms, schedules, and processes since they will vary from organization to organization. For the list and definitions of many common testing and QA terms, see the glossary. By becoming familiar with the terminology, the WAM-Pro should be able to better communicate with those who are working on the system, as well as those who will work with it. Having a common glossary can help turn words into action during the phases of testing and QA.
Once organizations have moved onto the testing period, most of the planning has been accomplished and change is in motion. However, the testing and quality assurance activities are necessary checkpoints in the process. Actions that are repeated and sustained over time must be accurate and complete to serve the organization effectively. Organizations should position testing as a final opportunity to evaluate and assess the future usability, and ultimately the workability, of the system once it is in the workplace.
1. This chapter was contributed by James Thomas and Mike King.
3.141.12.209