Mt. San Jacinto College Computer Information Systems
Minimize header.

CSIS 111B: Fundamentals of Computer Programming

No Text Book

Syllabus

Course Description

This course will introduce students with no prior programming experience to the fundamentals of computer programming. These are foundation concepts for nearly all modern programming languages including Visual Basic, C++, C# and Java. Topics include sequence- repetition- and selection control structures. Advance topics include arrays- file I/O- and an introduction to the principles of object-oriented programming. One or more high-level programming languages will be used to reinforce the general concepts presented in this course.

Course Learning Objectives

Upon completion of the course, the student will be able to do the following:

  • Describe and apply the steps in the program development cycle.
  • Demonstrate mastery of program notation concepts through construction of simple algorithms, flowcharts, and corresponding pseudo-code.
  • Contrast and compare high-level programming languages as to suitability to a task.
  • Demonstrate the proper use of programming syntax that includes the effective and appropriate use of variables, expressions, and functions.
  • Apply appropriate Sequential, Repetition, and Selection control structures to solve specific programming problems.
  • Demonstrate the role of arrays and File I/O through a language specific application of these techniques.

Student Learning Outcomes

  • Develop a program that correctly implements the for, while, and do while looping structure
  • Code and implement the if, if else, conditional, and switch decision constructs.
  • Develop algorithms that implement arrays for storage and data retrieval.
  • Demonstrate the use of functions for modular programming.
  • Code a complex (operations do not share the same level of precedence) algebraic expression in the target language.


Class, Reading, and Assignment Due Date Schedule

Week Reading Assignment Due Date
1 Aug. 14 Introduction: Explaining the Internet Authoring and Programming tracks
Getting Started: Installing, Learning and Using Visual Studio
   
1 Aug. 16 Lesson 1 - Stored Program Concept: History of Programming, Compilers and Interpreters, High-Level vs. Low-level Languages, Procedural vs. Object-oriented Programming    
2 Aug. 21 Lesson 2 - Structured Design Concepts: System Development Life Cycle, Software Testing    
2 Aug. 23 Lesson 3 - Anatomy of a Computer Program: Algorithms, Flowcharting, pseudo-code, decision tables    
3 Aug. 28 Lesson 4 - Integrated Development Environments (IDEs): Visual Studio, writing your first program "Hello World" Assignment 1 Aug. 30
3 Aug. 30 Lesson 5 - Simple Data Types, Operators, and Expressions: Constants, Variables, Data Type, Arithmetic, Boolean, and Relational Operators    
4 Sep. 4 Lesson 6 - Data Structures: Arrays, Queues, Stacks, Linked Lists Assignment 2 Sep. 6
4 Sep. 6 Lesson 7 - Sorting Algorithms: Bubble Sort, Quick Sort    
5 Sep. 11 Midterm Assignment Midterm Assignment Sep. 11
5 Sep. 13 Lesson 8 - Control Structures: Repetition Structures    
6 Sep. 18 Lesson 9 - Control Structures (cont.): Decision Structures    
6 Sep. 20 Lesson 10 - Modular Programming: User-defined functions, methods, and procedures Assignment 3 Sep. 25
7 Sep. 25 Lesson 11 - File I/O: Reading and Writing Files    
7 Sep. 27 Lesson 12- Exception Handling: Try, Catch, Finally Blocks Assignment 4 Oct. 2.
8 Oct. 2 Lesson 13 - Software Development Kits (SDKs): APIs, Libraries, and Frameworks    
8 Oct. 4 Final Assignment Final Assignment Oct. 4

Course Grading

4 coding assignments X 100 points each = 400 total possible assignment points: There are four assignments that you will need to complete as you progress through the course tutorials.

2 coding exams X 300 points each = 600 possible exam points: There are two comprhensive coding exams where you will combine skills already learned to a new coding problem.

Grading Scale: A > 89%, B > 79%, C > 69%, D > 59%, F < 60%.

Total possible points for this course = 1,000.

Table of Contents

Late Assignments

No Extensions

All assignments must be completed by 11:59 P.M. on the due date listed for the assignment under the Due Date column in the Course Schedule section of the Syllabus. NO LATE ASSIGNMENTS WILL BE ACCEPTED without extenuating circumstances. “I had to work,” “I was sick,” or “I didn’t understand the instructions” are NOT extenuating circumstances. Hospitalization or death of an immediate family member are, but will require supporting evidence. This does not exempt you from completing any assignment which MUST be submitted by the last day of the class.

