Closed cewing closed 9 years ago
@natea perhaps a couple of words about the goal here might be appropriate?
@cewing @cguardia the customer wants to be able to generate reports about the # of students enrolled in each course, and Jenny is reporting that the instructor tab (right within the course) shows a different number of enrolled students than the # of students when you look at the report at /sysadmin.
The scope of this ticket is to find out why there is a discrepancy and determine the correct number of students enrolled. If it's determined that there's a bug, create the bug fix and submit it as a patch to edx-platform.
So I'm thinking this means we need admin access to their current production installation - or better, to a staging environment with a copy of production where we can do debugging? @cewing would you agree?
the staging environment has the same un/pw as the production environment, and that would be the best place to poke around. let me know if you need SSH access to the server and I can provide that as well.
On Thu, Jun 4, 2015 at 11:06 AM, Sally Kleinfeldt notifications@github.com wrote:
So I'm thinking this means we need admin access to their current production installation - or better, to a staging environment with a copy of production where we can do debugging? @cewing https://github.com/cewing would you agree?
— Reply to this email directly or view it on GitHub https://github.com/jazkarta/edx-platform-for-isc/issues/4#issuecomment-108927966 .
@natea please provide @cguardia and @cewing with username/password for staging/prod and SSH access to staging.
ok, i'll send this info Lockify.
On Fri, Jun 5, 2015 at 2:47 PM, Sally Kleinfeldt notifications@github.com wrote:
@natea https://github.com/natea please provide @cguardia https://github.com/cguardia and @cewing https://github.com/cewing with username/password for staging/prod and SSH access to staging.
— Reply to this email directly or view it on GitHub https://github.com/jazkarta/edx-platform-for-isc/issues/4#issuecomment-109395261 .
nate@appsembler.com +1 (617) 517-4953 http://twitter.com/natea | http://linkedin.com/in/natea
@natea , lockify?
@cguardia send me your public key and i'll add you the authorized_keys.
@cguardia @bryanlandia i added your public keys to the staging server, so you should be able to login now using the 'ubuntu' user.
Confirmed that at least one course shows a discrepancy between # enrolled shown on Instructor tab and /sysadmin page.
ISC1007 Zen Mojo for Web-based Applications http://staging-lms.learning.intersystems.com/courses/InterSystems/ZM01/2015/instructor#view-course_info : 20 enrolled http://staging-lms.learning.intersystems.com/sysadmin/staffing : 21 enrolled
Other courses show same number of enrollees between pages, so it's not a consistent "off by #" issue.
/sysadmin's count of enrolled students includes inactive students, while the Instructor tab's count does not, thus the discrepancy. Not exactly a bug, but confusing. I'm going to do a little research on what is meant by inactive students. Should the Instructor's tab include inactive student? It displays number of students by category (verified, audit, or honor). @natea Is it useful for an instructor to know the number of inactive students? Or would a better approach be to break out active and inactive students as separate columns on the /sysadmin page?
mysql> select user_id, is_active, mode from student_courseenrollment where course_id = 'InterSystems/ZM01/2015';
+---------+-----------+-------+
| user_id | is_active | mode |
+---------+-----------+-------+
| 22 | 1 | honor |
| 30 | 1 | honor |
| 27 | 1 | honor |
| 54 | 1 | honor |
| 56 | 1 | honor |
| 6 | 1 | honor |
| 52 | 0 | honor |
| 122 | 1 | honor |
| 123 | 1 | honor |
| 18 | 1 | honor |
| 124 | 1 | honor |
| 126 | 1 | honor |
| 125 | 1 | honor |
| 131 | 1 | honor |
| 121 | 1 | honor |
| 158 | 1 | honor |
| 133 | 1 | honor |
| 161 | 1 | honor |
| 134 | 1 | honor |
| 19 | 1 | honor |
| 211 | 1 | honor |
+---------+-----------+-------+
21 rows in set (0.00 sec)
The enrollment CSV report generated by task or directly on the page also exclude the inactive students (http://staging-lms.learning.intersystems.com/courses/InterSystems/ZM01/2015/instructor#view-data_download)
Also, confirmed that another course (InterSystems/TrakCare/2014) with 1 inactive student counts 22 students at /sysadmin and 21 on the Instructors tab.
The is_active
field is set to 0
when an enrolled user is unenrolled from the Course. Their record in student_courseenrollment isn't deleted, it's made inactive. From the comments in on the CourseEnrollment class in common/djangoapps/student/models.py
:
# If is_active is False, then the student is not considered to be enrolled
# in the course (is_enrolled() will return False)
I think it is definitely a bug that the /sysadmin tab shows a count including inactive users. A student with an is_active
value of 0
for that Course should not show up in the total number of enrolled students for anyone. This is a bug with edx-platform. Continuing investigation...
I fixed the numbers in the sysadmin enrollment table so that they don't include inactive/unenrolled students. @natea - Please review.
This would be a good PR for edx-platform, too.
@bryanlandia i think this /sysadmin feature was contributed by MITx, so might be good to have someone on their team take a look at it.
oh, and how does the system define an "inactive" student?
@natea - re: how system defines 'inactive', see https://github.com/jazkarta/edx-platform-for-isc/issues/4#issuecomment-111649306 above (basically, when student unenrolls they become 'inactive'). Do you have a contact already with MITx?
Deployed and working on staging so closing issue, but will follow up with MITx and/or look and see if it's been fixed anyhow in Cypress.
Hi all, I noticed an inconsistency and I am wondering if you know why this is. When looking at the Enrollment Information (under the Instructor tab) for each course and comparing it to the new sysadmin page, I noticed these differences:
Do you know why?
(from Jenny Ames)