1. A computer-implemented method of analyzing examinee item response data comprising: constructing a diagnosis model using a computer system for reporting skill profiles of examinees, wherein the diagnosis model comprises a variable representing unobserved subpopulation groups according to an expression: P ⁡ ( x -> ❘ a -> , g ) = ∏ i = 1 I ⁢ ⁢ [ exp ( β ixg + ∑ k ⁢ x i ⁢ γ ikg ⁢ q ik ⁢ a k ) 1 + ∑ y ⁢ exp ⁡ ( β iyg + ∑ k ⁢ y ⁢ ⁢ γ ikg ⁢ q ik ⁢ a k ) ] , where {right arrow over (x)}=(x 1 ,. .. , x I ) is a response vector for I question items, {right arrow over (a)}=(a 1 ,. .. , a K ) is a K-dimensional skill pattern, g is the variable representing unobserved subpopulation groups, P({right arrow over (x)}|{right arrow over (a)}, g) is a group-specific probability of the response vector {right arrow over (x)} given the skill pattern {right arrow over (a)}, q ik are parameters relating question items to skills, γ ikg are slope parameters relating skill k to question item i in group g, β ixg and β iyg are item difficulty parameters for group g; creating an item design matrix using the computer system; obtaining examinee item response data; distributing the examinee item response data across the unobserved subpopulation groups; iteratively estimating, using the computer system, values for a plurality of variables indicative of item difficulty and skill requirements for question items using the diagnosis model; and reporting the estimated values to a user.