CSE 15 Introduction to Computer Science

Instructor:Hank Korth

Current Catalog Description

Introduction to topics in computer sceince and programming skills in Java and C++.  Prerequistite for CSE 17.  Includes multimedia laboratory.  No prerequisites.  Not available to students who have taken CSE 12, 16, or ENGR 1.

Accurate Description (catalog entry woefully outdated):

Broad introduction to computer science, computer systems, and computer applications. Programming in Java.  Interactive Web page development. Includes laboratory.

Textbooks

     David Reed, A Balanced Introduction to Computer Science, second edition (Pearson Prentice Hall), ISBN: 978-13-601722-6

·         Y. Daniel Liang, Introduction to Java Programming, Comprehensive Version, 7th or 8th Edition (Pearson Addison Wesley), ISBN 0135044170 

o    Note that the Liang text will be used again for CSE-17.  We are currently supporting both the 7th and 8th editions for a transitional period whose length will be reviewed after our first use of the 8th edition in the fall of 2010

 

References

                No outside texts.  Students are encouraged to read news articles pertaining to information technology and certainly timely articles are assigned depending on current news events.

Course Outcomes:

Students will have:

  1. Basic skills in software design and development via Java programming and the development of an interactive Web application.

·         Web and HTML

·         JavaScript (2 programming assignments)

·         Program design and problem solving

·         Java:

o    Arithmetic, data types, program structure

o    Boolean expressions and control structures

o    Loops

o    Strings

o    Classes, objects, and methods (but not subclasses)

o    Arrays

o    File I/O

o    3 programming assignments

  1. Introduction to the various fields of computer science (see list below) and, more broadly, what a computer scientist does and how the field interacts with society:

·         Algorithms

·         Artificial intelligence

·         Compilation and interpretation

·         Computability

·         Computational complexity

·         Computer architecture

·         Data storage

·         Data representation

·         Database systems

·         Networks: Internet and the Web

·         Operating systems

·         Programming paradigms

·         Security

·         Social, ethical, and professsional issues

·         Software engineering

·         User interfaces and Web design

  1. Hands-on experience via laboratory assignments.  Labs are supported by the instructor with the help of two student assistants to provide a low instructor-student ratio.  Labs are onceper week.  Labs have low grade weight and are designed to allow for a collaborative environment among students. 

·         Simple hands-on Web programming exercises (3 weeks)

·         Spreadsheet applications (1 week)

·         Simple hands-on Java programming (3 weeks)

·         Java programming labs (2 weeks)

·         Testing and reuse of objects (1 week)

·         Database queries using SQL (1 week)

·         Operating systems and command-line (1 week)

Relationship between Course Outcomes and Program Outcomes   

CSE 15 substantially supports the following program outcomes:

C.  An ability to design, implement, and evaluate a computer-based system

I.  An ability to use current techniques, skills, and tools necessary for computing practices

CSE 15 provides modest support to the following program outcomes:

K.  An ability to apply design and development principles in the construction of software systems of varying complexity

 

 

 

Prerequisites by Topic

None

 

Major Topics Covered in the Course

1.      Broad overview of computer science (see list above)
2.      Interactive Web pages using HTML and JavaScript
3.      Java programming (see topics above)
4.      Influence of computing and information technology on society, law, policy, and ethical decision making.

 

   

Assessment Plan for the Course

The students are given several short homework assignments, five programming assiginments, two mid-term quizes, and a final examination. Each homework covers a single topic. The programming assignments are of increasing complexity, starting with 2 on HTML and JavaScript and concluding with 3 using Java.  The quizzes and exams have a varying number of questions many of which are aimed at a specific topic but others of which test the student’s understanding of the relationship among language features.  Ethical and social issues are discussed in the course and an exam question ties those issues to some aspect of the course.  The labs are an insignificant part of the evaluation plan so that collaboration is not impeded by grading issues. 

How Data in the Course are Used to Assess Program Outcomes (unless adequately covered already in the assessment discussion under Criterion 4)

Each semester I include the data from the assessment plan for the course in my self-assessment of the course. This report is reviewed, in turn, by the Curriculum Committee. The results of that process are in Appendix A.

© 2014-2016 Computer Science and Engineering, P.C. Rossin College of Engineering & Applied Science, Lehigh University, Bethlehem PA 18015.