|This is an archive of the Common Course Outlines prior to fall 2011. The current Common Course Outlines can be found at http://www.gpc.edu/programs/Common-Course-Outlines.|
|Course Title||Principles Of Computer Science I|
|Prerequisite(s)||CSCI 1300 and MATH 1111 or MATH 1113 or MATH 2431, each with a |
This course is an introduction to the fundamental principles of computer science. It emphasizes structured, top-down development and testing of computer programs. Major concepts include problem analysis, algorithm development, modular programming, software engineering, and good programming style using a fully capable modern programming language.
|Expected Educational Results|
As a result of completing this course, the student will be able to:
1. Analyze a problem and clearly define the available data, desired results, and appropriate process for obtaining that result.
2. Create a structured, top-down design, in algorithmic form, of a solution for said problem.
3. Construct a modular, well-structured program in a specified programming language from a top-down design.
4. Use sequential statements, including input, output, and assignment statements, in a program.
5. Use selection and repetition statements appropriately in a program.
6. Understand and demonstrate proper use of specific basic data types in a program.
7. Create and use routines, procedures and functions, appropriately in a program.
8. Create and use text files for input and output in a program.
9. Implement a simple abstract data type using the appropriate data constructs and routines.
10. Understand and demonstrate proper use of specific structured data types, including arrays, vectors and structures, in a program.
11. Use simple sorting and searching methods.
12. Demonstrate the correct function of a program by developing a test plan to verify correctness of said program.
13. Trace through and determine the output of a program containing any or all of the above constructs.
14. Using proper English, clearly and completely document a program, including internal comments and external documentation.
|General Education Outcomes|
I This course addresses the general education outcome relating to communications by providing additional support as follows:
1. Students develop their reading comprehension skills by reading the text and handout materials.
2. Students develop their listening skills through lecture and small group problem solving. Lecture material is presented that is not included in the text or handout material and is included as part of the tests or assignments.
3. Students develop their reading and writing skills through the use of problems and activities, including development of computer programs and documentation, developed specifically to enhance their understanding of computer science principles and programming language skills. Students provide written or oral solutions to these problems in either individual or group format. They must also answer short-answer type questions on course exams.
II This course addresses the general education outcome relating to problem-solving and critical thinking skills through programming assignments that take the student through the programming process from understanding the problem all the way to finalizing a correct program solution to the problem.
III This course addresses the general education outcomes relating to mathematical concept usage and scientific inquiry as follows:
1. Students apply mathematical concepts in the development of computer programs by creating mathematically based solutions to the assigned problems and communicating the results of those solutions to the program user.
2. Students apply the scientific method in the set-up and solution of the problems presented to illustrate computer-programming principles.
IV This course addresses the general education outcome relating to organization and analysis of information using a computer by using a modern, structured programming language in the solution of problems designed to illustrate the concepts and principles of computer programming.
ENTRY LEVEL COMPETENCIES
It is assumed that students entering this course have competency in computer theory and use at the level of CSCI 1401, as well as competency in mathematics at the level of MATH 1101 or MATH 1113.
) Overview of Computing and Programming
II) Problem Solving and Algorithm Development
III) Program Structure and Software Engineering Concepts
IV) Simple Data Types
V) Decision Statements and Repetition Structures
VI) Modular Programming
VII) Text files
VIII) Object-Oriented Paradigm
b) Abstract Data Types (ADT)
c) Structured Data Types
d) Function Templating
|Assessment of Outcome Objectives|
A. COURSE GRADE
Exams, assignments, and a final exam prepared by the individual will be used to determine the course grade. The course grade must weigh examinations for at least 50% of the grade and programming assignments for not more than 50% of the grade. Five to seven student programming projects must be assigned. Testing must consist of at least two one-hour examinations and a comprehensive final examination. The final examination must be weighted at between 25% and 35% of the course grade.
B. DEPARTMENTAL ASSESSMENT
CSCI 1301 and CSCI 1302 will be assessed together every five years. The assessment instrument will be determined by the CSCI course committee, and will consist of a common project and a set of free response questions that will be included as a portion of the final examination for all students taking the course.
A committee appointed by the Executive Committee of the Mathematics Academic Group will grade the assessment instrument.
USE OF ASSESSMENT FINDINGS
The CSCI Committee, or a special assessment committee appointed by the Academic Group, will analyze the results of the assessment and determine implications for curriculum changes. The committee will prepare a report for the Academic Group summarizing its finding.
Last Revised: Aug. 15, 2011