You should probably change this, since an exception doesn't make sense if there isn't unexpected behavior. 

This whole method should be: return userWithEstimate.containsKey(user);