Despite a profusion of literature on complex adaptive system (CAS) definitions, it is still challenging to definitely answer whether a given system is or is not a CAS. The challenge generally lies in deciding where the boundaries lie between a complex system (CS) and a CAS. In this work, we propose a novel definition for CASs in the form of a concise, robust, and scientific algorithmic framework. The definition allows a two-stage evaluation of a system to first determine whether it meets complexity-related attributes before exploring a series of attributes related to adaptivity, including autonomy, memory, self-organisation, and emergence. We demonstrate the appropriateness of the definition by applying it to two case studies in the medical and supply chain domains. We envision that the proposed algorithmic approach can provide an efficient auditing tool to determine whether a system is a CAS, also providing insights for the relevant communities to optimise their processes and organisational structures.