A. Course
Title Introduction to Programming I
B. Semester
Credit Value 3 credits
C. Prerequisites CSCI 1101 or prior programming experience
D. Catalog
Description
An
introduction to computer programming for students who want to explore a
possible major in Computer Science. Topics include: Primitive data types,
evaluating expressions, functions,
selection, repetition, text files, and an introduction
to recursion.
E. General
Course Purpose
1) To provide the student an introduction to the
fundamentals of computer science and programming.
2) To provide ˝ of a first course in a two semester
sequence for transfer to a four year institution.
F. Course
Information
2. Degree for which Course is Intended AA AS in Computer
Science,
Transfer
in Computer/Information Sciences
Computer
Programming Certificate AAS
3. Program of
Study for which Course is Required Depends upon specific engineering area and transfer
program (i.e. May be required for some students and not for others – dependent
upon the area of further
study they will pursue.)
G. Learner Outcomes
1. At the
conclusion of the course, the student should be able to understand
and write computer programs employing::
a.
Basic input and output techniques by writing
interactive programs and formatting the information produced by the program.
b.
Formulating expressions for use in producing a
customer’s invoice.
c.
Selection
statements for use in all aspects of programming, finding the largest value,
error correction, etc.
d.
Repetition statements for use in all aspects of programming
such as, writing a user-interface, processing data from an input file to
produce meaningful reports, or writing a program to perform a simulation study
e. Strings-Utilizing
the built-in string class of the language for manipulation of text.
f.
Procedures,
functions and subprograms used in all aspects of programming, specifically in
writing programs utilizing top-down design, methods to be used by objects, and
to provide scalability of the program.
g.
Recursion-How
to accomplish a programming task without the use of an
repetition structure.
h.
Text file manipulation by processing data contained in a file and writing
the information to another file. In
addition, prepare the student for a possible career in compiler development by writing programs
to count the number of words, vowels, etc. in a text file. In addition, to prepare students for database
applications.
H. ARCC Guiding Principle(s) Satisfied
Identify the learner outcomes (from G) which relate to each of the guiding principles listed below or describe how the guiding principle(s) is/are used in this course.
I.
Identify the learner outcomes (from G) which relate
to each of the competencies listed below.
3. Learner Outcome
(Number - from G):
(Repeat
the above sequence as needed.)
1. Emphasis Area (Name):
2. Competency
(Letter):
3. Learner Outcome
(Number - from G):
1. Emphasis Area (Name):
2. Competency
(Letter):
3. Learner Outcome (Number -
from G):
1. Emphasis Area (Name):
2. Competency
(Letter):
3. Learner Outcome
(Number - from G):
1. Emphasis Area (Name):
2. Competency
(Letter):
3. Learner Outcome
(Number - from G):
J. Entry Level Skills/Knowledge
Choose: 1 (basic), 2 (pre-college), or 3 (college)
K. Major Areas of Course Content:
1. Usage of an object-oriented language (Java or C++)
a.
The syntax of the language will be explored and used in the
solution of several types of problems.
2.
Structured
programming concepts (sequential, selection, and iteration).
a.
Programs will
be written that involve assignment statements, alternative flow control, and
the repetition of several program
statements to solve an application problem. e.g. Given a list of values, find the largest,
smallest, mean, and calculate the standard deviation.
3.
Subprograms
and recursion.
a.
Usage of
recursion as a problem-solving tool for problems that can be solved by solving
a series of smaller problems of the same nature. Using functions to teach effective problem-solving
strategies by solving smaller problems first and then putting all of the pieces
together to solve the larger problem.
4.
File
manipulation
a.
Teach the
students to accept input from a file on the disk instead of from the keyboard, which
is called batch processing.
Additionally, teach the students some of the fundamentals of lexigraphical analysis by writing rudimentary parsers. e.g. Counting
words in a text file, where in terms of compiler construction would be called
tokens. Performing linear searches of
the file to respond to a user’s query or
perform elementary text processing functions like double spacing a file.
L. Outcomes Assessment:
1. Learner outcomes that will be assessed (from G): All
2. How information will be
collected to assess outcomes: Students will be assessed in a variety of ways
including, but not limited to: written homework assignments; programming
assignments with the laboratory portion of the course; programming assignments
outside of lab; periodic hour
exams; and a comprehensive final examination will be administered.
Transfer
institutions will be contacted and input regarding the preparation of
ARCC students at their institutions will be sought.
3. When information will be collected (i.e., each semester, yearly): Course – Each semester.
Transfer – Yearly contact will be
maintained with the (primary) institutions to which ARCC students
transfer. Verbal input and GPAs
will contribute to the assessment.
4. Measure(s) used to determine if an outcome has been achieved:
a.
Written exams
b.
Programming
assignments
c.
Final
examination
d.
Homework
assignments
e.
Class
discussion
f.
Laboratory
reports
g.
Transfer :GPAs
and verbal input from transfer institution “contacts”
5. Person/Group responsible for information collection: Course: Course instructor
Transfer:
Computer Science coordinator and all faculty teaching computer science
courses.
6. Person/Group responsible for reviewing the resulting data: Computer Science coordinator and all faculty
teaching computer science courses.
M. Procedure for Credit by Examination: This will be a two-step process:
1.
A
comprehensive examination will be administered
2. A programming project will be assigned that is commensurate with the level of expertise of an average student that has completed this course.
N. Proposed Implementation Date: Fall 2002
[VK1]If more than 5 areas, continue on new sheet