Our company was enlisted to assist a large company in updating its Point of Sale (POS) system. The client required a swift implementation, and six months before the testing phase, we assigned two experienced WPF developers to join the client’s team.
Challenge:
The client’s team possessed expertise in the legacy technology but needed to quickly adapt to the new system to perform the necessary updates. Additionally, there were no existing testers or end-to-end tests available. The responsibility of regression testing fell on the product owner or business analyst, who performed manual testing.
Our Role:
Initially, our two WPF developers integrated seamlessly into the client’s team and began working on upgrading the POS system. They collaborated effectively with the existing team members and focused on the system enhancements.We provided a .NET developer to create a testing framework for the new system to address the lack of testing. They utilized tools like .NET 6 to conduct various tests. Since there were no pre-existing end-to-end tests, they had to develop the test suite from scratch. The decision was made to use the same programming language for the tests to align with the project’s codebase. The unit test runner was chosen as the testing framework due to the availability of pre-existing unit tests written with this open-source tool. As the project relied on a Windows application, the .NET library called FlaUI was selected to facilitate automated UI testing. The testing team also documented essential information about the project, established automatic test runs, and conducted demonstrations of the new software to end users. They provided feedback, shared valuable insights and tips with the team, and assisted in onboarding new team members.
Results:
With the assistance of our WPF developers and tester, the client successfully updated their POS system within the designated timeframe. The new software exhibited reliability and efficiency, resulting in a faster process and significant time and resource savings. Adding a dedicated tester to the team allowed the product owner and business analysts to focus on their core responsibilities, enhancing overall productivity and efficiency.
Lessons Learned:
This project underscored the value of skilled developers and testers in software projects. It emphasized the importance of quickly adapting to new technologies and actively sharing knowledge within the team. The introduction of end-to-end tests significantly improved the quality of the final product by identifying and resolving defects before they could impact end users negatively. Additionally, assigning a dedicated tester freed up the product owner and business analysts to focus on their primary tasks, streamlining their day-to-day activities and optimizing overall project outcomes.