522,996 research outputs found
Teaching Software Development to Non-Software Engineering Students
This paper argues that although the object-oriented programming (OOP) paradigm is appropriate for students taking programming modules on Higher Education (HE) software engineering course, this paradigm is not as relevant for students from other courses who study programming modules. It is also asserts that adopting another paradigm when teaching programming to non-software engineering students need not prevent the encouragement of good software engineering practices The paper discusses the software development model, procedures, techniques and programming language that the author requires non-software engineering students to employ when developing their
software. This discussion also includes consideration of implementation issues in an educational context. The paper concludes that his alternative approach has been successfully implemented, that it requires the student to adopt a rigorous approach to development and that it encourages best software engineering practices. The conclusions also note that delivering this alternative offers the opportunity to include good educational practice, such as role-play
Race Matters: Unequal Opportunities in Education
Summarizes the consequences of racial disparities in education and the barriers to equal opportunity, including educational segregation and unequal resources, opportunities, and discipline. Calls for equity in funding, programming, and teacher quality
Frame-Based Editing: Easing the Transition from Blocks to Text-Based Programming
Block-based programming systems, such as Scratch or Alice, are the most popular environments for introducing young children to programming. However, mastery of text-based programming continues to be the educational goal for stu- dents who continue to program into their teenage years and beyond. Transitioning across the significant gap between the two editing styles presents a difficult challenge in school- level teaching of programming. We propose a new style of program manipulation to bridge the gap: frame-based edit- ing. Frame-based editing has the resistance to errors and approachability of block-based programming while retaining the flexibility and more conventional programming seman- tics of text-based programming languages. In this paper, we analyse the issues involved in the transition from blocks to text and argue that they can be overcome by using frame- based editing as an intermediate step. A design and imple- mentation of a frame-based editor is provided
Adding traceability to an educational IDE : a thesis presented in partial fulfilment of the requirements for the Master degree in Computer Science at Massey University, Manawatu, New Zealand
High dropout and failure rate in introductory programming courses indicate
the need to improve programming comprehension of novice learners.
Some of educational tools have successfully used game environments
to motivate students. Our approach is based on a novel type of notional
machine which can facilitate programming comprehension in the context of
turn-based games. The first aim of this project is to design a layered notional
machine that is reversible. This type of notional machine provides
bi-directional traceability and supports multiple layers of abstraction. The
second aim of this project is to explore the feasibility and in particular to
evaluate the performance of using the traceability in a web-based environment.
To achieve these aims, we implement this type of notional machine
through instrumentation and investigate the capture of the entire execution
state of a program. However, capturing the entire execution state produces
a large amount of tracing data that raises scalability issues. Therefore, several
encoding and compression methods are proposed to minimise the server
work-load. A proof-of-concept implementation which based on the SoGaCo
educational web IDE is presented. The evaluation of the educational benefits
and end user studies are outside the scope of this thesis
The System Kato: Detecting Cases of Plagiarism for Answer-Set Programs
Plagiarism detection is a growing need among educational institutions and
solutions for different purposes exist. An important field in this direction is
detecting cases of source-code plagiarism. In this paper, we present the tool
Kato for supporting the detection of this kind of plagiarism in the area of
answer-set programming (ASP). Currently, the tool is implemented for DLV
programs but it is designed to handle other logic-programming dialects as well.
We review the basic features of Kato, introduce its theoretical underpinnings,
and discuss an application of Kato for plagiarism detection in the context of
courses on logic programming at the Vienna University of Technology
Feeding a Population: Agricultural Education Priorities in Haitian History
The nation of Haiti has experienced a long history of poverty and of tests to its economic development. Among its priorities has been the establishment of an effective educational system. While educational standards remain high, the area of agricultural education—necessary for Haiti’s economy as well as nutritional subsistence—has met with unique challenges. This paper examines analyses and programming policies of the past in order to illuminate contemporary circumstances
Teaching Software Engineering through Robotics
This paper presents a newly-developed robotics programming course and reports
the initial results of software engineering education in robotics context.
Robotics programming, as a multidisciplinary course, puts equal emphasis on
software engineering and robotics. It teaches students proper software
engineering -- in particular, modularity and documentation -- by having them
implement four core robotics algorithms for an educational robot. To evaluate
the effect of software engineering education in robotics context, we analyze
pre- and post-class survey data and the four assignments our students completed
for the course. The analysis suggests that the students acquired an
understanding of software engineering techniques and principles
Using web-based peer assessment in fostering deep learning in computer programming
Active learning is considered by many academics as an important and effective learning strategy. Students can improve the quality of their work by developing their higher cognitive skills through reflection on their own ideas and practice of analytic and evaluative skills. Peer assessment is one of the successful approaches which can be used to enhance this deep learning. In this paper we discuss a novel web-based peer assessment system to support computer programming courses. We discuss the educational rational for the system, and the deep learning theory, report on its deployment on large programming modules. The preliminary results indicate that the system has successfully helped students to develop their higher cognitive skills in learning computer programming
Defining a Medium: The Educational Aspirations for Early Radio
This essay examines the attempts by many writers to steer the burgeoning U.S. radio industry towards educational uses and programming in the 1920s. At the same time that commercial radio began to take shape, several competing and seemingly incompatible visions of the airwaves emerged—one of which privileged the use of radio for educational purposes. Using discourse from trade journals, general interest magazines, and newspapers, this article explores the calls for educational programming amid the rapidly expanding and consolidating commercial radio industry
- …
