Getting past independence assumptions in modeling the sum of random variables (application in education)

I'm trying to model a student's semester GPA $G$ as a random variable.

Semester GPA is a weighted (based on credit hours) sum of a student's grade points (e.g. 0=F,1=D,2=C,3=B,4=A).

We can consider the students grade points in each course $G_1,...,G_n$ as random variables, each with a particular distribution as well. It could be discrete, as it actually is, or it could be approximated by a continuous distribution (possible the beta distribution, since this is limited to an interval).

If we assume independence of $G_1,...G_n$ then getting the distribution of $G$ is not so hard. But this is not so realistic.

A few problems with this: students taking a lot of hours are likely to do worse overall than they would if they were just taking 1 of the courses, just because they have a limited amount of time. Additionally, students who do well in a particular course are likely to do well in a similar course.

How would you approach incorporating this sort of dependence?

-