27 research outputs found

    Studi Komparatif Program Visual Dinamis untuk Pembelajaran Algoritma dan Pemograman Berorientasi Objek

    Get PDF
    As beginners, many first-year students have difficulty understanding object-oriented programming material. To help students learn algorithmic and object-oriented programming material researchers have developed visual programming (PV). Visual programming is a tool to facilitate learning programming. The concept of learning to use PV visualizes the work processes of algorithms and programming. This research aims to compare three dynamic PV tools for object-oriented learning programming that are the most studied. To determine the PV to be compared, a survey was conducted in an online journal database, such as IEEE explore, ACM, and several well-known online publishers. From the survey results, three dynamic PVs were chosen, most widely discussed, namely Jeliot 3, Ville and Jive. All three tools are installed and studied. Comparison results show that each dynamic PV has advantages on certain characteristics. The instructor can choose visual programming by considering the advantages of each PV

    Student success model in programming course: A case study in UUM

    Get PDF
    The complexity and difficulty ascribed to computer programming has been asserted to be the causes of its high rate of failure record and attrition. It is opined that programming either to novice, middle learner, and the self-branded geeks is always a course to be apprehensive of different studies with varying findings. Studies on factors leading to the success of programming course in higher institution have been carried out. The record at Universiti Utara Malaysia (UUM) shows that 38% of semester one undergraduate students failed the programming course in 2013. This really motivates this study, which aims at investigating the practical factors affecting the success of programming courses, and to position its’ theoretically findings to complement the existing findings. Data were gathered using a quantitative approach, in which a set of questionnaire were distributed to 282 sampled respondents, who are undergraduate and postgraduate students of Information Technology (IT) and Information and Communication Technology (ICT). Having screened and cleaned the data, which led to the deletion of four outlier records, independent T-test, correlation, and regression were run to test the hypotheses. The results of Pearson correlation test reveal that teaching tools, OOP concepts, motivation, course evaluation, and mathematical aptitude are positively related to academic success in programming course, while fear is found to be negatively related. In addition, the regression analysis explains that all the elicited independent variables except fear are strongly related. Besides, the independent T-test also discovers no deference between groups with and without previous programming experience

    The Many Ways of the BRACElet Project

    Full text link
    This paper provides a retrospective snapshot of the first two years of a multi-institutional multi-national study (MIMN) in Computer Science Education called the BRACElet Project. This study has been inquiring into how novice programmers comprehend and write computer programs. The context for the study is outlined, together with details of how it has evolved and those who have participated. Some challenges encountered during the project are highlighted and pointers for the successful conduct of such a study are provided. The paper concludes by noting pitfalls to be avoided, some open research questions, and current plans for furthering the project

    Enseñando a programar: un camino directo para desarrollar el pensamiento computacional

    Get PDF
    It is widely accepted that developing the ability to solve problems is essential. Computational thinking is based on problem solving using basic concepts of computing. An introductory course to programming is a direct way to develop the ability to solve problems using computer concepts. This paper presents our thinking about initiating students into the field of computer programming. This work does not detail the contents to be taught, but focuses on methodological aspects, including experiences and specific examples, which are general and extensible to any programming course. Although programming languages are been developed to be increasingly closer to human language, computer programming using formal languages is not intuitive and easy to be understood by our students. It may seem a simple task for an experienced programmer, but it is not for a neophyte. Moreover, mastering the art of programming is complex. For this reason it is essential to use all possible techniques and tools that facilitate this work.Está ampliamente aceptado que es fundamental desarrollar la habilidad de resolver problemas. El pensamiento computacional se basa en resolver problemas haciendo uso de conceptos fundamentales de la informática. Nada mejor para desarrollar la habilidad de resolver problemas usando conceptos informáticos que una asignatura de introducción a la programación. Este trabajo presenta nuestras reflexiones acerca de cómo iniciar a un estudiante en el campo de la programación de computadores. El trabajo no detalla los contenidos a impartir, sino que se centra en aspectos metodológicos, con la inclusión de experiencias y ejemplos concretos, a la vez que generales, extensibles a cualquier enseñanza de programación. En general, aunque se van desarrollado lenguajes cada vez más cercanos al lenguaje humano, la programación de ordenadores utilizando lenguajes formales no es una materia intuitiva y de fácil comprensión por parte de los estudiantes. A la persona que ya sabe programar le parece una tarea sencilla, pero al neófito no. Es más, dominar el arte de la programación es complejo. Por esta razón es indispensable utilizar todas las técnicas y herramientas posibles que faciliten dicha labor

    The Structured Process Modeling Theory (SPMT): a cognitive view on why and how modelers benefit from structuring the process of process modeling

    Get PDF
    After observing various inexperienced modelers constructing a business process model based on the same textual case description, it was noted that great differences existed in the quality of the produced models. The impression arose that certain quality issues originated from cognitive failures during the modeling process. Therefore, we developed an explanatory theory that describes the cognitive mechanisms that affect effectiveness and efficiency of process model construction: the Structured Process Modeling Theory (SPMT). This theory states that modeling accuracy and speed are higher when the modeler adopts an (i) individually fitting (ii) structured (iii) serialized process modeling approach. The SPMT is evaluated against six theory quality criteria

    An Empirical Validation of Cognitive Complexity as a Measure of Source Code Understandability

    Full text link
    Background: Developers spend a lot of their time on understanding source code. Static code analysis tools can draw attention to code that is difficult for developers to understand. However, most of the findings are based on non-validated metrics, which can lead to confusion and code, that is hard to understand, not being identified. Aims: In this work, we validate a metric called Cognitive Complexity which was explicitly designed to measure code understandability and which is already widely used due to its integration in well-known static code analysis tools. Method: We conducted a systematic literature search to obtain data sets from studies which measured code understandability. This way we obtained about 24,000 understandability evaluations of 427 code snippets. We calculated the correlations of these measurements with the corresponding metric values and statistically summarized the correlation coefficients through a meta-analysis. Results: Cognitive Complexity positively correlates with comprehension time and subjective ratings of understandability. The metric showed mixed results for the correlation with the correctness of comprehension tasks and with physiological measures. Conclusions: It is the first validated and solely code-based metric which is able to reflect at least some aspects of code understandability. Moreover, due to its methodology, this work shows that code understanding is currently measured in many different ways, which we also do not know how they are related. This makes it difficult to compare the results of individual studies as well as to develop a metric that measures code understanding in all its facets.Comment: 12 pages. To be published at ESEM '20: ACM / IEEE International Symposium on Empirical Software Engineering and Measuremen

    Impact Of A Visual Programming Experience On The Attitude Toward Programming Of Introductory Undergraduate Students

    Get PDF
    Traditionally, textual tools have been utilized to teach basic programming languages and paradigms. Research has shown that students tend to be visual learners. Using flowcharts, students can quickly understand the logic of their programs and visualize the flow of commands in the algorithm. Moreover, applying programming to physical systems through the use of a microcontroller to facilitate this type of learning can spark an interest in students to advance their programming knowledge to create novel applications. This study examined if freshmen college students\u27 attitudes towards programming changed after completing a graphical programming lesson. Various attributes about students\u27 attitudes were examined including confidence, interest, stereotypes, and their belief in the usefulness of acquiring programming skills. The study found that there were no statistically significant differences in attitudes either immediately following the session or after a period of four weeks

    Object-Oriented Program Comprehension: Effect of Expertise, Task and Phase

    Get PDF
    The goal of our study is to evaluate the effect on program comprehension of three factors that have not previously been studied in a single experiment. These factors are programmer expertise (expert vs. novice), programming task (documentation vs. reuse), and the development of understanding over time (phase 1 vs. phase 2). This study is carried out in the context of the mental model approach to comprehension based on van Dijk and Kintsch's model (1983). One key aspect of this model is the distinction between two kinds of representation the reader might construct from a text: 1) the textbase, which refers to what is said in the text and how it is said, and 2) the situation model, which represents the situation referred to by the text. We have evaluated the effect of the three factors mentioned above on the development of both the textbase (or program model) and the situation model in object-oriented program comprehension. We found a four-way interaction of expertise, phase, task and type of model. For the documentation group we found that experts and novices differ in the elaboration of their situation model but not their program model. There was no interaction of expertise with phase and type of model in the documentation group. For the reuse group, there was a three-way interaction between phase, expertise and type of model. For the novice reuse group, the effect of the phase was to increase the construction of the situation model but not the program model. With respect to the task, our results show that novices do not spontaneously construct a strong situation model but are able to do so if the task demands it
    corecore