Öğrenme hedeflerini yönetme

Kullanıcılar, Google Classroom'daki dersler ve ödevler için öğrenme hedefleri belirleyebilir. Aynı öğrenme hedefleri Classroom API'de de gösterilir. Course kaynaklarında öğrenme standardı setlerini, CourseWork ve Rubric kaynaklarında ise öğrenme hedeflerini ayarlayabilir, alabilir ve değiştirebilirsiniz. Bu kılavuzda, Classroom API'yi kullanarak öğrenme hedeflerine ve standart kümelerine nasıl erişileceği ve bunların nasıl değiştirileceği açıklanmaktadır.

İşleyiş şekli

Veri kaynağı

Classroom'daki öğrenme hedefleri, Satchel Rosetta Exchange (eski adıyla CASE Network) tarafından sağlanan sabit ve global olarak benzersiz tanımlayıcılara (GUID) dayanır. Exchange'deki standartlar, kök düğümün belirli bir konu için kapsamlı bir standart kümesi olduğu ve alt düğümlerin giderek daha spesifik öğrenme sonuçlarını tanımladığı düğüm ağaçları halinde düzenlenir. Ağdaki standart kodlu veya yaprak düğümlü herhangi bir düğümün tanımlayıcısı CourseWork üzerinde öğrenme hedefi olarak ayarlanabilir. Yaprak olmayan herhangi bir düğüm ise Course üzerinde öğrenme standartları seti olarak ayarlanabilir.

  • Course kaynağına ait öğrenim standardı setleri, öğretmenler öğrenim hedeflerini etiketlediğinde Classroom kullanıcı arayüzünde görünen standartlar grubunu temsil eder.
  • CourseWork, CourseWorkMaterial veya Rubric kaynağına eklenen öğrenme hedefleri, söz konusu ödev, soru, materyal veya belirli puan anahtarı ölçütüyle ilişkili standardı ya da becerileri temsil eder.

Google, Satchel Rosetta Exchange'ten beş bilgi kullanır:

  • Belge Kimliği: Kök düzeyindeki bir düğüm için GUID. Bu kimlik, üst düzey bir standartlar kapsayıcısıyla eşleşir ve tüm alt düğümler için ortaktır.
  • Belge Başlığı: Standart belgenin tamamının kullanıcılar tarafından okunabilen adı.
  • Öğe kimliği: Tek bir standart için GUID (yani kök olmayan bir düğüm).
  • Standart Başlık: Tek bir standardın kullanıcıların okuyabileceği açıklayıcı metni.
  • Standart Kod: Belirli bir standardın okunabilir kısaltması.

Standartlar ve hedefler için değerleri bulma

Bu değerleri nerede bulacağınızı anlamak için New York eyaletindeki bir matematik standardı örneğini inceleyin. Kök düğümden başlayın:

Satchel Rosetta
Exchange'de seçildiğinde kök düğümün görünümü Şekil 1: Satchel Rosetta Exchange'de seçilen bir kök düğümün görünümü. Bu, sayfadaki tüm düğümler için ortak olan belge başlığını ve belge kimliğini gösterir.

Şekil 1'deki görünümden aşağıdaki değerleri çıkarabilirsiniz:

  • Doküman kimliği: c649d172-d7cb-11e8-824f-0242ac160002
  • Belge Başlığı: New York State Next Generation Mathematics Learning Standards

Tek bir standardın değerlerini almak için bir standardı tıklayın ve meta verilerini genişletin:

Satchel Rosetta Exchange'de seçildiğinde kök olmayan bir düğümün meta verilerinin görünümü Şekil 2: Satchel Rosetta Exchange'de seçildiğinde kök olmayan bir düğümün meta verilerinin görünümü. Öğe kimliğini, standart kodu ve standart başlığı gösterir. Bu değerler yalnızca bu standarda özgüdür.

Şekil 2'deki görünümde aşağıdaki değerleri bulabilirsiniz:

  • Öğe kimliği: 70d64c79-d7cc-11e8-824f-0242ac160002
  • Standart Başlık: Understand that the digits of a three-digit number represent amounts of hundreds, tens, and ones.
  • Standart Kod: NY-2.NBT.4

Doküman ve öğe kimliklerinin, her düğümün Satchel Rosetta Exchange URL'sinden de çıkarılabileceğini unutmayın. Bu URL'ler https://rosetta.commongoodlt.com/{document_id}/{item_id} kalıbına uygundur.

Maksimum bağlı öğe sayısı

  • Her Course en fazla 5 eğitim standardı kümesi içerebilir.
  • Her CourseWork en fazla 10 öğrenme hedefi içerebilir.
  • Her derecelendirme ölçeğinde Criterion 1 öğrenme hedefi olabilir.

Kurs öğrenme standardı setlerini yönetme

Öğrenme standardı setlerini değiştirme

