A user’s strengths and weaknesses are determined by our adaptive engine. Strengths and weaknesses are not fixed and constantly update based on our measurements of the skill of the user, proficiency in the specific category as well as the difficulty of the items they are answering. We are running normalized values and placing them in the following buckets (Beginner, Basic, Intermediate, Proficient, Advanced, Expert) based on averages and standard deviation.
Because of this, if all users in a particular course are struggling with Category A, a user who does marginally well in that category is going to have a much higher strength & weaknesses because they're relatively better. Rather, if most people in the course are excelling in Category A, it will be more difficult to get that expert rating.