COURSE INFORMATION: COURSE SYLLABUS
Course Code: SDF101 – Fundamentals of Programming
College:
Department: College of Computer Studies
Degree Program: CS, IT and IS Department
Faculty Member: BSCS, BSIT and BSIS
Consultation Period: Larmie T. Santos-Feliscuzo
Contact Information: 1:00 – 2:00 PM MWF
345-6789
Course Description: This is an introductory course in programming which aims to develop skills and concepts that are essential to
good programming practice and problem solving. It covers fundamental programming concepts of primitive
data types, arrays, simple I/O, conditional statements, iterative structures and functions. It also includes the
use of testing and debugging techniques. Fundamental to the software development practice is the ability to
develop programs that uses appropriate constructs aside from achieving desired results to solve computing
problems. This course also serves as a preparation for intermediate programming.
At the end of the course, the students are expected to be able to make judicious choices of programming
constructs to solve computing problems using appropriate coding standards.
COURSE OUTCOMES (CO):
On the completion of the course, student is expected to be able to do the following:
Graduate Outcomes Course Outcomes
Apply knowledge of computing Design and implement a program, based on a given specification, to
solve a computing problem with proper code organization and
fundamentals, knowledge of a computing functional abstraction by applying their knowledge and judicious
selection of
specialization, and mathematics, science,
CO1 (1) primitive data types and arrays
and domain knowledge appropriate for the I (2) basic computation
computing specialization to the abstraction (3) simple I/O
(4) conditional and iterative structures
and conceptualization of computing (5) built-in functions, and
(6) user-defined functions with appropriate parameters.
models from defined problems and
Adapt an appropriate coding standard with proper documentation in order
requirements. CO2 to come up with a readable, understandable and maintainable program
An ability to apply mathematical code.
Select and apply appropriate debugging and testing techniques to
foundations, algorithmic principles and CO3 ensure the correctness of a program and compliance to given
specifications, to solve a computing problem.
computer science theory in the modeling
and design of computer-based systems in
a way that demonstrates comprehension of
the trade-offs involved in design choices
Create, select, adapt and apply appropriate
techniques, resources and modern computing
tools to complex computing activities, with an I
understanding of the limitations to
accomplish a common goal
LEARNING OUTPUTS (LO):
As evidence of attaining the above learning outcomes, the student has to do and submit the following:
Course
Learning Output Description and other Details Outcomes it
represents
LO1 Machine Project The machine project will involve a real life computing case which will assess how
the student will make judicious choices of programming constructs to use to address CO1, CO2, CO3
requirements needed to solve the computing problem.
page 1
OBE - COURSE SYLLABUS
RUBRIC TO ASSESS LEARNING OUTPUTS (R):
OTHER REQUIREMENTS AND ASSESSMENTS (AA)
Aside from the final output, the student will be assessed at other times during the term by the following:
AA1 Assessment Activity Description and other Details Course Outcomes it represents
AA2
AA12 MP Machine Problem CO1, CO2, CO3
AA13 ME Midterm Exam CO1, CO2, CO3
AA14 FE Final Exam CO1, CO2, CO3
LQ1 Long Quiz 1 CO1, CO2, CO3
LQ2 Long Quiz 2 CO1, CO2, CO3
GRADING SYSTEM:
The final grade in this course will be composed of the following items and their weights in the final grade computation:
Assessment Grade Source (Score or Rubric Grade) Percentage of Final Grade
Item
Rubric for Programs and Rubric for Coding Style 25
AA1 Exam Score 15
AA2 Exam Score 30
AA3 Quiz Score 10
AA4 Quiz Score 10
AA5 Rubric for the Project 10
LO1
Passing Grade 60%
Passing Grade conditions: The students should have taken all the major exams and
implemented the project.
LEARNING PLAN:
In order to achieve the outcomes of this course, learners will go through this learning plan
Course Intended Learning Topics Weeks Learning Assessment Activities References
Outcome Outcomes (ILO) 1 Activities and
Program structure Use of simple output Resources
CO1 Write a simple I/O statements Lecture function for printing
program using an Discussion problems like a bio- 1,2
input and output Oral data.
statements. Recitation
Hands-on
Laboratory
Identify the basic Identifiers and Lecture Use of simple input and 3,4
components of a keywords Discussion output function for a
program including Data types Oral simple question and
CO1 symbols, identifiers, Declarations 2 Recitation answer program that
and constants. Symbolic constants Hands-on simply outputs back the
Laboratory answer to the question.
CO1 Identify the need for Variable 3 Lecture Implement a program 1,5
a variable and select Declaration
the appropriate Arithmetic Discussion that would solve a
primitive data Expressions
representation. Oral simple arithmetic
page 2 Recitation problem using
OBE - COURSE SYLLABUS
Hands-on operators and variables
Course Intended Learning Topics Weeks Learning Assessment Activities References
Outcome Outcomes (ILO) Activities and
like computing for the Resources
Laboratory perimeter of a
rectangle. 6,7,8
Solve simple Sequential Control 4 Lecture Long Quiz
problems using the Structure Discussion
fundamental syntax Coding Guidelines Oral
and use of proper Recitation
CO1, CO2 style and Hands-on
documentation. Laboratory
Write programs that Simple if statement 5 Lecture Implement a program 1,2
use selection (if, Logical Operators
switch, conditional switch-case Discussion that can be solved by a
operator).
Oral single conditional
CO1, CO2 Recitation statement like
Hands-on computing for a bill
Laboratory discount or an interest
rate.
Write programs that Multiple If Lecture Implement cascading 3
uses nested statements
conditional Discussion conditional statements
statements.
Oral for problems specifying
CO1, CO2 6 Recitation conditions with value
Group activity ranges like letter grade
Hands-on equivalent given score
Laboratory range.
Test and debug Testing and Lecture Midterm Exam 4
codes. Debugging
Techniques Discussion Machine Problem
CO1,
CO2, CO3 Oral
7 Recitation
Brainstorming
Hands-on
Laboratory
Write programs that Loops and Iteration 8, 9 Lecture Implement an iterative 5,8
use iteration. While loop 10, 11 Discussion program like computing 4
Do while loop Oral for a factorial of a 3
CO1, For loop 12, 13 Recitation number and printing the
CO2, CO3 Brainstorming values given a number
Hands-on series.
Write programs that One-dimensional Laboratory
use one-dimensional array Implement code using
arrays. Lecture one-dimensional arrays.
CO1, Discussion Long Quiz
CO2, CO3 Oral
Recitation Implement code using
Write programs that Built-in Functions Brainstorming built-in functions for
use built-in for Math and String Hands-on Math and String using
functions. Laboratory appropriate coding
standards.
CO1, Lecture
CO2, CO3 Discussion
Oral
Recitation
Brainstorming
Hands-on
Laboratory
page 3
OBE - COURSE SYLLABUS
Course Intended Learning Topics Weeks Learning Assessment Activities References
Outcome Outcomes (ILO) 14, 15, Activities and
Function Definition Implement a user- Resources
CO1, Write user-defined Parameter Passing 16 Lecture defined function that
CO2, CO3 functions. Discussion involves solving a 2
17 Oral sequential problem,
Recitation conditional statements
Brainstorming and iteration.
Hands-on
Choose appropriate Review Activity for Laboratory Start of Machine Project
control-flow previous Topics
CO1, structure Lecture
CO2, CO3 (sequential, Review Activity for Discussion
conditional or previous Topics Oral
CO1, iteration constructs) Recitation
CO2, CO3 for a given Brainstorming
programming task. Hands-on
Laboratory
Apply the
techniques of Lecture Submission of Machine
decomposition to Project
break a program into 18 Discussion Final Exam
smaller pieces. Oral Hands-
on Laboratory
REFERENCES:
Books:
1 Bronson, Gary J. C++ Programming: Principles and Practices for Scientists and Engineers. Cengage Learning, 2013.
2 Forouzan, Behrouz A. Foundations of C Programming. Cengage Learning, 2011.
3 Malik, D.S. C++ Programming: Problem Analysis to Program Design. Cengage Learning, 2011.
4 Scholl, T., Nugent, G. C++ Programming Problem Analysis to Program Design. Cengage Learning, 2011
Internet sources:
5 www.tutorialspoint.com/cprogramming/
6 www.cprogramming.com/tutorial/c-tutorial.html
7 www.iu.hio.no/~mark/CTutorial/CTutorial.html
8 http://fresh2refresh.com/c-tutorial-for-beginners
CLASSROOM POLICIES:
Students should be able to attend 80% of the required hours for the course. Cheating is not allowed.
page 4
OBE - COURSE SYLLABUS