En esta guía, se proporcionan ejemplos de código relacionados con la calificación para la API de Classroom. El enfoque de este documento es el recorrido principal de calificación de Classroom: administrar los estados StudentSubmission
y las calificaciones.
Lee la guía de calificaciones para familiarizarte con los conceptos de calificación en Classroom.
Administra los estados de StudentSubmission
StudentSubmission
puede anularse la entrega, entregarse o devolverse. El campo state
indica el estado actual. Por lo general, la clasificación se realiza después de que el StudentSubmission
se encuentra en el estado TURNED_IN
.
Para cambiar el estado con la API de Classroom, llama a uno de los siguientes métodos:
courses.courseWork.studentSubmissions.turnIn
: Solo el estudiante que posee unStudentSubmission
puede entregarla.courses.courseWork.studentSubmissions.reclaim
: Solo el estudiante que posee unStudentSubmission
puede reclamarlo. El envío solo se puede reclamar si ya se entregó.courses.courseWork.studentSubmissions.return
: Solo los profesores del curso pueden devolver unStudentSubmission
. La entrega solo se puede devolver si el estudiante ya la entregó.
Todos estos métodos aceptan un parámetro body
vacío, como se muestra en el siguiente ejemplo:
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
Cómo establecer calificaciones para las entregas de los estudiantes
El recurso StudentSubmission
tiene dos campos para almacenar la calificación general del trabajo CourseWork
calificado:
draftGrade
es una calificación tentativa que solo pueden ver los profesores.assignedGrade
es la calificación que se informa a los estudiantes.
Estos campos se actualizan con courses.courseWork.studentSubmissions.patch
, como se muestra en el siguiente ejemplo:
Python
studentSubmission = {
'assignedGrade': 99,
'draftGrade': 80
}
service.courses().courseWork().studentSubmissions().patch(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
updateMask='assignedGrade,draftGrade',
body=studentSubmission).execute()
Java
Cuando trabajan con la IU de Classroom, los profesores no pueden establecer un assignedGrade
hasta que primero hayan guardado un draftGrade
. Luego, se puede devolver el assignedGrade
al estudiante. Tu aplicación puede calificar la tarea de un estudiante de dos maneras:
Asigna solo el
draftGrade
. Esto es útil, por ejemplo, para permitir que el profesor revise manualmente las calificaciones antes de finalizarlas. Los estudiantes no pueden ver las calificaciones en borrador.Asigna tanto el
draftGrade
como elassignedGrade
para calificar por completo una tarea.
Usa el argumento updateMask
para configurar qué campo establecer.
Consulta Cómo agregar archivos adjuntos a la respuesta de un estudiante para comprender los permisos y los alcances necesarios para modificar StudentSubmissions
.
Leer las calificaciones asignadas
Puedes acceder a todas las calificaciones de un CourseWork
en particular con el método courses.courseWork.studentSubmissions.list
para recuperar todos los StudentSubmissions
correspondientes y, luego, inspeccionar los campos assignedGrade
y draftGrade
adecuados:
Python
response = coursework.studentSubmissions().list(
courseId=course_id,
courseWorkId=coursework_id,
# optionally include `pageSize` to restrict the number of student
# submissions included in the response.
pageSize=10
).execute()
submissions.extend(response.get('studentSubmissions', []))
if not submissions:
print('No student submissions found.')
print('Student Submissions:')
for submission in submissions:
print(f"Submitted at:"
f"{(submission.get('userId'), submission.get('assignedGrade'))}")
Java
Consulta Cómo recuperar las respuestas de los estudiantes para comprender los alcances y los permisos necesarios para leer StudentSubmissions
.
Cómo determinar las calificaciones generales del curso
La API de Classroom no permite a los desarrolladores leer ni escribir la calificación general del curso, pero puedes calcularla de forma programática. Si deseas calcular la calificación general, lee la Guía de calificaciones para comprender conceptos importantes, como las ausencias justificadas CourseWork
, los períodos de calificación y los diferentes sistemas de calificación.
Archivos adjuntos de complementos de calificaciones
Si eres desarrollador de complementos de Classroom, puedes establecer calificaciones para archivos adjuntos individuales de complementos y configurar la calificación para que los profesores la vean cuando revisen el trabajo de los estudiantes. Consulta las explicaciones sobre los adjuntos de tipo de actividad y la devolución de calificaciones para obtener más información.
Calificaciones de rúbricas
StudentSubmissions
tienen campos que representan las puntuaciones otorgadas según Rubrics
:
draftRubricGrade
es un conjunto tentativo de puntuaciones deCriterion
que solo pueden ver los profesores.assignedRubricGrade
es el conjunto de puntuaciones deCriterion
que se informan a los estudiantes.
Las puntuaciones de las rúbricas no se pueden establecer con la API de Google Classroom, pero sí se pueden leer. Consulta la guía de rúbricas y las limitaciones para obtener más información.