CSCI 1133 -- New Course

Wed Jan 30 10:06:53 2013

Approvals Received:
Department
on 01-29-13
by Mary Freppert
(freppert@umn.edu)
Approvals Pending: College/Dean  > Catalog
Effective Status: Active
Effective Term: 1139 - Fall 2013
Course: CSCI 1133
Institution:
Campus:
UMNTC - Twin Cities
UMNTC - Twin Cities
Career: UGRD
College: TIOT - College of Science and Engineering
Department: 11108 - Computer Science & Eng
General
Course Title Short: Intro to Programming Concepts
Course Title Long: Introduction to Computing and Programming Concepts
Max-Min Credits
for Course:
4.0 to 4.0 credit(s)
Catalog
Description:
Fundamental programming concepts using the Python language. Problem solving skills, recursion, and object-oriented programming. Algorithm development techniques. Use of abstractions and modularity. Data structures and abstract data types. Students develop substantial programs to solve real-world problems. Integral weekly lab.
Print in Catalog?: Yes
CCE Catalog
Description:
<no text provided>
Grading Basis: Stdnt Opt
Topics Course: No
Honors Course: No
Online Course: No
Instructor
Contact Hours:
5.0 hours per week
Years most
frequently offered:
Every academic year
Term(s) most
frequently offered:
Fall, Spring, Summer
Component 1: LAB (no final exam)
Component 2: LEC (with final exam)
Auto-Enroll
Course:
Yes
Graded
Component:
LAB
Academic
Progress Units:
Not allowed to bypass limits.
4.0 credit(s)
Financial Aid
Progress Units:
Not allowed to bypass limits.
4.0 credit(s)
Repetition of
Course:
Repetition not allowed.
Course
Prerequisites
for Catalog:
&MATH 1271 or &MATH 1371 or &MATH 1571H or #
Course
Equivalency:
No course equivalencies
Consent
Requirement:
No required consent
Enforced
Prerequisites:
(course-based or
non-course-based)
No prerequisites
Editor Comments: <no text provided>
Proposal Changes: <no text provided>
History Information: Jan 2013 - new course
Faculty
Sponsor Name:
Maria Gini
Faculty
Sponsor E-mail Address:
gini@cs.umn.edu
Student Learning Outcomes
Student Learning Outcomes: * Student in the course:

- Can identify, define, and solve problems

Please explain briefly how this outcome will be addressed in the course. Give brief examples of class work related to the outcome.

CSci 1133 is focused on computational problem solving. Specifically,the course labs, homework assignments, and exams all ask the students to solve various problems. For example, for a given problem students must engage in problem-solving tasks such as clarifying any ambiguous aspects of the problem definition, decomposing the problem into subproblems, deciding which computer-related problem solving strategies (such as recursion) might be useful in solving the problem, constructing a solution, implementing the solution as a computer procedure, and verifying that the solution is correct (including modifying it when it is not).

How will you assess the students' learning related to this outcome? Give brief examples of how class work related to the outcome will be evaluated.

This SLO will be assessed through labs, homework, exams, and in-class exercises. Each of these types of student work is problem-based. They will often focus on well-defined problems students need to solve; however, they will also involve some open-ended problems where students need first to identify, define, and/or clarify what the problem is before solving it.

Liberal Education
Requirement
this course fulfills:
None
Other requirement
this course fulfills:
None
Criteria for
Core Courses:
Describe how the course meets the specific bullet points for the proposed core requirement. Give concrete and detailed examples for the course syllabus, detailed outline, laboratory material, student projects, or other instructional materials or method.

Core courses must meet the following requirements:

  • They explicitly help students understand what liberal education is, how the content and the substance of this course enhance a liberal education, and what this means for them as students and as citizens.
  • They employ teaching and learning strategies that engage students with doing the work of the field, not just reading about it.
  • They include small group experiences (such as discussion sections or labs) and use writing as appropriate to the discipline to help students learn and reflect on their learning.
  • They do not (except in rare and clearly justified cases) have prerequisites beyond the University's entrance requirements.
  • They are offered on a regular schedule.
  • They are taught by regular faculty or under exceptional circumstances by instructors on continuing appointments. Departments proposing instructors other than regular faculty must provide documentation of how such instructors will be trained and supervised to ensure consistency and continuity in courses.

