Choose Your Own Solution: Supporting Optional Blocks in Block Ordering Problems
Skyler Oakeson, David H. Smith, Jaxton Winder, Seth Poulsen
TL;DR
The paper addresses the limitation of existing block-ordering problems in handling optional blocks and multiple valid solutions. It introduces a multigraph-based dependency model that collapses to all valid DAGs and reuses existing DAG-based grading algorithms, with a DFS-based collapse routine providing scalable generation of solution paths. The authors demonstrate the approach across discrete math, introductory programming, and shell-command domains, highlighting practical instructor experiences and the potential for both formative and summative use. This work broadens the design space for block-ordering assessments, enabling richer worked examples and flexible assessment strategies that reflect real-world problem solving.
Abstract
This paper extends the functionality of block ordering problems (such as Parsons problems and Proof Blocks) to include optional blocks. We detail the algorithms used to implement the optional block feature and present usage experiences from instructors who have integrated it into their curriculum. The optional blocks feature enables instructors to create more complex Parsons problems with multiple correct solutions utilizing omitted or optional blocks. This affords students a method to engage with questions that have several valid solutions composed of different answer components. Instructors can specify blocks with multiple mutually exclusive dependencies, which we represent using a multigraph structure. This multigraph is then collapsed into multiple directed acyclic graphs (DAGs), allowing us to reuse existing algorithms for grading block ordering problems represented as a DAG. We present potential use cases for this feature across various domains, including helping students learn Git workflows, shell command sequences, mathematical proofs, and Python programming concepts.
