11,203 research outputs found
CS 141-01: Computer Programming - I
This course provides a general introduction to the fundamentals of computer programming. Examples from and applications to a broad range of problems are given. No prior knowledge of programming is assumed. The concepts covered will be applied to the Java programming language. Students must register for both lecture and one laboratory section. 4 credit hours. Prerequisite: MTH 127 (College Algebra) or equivalent
CS 141-01: Computer Programming - I
This course provides a general introduction to the fundamentals of computer programming. Examples from and applications to a broad range of problems are given. No prior knowledge of programming is assumed. The concepts covered will be applied to the Java programming language. Students must register for both lecture and one laboratory section. 4 credit hours. Prerequisite: MTH 127 (College Algebra) or equivalent
CS 141: Computer Programming I
This course provides a general introduction to the fundamentals of computer programming.Examples from and applications to a broad range of problems are given. No prior knowledge ofprogramming is assumed. The concepts covered will be applied to the Java programming language. (Students must register for both lecture and one laboratory section.
A Cooperative Development System for an Interactive Introductory Programming Course
We present a system for a cooperative development of computer programs that was created for the lab sessions of an introductory programming course at the University of Ljubljana, Slovenia. The system relieved the students from the tedious task of retyping programs developed by the teaching assistant and enabled them to cooperate with the teaching assistant in solving programming problems. We thus made the lab sessions more efficient and interactive and brought them closer to the spirit of active learning approaches
Recommended from our members
Using the Internet of Things to Teach Good Software Engineering Practice to High School Students
This paper describes a course to introduce high school students
to software engineering in practice using the Internet Of
Things (IoT). IoT devices allow students to get quick, visible
results without watering down technical aspects of
programming and networking. The course has three broad
goals: (1) to make software engineering fun and applicable,
with the aim of recruiting traditionally underrepresented
groups into computing; (2) to make young students begin to
approach problems with a design mindset; and (3) to show
students that computer science, generally, and software
engineering, specifically, is about much more than
programming. The course unfolds in three segments. The first
is a whirlwind introduction to a subset of IoT technologies.
Students complete a specific task (or set of tasks) using each
technology. This segment culminates in a âdo-it-yourselfâ
project, in which the students implement a simple IoT
application using their basic knowledge of the technologies.
The courseâs second segment introduces software engineering
practices, again primarily via hands-on practical tutorials. In
the third segment of the course, the students conceive of,
design, and implement a project that uses the technologies
introduced in the first segment, all while being attentive to the
good software engineering practices acquired in the second
segment. In addition to presenting the course curriculum, the
paper also discusses a first offering of the course in a threeweek
summer intensive program in 2017, including
assessments done to evaluate the curriculum.Cockrell School of Engineerin
MatlabTA: A Style Critiquer For Novice Engineering Students
Novice programmers, considered to be those who have yet to understand the fundamentals of programming, exist in both engineering and computing fields. Within computing, various resources exist to help novice programmers understand fundamentals and style guidelines such as WebTA, a code critique program that gives Java students feedback about their error and style issues. There is, however, a gap in automated code critique for MATLAB, a programming language that is popular in the engineering community. When it comes to MATLAB, there are not many programs that help novices understand their errors, and even fewer that help them understand style guidelines. To help assist these engineering novices, I created a program called MatlabTA. Based on feedback from Engineering Fundamentals instructors on the most common errors they encounter in student code, MatlabTA exists to give novices more intuitive feedback for a few of the most common MATLAB errors, along with providing them different style guidelines for different MATLAB antipatterns such as inconsistent tabbing and function output variable matching. This report will provide an overview of the process in developing MatlabTA, along with examples of the different outputs the application produces
(MU-CTL-01-12) Towards Model Driven Game Engineering in SimSYS: Requirements for the Agile Software Development Process Game
Software Engineering (SE) and Systems Engineering (Sys) are knowledge intensive, specialized, rapidly changing disciplines; their educational infrastructure faces significant challenges including the need to rapidly, widely, and cost effectively introduce new or revised course material; encourage the broad participation of students; address changing student motivations and attitudes; support undergraduate, graduate and lifelong learning; and incorporate the skills needed by industry. Games have a reputation for being fun and engaging; more importantly immersive, requiring deep thinking and complex problem solving. We believe educational games are essential in the next generation of e-learning tools. An extensible, freely available, engaging, problem-based game platform that provides students with an interactive simulated experience closely resembling the activities performed in a (real) industry development project would transform the SE/Sys education infrastructure.
Our goal is to extend the state-of-the-art research in SE/Sys education by investigating a game development platform (GDP) from an interdisciplinary perspective (education, game research, and software/systems engineering). A meta-model has been proposed to provide a rigourous foundation that integrates the three disciplines. The GDP is intended to support the semi-automated development of collections of scripted games and their execution, where each game embodies a specific set of learning objectives. The games are scripted using a template based approach. The templates integrate three approaches: use cases; storyboards; and state machines (timed, concurrent, hierarchical state machines). The specification templates capture the structure of the game (Game, Acts, Scenes, Screens, Challenges), storyline, characters (player, non-player, external), graphics, music/sound effects, rules, and so on. The instantiated templates are (manually) transformed into XML game scripts that can be loaded into the SimSYS Game Play Engine. As a game is played, the game play events are logged; they are analyzed to automatically assess a playerâs accomplishments and automatically adapt the game play script.
Currently, we are manually defining a collection of games. The games are being used to ensure the GDP is flexible and reliable (i.e., the prototype can load and correctly run a variety of game scripts), the ontology is comprehensive, and the templates assist in defining well-organized, modular game scripts. In this report, we present the initial part of an Agile Software Development Process game (Act I, Scenes 1 and 2) that embodies learning objectives related to SE fundamentals (requirements, architecture, testing, process); planning with Gantt charts; working with budgets; and selecting a team for an agile development project. A student player is rewarded in the game by getting hired, scoring points, or getting promoted to lead a project. The game has a variety of settings including a classroom, job fair, and a work environment with meeting rooms, cubicles, and a water cooler station. The main non-player characters include a teacher, boss, and an evil peer.
In the future, semi-automated support for creating new game scripts will be explored using a wizard interface. The templates will be formally defined, supporting automated transformation into XML game scripts that can be loaded into the SimSYS Game Engine. We also plan to explore transforming the requirements into a notation that can be imported into a commercial tool that supports Statechart simulation
- âŠ