מבוא

המטלות ב-Classroom נקראות 'פריטי עבודה', והן מופיעות בדף 'עבודות' של כל קורס ב-Classroom. יש ארבעה סוגים של פריטים במטלות, אבל המדריך הזה מתמקד רק בסוג 'מטלה'. למידע נוסף על ניהול סוגי המטלות האחרים ב'עבודות', אפשר לעיין במדריך לניהול המטלות ב'עבודות'.

יש שתי דרכים לשלב את Google Classroom בתהליך העבודה של המטלות: לחצן השיתוף ב-Classroom ו-Classroom API. לחצן השיתוף מאפשר למשתמשים לשתף תוכן ככל פריט אחר בסטרימינג באמצעות תיבת דו-שיח קופצת ב-Classroom. לעומת זאת, Classroom API מאפשר תהליך עבודה מתחילתו ועד סופו של מטלה, שכולל יצירה של מטלות, יצירה וניהול של הגשות של תלמידים והעברת ציונים.

כאן נסקור את ההבדלים העיקריים בין שתי חבילות השירות האלה למפתחים. באופן ספציפי, נבחן את ההבדלים בהטמעה ובכל שלב במחזור החיים של המטלה: יצירת המטלה, הגשת המטלה על ידי התלמידים והערכה/משוב.

הסבר על מחזור החיים של המטלה

לפני שנמשיך להסביר על ההבדלים בין לחצן השיתוף לבין CourseWork API, נגדיר קודם מה אנחנו מגדירים כמחזור החיים של מטלה בהקשר של Classroom. כך תוכלו להבין איך מורים ותלמידים מקיימים אינטראקציה עם המטלות ב-Classroom.

יש חמישה שלבים עיקריים שכדאי לזכור כשמשלבים את המטלות עם Classroom:

  1. המטלה נוצרת.
  2. המטלה משותפת עם התלמידים.
  3. התלמיד/ה משלים/ה את המטלה.
  4. התלמיד/ה שולחים את המטלה למורה.
  5. המורה בודק את המטלות ומציין בהן ציונים.

השילוב עם המטלות ב-Classroom מאפשר למורים ולתלמידים לעבוד בצורה חלקה בין Classroom לאפליקציות של צד שלישי. במקום לנהל את הפרטים של המטלה או של הגשות התלמידים, המשתמשים יכולים להסתמך על האפליקציה שלכם כדי לנהל את הפרטים האלה בשבילם.

תרשים שמראה את חמשת השלבים של מטלה

הטמעה

ההבדל הראשון בין לחצן השיתוף לבין CourseWork API הוא הטמעה. מנקודת המבט של המפתחים, הלחצן 'שיתוף' הוא דרך קלה יותר לשתף תוכן ב-Classroom, כי צריך רק לכלול את המשאב הנדרש של JavaScript ולהוסיף תג של לחצן שיתוף. בצורה הפשוטה ביותר, השילוב של לחצן השיתוף ב-Classroom יכול להיראות כך:

<script src="https://apis.google.com/js/platform.js" async defer></script>
<g:sharetoclassroom url="http://url-to-share" size="32"></g:sharetoclassroom>

לעומת זאת, CourseWork API הוא חלק מ-Google Classroom API REST API, שדורש הגדרה והפעלה של מפתחות API במסוף Google Cloud ופעולת לפי שיטות מומלצות לשילוב עם API. הבעיה הזו פחות רלוונטית אם הפלטפורמה שלכם כבר משתמשת בפונקציות אחרות של Classroom API, כמו יצירת כיתה.

יצירת משימות ושיתוף שלהן

גם לחצן השיתוף וגם CourseWork API מאפשרים לבצע את שני השלבים הראשונים בתהליך העבודה של המטלה – יצירה ושיתוף עם התלמידים. עם זאת, יש כמה הבדלים חשובים שצריך לקחת בחשבון לפני שבוחרים פתרון.

בבסיסם, שני הפתרונות מאפשרים לפרסם קישורים או קבצים כמטלות ב-Classroom. זוהי דרך יעילה לעבוד למורים, שבמקרה אחר היו צריכים להעתיק ולהדביק בין Classroom לאפליקציה של הצד השלישי. שני הפתרונות תומכים בפרסום תוכן כמטלה, אבל כדאי לשקול אם באפליקציה שלכם יש צורך בגמישות של פרסום התוכן הזה כסוגים אחרים של 'עבודות', או אפילו כהודעה.