Note: Due Dates for all Assignments, Exams and/or Quizzes are listed in the Syllabus for this class.

Table of Contents

Student Drop Policy

Any student who fails to complete three or more assignments, exams or quizzes may be dropped from the course by the instructor.

Table of Contents

Instructor's Regular Effective Contact Policy

For quickest response to questions or problems regarding this course, students should always send me an email using the format specified in the CIS EMAIL POLICY to the email address listed in the instructor box at the top of the Syllabus.

When emailing me during my stated online office hours, which can be found by clicking on the “Hours” link within the Instructor's box of this course, I will usually respond within the same day - depending on my student case load for that particular day. Students are always responded to on a first come first served basis.

When emailing me outside of my posted office hours, when posting to a discussion thread, or when submitting an assignment, students can expect that they will receive an appropriate response, when required, within 48 hours of the post or submission (Monday thru Thursday at 5:00 P.M.). Emails received after Thursday at 5:00 P.M. will be responded to on the following Monday.

To schedule a face-to-face meeting during the posted face-to-face office hours or to request synchronous contact via: virtual office, by telephone, or IM (Instant Messaging); please email your request so that we can schedule a mutually convenient meeting time.

From time to time, as it is deemed necessary, contact will be initiated with you, individually or jointly, via: email, Canvas Announcements, or Discussion Board posts to help keep you informed and up-to-date regarding your progress or status in this course. Be sure that you read all Announcements I post on Canvas and check your MSJC email on a daily basis. Please click "Reply" when responding to an email I send you so that my email message is included in your email response. That way I can easily keep track of what our discussion thread pertains to.

Table of Contents

Plagiarism, Cheating, and Stealing Policies (Academic Integrity)

  • Any student who plagiarizes the work of any other person will be given a zero on any and all assignments where plagiarism has been utilized.
  • Any student caught cheating on a quiz or final exam will receive a zero for quiz or final exam.
  • Any student caught removing items from the classroom including but not limited to: lab materials and tools, without authorization, will be dropped from the course and given an automatic "F".

For more details on plagiarism and cheating, please review the MSJC Student Conduct Web Resources page.

Table of Contents

Learning Environment

All students are entitled to an environment that encourages learning. If a student behaves in a manner that negatively affects other class members, he or she is guilty of disruptive behavior. Such behavior will be addressed in a manner consistent with school policy. Cell phones and other personal electronic devices MUST be turned off in class. Also, no food or drinks are allowed in the classroom. Tape recording in class is prohibited unless specific permission is granted by instructor.

As a courtesy, please do not talk while the instructor is talking to the class or when a student is asking a question which pertains to the class. Please do not use classroom computers for personal use or other classwork—computers are to be used to follow in-class lectures, take tests, or as otherwise directed by your instructor. Refrain from “surfing” the Web, reading e-mail, or playing computer games during class. You are encouraged to work with other students to solve problems outside of class; however, you must complete your own work.

Table of Contents

Need Tutoring?

Check out the MSJC Learning Resource Centers! Academic Support is available for all students through the services provided in the Learning Resource Centers on each campus. Inquire at each center regarding hours of operations and specific subjects for which tutors are available. In addition, some subject area specialist tutors are available for courses through specific departments. Ask your instructor if specialized tutors are available for your individual course.

Tutoring for some Business & CIS classes including Microsoft Office applications tutoring will be available in the Business/CIS computer lab in Room 956. Lab/tutor schedules can be found at http://www.msjc.edu/BUSCIS-SupportMVC. Tutors change each semester, please check with the Business/CIS computer lab to learn what subjects have available tutors for the current semester.

Table of Contents

Disability Statement

Mt. San Jacinto College abides by the American with Disabilities Act and Section 504 of the Rehabilitation Act of 1973 that prohibits federal and state agencies or programs from discriminating against qualified individuals with disabilities. Students in this course who have a documented disability, that limits a major life activity which may have some impact on your work in this class and for which you may require accommodations should meet with a  Disabled Student Program and Services (DSPS) counselor as soon as possible.

Table of Contents