[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"doc-detail-82742-en":3,"doc-seo-82742-105":30,"detail-sidebar-cat-0-en-105":91},{"code":4,"msg":5,"data":6},0,"success",{"doc_id":7,"user_id":8,"nickname":9,"user_avatar":10,"doc_module":4,"category_id":11,"category_name":12,"doc_title":13,"doc_description":14,"doc_content":15,"file_id":16,"file_url":17,"file_type":18,"file_size":19,"view_count":20,"is_deleted":4,"is_public":21,"is_downloadable":21,"audit_status":21,"page_count":22,"language":23,"language_code":24,"site_id":25,"html_lang":24,"table_of_contents":26,"faqs":27,"seo_title":13,"seo_description":14,"update_tm":28,"read_time":29},82742,4398048949847,"Eliana","https://ap-avatar.wpscdn.com/avatar/400002536579ef2da7f?_k=1778318612642679267",8,"Research & Report","Analyzing the Difficulty of Programming Assignments with Interpretable Knowledge Component Metrics","This research paper investigates how Knowledge Components (KCs) — fine-grained concepts or skills needed to complete programming tasks — can serve as interpretable signals of assignment difficulty and student struggle in introductory programming courses. Instead of relying on opaque prediction models from programming behavior, it analyzes KC-based metrics such as KC counts per assignment and KC coverage changes between consecutive assignments. Experiments on three course datasets link higher KC load to lower performance and reveal learning disruptions when required KCs shift abruptly or decline without new concepts. The paper proposes a framework usable with instructor-provided or LLM-extracted KCs.","Analyzing the Difficulty of Programming Assignments with Interpretable Knowledge  \nComponent Metrics  \nTsvetomila Mihaylova∗ , Jing Fan∗ , Bita Akram†, Narges Norouzi‡ Peter Brusilovsky§ , Juho Leinonen∗ and Arto Hellas∗  \n∗ Department of Computer Science, Aalto University, Espoo, Finland, [tsvetomila.mihaylova@aalto.fi](tsvetomila.mihaylova@aalto.fi)  \n†North Carolina State University, USA  \n‡University of California, Berkeley, USA  \n§ University of Pittsburgh, USA  \narXiv :2607 .034 19v 1 [ cs .CY] 3 Jul 2026  \nAbstract—This full research paper examines how Knowledge Components (KCs) - fine-grained concepts or skills required to solve programming tasks - can be used as interpretable signals for understanding assignment difficulty and student struggle in introductory programming courses. While prior work has focused on predictive models based on programming behavior, such models are often difficult to interpret and therefore hard to use for instructional decisions. We take a complementary approach by analyzing KC-based metrics, including the number of KCs per assignment and changes in KC coverage between consecutive assignments (such as newly introduced or removed KCs). We study how these metrics relate to student performance, submission behavior, and engagement across a full course. The KCs can be given by the course instructor or extracted by using a large language model (LLM). We examine correlations between the number of KCs and student performance on the assignment, and analyze changes in KCs across assignments to identify cases where performance declines without new concepts being introduced. Selected assignments are then qualitatively inspected to understand potential design issues. Our results on data from three introductory programming course datasets show that assignments involving more KCs are generally associated with lower performance, and that sudden shifts in required KCscan coincide with disruptions in learning progression. We also identify assignments where performance declines even though no new KCs are introduced, suggesting potential issues in task design or instruction, which could be examined with qualitative analysis. In addition, we highlight which KCs are consistently associated with greater difficulty throughout the course. We propose an interpretable framework for analyzing programming assignments using KC-based metrics, with practical implications for instructors and course designers who want to better understand where and why students struggle, and how course materials might be improved. Our method can use KCs defined by an expert or extracted by an LLM, offering instructors an additional way to assess assignment quality beyond average correctness. It can be applied to any course with ordered assignments and measurable performance.  \nI. INTRODUCTION  \nDesigning effective programming assignments is a key part of computing education. Yet, instructors often lack clear, interpretable indicators to assess whether an assignment is too difficult, conceptually misaligned, or poorly sequenced. While considerable research has focused on identifying struggling  \nstudents [1] through programming aptitude tests and broader psychological and background factors [2], [3], behavioral modeling [4], [5], [6], [7], or performance in classroom activities [8], these approaches are typically student-centered and the potential interventions are less scalable in large courses. Moreover, while data-driven models can predict individual risk, they often lack transparency, limiting their use in diagnosing and improving instructional content.  \nAn alternative and complementary approach is to examine the assignments themselves, specifically focusing on the cognitive demands they place on students. Prior work has explored metrics such as time-on-task [9] or code complexity [10] to estimate assignment difficulty, but such indicators are not always informative for instructional design. In addition to understanding that an assignme","cbCaitAwQwSuiOCN","https://ap.wps.com/l/cbCaitAwQwSuiOCN","pdf",685542,2,1,9,"English","en",105,"# Abstract\n# Introduction\n## Research Questions\n## Contributions","[{\"question\":\"What are Knowledge Components (KCs) in this paper’s framework?\",\"answer\":\"KCs are fine-grained concepts or skills required to solve specific programming tasks. They provide a structured way to describe the conceptual load embedded in assignments.\"},{\"question\":\"How do KC-based metrics measure assignment difficulty?\",\"answer\":\"The study uses metrics including the number of KCs per assignment and changes in KC coverage between consecutive assignments, such as newly introduced or removed KCs.\"},{\"question\":\"What do the results show about the relationship between KC load and student performance?\",\"answer\":\"Assignments involving more KCs are generally associated with lower student performance. The paper also finds that sudden shifts in required KCs can disrupt learning progression.\"}]",1784182614,23,{"code":4,"msg":31,"data":32},"ok",{"site_id":25,"language":24,"slug":33,"title":13,"keywords":34,"description":14,"schema_data":35,"social_meta":86,"head_meta":88,"extra_data":90,"updated_unix":28},"analyzing-the-difficulty-of-programming-assignments-with-interpretable-knowledge-component-metrics","",{"@graph":36,"@context":85},[37,53,68],{"@type":38,"itemListElement":39},"BreadcrumbList",[40,44,47,50],{"item":41,"name":42,"@type":43,"position":21},"https://docshare.wps.com","Home","ListItem",{"item":45,"name":46,"@type":43,"position":20},"https://docshare.wps.com/document/","Document",{"item":48,"name":12,"@type":43,"position":49},"https://docshare.wps.com/document/research-report/",3,{"item":51,"name":13,"@type":43,"position":52},"https://docshare.wps.com/document/analyzing-the-difficulty-of-programming-assignments-with-interpretable-knowledge-component-metrics/82742/",4,{"url":51,"name":13,"@type":54,"author":55,"headline":13,"publisher":57,"fileFormat":60,"inLanguage":24,"description":14,"dateModified":61,"datePublished":62,"encodingFormat":60,"isAccessibleForFree":63,"interactionStatistic":64},"DigitalDocument",{"name":9,"@type":56},"Person",{"url":41,"name":58,"@type":59},"DocShare","Organization","application/pdf","2026-07-23","2026-07-16",true,{"@type":65,"interactionType":66,"userInteractionCount":20},"InteractionCounter",{"@type":67},"ViewAction",{"@type":69,"mainEntity":70},"FAQPage",[71,77,81],{"name":72,"@type":73,"acceptedAnswer":74},"What are Knowledge Components (KCs) in this paper’s framework?","Question",{"text":75,"@type":76},"KCs are fine-grained concepts or skills required to solve specific programming tasks. They provide a structured way to describe the conceptual load embedded in assignments.","Answer",{"name":78,"@type":73,"acceptedAnswer":79},"How do KC-based metrics measure assignment difficulty?",{"text":80,"@type":76},"The study uses metrics including the number of KCs per assignment and changes in KC coverage between consecutive assignments, such as newly introduced or removed KCs.",{"name":82,"@type":73,"acceptedAnswer":83},"What do the results show about the relationship between KC load and student performance?",{"text":84,"@type":76},"Assignments involving more KCs are generally associated with lower student performance. The paper also finds that sudden shifts in required KCs can disrupt learning progression.","https://schema.org",{"og:url":51,"og:type":87,"og:title":13,"og:site_name":58,"og:description":14},"article",{"robots":89,"canonical":51},"index,follow",{"doc_id":7,"site_id":25},{"code":4,"msg":5,"data":92},[93,97,101,105,110,115,120,123,127,130,134],{"id":21,"doc_module":4,"doc_module_name":46,"category_name":94,"show_sort_weight":95,"slug":96},"Story & Novel",90,"story-novel",{"id":20,"doc_module":4,"doc_module_name":46,"category_name":98,"show_sort_weight":99,"slug":100},"Literature",80,"literature",{"id":52,"doc_module":4,"doc_module_name":46,"category_name":102,"show_sort_weight":103,"slug":104},"Exam",70,"exam",{"id":106,"doc_module":4,"doc_module_name":46,"category_name":107,"show_sort_weight":108,"slug":109},5,"Comic",60,"comic",{"id":111,"doc_module":4,"doc_module_name":46,"category_name":112,"show_sort_weight":113,"slug":114},6,"Technology",50,"technology",{"id":116,"doc_module":4,"doc_module_name":46,"category_name":117,"show_sort_weight":118,"slug":119},7,"Healthcare",40,"healthcare",{"id":11,"doc_module":4,"doc_module_name":46,"category_name":12,"show_sort_weight":121,"slug":122},30,"research-report",{"id":22,"doc_module":4,"doc_module_name":46,"category_name":124,"show_sort_weight":125,"slug":126},"Religion & Spirituality",20,"religion-spirituality",{"id":125,"doc_module":4,"doc_module_name":46,"category_name":128,"show_sort_weight":125,"slug":129},"World Cup","world-cup",{"id":131,"doc_module":4,"doc_module_name":46,"category_name":132,"show_sort_weight":131,"slug":133},10,"Lifestyle","lifestyle",{"id":135,"doc_module":4,"doc_module_name":46,"category_name":136,"show_sort_weight":106,"slug":137},19,"General","general"]