בשני המוצרים מוצגים כל סוגי הפוסטים ב-Classroom, מלבד מטלות של חידונים. בהמשך מופיע סיכום של כל סוגי הפוסטים והמידע על החשיפה שלהם.

סוג הפוסט לחצן שיתוף CourseWork API
מטלה X X
בוחן
שאלה: תשובה קצרה X X
שאלה: Multiple Choice X X
חומר X X
הודעה X X

גם בשני הפתרונות, אפשר לציין פונקציונליות כמו ציון שם ותיאור באופן פרוגרמטי באפליקציה. השילוב של לחצן השיתוף מאפשר למשתמשים להגדיר שדות כמו תאריך הגשה, נושא, מצב מותאם אישית ומספר נקודות בתיבת הדו-שיח הקופצת, אבל אי אפשר להגדיר אותם באופן פרוגרמטי באפליקציה של צד שלישי. לעומת זאת, ה-API חושף את כל השדות האלה גם לגישה לקריאה וגם לגישה לכתיבה.

שינוי המטלות

אחד מהיתרונות של השילוב עם Classroom API הוא שהמשתמשים לא צריכים לסנכרן באופן ידני את הפרטים המשתנים של המטלות. לחצן השיתוף לא מאפשר לעדכן או למחוק מטלות באופן פרוגרמטי, ולכן כל שינוי נדרש צריך להתבצע על ידי המשתמש דרך ממשק המשתמש של Classroom.

CourseWork API מאפשר לשנות ולמחוק מטלות שנוצרו באפליקציה, וגם לאחזר פרטים של מטלות שפורסמו בקורסים של המשתמש. עם זאת, חשוב לציין שאי אפשר לשנות באמצעות אותו מסוף פיתוח פריטים של CourseWork שלא נוצרו באמצעות אותו מסוף פיתוח. מודל ההרשאות הזה חל על שאר שלבי מחזור החיים של המטלה, למשל ניהול הגשות וציונים של תלמידים. לא ניתן לגשת לפריטים האלה ב-CourseWork.

סנכרון אוטומטי של מטלות

באמצעות התראות דחיפה של Pub/Sub, האפליקציה יכולה להירשם לקבלת התראות שמפעילות אירוע כשיש שינויים בפריטי CourseWork ובהגשות של התלמידים שמשויכות אליהם. כך האפליקציה תוכל לסנכרן בקלות את המטלות, בלי צורך בבדיקות מתמשכות כדי לבדוק אם התוכן עודכן ב-Classroom.

השלמה ושליחה של מטלות

לכל מטלה משויכות N הגשות של תלמידים, כאשר N הוא מספר התלמידים שהמטלה הוקצה להם. במילים אחרות, לכל מטלה יש עבודה שהתלמיד/ה הגיש/ה, ולכל עבודה יש מזהה ייחודי שמאפשר גישה אליה. הגשות התלמידים נוצרות באופן אוטומטי, והאפליקציה שלכם יכולה לאחזר אותן באמצעות נקודות הקצה GET ו-LIST של הגשות התלמידים.

גם הלחצן לשיתוף וגם CourseWork API תומכים בהוספת קישורים או קבצים למטלה שהתלמיד הגיש. לחצן השיתוף מאפשר לעשות זאת באמצעות תהליך עבודה דומה לזה של תיבת הדו-שיח ליצירת מטלה למורים, ו-CourseWork API דרך נקודת הקצה studentSubmissions.modifyAttachments. עם זאת, בגלל ההגבלות על הרשאות API שמפורטות למעלה, הפונקציונליות הזו מוגבלת לפריטי CourseWork שנוצרו על ידי האפליקציה. ההגבלה הזו לא חלה על לחצן השיתוף – התלמידים יכולים להוסיף את העבודה שלהם לכל מטלה שהם בוחרים ב-Classroom.

סיום תהליך העבודה של התלמיד/ה

