Conceptual Understanding of Computer Program Execution: Application to C++
A visual programming language uses pictorial tools such as diagrams to represent its structural units and control stream. It is useful for enhancing understanding, maintenance, verification, testing, and parallelism. This paper proposes a diagrammatic methodology that produces a conceptual representation of instructions for programming source codes. Without loss of generality in the potential for using the methodology in a wider range of applications, this paper focuses on using these diagrams in teaching of C++ programming. C++ programming constructs are represented in the proposed method in order to show that it can provide a foundation for understanding the behavior of running programs. Applying the method to actual C++ classes demonstrates that it improves understanding of the activities in the computer system corresponding to a C++ program.
Keywords: conceptual model, understanding, computer programming, C++, diagram
Download Full-Text
ABOUT THE AUTHOR
Sabah Al-Fedaghi
Sabah Al-Fedaghi holds an MS and a PhD in computer science from the Department of Electrical Engineering and Computer Science, Northwestern University, Evanston, Illinois, and a BS in Engineering Science from Arizona State University, Tempe. He has published two books and more than 70 articles published/forthcoming in more than 50 different peer-reviewed journals. He has also published more than 80 articles in conferences on Software Engineering, Database Systems, Information Systems, Computer/information Ethics, Information Privacy, Information Security and Warfare, Conceptual Modeling, and Artificial Agents. He is an associate professor in the Computer Engineering Department, Kuwait University. He previously worked as a programmer at the Kuwait Oil Company and headed the Electrical and Computer Engineering Department (1991–1994) and the Computer Engineering Department (2000–2007).
Sabah Al-Fedaghi
Sabah Al-Fedaghi holds an MS and a PhD in computer science from the Department of Electrical Engineering and Computer Science, Northwestern University, Evanston, Illinois, and a BS in Engineering Science from Arizona State University, Tempe. He has published two books and more than 70 articles published/forthcoming in more than 50 different peer-reviewed journals. He has also published more than 80 articles in conferences on Software Engineering, Database Systems, Information Systems, Computer/information Ethics, Information Privacy, Information Security and Warfare, Conceptual Modeling, and Artificial Agents. He is an associate professor in the Computer Engineering Department, Kuwait University. He previously worked as a programmer at the Kuwait Oil Company and headed the Electrical and Computer Engineering Department (1991–1994) and the Computer Engineering Department (2000–2007).