<no text provided>
Criteria for
Theme Courses:
Describe how the course meets the specific bullet points for the proposed theme requirement. Give concrete and detailed examples for the course syllabus, detailed outline, laboratory material, student projects, or other instructional materials or methods.

Theme courses have the common goal of cultivating in students a number of habits of mind:
  • thinking ethically about important challenges facing our society and world;
  • reflecting on the shared sense of responsibility required to build and maintain community;
  • connecting knowledge and practice;
  • fostering a stronger sense of our roles as historical agents.


<no text provided>
Writing Intensive
Propose this course
as Writing Intensive
curriculum:
No
Question 1 (see CWB Requirement 1): How do writing assignments and writing instruction further the learning objectives of this course and how is writing integrated into the course? Note that the syllabus must reflect the critical role that writing plays in the course.

<no text provided>
Question 2 (see CWB Requirement 2): What types of writing (e.g., research papers, problem sets, presentations, technical documents, lab reports, essays, journaling etc.) will be assigned? Explain how these assignments meet the requirement that writing be a significant part of the course work, including details about multi-authored assignments, if any. Include the required length for each writing assignment and demonstrate how the minimum word count (or its equivalent) for finished writing will be met.

<no text provided>
Question 3 (see CWB Requirement 3): How will students' final course grade depend on their writing performance? What percentage of the course grade will depend on the quality and level of the student's writing compared to the percentage of the grade that depends on the course content? Note that this information must also be on the syllabus.

<no text provided>
Question 4 (see CWB Requirement 4): Indicate which assignment(s) students will be required to revise and resubmit after feedback from the instructor. Indicate who will be providing the feedback. Include an example of the assignment instructions you are likely to use for this assignment or assignments.

<no text provided>
Question 5 (see CWB Requirement 5): What types of writing instruction will be experienced by students? How much class time will be devoted to explicit writing instruction and at what points in the semester? What types of writing support and resources will be provided to students?

<no text provided>
Question 6 (see CWB Requirement 6): If teaching assistants will participate in writing assessment and writing instruction, explain how will they be trained (e.g. in how to review, grade and respond to student writing) and how will they be supervised. If the course is taught in multiple sections with multiple faculty (e.g. a capstone directed studies course), explain how every faculty mentor will ensure that their students will receive a writing intensive experience.

<no text provided>
Course Syllabus
Course Syllabus: For new courses and courses in which changes in content and/or description and/or credits are proposed, please provide a syllabus that includes the following information: course goals and description; format;structure of the course (proposed number of instructor contact hours per week, student workload effort per week, etc.); topics to be covered; scope and nature of assigned readings (text, authors, frequency, amount per week); required course assignments; nature of any student projects; and how students will be evaluated. The University "Syllabi Policy" can be found here

The University policy on credits is found under Section 4A of "Standards for Semester Conversion" found here. Course syllabus information will be retained in this system until new syllabus information is entered with the next major course modification. This course syllabus information may not correspond to the course as offered in a particular semester.

(Please limit text to about 12 pages. Text copied and pasted from other sources will not retain formatting and special characters might not copy properly.)


Sample course syllabus

CSCI 1133 - Introduction to Computing and Programming Concepts

3 hours of lecture per week.  2 hours of lab per week.

CSci 1133 is one of the entry points into the computer science major. Students should take it in their freshman year. It is one of the courses required for admission to the computer science major.

CSci 1133 does not assume any previous programming knowledge; however, it does have a co-requisite of Calculus I. This means you should either have completed Calculus I successfully, or should be taking Calculus I. Some material from Calculus I, such as differentiating polynomials, may be used in 1133; moreover, the mathematical and logical reasoning skills used in Calculus I also play a heavy role in this class.

