Course Syllabus COSC 1436 - Programming Fundamentals I

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3
At a glance
Powered by AI
The key takeaways from the syllabus are that this course introduces programming fundamentals using C++ and covers topics such as data types, control structures, functions, and arrays. Students will complete assignments after each chapter and two exams. Their grade will be calculated based on assignments, a final project, and exams.

The main topics covered in this course include data representation, different programming languages, fundamental programming concepts like variables and input/output, logic concepts, algorithms, selection and repetition structures, functions, arrays, and debugging.

Student work is assessed through assignments completed after each chapter, a comprehensive final programming project, and two exams. Assignments are 30% of the grade, the project is 20%, and exams make up the remaining 50%.

Course Syllabus

COSC 1436 – Programming Fundamentals I

Catalog Description: This course introduces the fundamental concepts of structured programming, and
provides a comprehensive introduction to programming for computer science and technology majors.
Topics include software development methodology, data types, control structures, functions, arrays, and
the mechanics of running, testing, and debugging. This course assumes computer literacy. (This course
is included in the Field of Study Curriculum for Computer Science.)

Lecture Hours = 3, Lab Hours = 3


Prerequisites: COSC 1301 or BCIS 1305
Semester Credit Hours: 4
Lecture Hours per Week: 3
Lab Hours per Week: 3
Contact Hours per Semester: 96
State Approval Code: 11.0201.55 07

Core Components and Related College Student Learning Outcomes


This course counts as part of the academic requirements of the Panola College Core Curriculum and an
Associate of Arts or Associate of Science degree. Yes No: If no, skip to Instructional Goals

Instructional Goals and Purpose


Panola College's instructional goals include 1) creating an academic atmosphere in which students may
develop their intellects and skills and 2) providing courses so students may receive a certificate/an associate
degree or transfer to a senior institution that offers baccalaureate degrees.
The purpose of this course is to fulfill one of the academic requirements in the Computer Science field of
study for students planning to transfer to a senior institution that offers baccalaureate degree in Computer
Science and to introduce students to develop computer programs.

Learning Outcomes

Upon successful completion of this course, students will:


1. Describe how data are represented, manipulated, and stored in a computer.
2. Categorize different programming languages and their uses.
3. Understand and use the fundamental concepts of data types, structured programming, algorithmic
design, and user interface design.
4. Demonstrate a fundamental understanding of software development methodologies, including
modular design, pseudo code, flowcharting, structure charts, data types, control structures, functions,
and arrays.
5. Develop projects that utilize logical algorithms from specifications and requirements statements.
6. Demonstrate appropriate design, coding, testing, and documenting of computer programs that
implement project specifications and requirements.
7. Apply computer programming concepts to new problems or situations.

1
Course Content
Students in all sections of this course will learn the following content:
1. Describe data representation, manipulation, and storage in a computer.
2. Categorize different programming languages and their uses.
3. Create programs using basic elements of C++ including variables and I/O statements
4. Code arithmetic computations
5. Develop programs with simple and compound conditions,
6. Develop algorithms and plan and design program logic with pseudocode
7. Develop programs using selection structures including if and switch statements
8. Write a program using of top-down design of algorithms and structured programming.
9. Use repetition structures in programs including do and while loops
10. Create programs using functions.
11. Write modules that perform basic manipulations with one-dimensional arrays
12. Code statements iterating over sequences
13. Understand variable scope and be able to use variables appropriately in programs.
14. Create software using problem solving skills to design, code and test programs.
15. Demonstrate the use of debugging functions available in software development tools.
16. Run, test and debug programs.
17. Demonstrate the use of debugging functions in software development tools.

Methods of Instruction/Course Format/Delivery

Methods of Instruction include student use of an online web site: “MyProgrammingLab”. The site includes an e-text
book: Introduction to Programming with C++, 3rd Edition, Pearson Publishing, 2014, by Y. Daniel Liang and
innovative interactive online teaching software: “MyProgrammingLab”. MyProgrammingLab provides learning
opportunities to including short activities, projects, and quizzes as they work through each chapter

The book uses a pedagogy that works well with our students.
• Each chapter introduces new material subdivided into short sections.
o Sections are a “divide and conquer” approach to presenting information that might
be overwhelming if presented in a lengthier form.
▪ Each section briefly, but thoroughly, explains a single topic thus
simplifying comprehension.
o Understanding of each section is reinforced with the use of an innovative interactive
online teaching software, MyProgrammingLab. MyProgrammingLab provides learn
opportunities to complete short activities, projects, or quizzes as they work through
each chapter. MyProgrammingLab student activities in graded immediately and
students have access to activity hints and solutions.
o End of chapter programming projects provide feedback to students that they are ready
for the next chapter of the text.
• The chapters follow a pattern of building programming knowledge by beginning with an
introduction to basic computer concepts followed by basic programming concepts.
• After the computer and programming concepts are taught, students are introduced to logic
concepts and how programs may be designed using algorithms or flowcharts before program
code is written.
• The course formats include traditional (face-to-face), hybrid, and online. Students in classes of
any format will have access to this course via Canvas. Resources provided through Canvas
include: email allowing communication with all class members and the instructor, project data
files, installation file for compiler installation, overview of the course, a manual for compiler
installation and use, exams, a variety of exercises including programming projects.
2
Assessment

Canvas and MyProgrammingLab provide assignment submission features. After the instructor or
MyProgrammingLab has graded the assignment, the student will be able to view his or her grade
in Canvas or MyProgrammingLab. All exams will be online multiple-choice or programming
exams.
Student needing instructor help with programming projects may email the source code to the
instructor. They receive a response indicating what is causing the problem.

Course Grade

The grade for this course will be based on the following items assigned during the semester and used to
calculate the student’s final grade:

ASSIGNMENTS
Students work through each required chapter in sequence. At the end of each chapter, they complete
a programming project demonstrating their knowledge of the programming concepts.
Program source code is submitted according to the schedule presented in Canvas using an online
drop box in the “Assignments” link of Canvas.

EXAMS
There will be two assessments to verify that you have the comprehensive knowledge required to
produce your portfolio. You will demonstrate this knowledge by conducting an interactive presentation of
a comprehensive programming project subject to peer and instructor evaluation.

Grade Calculation
The grading calculation course is as follows:
• Assignments – 30%
• Comprehensive programming project – 20%
• Exams – 50%
All grades including a mid-semester and final grade will be posted to My Grades in Canvas.

Texts, Materials, and Supplies


• Required: Introduction to Programming with C++, 3rd Edition by Y. Daniel Liang, 2014, Pearson
• Required: “MyProgrammingLab” Access Code
• Access to a computer and the Internet.
• Student data files and a C++ software development environment are provided with the textbook.
• Method
Required of saving
Readings: source code:
Introduction USB Drive, Cloud
to Programming with Drive, etc.Edition by Y. Daniel Liang
C++, 3rd

Recommended Readings:
• Programming and c++ websites listed in Canvas.
• Search engine (such as Google) research on various topics, terms, functions, etc. to augment e-text
material. This research often reveals useful alternative explanations and solutions.
Other:
• Following link: http://www.panola.edu/elearning/testing.html
• If any student in this class has special classroom or testing needs because of a physical learning or
emotional condition, please contact the ADA Student Coordinator in Support Services located in the
Administration Building or go to http://www.panola.edu/student-success/disability-support-services/
for more information.
• Withdrawing from a course is the student’s responsibility. Students who do not attend class and who
do not withdraw will receive the grade earned for the course.

You might also like