Simulator Interaktif Single Linked List Berbasis Step Execution untuk Mempelajari Mekanisme Penunjukan dan Pengelolaan Memori
DOI:
https://doi.org/10.71282/jurmie.v3i6.2100Keywords:
Singly linked list, data structure visualization, step by step simulation, memory management, Java Swing, computer science education, Unified Process.Abstract
The singly linked list data structure is a fundamental concept in computer science that is often difficult to understand due to dynamic memory allocation, pointers, and changes in node relationships. This study aims to design and develop an interactive desktop-based visualization software (Java Swing) that can graphically depict a singly linked list, provide step by step simulation for insert, delete, update, and traverse operations, and synchronize the visualization with highlighted line by line C code snippets. The development method follows the iterative Unified Process with four phases: Inception, Elaboration, Construction, and Transition. In the Elaboration phase, artifacts produced include fully dressed use cases, a use case diagram, system sequence diagrams (SSDs), a design class diagram, and a low fidelity wireframe user interface. Test results show that the application successfully executes all operation scenarios, including edge conditions (empty list, single node, invalid positions). The step simulation feature with commit/non commit mechanism and backward/forward navigation works as designed. The memory panel and code highlighting help clarify the relationship between C code and changes in the data structure. This application is suitable for use as an interactive learning medium in Data Structures courses, particularly on the topic of singly linked lists.
Downloads
References
Borg, W. R., & Gall, M. D. (2007). Educational research: An introduction (8th ed.). Pearson.
Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to algorithms (4th ed.). MIT Press.
Galles, D. (n.d.). Data structure visualizations. University of San Francisco. https://www.cs.usfca.edu/~galles/visualization/Algorithms.html
Guo, P. J. (2013). Online Python Tutor: Embeddable web-based program visualization for novices. Proceedings of the 2013 ACM Technical Symposium on Computer Science Education, 579–584. https://doi.org/10.1145/2445196.2445368
Halim, S., & Koh, F. (2011). VisuAlgo: Visualising data structures and algorithms through animation. Proceedings of the 3rd National Conference on Computer Science Education. National University of Singapore. https://visualgo.net
Kelleher, C., & Pausch, R. (2005). Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Computing Surveys, 37(2), 83–137. https://doi.org/10.1145/1089733.1089734
Kernighan, B. W., & Ritchie, D. M. (1988). The C programming language (2nd ed.). Prentice Hall.
Larman, C. (2005). Applying UML and patterns: An introduction to object-oriented analysis and design and iterative development (3rd ed.). Prentice Hall.
Mayer, R. E. (Ed.). (2014). The Cambridge handbook of multimedia learning (2nd ed.). Cambridge University Press. https://doi.org/10.1017/CBO9781139547369
Pressman, R. S. (2014). Software engineering: A practitioner's approach (8th ed.). McGraw-Hill.
Downloads
Published
Issue
Section
License
Copyright (c) 2026 Edison Pardengganan Siahaan (Author)

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.