Course öğrenme standardı setlerini değiştirmek için Course.learningStandardSettings alanını standardSets nesneleriyle doldurun. Her standardSet, bir caseGuid nesnesi içermelidir. Bu nesne, caseDocumentId ve isteğe bağlı olarak caseItemId öğesini içerir.

Course güncelleme isteğini kullanarak öğrenme standardı kümeleri ekleyebilirsiniz. Örneğin, learningStandardSettings güncelleme maskesiyle courses.create() veya courses.patch().

Aşağıdaki örnekte, mevcut bir kursta iki standart set ayarlanmaktadır.

Python

service = build("classroom", "v1", credentials=creds)
course = {
    "learning_standard_settings": {
        # Each Course can have up to 5 learning standard sets.
        "standard_sets": [
            # Construct a GUID for the NYS Next Gen Math Standards top-level node.
            # This is a top-level non-leaf node, so it only has a Document ID.
            {
                "case_guid": {
                    "case_document_id": "c649d172-d7cb-11e8-824f-0242ac160002"
                }
            },
            # Construct a GUID for the AAS ELA21.AAS.K Standard node.
            # This is a mid-level non-leaf node, so it has both Document and Item IDs.
            {
                "case_guid": {
                    "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
                    "case_item_id": "ada2cc30-7d6d-494e-8c6b-c998bae98f0b",
                }
            },
        ]
    }
}

course = (
    service.courses()
    .patch(
      id=course_id,
      updateMask="learningStandardSettings",
      body=course,
      # Specify the preview version while the feature is in Developer Preview.
      # Learning standards and goals are supported in V1_20260316_PREVIEW and
      # later.
      previewVersion="V1_20260316_PREVIEW")
    .execute()
)
print(f"Course updated: {course.get('name')}")

Öğrenme standardı setlerini alma

Bir kursun mevcut öğrenme standardı setlerini görmek için Course.learningStandardSettings alanını inceleyin. Bu alan bir dizi standardSets nesnesi içerir ve kursta öğrenim standardı setleri yoksa boş olabilir.

Yanıtın her standardSet öğesinin, standardın açıklamasını ve kök doküman başlığını içerdiğini unutmayın. Bu metinler, Classroom kullanıcı arayüzünde öğretmenler ve öğrenciler için de gösterilir. Ayrıca, standardın Satchel Rosetta Exchange'te mevcut olup olmadığını belirten sourceDataAvailabilityStatus simgesini de görürsünüz.

{
  "id": "123456789",
  "name": "LSS test class",
  "learning_standard_settings": {
    "standard_sets": [{
      "case_guid": {
        "case_document_id": "c649d172-d7cb-11e8-824f-0242ac160002"
      },
      "document_title": "New York State Next Generation Mathematics Learning Standards",
      "source_data_availability_status": "LEARNING_STANDARD_AVAILABLE"
    },
    {
      "case_guid": {
        "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
        "case_item_id": "d52217c0-1c5b-4d92-9664-d0792944f3fe"
      },
      "document_title": "AAS English Language Arts (2021)",
      "standard_title": "With prompting and support, actively listen and speak.",
      "source_data_availability_status": "LEARNING_STANDARD_AVAILABLE"
    }]
  }
}

CourseWork ve puan anahtarı öğrenme hedeflerini yönetme

Öğrenme hedeflerini değiştirme

Öğrenme hedefleri, herhangi bir değiştirme isteğinde CourseWork, CourseWorkMaterial ve puan anahtarı Criterion kaynaklarına eklenebilir. CourseWork.learningGoals veya Rubric.Criterion.learningGoal alanlarında doküman ve öğe tanımlayıcılarını ayarlayın. Bunlar, daha önce açıklanan tanımlayıcılarla aynıdır.

Rubric ölçütlerine eklenen öğrenme hedeflerinin, Rubric'nın bağlı olduğu ödeve daha önce eklenmiş olması gerektiğini unutmayın.

Aşağıdaki örnekte, iki ekli öğrenme hedefi içeren bir CourseWork ödevi oluşturuluyor.

Python

# Create a CourseWork assignment with two attached learning goals.
service = build("classroom", "v1", credentials=creds)
coursework = {
    "title": "Ant colonies",
    "description": "Read the article about ant colonies and complete the quiz.",
    "materials": [
        {"link": {"url": "http://example.com/ant-colonies"}},
        {"link": {"url": "http://example.com/ant-quiz"}},
    ],
    "workType": "ASSIGNMENT",
    "state": "PUBLISHED",
    # Each CourseWork can have up to 10 learning goals.
    "learning_goals": [
        {
            "learning_standard_info": {
                # Construct a GUID for the ELA21.AAS.11.11c Standard node.
                # This is a non-root node, so it has both Document and Item IDs.
                "case_guid": {
                    "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
                    "case_item_id": "6d922f1f-b580-42a1-b6d2-5ee5b39c561d",
                }
            }
        },
        {
            "learning_standard_info": {
                # Construct a GUID for the ELA21.AAS.11.22a Standard node.
                # This is a non-root node, so it has both Document and Item IDs.
                "case_guid": {
                    "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
                    "case_item_id": "a684609a-c3ec-42da-8b7f-7a325b31ea4a",
                }
            }
        },
    ],
}

