COSC175
Fall 2016

Table of Contents

Faculty Contact Information

 

Course Description

 

Course Objectives

 

Course Prerequisites

 

Course Attendance & Participation Policy

 

Software Requirements

Required Course Materials

 

Course Schedule and Assignments

 

Grading and Exam Policy

 

Other Policies and Procedures

 

Faculty Contact Information

Dr. Blair Taylor

 

 

Email:

 

btaylor@towson.edu

Web Page:

 

http:/tigerweb.towson.edu/btaylor/

Office Phone:

 

410-704-4560

Office Hours:

 

TWR 10-11 (YR427)

Email is the best way to contact me. Posting and answering questions on the  Facebook Group: Taylor COSC175 Fall 2016 is encouraged. I am on campus most days. Stop by anytime, but email first, to be sure I am not in meetings.

Return to Table of Contents

Course Description

This is an introductory course in structured programming logic. Students will learn to analyze problems; define data using simple data types and arrays; and create algorithmic solutions using basic control structures (sequence, selections, loops) and functions.  Successful completion of this course will satisfy the programming prerequisite for COSC236.

In this course, you will learn to systematically break down a problem into manageable parts; plan and design logical solutions; and write effective, structured, and well-documented instructions. Emphasis will be on problem-solving approaches (algorithms) and the fundamental concepts and programming techniques common to modern computer languages including variable assignment, expressions, input/output statements, loops, if-then-else and case constructs, functions, arrays, etc. While C++ will be used to build working programs, the concepts learned in this course are applicable to multiple modern programming languages.

Return to Table of Contents

Course Objectives

Upon successful completion of this course, students will be able to:

1.    Understand and apply the software development process.

2.    Understand that security has to be a consideration from the point of initial design and throughout the lifecycle of a product

3.    Analyze problems and design structured solutions

4.    Understand, create, and apply simple data types and arrays.

5.    Identify common coding errors such as buffer overflow and integer error that lead to insecure programs 

6.    Create algorithmic solutions using basic control structures (sequence, decisions, loops) and functions.

7.    Understand the importance of input validation and be able to write correct input validation code

8.    Compile, execute, and run simple programs (in C++)

9.    Understand the importance of secure and responsible programming.

10.Conduct a personal code review (focused on common coding errors) on a program component using a provided checklist

Return to Table of Contents

Course Prerequisites

None

Return to Table of Contents

Course Attendance and Participation Policy

Student Attendance will be taken each day. It is the student’s responsibility to make up missed work.

Attendance is required and necessary for successful completion of this class.  If you must miss a class, please email me, but please contact another student to find out what you have missed.

Students should not attend classes or other university events from the onset of flu-like symptoms until at least 24 hours after the fever subsides without the use of fever reducing medications. Such absences will be considered excused absences; however, students are responsible for the material covered during the period of their absence.

Effective Spring 2013, the following attendance policy has been established for COSC175, COSC236, and COSC237:

 

1.    Students are expected to come to class on time and prepared.

2.    Attendance is recorded at every class session.

3.    Your 3rd and each subsequent unexcused absence will lower your grade by 5%.

4.    The equivalent of two weeks' worth of unexcused absences will result in an automatic F. No exceptions.

 

It is policy of the university to excuse the absences of students for the following reasons:

1.      Illness or injury when the student is unable to attend class

2.      Religious observance where the nature of the observance prevents the student from attending class

3.      Participation in university activities at the request of university authorities

4.      Compelling verifiable circumstances beyond the control of the student

 

Student Participation: Active participation is expected and encouraged.


Return to Table of Contents

Software Requirements

·      Netbeans will be used in the lab. Netbeans cheat sheet is here.

·      We recommend the Cloud9 development environment, a free online environment, for use outside of lab, see here.

·      SPLASH students will use Cloud9.

·      Submit all homework and labs in Microsoft Word format using the submit feature in Blackboard.

Return to Table of Contents

Required Course Materials

An Introduction to Programming with C++ by Diane Zak,Thompson Course Technology, recommended but not required.

Return to Table of Contents

Tentative Course Schedule

Wk

Date

Topic

Videos

Text

HW

1

