JDEP 183H

Computer Problem Solving Essentials

Class Syllabus

Fall 2006

 

Instructor

 

Leen-Kiat Soh, Assistant Professor

Room 122E, Avery Hall

Tel:  472-6738

E-mail:  lksoh@cse.unl.edu

Homepage:  http://cse.unl.edu/~lksoh/Classes/JDEP183H_Fall06/

Office Hours:  11:00 AM – 12:00 Noon TR

2:30 PM – 3:30 PM TR

(Open Door Policy)

 

Teaching Assistants

 

Padmapriya (Padma) Ashokkumar   Derrick Stolee

Room 103A, Avery Hall                                   Room 133, Kauffman Center

Tel:  472-3884                                                 Tel:  218-371-1468 (Cell)

E-mail: ashokkum@cse.unl.edu                         E-mail: dstolee@cse.unl.edu

Office Hours:    2:00 – 5:00 PM T                     Office Hours:    4:00-5:30 PM T

                                                                                                11:00 AM – 12:30 PM R                                                                                            

Study Session:  9:00 PM Su, Room 110 Kauffman

           

Lectures & Labs

 

Time:                12:30 PM – 2:25 PM TR                                            

Room:              Kaufmann 110                         

 

On each lab day, half of it will be lecture, and half will be lab activities.  The JDEP183H lecture on the Thursday before each lab day is not held.  Labs will be held at 12:30 PM – 2:25 PM on the following days:

 

September 1, 2006       September 8, 2006

September 15, 2006     September 22, 2006

September 29, 2006

                       

Catalog Listing

 

First course in the JD Edwards Program core. Introduction to problem solving with computers including problem analysis and specification, algorithm development, and program design and implementation. Emphasis on JAVA and HTML in a Windows platform.

 

Class Objectives

 

The objective of this class is to familiarize students with problem solving approaches using computer programming.  We study how to specify a problem, how to come up with a solution, how to convert the solution into a program, and how to solve the problem correctly using the program. The conversion of a solution to a program comes in many ways.  In this class, we focus on Object-Oriented Programming (OOP) where we build “software objects” that are distinct and standalone that programs can use to carry out more complex tasks. Specifically,

1.      Mastery of problem solving in a high-level language, basic data types, algorithm development, predicate logic and functional relations;

2.      Familiarity with the object oriented paradigm, software development environments, proof techniques, GUI development and exception handling; and

3.      Exposure to specification and design with UML, test suite development, and markup languages.

 

Topics Covered

 

Data types, Arrays, Control Structures, Operations, Methods, Documentation/JavaDoc, Parameter passing, I/O, File I/O, Problem solving, OOP & Objects, Classes, Inheritance & Polymorphism, Exception Handling, GUI & Event-Driven Programming, and Searching/Sorting

 

The following discrete mathematics concepts will also be covered:

  1. Functions and relations
  2. Propositional and predicate logic
  3. Proof techniques

 

Prerequisites

 

Admission to the J. D. Edwards Program, CSCE105 and MATH103 (or appropriate scores on placement exams).

 

Text Book

 

Wu, C. Thomas. (2004).  An Introduction to Object-Oriented Programming with Java, New York, NY: McGraw-Hill, 3rd Edition  (Required)

 

Rosen, K. H. (2003).  Discrete Mathematics and Its Applications, New York, NY: McGraw-Hill, 5th Edition (Required)    Additional information:             www.mhhe.com/rosen

 

Homework Assignments

 

There will be 5-6 programming assignments to help you understand some of the basic concepts.  Java programming language must be used for all the assignments. The assignments are due at the class time on the indicated dates. 

You will also be required to hand in an on-line copy.  In addition, you are required to hand in a hardcopy of your code at class time on the due date.  You are expected to write well-documented, modular code.  Programs which do not compile or which do not run will not receive any credit.  Programs that compile and run will be graded as follows: 45% Program Correctness, 15% Software Design, 10% Programming Style, 15% Testing, and 15% Documentation.

 

Laboratory Assignments

 

The laboratories are designed to supplement the lectures and provide hands-on experiences on topics that need additional attention.  It is a significant part of the course and you are strongly encouraged to fully take advantage of this opportunity.  You are required to read the lab handouts and the reading assignments before coming to the lab.  You are also required to take the on-line pretest prior to coming to each lab. There are 5-6 laboratories altogether.

 

Examinations


We will have two mid-term exams and a final exam. The dates for the tests are listed in the lecture schedule.  There will be no makeup tests. 

 

CXP and I-MINDS

 

In this class, we will make use of an online software called I-MINDS running on Windows Conference XP platform.  You are encouraged to use I-MINDS for asking questions of the instructor and the TA, as well as having discussions among your classmates. 

 

We will also conduct occasional forums and Q&A breaks in the class.  During these activities, we will use I-MINDS. 

 

I-MINDS will track your activities and bonus points up to 5% of the total grade will be given to students who participate well in these I-MINDS-based activities.

 

Note that you are also encouraged to visit the instructor and TA in person, and encouraged to ask questions during lectures.  Bonus points can be awarded based on these activities as well. 

 

Final Grade

 

Your final course grade is based on the following: (1) homework assignments (40%), (2) laboratory assignments (15%), (3) midterms (20%), and (3) final exam (25%).   Final grades in this class will be assigned based on the following scale.  A+ is awarded to a student whose work and understanding of the class prove to be exceptional.

 


A:         94% - 100%

A-:       90% - 93%

B+:       87% - 89%

B:         83% - 86%

B-:       80% - 82%

C+:      77% - 79%

C:         73% - 76%

C-:       70% - 72%

D+:      67% - 69%

D:         63% - 66%

D-:       60% - 62%

F:         below 60%


 

Academic Misconduct

 

Academic dishonesty of any kind will be dealt with in a manner consistent with the CS&E Department's Policy on Academic Integrity (http://cse.unl.edu/undergrads/academic_integrity.php). You are expected to know and abide by this policy.

 

Those who share their code and those who copy other’s code will be penalized in the same way; both parties will be considered to have plagiarized.