Common Course Outline                                         Course Prefix and Number:  CSCI 1102       


 


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

            1.   Hours per Week                        hours

                  a.   Classroom                           3 hours

                  b.   Laboratory                    0.00 hours

                  c.   Clinical                         0.00 hours

                  d.   Other (describe)                 

 

            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.

            1.   Clear Thinking                                      1

            2.   Effective Communication                      1

            3.   Accepting Diversity                              

 

            4.   Ethical Decision-Making                       1

 

I.          Minnesota Transfer Curriculum Emphasis Area(s) Satisfied:  None

Identify the learner outcomes (from G) which relate to each of the competencies listed below.

 

            1.   Emphasis Area (Name):      

            2.   Competency (Letter):  

            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)

            1.   Mathematics:                 3

            2.   Reading:                      3

            3.   Writing:                        3

 

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.

 

0.     

0.                 

0.                 

0.                 [VK1] 

 

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