coursework = (
    service.courses()
    .courseWork()
    .create(
      courseId=course_id,
      body=coursework,
      # Specify the preview version while the feature is in Developer Preview.
      # Learning standards and goals are supported in V1_20260316_PREVIEW and
      # later.
      previewVersion="V1_20260316_PREVIEW")
    .execute()
)
print(f"Assignment created with ID {coursework.get('id')}")

Aşağıdaki örnekte, her ölçüte bir öğrenme hedefi eklenmiş Rubric oluşturuluyor.

Python

# Create a new Rubric with a learning goal attached to each criterion.
service = build("classroom", "v1", credentials=creds)
body = {
    "criteria": [
        {
            "title": "Argument",
            "description": "How well structured your argument is.",
            "levels": [
                {
                    "title": "Convincing",
                    "description": "A compelling case is made.",
                    "points": 30,
                },
                {
                    "title": "Passable",
                    "description": "Missing some evidence.",
                    "points": 20,
                },
                {
                    "title": "Needs Work",
                    "description": "Not enough strong evidence.",
                    "points": 0,
                },
            ],
            # Each Criterion can have one learning goal.
            "learning_goal": {
                "learning_standard_info": {
                    # Construct a GUID for the ELA21.AAS.11.11c Standard node.
                    # This is a non-root node, so it has both Document and Item IDs.
                    "case_guid": {
                        "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
                        "case_item_id": "6d922f1f-b580-42a1-b6d2-5ee5b39c561d",
                    }
                }
            },
        },
        {
            "title": "Spelling",
            "description": "How well you spelled all the words.",
            "levels": [
                {"title": "Perfect", "description": "No mistakes.", "points": 20},
                {"title": "Great", "description": "A mistake or two.", "points": 15},
                {"title": "Needs Work", "description": "Many mistakes.", "points": 5},
            ],
            # Each Criterion can have one learning goal.
            "learning_goal": {
                "learning_standard_info": {
                    # Construct a GUID for the ELA21.AAS.11.22a Standard node.
                    # This is a non-root node, so it has both Document and Item IDs.
                    "case_guid": {
                        "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
                        "case_item_id": "a684609a-c3ec-42da-8b7f-7a325b31ea4a",
                    }
                }
            },
        },
    ]
}

rubric = (
    service.courses()
    .courseWork()
    .rubrics()
    .create(
      courseId=course_id,
      courseWorkId=coursework_id,
      body=body,
      # Specify the preview version while the feature is in Developer Preview.
      # Learning standards and goals are supported in V1_20260316_PREVIEW and
      # later.
      previewVersion="V1_20260316_PREVIEW")
    .execute()
)
print(f"Rubric created with ID {rubric.get('id')}")

Öğrenme hedeflerini alma

Bir ödev, soru veya materyaldeki mevcut öğrenme hedeflerini görmek için CourseWork.learningGoals alanını inceleyin. Her öğrenme hedefi nesnesi, kök düzeydeki doküman başlığını ve öğrenme standardı kodunu içerir.

Öğretmenlerin, Classroom kullanıcı arayüzünde ödevlere ve materyallere beceri etiketleri de ekleyebileceğini unutmayın. Beceri etiketlerine API'den erişilemez.

{
  "course_id": "123456789",
  "id": "987654321",
  "title": "Test ELA Assignment",
  "state": "PUBLISHED",
  "learning_goals": [
    {
      "learning_standard_info": {
        "standard_code": "ELA21.AAS.11.11c",
        "document_title": "AAS English Language Arts (2021)",
        "case_guid": {
          "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
          "case_item_id": "6d922f1f-b580-42a1-b6d2-5ee5b39c561d",
        },
        "source_data_availability_status": "LEARNING_STANDARD_AVAILABLE"
      },
      "title": "Compose argumentative texts by stating a topic, providing reasons that support the argument, and providing an appropriate conclusion related to the topic."
    },
    {
      "learning_standard_info": {
        "standard_code": "ELA21.AAS.11.22a",
        "document_title": "AAS English Language Arts (2021)",
        "case_guid": {
          "case_document_id": "bfc264b3-b4d1-4780-84ff-26b12e6945a6",
          "case_item_id": "a684609a-c3ec-42da-8b7f-7a325b31ea4a",
        },
        "source_data_availability_status": "LEARNING_STANDARD_AVAILABLE"
      },
      "title": "Identify a sentence that uses correct capitalization (i.e., beginning of sentence, names, cities, states, countries, towns, titles, days, months)."
    }]
}

Benzer veriler, ölçüt başına bir learningGoal içeren Rubric yanıtlarıyla döndürülür.