הגבלת ההרשאות ב-CourseWork לא רלוונטית לפלטפורמות שלא תומכות ביצירת מטלות, אבל יש לה יתרון אחד: פלטפורמות של צד שלישי יכולות למנוע מתלמידים לשלוח מטלה שגויה או לשכוח להגיש את העבודה, כי רק לחצן השיתוף מוגבל.

בדיקה ואימות של מטלות וציונים

החלק האחרון במחזור החיים של המטלה חוזר למורה. אחרי שהתלמידים ישלחו את המטלה, המורה יוכל לבדוק אותה בכל דרך שנראית לו הכי מתאימה. אם הקבצים מאוחסנים ב-Drive, הם יכולים לבדוק אותם ישירות במערכת למתן ציונים ב-Classroom. עם זאת, לא ניתן לגשת לאפליקציות של צד שלישי במערכת למתן ציונים ב-Classroom. המשמעות של המצב הזה היא שהמורים צריכים לנווט בכמה כרטיסיות בזמן בדיקת המטלות והענקת ציונים.

בשלב הזה, לחצן השיתוף לא מציע פתרון למתן ציונים ולהחזרת מטלות. תכונות כמו תגובות על הגשות של תלמידים לא גלויות כרגע דרך ה-API, אבל אפשר לתת ציונים ולהחזיר אותם לתלמידים דרך נקודות הקצה studentSubmissions.patch ו-studentSubmissions.return. אפשר לציין ציונים רק לפריטים בסטרים של עבודות (סוגים של מטלות ושאלות). הם זמינים רק בצורה מספרית, וניתן להקצות אותם כטיוטה או כציון סופי.

סיכום ההבדלים

כדי לסכם את כל מה שעברנו עליו בקטעים הקודמים, בטבלה הבאה מוצגת השוואה בין הלחצן 'שיתוף' לבין CourseWork API בארבע הקטגוריות שצוינו למעלה: הטמעה, יצירה ושיתוף של מטלות, השלמה ושליחה של מטלות ובדיקה וסימון של מטלות.

לחצן השיתוף CourseWork API
הטמעה רק כמה שורות של JavaScript, כך שההטמעה פשוטה ומהירה צריך להגדיר מפתחות API, להפעיל ממשקי API במסוף Admin ולבצע מעקב צמוד יותר
יצירת משימות ושיתוף שלהן
  • הפניה של מורים לתיבת הדו-שיח של לחצן השיתוף ב-Classroom
  • משתמשים יכולים לפרסם את כל סוגי הפריטים בסטרימינג מלבד סוג אחד
  • אפשר לציין פחות שדות
  • אחת מאפשרת ליצור מטלות, אבל אין אפשרות למשוך או לשנות את נתוני המטלות
  • אין צורך בתיבת דו-שיח של לחצן שיתוף
  • אפשר לציין את רוב השדות של המטלות ב-Classroom
  • יכולת לשנות עבודות שנוצרו על ידי האפליקציה
  • מאפשרת לאפליקציה שלכם לשלוף את כל נתוני המטלות מ-Classroom
השלמה ושליחה של מטלות
  • הפניית התלמידים לתיבת הדו-שיח של לחצן השיתוף ב-Classroom
  • התלמידים יכולים לצרף את המטלה שלהם לכל מטלה ב-Classroom
  • אחת מאפשרת לצרף קבצים לשליחה, אין אפשרות למשוך או לשנות את נתוני השליחה
  • לא מאפשרת לתלמידים להגיש את המטלה
  • אין צורך בתיבת דו-שיח של לחצן שיתוף
  • התלמידים יכולים לצרף את המטלה רק למטלות שנוצרו באפליקציה
  • מאפשרת לאפליקציה לשנות את המטלות שהתלמידים שלחו באמצעות האפליקציה
  • התלמידים יכולים להגיש את המטלות
בדיקה וסימון של מטלות אין תמיכה בהגדרת ציונים או בהחזרת ציונים
  • הרשאה שמאפשרת לאפליקציה שלכם לשלוף מ-Classroom את כל נתוני הגשות התלמידים בשם מורה
  • היכולת להקצות ציונים לתלמידים, כטיוטה או כציון סופי
  • חושף את היכולת לשנות את הציונים של התלמידים
  • חושפת את היכולת להחזיר ציונים לתלמידים