CS 1410: Intro to Object-Oriented Programming Sections 030 and 040

Similar documents
Course Content Concepts

Course Syllabus for Math

Foothill College Summer 2016

MATH 1A: Calculus I Sec 01 Winter 2017 Room E31 MTWThF 8:30-9:20AM

Class Meeting Time and Place: Section 3: MTWF10:00-10:50 TILT 221

Accounting 312: Fundamentals of Managerial Accounting Syllabus Spring Brown

Economics 201 Principles of Microeconomics Fall 2010 MWF 10:00 10:50am 160 Bryan Building

Spring 2014 SYLLABUS Michigan State University STT 430: Probability and Statistics for Engineering

Course Syllabus Advanced-Intermediate Grammar ESOL 0352

Scottsdale Community College Spring 2016 CIS190 Intro to LANs CIS105 or permission of Instructor

ASTR 102: Introduction to Astronomy: Stars, Galaxies, and Cosmology

COURSE WEBSITE:

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS

ECO 3101: Intermediate Microeconomics

ACCT 100 Introduction to Accounting Course Syllabus Course # on T Th 12:30 1:45 Spring, 2016: Debra L. Schmidt-Johnson, CPA

General Physics I Class Syllabus

Beginning and Intermediate Algebra, by Elayn Martin-Gay, Second Custom Edition for Los Angeles Mission College. ISBN 13:

Speak Up 2012 Grades 9 12

University of Massachusetts Lowell Graduate School of Education Program Evaluation Spring Online

COMMUNICATIONS FOR THIS ONLINE COURSE:

Office Hours: Mon & Fri 10:00-12:00. Course Description

Biology 10 - Introduction to the Principles of Biology Spring 2017

DIGITAL GAMING AND SIMULATION Course Syllabus Advanced Game Programming GAME 2374

Financial Accounting Concepts and Research

Required Text: Oltmanns, T. & Emery, R. (2014). Abnormal Psychology (8th Edition) ISBN-13: ISBN-10:

Syllabus Foundations of Finance Summer 2014 FINC-UB

International Business BADM 455, Section 2 Spring 2008

SOUTHERN MAINE COMMUNITY COLLEGE South Portland, Maine 04106

Instructor Dr. Kimberly D. Schurmeier

CS 100: Principles of Computing

INTERMEDIATE ALGEBRA Course Syllabus

MASTER OF EDUCATION DEGREE: PHYSICAL EDUCATION GRADUATE MANUAL

Physics XL 6B Reg# # Units: 5. Office Hour: Tuesday 5 pm to 7:30 pm; Wednesday 5 pm to 6:15 pm

PHY2048 Syllabus - Physics with Calculus 1 Fall 2014

SOUTHWEST COLLEGE Department of Mathematics

INTRODUCTION TO HEALTH PROFESSIONS HHS CREDITS FALL 2012 SYLLABUS

Professors will not accept Extra Credit work nor should students ask a professor to make Extra Credit assignments.

Instructor Experience and Qualifications Professor of Business at NDNU; Over twenty-five years of experience in teaching undergraduate students.

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

COURSE DESCRIPTION PREREQUISITE COURSE PURPOSE

San José State University Department of Psychology PSYC , Human Learning, Spring 2017

