Quality Management System

About the client

Our client is a leading provider of quality management services for the automotive, aerospace, defence, and manufacturing sectors worldwide. They specialise in engineering support, technical services and inspection, helping clients achieve zero defects through their proprietary quality management system and global network of over 1,000 employees across Europe and Asia.

Industry Manufacturing Location UK Technologies Knockout.js, VueJS, ASP.NET Core, MS SQL Server

Key outcomes

Our team took full ownership of the product, stabilised and enhanced it, resulting in:

check

Rapid delivery of product enhancement

Successfully delivered the BMW Matrix-based charging system with intricate billing rules within four months.

check

Established strong foundation for growth

Created robust documentation, collaboration frameworks, and a strategic roadmap to drive product stability and innovation.

check

Expanded team structure

Scaled from a single support team to three dedicated teams covering production support, feature development, and architectural improvements.

The business challenge

Lack of product features and scalability for new client demands

Our client’s proprietary quality management platform is central to managing inspection workflows, generating reports, and handling client invoicing. 

As their operations expanded across multiple geographies, the platform faced increasing pressure to keep up with evolving operational demands and client-specific requirements.

  • Limited scalability and adaptability: The platform needed enhancements to cater to diverse workflows, reporting standards, and compliance requirements of multiple international clients.
  • Feature gaps slowing operational efficiency: Our client required the development of new functionalities to address emerging needs in real-time defect management, advanced analytics, and client-specific dashboards.
  • User experience limitations: The interface required refinement to support intuitive use across varying user roles, from on-site technicians to senior quality managers and OEM clients.
  • Resource constraints for ongoing enhancements: Our client needed a dedicated software development partner to ensure continuous product evolution without straining their internal resources.

Recognising the challenges, they reached out to GoodCore to take over the development and enhancement of their quality management system.

Project goals

The project entailed the following requirements:

  • Seamlessly take over the product and establish a strong technical understanding despite the lack of documentation
  • Stabilise the system by identifying bottlenecks, resolving bugs, and addressing technical debt
  • Create a clear product roadmap aligned with business priorities and upcoming enhancements
  • Work closely with the client to clarify and enhance inspection, approval, charging, and billing workflows
  • Document key processes including end-to-end user journeys, the project life cycle, charging, and invoicing logic
Project Goal

The solution

Enhancing the product to support evolving client needs

To align plaform's ongoing support and development with business needs, we created a comprehensive product roadmap. The roadmap highlights key priorities, planned features, and timelines for upcoming enhancements.

As part of the roadmap, we implemented the following major product enhancement specific to their client BMW's operations.

Adapting the charging model for BMW

To support BMW’s unique operational and billing requirements, our client needed the platform to move beyond its standard flat hourly charging model used for other clients.

BMW required a more granular, activity-based charging structure, where charges could vary by:

Per part rates based on activity type (e.g. visual inspection, rework, scrapping)

Per hour rates for specific tasks

Project-based invoicing logic, ensuring all charges align with BMW’s internal cost recovery processes

Dynamic rate calculation considering activity duration, location within the plant, and shift timings to apply accurate day rates

 product roadmap

Our approach

Our team analysed BMW’s complex charging matrix and integrated it into the platform by developing a flexible, rules-based configuration module. This allowed administrators to define different charging rules for each activity and project. We built robust logic to:

  • Automatically calculate rates based on activity codes, durations, and handling units
  • Apply client-specific billing rules dynamically, including shift-based rate differentiation
  • Ensure project-based invoicing, enabling accurate and automated billing without manual adjustments

Product development challenges and solutions

Challenge #1: Complex system with no documentation

The platform was transitioned to our team with little to no formal documentation. This made initial onboarding and comprehension of its full capabilities a significant challenge.

Solution: Reverse engineering and documentation

Over an initial 6-week onboarding phase, we performed a thorough analysis of the codebase and system architecture. We developed setup guides, architecture diagrams, and internal documentation to help the team ramp up and support future onboarding.

Reverse engineering and documentation

Challenge #2: Limited business context and domain knowledge

Our client’s inspection, charging, and invoicing workflows are deeply specialised. Without supporting product guides, business process flows, or functional diagrams, acquiring domain knowledge required deep discovery and close collaboration.

Solution: Collaborative discovery with the client

With only two stakeholders available in the UK, both newly assigned to the project, we led multiple walkthroughs, Q&A sessions, and collaborative feature explorations to fill in business logic gaps.

gnb-discovery

Challenge #3: Dependency on legacy platform without access

The legacy system, still in use for generating invoice numbers and dispatching invoices, was not accessible to our team. This limited our ability to validate and debug certain invoicing workflows from end to end.

Solution: Iterative debugging and workflow mapping

Our team traced API flows, mapped feature dependencies, and debugged live issues to gain a deeper understanding of the system. We also identified functions tied to the legacy platform and started planning how to reduce reliance on it.

Ensuring algorithm reliability

Challenge #4: Large, distributed architecture

The platform includes multiple interconnected components such as an Identity Server, Web Application, and several microservices including Web API, CheckInCheckOut API, and Inspection API. This added to the system’s complexity and increased the time needed to gain a complete understanding.

Solution: Technical audit and recommendations

We conducted a detailed technical audit and delivered a report that outlined the system structure, identified pain points, and provided prioritisation guidance for fixes and enhancements. This enabled better planning and coordination across teams.

Technical audit and recommendations

GoodCore Software seamlessly took over development of our quality management system, helping us successfully roll it out for internal use. Their flexibility, professionalism, and ability to adapt to our fast-changing business needs really stood out.

Group Technology Manager

profile

The impact

  • Despite the lack of documentation and a complex system landscape, our team took full ownership of the product within a short span.
  • In just four months, we successfully delivered the BMW Matrix-based charging system, a major enhancement involving intricate billing rules specific to BMW's operations.
  • What began as a single-team support arrangement has now expanded into three dedicated teams, each working on different business streams. This includes production support, feature development, and architectural improvements.
  • Our documentation, collaboration efforts, and strategic roadmap have laid a strong foundation for long-term growth, stability, and innovation.

Looking to create an impact with software?

Explore how we can work together.