1 |
Design and Evaluation of a Web-Based Programming Tool to Improve the Introductory Computer Science ExperienceTilden, Daniel Steven 05 June 2013 (has links)
Introductory computer science courses can be notoriously difficult for students, especially those outside of the major. There are many reasons for this, but the programming software itself may play a significant role. To address this issue, we have developed Pythy, a web-based programming environment that allows students to write, execute, and test programming assignments from within the familiar interface of a web browser. In this work, we discuss various aspects of Pythy in detail, including the rationale behind its design, the system architecture on which it is built, and the various functions offered by the software. Next, we discuss an evaluation of Pythy\'s effectiveness during a programming course for non CS-majors offered at Virginia Tech, comparing it to a different software solution used in another programming course. Results suggest that Pythy was successful in several target areas, including making it easier to get started with programming and providing feedback about program behavior. Access log data from Pythy itself reveals details about how students used the system. Finally, we conclude with a summary of key contributions and suggest some potential future directions for the system. / Master of Science
|
2 |
The design, development and evaluation of a visual programming tool for novice programmers : psychological and pedagogical effects of introductory programming tools on programming knowledge of Greek studentsVasilopoulos, Ioannis Vasileiou January 2014 (has links)
This thesis reports a research project that aims to improve the teaching and learning of introductory programming from a pedagogical and psychological viewpoint. Towards this aim, seven principles for designing educational programming tools for novices were identified by reviewing literature regarding novices’ difficulties and using a theoretical framework defined by the psychological theories of Constructivism and Cognitive Load Theory. This set of design principles was not only theoretically identified, but its pedagogical impact was also empirically tested. For this reason, Koios, a new programming tool, was designed and developed as a manifestation of the combined set of principles. Empirical studies were conducted by a way of a quasi-experimental design in two different Greek secondary-education institutions. The independent variable was compliance with the set of the seven principles. Students’ level of programming skills (procedural knowledge) was the dependent variable, while the quality of their mental models in the domain of introductory programming (declarative knowledge) was the potential mediator. The effect of compliance with the set of principles on students’ programming skills and mental-model quality was explored via Koios’ evaluation. Declarative- and procedural-knowledge measurements, as well as a practical test, were used to collect data, which were analysed using ANOVA and hierarchical multiple regression. The major conclusions drawn from this study are:(a) compliance with the set of design principles does not affect the development of novices’ procedural and declarative programming knowledge, (b) a programming tool that highly complies with this set facilitates novices in the application of their procedural programming knowledge during program creation and (c) programming tools, declarative and procedural knowledge are independent components in learning to program. However, it was also concluded that the two knowledge types and a programming tool that highly complies with the set contribute significantly to novices’ programming performance. This study contributes to knowledge by theoretically identifying and empirically testing a set of design principles for educational programming software, and by producing and scientifically evaluating a programming tool as an embodiment of this set. Through this evaluation, the suggestion of Koios as a practically useful programming tool for novices seems to be well supported.
|
3 |
PROVIZ: an integrated graphical programming, visualization and scripting framework for WSNsKumbakonam Chandrasekar, Ramalingam 01 April 2013 (has links)
Wireless Sensor Networks (WSNs) are rapidly gaining popularity in various critical domains like health care, critical infrastructure, and climate monitoring, where application builders have diversified development needs. Independent of the functionalities provided by the WSN applications, many of the developers use visualization, simulation, and programming tools. However, these tools are designed as separate stand-alone applications, which force developers to use multiple tools. This situation often poses confusion and hampers an efficient development experience. To avoid the complexity of using multiple tools, a new, extensible, multi-platform, scalable, and open-source framework called PROVIZ is designed. PROVIZ is an integrated visualization and programming framework with the following features: PROVIZ 1) visualizes sensor nodes and WSN traffic by parsing the data received either from a packet sniffer (e.g., a sensor-based sniffer, or a commercial TI SmartRF 802.15.4 packet sniffer), or from a simulator (e.g., OMNeT); 2) visualizes a heterogeneous WSN consisting of different sensor nodes sending packets with different packet payload formats; and 3) provides a programming framework, which provides a graphical and script-based programming functionality, for developing WSN applications. Also, PROVIZ includes built-in extensible visual demo deployment capabilities that allow users to quickly craft network scenarios and share them with other users. Additionally, a secure and energy efficient wireless code dissemination protocol, named SIMAGE, was developed. SIMAGE is used by PROVIZ to wirelessly reprogram the sensor nodes. SIMAGE uses a link quality cognizant adaptive packet-sizing technique along with energy-efficient encryption protocols for secure and efficient code dissemination. In this thesis, the various features of PROVIZ's visualization and programming framework are explained, the functionality and performance of SIMAGE protocol is described, an example WSN security attack scenario is analyzed, and how PROVIZ can be used as a visual debugging tool to identify the security attack and aid in providing a software fix are discussed.
|
Page generated in 0.1082 seconds