Accounting 380K.6 Accounting and Control in Nonprofit Organizations (#02705) Spring 2013 Professors Michael H. Granof and Gretchen Charrier

Chemistry 106 Chemistry for Health Professions Online Fall 2015

PSCH 312: Social Psychology

Class Mondays & Wednesdays 11:00 am - 12:15 pm Rowe 161. Office Mondays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

Intensive English Program Southwest College

ASTRONOMY 2801A: Stars, Galaxies & Cosmology : Fall term

EDUC-E328 Science in the Elementary Schools

Introduction to Forensic Drug Chemistry

COMS 622 Course Syllabus. Note:

State University of New York at Buffalo INTRODUCTION TO STATISTICS PSC 408 Fall 2015 M,W,F 1-1:50 NSC 210

ACCOUNTING FOR MANAGERS BU-5190-OL Syllabus

MMC 6949 Professional Internship Fall 2016 University of Florida, Online Master of Arts in Mass Communication 3 Credit Hours

Biology 1 General Biology, Lecture Sections: 47231, and Fall 2017

ECO 2013: PRINCIPLES OF MACROECONOMICS Spring 2017

Required Materials: The Elements of Design, Third Edition; Poppy Evans & Mark A. Thomas; ISBN GB+ flash/jump drive

Class Numbers: & Personal Financial Management. Sections: RVCC & RVDC. Summer 2008 FIN Fully Online

STA2023 Introduction to Statistics (Hybrid) Spring 2013

MGMT 479 (Hybrid) Strategic Management

BA 130 Introduction to International Business

ECON492 Senior Capstone Seminar: Cost-Benefit and Local Economic Policy Analysis Fall 2017 Instructor: Dr. Anita Alves Pena

Computer Architecture CSC

FIN 571 International Business Finance

Navigating the PhD Options in CMS

FINANCE 3320 Financial Management Syllabus May-Term 2016 *

AST Introduction to Solar Systems Astronomy

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

Business Computer Applications CGS 1100 Course Syllabus. Course Title: Course / Prefix Number CGS Business Computer Applications

Spring 2015 Natural Science I: Quarks to Cosmos CORE-UA 209. SYLLABUS and COURSE INFORMATION.

Course Policies and Syllabus BUL3130 The Legal, Ethical, and Social Aspects of Business Syllabus Spring A 2017 ONLINE

Marketing Management MBA 706 Mondays 2:00-4:50

ADMN-1311: MicroSoft Word I ( Online Fall 2017 )

CIS Introduction to Digital Forensics 12:30pm--1:50pm, Tuesday/Thursday, SERC 206, Fall 2015

ACCOUNTING FOR MANAGERS BU-5190-AU7 Syllabus

CS 101 Computer Science I Fall Instructor Muller. Syllabus

University of Waterloo School of Accountancy. AFM 102: Introductory Management Accounting. Fall Term 2004: Section 4

SYLLABUS: RURAL SOCIOLOGY 1500 INTRODUCTION TO RURAL SOCIOLOGY SPRING 2017

Syllabus: CS 377 Communication and Ethical Issues in Computing 3 Credit Hours Prerequisite: CS 251, Data Structures Fall 2015

Department of Anthropology ANTH 1027A/001: Introduction to Linguistics Dr. Olga Kharytonava Course Outline Fall 2017

I. PREREQUISITE For information regarding prerequisites for this course, please refer to the Academic Course Catalog.

Syllabus: PHI 2010, Introduction to Philosophy

*In Ancient Greek: *In English: micro = small macro = large economia = management of the household or family

Phys4051: Methods of Experimental Physics I

IST 440, Section 004: Technology Integration and Problem-Solving Spring 2017 Mon, Wed, & Fri 12:20-1:10pm Room IST 202

Strategic Management (MBA 800-AE) Fall 2010

San José State University

Course Syllabus. Alternatively, a student can schedule an appointment by .

BUS Computer Concepts and Applications for Business Fall 2012

Maintaining Resilience in Teaching: Navigating Common Core and More Online Participant Syllabus

CLASS EXPECTATIONS Respect yourself, the teacher & others 2. Put forth your best effort at all times Be prepared for class each day

Class Tuesdays & Thursdays 12:30-1:45 pm Friday 107. Office Tuesdays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

Syllabus - ESET 369 Embedded Systems Software, Fall 2016

BIOS 104 Biology for Non-Science Majors Spring 2016 CRN Course Syllabus

UNDERGRADUATE SEMINAR

COMM370, Social Media Advertising Fall 2017

Social Media Journalism J336F Unique ID CMA Fall 2012

Texas A&M University - Central Texas PSYK EDUCATIONAL PSYCHOLOGY INSTRUCTOR AND CONTACT INFORMATION

CHMB16H3 TECHNIQUES IN ANALYTICAL CHEMISTRY

This course has been proposed to fulfill the Individuals, Institutions, and Cultures Level 1 pillar.

INTRODUCTION TO CULTURAL ANTHROPOLOGY ANT 2410 FALL 2015

Transcription:

CS 1410: Intro to Object-Oriented Programming Sections 030 and 040 Important Information Administrative Details and Syllabus Fall 2017 Class Website Lectures Labs (attendance required) Instructor Textbook (highly recommended) Lab supplies Canvas (available through CIS) Mondays and Wednesdays 8:05-9:25a in L105 WEB Fridays 8:35-9:25a, 9:40-10:30a, 10:45-11:35a, and 11:50a-12:40p in L124 WEB D. Erin Parker, 3144 MEB, parker@cs.utah.edu C++ for Everyone by Cay Horstmann 2nd edition, ISBN: 978-0-470-92713-7 ARDX v1.3 Experimentation Kit for Arduino (Uno) Detailed requirements on class website, order ASAP Test Dates Mark your calendar tests may not be missed! Test 1 Monday, September 25 (during class) Test 2 Monday, November 6 (during class) Final exam Friday, December 15 8-10a Final course grade Programming assignments and Arduino projects 45%, Written homework and labs 15%, Test 1 and Test 2 25%, Final exam 15%, Failing test/exam average failing course grade Getting help The class website has details on how to see TAs and the instructor outside of class, as well as how to post questions to the class forum and email to the course staff. Course Description Catalog description. CS 1410: Introduction to Object-Oriented Programing is the second course required for students intending to major in computer science or computer engineering. The course introduces the engineering and mathematical skills required to effectively program computers, as well as the range of issues confronted by computer scientists. A major theme of the course is the role of procedural and data abstraction in decomposing programs into manageable pieces. The course also introduces the concepts central to object-oriented programming (OOP). 1

Students will complete extensive programming exercises that involve the application of elementary software engineering techniques. Better description. This course is a different approach to CS 1410. CS 1410-030 (or 040) covers the same concepts as other CS 1410 sections, but the emphasis is on programming in C/C++ for embedded systems. Embedded systems are simply computers that are part of a larger device, such as the computers found in TV sets, traffic light controllers, microwaves, portable music players, modems, printers, automobiles, cooperative robots, or even the Mars rover. In this course, students explore the basics of programming in C++ and quickly move to more advanced C++ topics and object-oriented programming. Students use their C++ knowledge to build small hardware devices that are controlled by an Arduino prototyping board. The capstone of this course is an Arduino programming project during the last several weeks of the semester. In this course, students also explore the roles of abstraction, algorithms, and problem solving in the design of larger software projects. Lastly, students learn about complexity analysis and software engineering practices that will aid them as they move on to more advanced studies in computer science. Fair warning: The pacing in this class is brisk. Students should be aware that not all of the topics they need to know will be covered during lectures. Students should spend a considerable amount of time reading, studying, and experimenting outside of lecture. Students taking this course should have completed (or currently be taking) a calculus course. CS 1030 (formerly 1400) is the prerequisite for CS 1410. Students who enter this class without taking CS 1030 must be aware that they are responsible for independently learning any material they missed. Students who complete this course are ready for further study in computer science or computer engineering (CS 2420). Course Materials Website. The class website is a Canvas course available through CIS. It is always under development, with updates to the class schedule, lecture notes, laboratory exercises, assignment specifications, and more, occurring regularly. It is critical that students become familiar with the class website right away and plan to visit it several times a week, at a minimum. Textbook. Regular reading assignments are made from C++ for Everyone (Horstmann, ISBN: 978-0-470-92713-7). This textbook is an introductory approach to C++ and perfect for beginners. Advanced students may prefer a different C++ reference. Note: If you do not buy this book, it is your responsibility to locate a different C/C++ reference. Pencil/pen and paper. Students should bring a pencil/pen and paper to every lecture and lab session. In-class problem solving, in particular writing source code by hand, is used regularly to prepare students for tests. Laptops, tablets, phones, and other devices are not permitted during tests; likewise, they may not be used for in-class problem solving exercises. Lecture notes. The instructor will often make use of typed notes, sample source code, and other materials during lecture. These items will be posted on the class website following the lecture; 2

however, such posted items may not represent completely the material covered in class. Students who must miss class are strongly encouraged to check with a classmate. Laboratory practice. Lab sections will meet on Fridays at the times listed in L124 WEB. Students must attend the lab section for which they are registered, unless prior arrangements are made with the instructor. New students should create a CADE lab account at https://webhandin. eng.utah.edu/cade. Laboratory equipment. To complete the hardware-based lab exercises and assignments, each student must have an Arduino lab kit. CS 1410 uses the ARDX v1.3 Experimentation Kit for Arduino (Uno R3). Instructions for purchasing this kit are at the end of this document, as well as posted on the class website. All students must have a kit for use in the second lab session on September 1. Order your kit right away! Student Evaluation Programming assignments and Arduino projects. The instructions for each assignment and its due date are posted on the class website at least one week before it must be submitted. Assignments are submitted online via the submission tool located beneath the instructions for each assignment. As strange as it may seem, some students have trouble submitting assignments electronically. It is the student s responsibility to ensure the successful and timely submission of each programming assignment start early and follow the instructions carefully. Corrupted or missing files will not be grounds for extensions. Double-check your submissions, and save a digital copy of all of your work. No assignments will be accepted late, except in the case of a documented medical emergency. Written homework and lab. Problems and questions are given each week to test knowledge not related to programming or to prepare students for the weeks lab activity. Written homework must be completed before lab print it, complete it, and bring it to lab to serve as your lab sheet. Each week, the score earned for the written homework and the score earned for the lab exercise are recorded as a combined score. No written homework is accepted late, nor a lab session made up, except in the case of a documented medical emergency. Tests and final exam. Tests will be given during class meetings on September 25 and November 6. The final exam is cumulative and will take place December 15 8-10a. No test or the final exam may be taken at a different time for any reason other than a documented medical emergency. Final course grade. If the average score for Test 1, Test 2, and Final exam is 65% or lower, the final course grade will be no higher than a D+. Otherwise, the final course grade will be based on programming assignments and Arduino projects (45%), written homework and labs (15%), Test 1 and Test 2 (25%), and Final exam (15%). Regrades. Students who wish to appeal a score on an assignment, a written homework, or a test must do so within one week of receiving the score and use the Regrade Request Form posted on the class website. Drop scores. Students may miss a deadline or a lab session for a reason that is not granted an exception. Therefore, to allow for such an occurrence, the lowest score earned on a programming assignment and the lowest score on a written homework / lab are dropped from the record of each 3

student at the end of the semester. Students should plan to use the drop scores judiciously there is only one for a programming assignment and one for a written homework / lab. No test or final exam scores are dropped. Letter grades. letter grade. 93 X 100 90 X < 93 A A- The following table is used to associate numerical scores with the corresponding 87 X < 90 B+ 77 X < 80 C+ 67 X < 70 D+ 83 X < 87 B 73 X < 77 C 63 X < 67 D X < 60 E 80 X < 83 B- 70 X < 73 C- 60 X < 63 D- How to Approach This Class Beginning students are often surprised by the amount of human effort that has to go into designing, writing, and testing a program. Complaints from students about the amount of time required by introductory computer programming courses are universal. You should expect to spend three hours outside of class for every hour that you spend in class. In other words, you should expect to spend twelve hours per week reading, studying, and developing programs. Many of you will spend more than that. Please keep this in mind when setting up your schedule for the semester! In addition, take note of the following suggestions: Work near other students. Students who work at home alone are at a huge disadvantage on the assignments. Working in the lab allows you to ask other students and TAs for help understanding the material. Be careful, though, to respect the rules regarding plagiarism (given at the end of this document). Use Google or some other search engine to find information you do not have. Again, respect the rules regarding plagiarism and do not copy solutions from the web. Ask questions. If you find yourself stuck on a problem for more than thirty minutes, ask the teaching staff for help instead of spending hours searching for a solution. (Searching for hours for an answer cannot be credited as hard work it is wasted time.) Give yourself time to think about the material. Plan on working on the assignments a little each day, and ask questions when you get stuck. This is an efficient way to reduce time spent and maximize learning. Do not plan on solving assignments all at once it takes approximately three times as long for most students to push through the work in a single session. Getting Help To get help understanding course material, students may see the Teaching Assistants during TA Consulting Hours, see the instructor during Office Hours, post a question to the Discussion Forum, or send email to the course staff at teach-cs1410-030@lists.utah.edu. See the How to Get Help link on the class website for details. 4

Behavior in the Classroom All students are expected to maintain professional behavior, according to the University of Utah Student Code at www.regulations.utah.edu/academics/guides/students/studentrights.html. Students should read the Code carefully and know that they are responsible for the content. According to Faculty Rules and Regulations, it is the faculty responsibility to enforce responsible classroom behaviors, beginning with verbal warnings and progressing to dismissal from class and a failing grade. Students have the right to appeal such action to the Student Behavior Committee. Students are expected to engage with the instructor and classmates during class meetings. Students are permitted to use a laptop or mobile device to take notes and/or as clickers. Use of a laptop or mobile device for any other purpose is not permitted, and students who do so will be asked to leave the classroom. 5