When faced with the suspicion that some students are cheating, it is tempting to ask for a supplementary face-to-face examination for that student. However, I suggest designing assessment so that all students are required to present a consistent body of work throughout their course.
Large assessment items can be replaced by multiple interlinked, scaffolded tasks. This will help students learn, while testing they have acquired required skills and knowledge. As a byproduct, this will make cheating much more difficult, as a student can't just contract out one major assignment as it will not be consistent with the student's other work.
As an example, in "ICT Sustainability", students have to answer weekly questions. The student then uses the answers in the two major assignments, which are each in two parts. This makes it difficult for a student to contract out one assignment, as the content has to be consistent with their prior work on the same topic. There are also weekly automated quizzes on basic knowledge, drawn from a question bank (to make cheating harder). To be eligible to pass, the student must get at least 50% for the weekly work and 50% for the assignments, so they can't pass by doing well in just one assignment.
Also I use progressive assessment to identify those students in the first few weeks who are having difficulty, so they can be offered help and counseling. These students will be less likely to cheat, as they can get help and they know they are under closer observation every week. I designed and refined this approach to assessment as part of my graduate studies in education.