Tu: 8/30

W:  8/31

Th: 9/1

Course Overview, Introduction, SDLC, Programming Languages, Programming

C++     Lab0a     

Analysis - Defining the Problem  

Intro - Part1

 

Intro - Part2 

1

HW1

2

Tu: 9/6
 W: 9/7

Th: 9/8

IPO Exercises

Lab 1
Data  Representation, Numbering Systems     HW 1 Due

IPO Charts


Data 1

2

 

 

Data HW ***

3

Tu: 9/13
 W: 9/14
Th:
9/15

Data Types   Exercises 
Variables Lab  
Watch Operators Video                                         Data Hw Due

Data 2

Operators

3


Ops HW

4

Tu: 9/20
 W: 9/21
Th: 9/22

Operators, arithmetic & logical           Algorithms  operator exercises 
Ops Lab     Security Injection - Integer Error
Selection  - if/else                                                      Ops HW Due

Ops 2

Selection 1

4

5

Tu: 9/27
 W: 9/28
Th: 9/29

Watch Selection 2 video  
Sel Lab 1  finish security injection
Selection - switch

Selection 2


Selection 3

5

Sel Hw

6

Tu: 10/4
 W: 10/5
Th:
10/6

Select. exercise  Test 1 Sample Test

Sel Lab2                                                                       Sel HW Due
Test 1

Test Review

6

 

7

Tu: 10/11

 W: 10/12
Th: 10/13

Loops - while Loops     

Loop1 lab       Security Injection - Input validation 
Loops - for, while cont'd Loop exercises    

Loops

Loops 2

7

Loops HW

8

Tu: 10/18
 W: 10/19
Th: 10/20

Loops - do while, nested   

Loop2 
Loops

Loops 2a

Loops 3

8

 

9

Tu: 10/25
 W: 10/26
Th: 10/27

Files   
File Lab   
                                                                         Loops HW Due

Loops Quiz      Project Description

Files

 

 

10

Tu: 11/1
 W: 11/2
Th: 11/3

Watch Func 1 Video  Functions - void functions, parameters       
Function Lab1  
value returning functions, pass by value, pass by reference   

Func 1

Func 2

14

Function HW

11

Tu: 11/8
 W: 11/9
Th: 11/10

Func Table   Func Exer1    Parameter Practice  Project Proposal Due
Function Lab2
Functions -solving a large problem Func Exer 2
Solution to First Problem  

Func 3

Func 4

9

10

 

12

Tu: 11/15
 W: 11/16
Th: 11/17

 Function HW due

Functions Quiz
Arrays 



Arrays 1

11

13

Tu: 11/22
 W: 11/23

Th: 11/24

Array Exercises(.doc)  Array Lab 1   

Thanksgiving holiday

 

 

Arrays 2

 

Array HW

14

Tu: 11/29

W: 11/30
Th: 12/1

Two dimensional arrays
Array 2   Security Injection - Buffer Overflow    Array Hw Due  
Linear and Binary Search        Search Exercises      Array Quiz review 

Projects

12

 

15

Tu: 12/6

W: 12/7

Th: 12/8

Array Quiz

Grade Calc   Review

Final Project Due

 

 

 

                     Final Exam: Thursday Dec. 15 12:30 PM - 2:30 PM

 

Return to Table of Contents

Grading and Exam Policy

Assessment

Homework & Labs & Project

 250 (25%)

Test1

200 (20%)

Three quizzes

300 (30%)

Final Exam

250 (25%)

Total

1000

 

 

Grading Scale

Grade

Percentage

A

93-100+%

A-

90-92.99%

B+

87-89.99%

B

83-86.99%

B-

80-82.99%

C+

77-79.99%

C

70-76.99%

D+

67-69.99%

D

60-66.99%

F

Below 60

Return to Table of Contents

 Other Policies and Procedures

Special Needs - Students having special needs as defined by the Americans with Disabilities Act should:

Academic Honesty

Copyright

Withdrawals: The withdrawal date can be found at http://www.towson.edu/registrar/calendars/

Accessing Blackboard

Facebook

Additional Help and Open Lab

Changes to the Syllabus

Return to Table of Contents