Dr. Blair Taylor | ||
Email: | btaylor@towson.edu | |
Web Page: | http://pages.towson.edu/btaylor/ | |
Office Phone: | 410-704-4560 | |
Office Hours: | TWR 11-12 (YR427) |
Email is the best way to contact me. Posting and answering questions on the Facebook Group: Taylor COSC175 Spring 2014 is encouraged. I am on campus most days. Stop by anytime, but email first, to be sure I am not in meetings.
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.
Upon successful completion of this course, students will be able to:
Understand and apply the software development process.
Understand that security has to be a consideration from the point of initial design and throughout the lifecycle of a product
Analyze problems and design structured solutions
Understand, create, and apply simple data types and arrays.
Identify common coding errors such as buffer overflow and integer error that lead to insecure programs
Create algorithmic solutions using basic control structures (sequence, decisions, loops) and functions.
Understand the importance of input validation and be able to write correct input validation code
Compile, execute, and run simple programs (in C++)
Understand the importance of secure and responsible programming.
Conduct a personal code review (focused on common coding errors) on a program component using a provided checklist
None
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.
An Introduction to Programming with C++ by Diane Zak,Thompson Course Technology, recommended but not required.
Wk |
Date |
Topic |
Text |
HW |
1 |
Tu: 1/28 W: 1/29 Th: 1/30 |
Course Overview ,
Introduction,
Software Security
Video,
SDLC Visual C++ Lab0a Programming Languages, Programming |
1 |
HW1
|
2 |
Tu: 2/4 W: 2/5 Th: 2/6 |
Analysis
- Defining the Problem
IPO
Exercises Lab1 |
2 |
Data HW *** |
3 |
Tu: 2/11 W: 2/12 Th: 2/13 |
sec. 001 Lab1 sec. 002 Variables Lab |
3 |
Ops HW |
4 |
Tu: 2/18 W: 2/19 Th: 2/20 |
survey Sec. 1: Variables Lab Int Error Security Injection Sec. 2: Ops Lab Int Error Security Injection Selection - if/else |
4 |
Data HW Due 2/19 |
|
Tu: 2/25 W: 2/26 Th: 2/27 |
Selection see video Selection 2 Ops HW Due Sec. 1: Ops Lab Sec. 2: Sel Lab 1 finish security injections Select. exercise Selection - switch |
5 |
Sel Hw |
6 |
Tu:
3/4 W: 3/5 Th: 3/6 |
Review
see video Test 1 Review Sec. 1: Sel Lab 1 Sec 2: Sel Lab2 Sel HW Due Test 1 |
6 | |
7 |
Tu: 3/11 W: 3/12 Th: 3/13 |
Loops
- while Loops
Sec. 1 Sel Lab2 Sec 2: Loop1 lab Loops - for, while cont'd Loop exercises |
7 |
Loops HW |
March 16-23 | Spring Break | |||
8 |
Tu:
3/25 W: 3/26 Th: 3/27 |
Loops - do while, nested
Sec 1: Loop1 lab Security Injection - Input Validation Sec 2: Loop2 Security Injection - Input Validation Loops |
8 | |
9 |
Tu:
4/1 W: 4/2 Th: 4/3 |
Files
Loops HW Due Sec 1: Loop2 Sec 2 : File Lab Loops Quiz Project Description |
||
10 |
Tu:
4/8 W: 4/9 Th: 4/10 |
Functions - void functions,
parameters
Sec 1: File Lab Sec 2: Function Lab1 value returning functions, pass by value, pass by reference |
14 |
Function HW |
11 |
Tu:
4/15 W: 4/16 Th: 4/17 |
Func Table
Func Exer1
Paramter Practice Project Proposal Due Function Lab2 Functions -solving a large problem Func Exer 3 |
10 |
|
12 |
Tu:
4/22 W: 4/23 Th: 4/24 |
Functions Quiz Catch up lab Arrays |
11 |
|
13 |
Tu:
4/29 W: 4/30 Th: 5/1 |
Array Exercises(.doc)
Array Lab 1 Two dimensional arrays |
Array HW |
|
14 |
Tu:
5/6 W: 5/7 Th: 5/8 |
Linear and Binary Search
Search Exercises
Array Quiz review Array Quiz |
12 | |
15 | Tu: 5/13 |
|
||
Final Exam: Fri. May 16 10:15 AM - 12:15 PM |
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 |
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
Additional Help and Open Lab
Changes to the Syllabus