CSci 1133 offers an introduction to the fundamental principles of programming and to different programming paradigms, with emphasis on the design of abstract data types and object-oriented programming.  Specifically the course covers:
* The concept and properties of algorithms;
* The role of algorithms in the problem-solving process;
* Fundamental design concepts and principles (abstraction, program decomposition, encapsulation and information hiding, separation of behavior and implementation);
* Fundamental data types and structures (numbers, strings, tuples, lists,dictionaries) and abstract data types (stack, queue, binary tree);
* Strategies for choosing the appropriate data structure.

Upon successful completion of the course students should be able to:
1. explain what a computational process is and be able to express computational processes in the Python programming language.
2. trace the execution of a variety of code segments and explain their computations.
3. explain and use basic principles of program design, such as abstraction to hide implementation details, and problem decomposition to control the intellectual complexity of the problem.
4. use the Python language to implement, test, and debug algorithms for solving simple problems using strings, lists, stacks, and dictionairies.
5. explain what an abstract data type is, how to create new abstract data types, and how to express them in Python.
6. design appropriate data structures and algorithms to solve a given problem,
7. compare and contrast the costs and benefits of dynamic and static data structure implementations.  
8. implement a coherent abstract data type, with loose coupling between components and behaviors.

Grading:
15% In-class Exercises
6% Quizzes
12% Midterm Exam 1
12% Midterm Exam 2
20% Final
25% Labs
10% Homeworks

Using the above weights, a total of 90% and up will earn you some level of A, 80% and up at least some level of B, 70% and up at least some level of C, 60% and up at least a D.

Class Webpage: All future handouts, assignments, announcements, and any additional material will be available through the 1133 class web page in the directory http://www.cselabs.umn.edu/classes/

Labs: Weekly labs include a variety of problems designed to help you acquire programming skills in the Python language and to develop good software design practices. The labs will also expose you to interesting problems and will give you a sense of the breadth of applications of computing. Labs will be graded on correctness, completeness, and style. Correctness and completeness refer to how well the program works. Style includes good design, readability (indentations, descriptive names for variables and procedures, and appropriate use of blank spaces), and useful comments. Testing your program for correctness is very important and you are expected to submit your own test cases along with the results. You should include test cases that verify where your code works as well as cases that show where it fails.

Scholastic Conduct: Although you are free to discuss assignments with others, the work you submit for grading must represent your own efforts only. Exams are closed book and note and are to be completed using only your own knowledge of the course material. The experience gained from the labs will be very helpful for the exams and future labs may build on previous ones, so put in the effort needed to fully understand the solutions. Cheating on quizzes or exams is a serious offense, and will be dealt with as such. Additionally, labs are done in groups of two, but collaboration with others outside your group of two is prohibited. Homework assignments are individual efforts. You may discuss (in a general way) labs and homework problems with others, but you may not collaborate by writing code or specific solutions with others (with the exception of your lab partner in the case of labs). Copying other's answers, or letting another person copy your answers (either intentionally or as a result of negligence) is a serious situation and can result in failing the course. For further information on academic misconduct please see http://www-users.cs.umn.edu/~barry/intro/acad-conduct.html. If you have any
questions about what is and is not allowable in this class, please ask the course instructor.

Incompletes: Incompletes will be given only in very rare instances when an unforeseeable event causes a student who has completed all the coursework to date to be unable to complete a small portion of the work (typically the final assignment or exam). Incompletes will not be awarded for foreseeable events including a heavy course load or poorer than-expected performance. Verifiable documentation must
be provided for the incomplete to be granted, and arrangements for the incomplete should be made as soon as such an event is apparent.
Strategic Objectives & Consultation
Name of Department Chair
Approver:
<no text provided>
Strategic Objectives -
Curricular Objectives:
How does adding this course improve the overall curricular objectives ofthe unit?

<no text provided>
Strategic Objectives - Core
Curriculum:
Does the unit consider this course to be part of its core curriculum?

<no text provided>
Strategic Objectives -
Consultation with Other
Units:
In order to prevent course overlap and to inform other departments of new curriculum, circulate proposal to chairs in relevant units and follow-up with direct consultation. Please summarize response from units consulted and include correspondence. By consultation with other units, the information about a new course is more widely disseminated and can have a positive impact on enrollments. The consultation can be as simple as an email to the department chair informing them of the course and asking for any feedback from the faculty.

<no text provided>