UK, 20 March 2024 - Cooper Software, announced today that Swann-Morton has signed a multi-year...
Crafting a Robust Test Approach for IFS Implementations
Author: Lee Mackreath, IFS Senior Channel Account Manager, Cooper Software.
The features and functions of IFS software deliver a multitude of cost and efficiency benefits to their users. Because we have an experienced Testing Team at Cooper Software, we can illustrate with some confidence that defects in any software can cost businesses time and money. And that cost escalates exponentially as an implementation progresses.
We call it the 1:10:100 rule. A single defect caught in the requirements phase costs a factor of one to fix, and so the prevention cost is around £1. A defect caught during construction costs 10 times as much as in requirements, and the correction cost is around £10. A defect caught in production costs up to 100 times as much as in requirements, and the failure cost is therefore around £100.
Implementing an enterprise resource planning (ERP) system is a complex and multifaceted undertaking that involves collaboration from multiple stakeholders at different stages. To ensure a seamless and high-quality system, testing is a critical phase. This involves assessing and validating all aspects of the software, including business processes, bespoke developments, customisations, reports, interfaces, and modifications. A well-defined test approach is paramount to achieving this goal.
Cooper Software launched its automated testing services recently and is ahead in anticipating the needs of present and future IFS customers. So, let’s explore what a robust test approach looks like.
Drawing upon extensive experience of making IFS applications ‘live’, the mistakes we most commonly see made include: -
- Underestimating how long testing takes. With no clearly defined exit criteria, testing never reaches a point where it is considered done and the system accepted
- No repeatable test deliverables. Without planning and estimating time to create reusable test deliverables, you end the project without a repeated test process. This means to stay ‘evergreen’ you will have to repeat all testing activities from scratch
- Testing time is cut. As test execution continues with no end in sight and a go live deadline looms, its more than likely that testing time will be cut to fit your go live schedule. This results in a go live with areas of the system untested.
The Significance of Test Strategy
A test strategy is the cornerstone of the testing process, providing a set of guiding principles that dictate the test design and regulate the entire testing process. The objective is clear: to ensure quality, traceability, reliability, and effective planning of test activities. Without a comprehensive test strategy, the scope of testing remains ambiguous, leading to uncertainties about the types of testing required, responsibilities, and the ultimate goals of the testing efforts.
The test strategy answers fundamental questions about the testing process, covering what needs to be tested, who is responsible, where testing will take place, why specific tests are required, and how they will be conducted. It acts as a roadmap for the testing team, ensuring that potential issues are identified early on and that testing efforts are aligned with the project's objectives.
A robust test strategy should encompass:
- The overall scope of the project; clearly defining what aspects of the project will be tested
- Prioritisation of processes; identifying and prioritising critical business processes for testing
- Roles and responsibilities; outlining the responsibilities of each team member involved in testing
- Defect management process; establishing a systematic approach for identifying, reporting, and resolving defects
- Mission and vision of the strategy; articulating the overarching goals and purpose of the testing strategy
- Types of testing; enumerating the various types of testing that will be undertaken
- Test phases; dividing the testing process into distinct phases for better organisation.
Creating a Detailed Test Plan
While the test strategy provides a high-level overview, the test plan delves into the specifics of the testing process. It acts as a detailed document outlining the objectives, schedule, estimation, deliverables, and resources required for testing the software product. The test plan serves as a blueprint, guiding the testing activities as a defined and controlled process.
A comprehensive Test Plan should include:
- Scope; clearly defining what features and scenarios will be tested
- Testing team; identifying the individuals or teams responsible for executing the tests
- Schedule; outlining the timeline for different testing phases.
- Test cases; describing the specific test cases that will be executed
- Entry and exit criteria; defining the conditions for entering and exiting each testing phase
- Risks and risk management; identifying potential risks and outlining strategies to mitigate them
- Test environment specifics; detailing the specific testing environment requirements
- Test tools; listing the tools that will be used for testing.
Estimating Testing Effort
Effort estimation is a crucial aspect of testing. To estimate the effort required, an estimating exercise can be employed. This involves ranking processes and custom relationship information management systems (CRIMS) based on their complexity and assigning them a low, medium, or high complexity rating. Each rating is then associated with a set number of days, allowing for an estimate based on the complexity of the proposed solution.
Leveraging Cooper Software's Expertise
Navigating the complexities of IFS implementation testing can be challenging, but with Cooper Software, you can be confident that your testing strategy is comprehensive and effective. Our team helps in designing your test strategy, ensuring that all necessary elements are covered. Their expertise extends to planning, designing, and executing testing processes, using industry-standard techniques and tools to track progress, and overcome potential obstacles.
A meticulous test approach is indispensable for a successful IFS implementation. From the overarching test strategy to the detailed test plan and effort estimation, each component plays a crucial role in ensuring the quality and reliability of the system. We stand ready to guide you through this process, ensuring a smooth and successful implementation of your IFS project.
To learn more about software testing watch our on-demand webinar.