Class:Course CodeMeeting Days/Times: Course Login URL:Class Website

carenextSoftware and s/w Development

Nov 18, 2013 (3 years and 10 months ago)

99 views

Class:

SSD3


Object Oriented Programming and Design

Course Code
:

Fall 2004/Osaka

Meeting Days/Times:

S
3
:00
P
M


7
:0
0 PM

Course Login URL
:

http://www.icarnegie.com/

Class Website
:

http://www.bscheele.com/ssd3
/


Course Description

This course requires students to use Java as a programming language to design and
implement an object oriented program system. Emphasis is on problem analysis and
solution design, documentati
on, and implementation. Course software uses commercial
open
-
source IDE (Interface Development Environment) software
-
Eclipse with UML
-

to
create Web
-
centric projects. One main project within SSD3 is for students to create a
complete Gourmet Coffee Syst
em.

The purpose of SSD3 is for students to:

1.

Learn to program using object
-
oriented techniques.

2.

Learn to design robust, extensible classes.

3.

Learn to express design using UML.

4.

Learn to write programs by writing cooperating classes and interfaces.

Stude
nts successfully completing SSD3 will be able to:

1.

Produce

i.

Java programs exhibiting object
-
oriented programming features
including inheritance, polymorphism, abstract classes, and
interfaces

ii.

Robust Java classes using exceptions and access modifiers

iii.

Obje
ct Oriented Designs using UML

iv.

Java implementation from a specification

v.

Extensions to existing Java programs to improve performance or to
add functionality

vi.

Professional quality code using code conventions followed in the
industry

2.

Use

i.

Commonly used prof
essional tools such as debuggers, IDEs, and
UML editors

ii.

Utility classes and packages involving I/O, and tokenization

iii.

Java Swing classes to implement GUIs

iv.

On
-
line resources for keeping abreast of Java developments

v.

Design patterns

vi.

Test cases for unit te
sting

vii.

Collections and iterators

3.

Knowledgeably Discuss

i.

Advanced Object Oriented concepts

Hold Positions as Beginning Java Programmer:

On successfully completing this course, the student will be able to (a) execute
programming tasks such as extending the

functionality of existing programs and
improving the performance of existing program modules, (b) implement interactive GUIs
in Java, (c) implement classes that exhibit a specified behavior, and (d) debug and correct
programs that do not perform according

to specification.

Instructor

Name:

Robert Scheele

Education
: MIS DePaul University, BSBA University of Denver

Professional Background
: Cap Gemini Ernst & Young consultant, IBM Global Services

Professional Affiliations
:
MCSE NT 4.0, A+, Network+

Phone
: 0
80
-
1053
-
2128

E
-
mail
: scheele@tuj.ac.jp

Office hours
: Per Appointment

Course Materials

Required Textbook:

Beginning Java Objects: From Concepts to Code

By Jacquie Barker

Published by Apress

Copyright: 2000

ISBN: 1
-
59059
-
146
-
1

Suggested Supplementary Textbo
ok:

The Java Developers Guide to Eclipse

Authors:
Shavor, D

Anjou, Fairbrother, Kehn, Kellerman, McCarthy

Published By:
Addison Wesley

Copyright:
December

2003

ISBN: 0
-
321
-
15964
-
0

Course Program Installation Information and Links:


Downloadable
Documentati
on

Website Locations


Installing Java
:
(
J2SE 1.4.2 SDK)


Download J2SE SDK

at
http://java.sun.com/j2se/1.4.2/download.html

Online Java 1.4.2
API & Installation
Documentation to
your local
machine:


(

J2SE 1.4.2
1. Online Java 1.4.2 API Documentation:
http://java.sun.com/j2se/1.4.2/docs/api/

2.

To download the Java 1.4.2 Documentation to your computer :

http://java.sun.com/j2se/1.4.2/download.html

(Under

J2SE 1.4.2 Documen
tation

click the Download link)

Attendance

In
-
class activities and discussion play an important role in facilitating effective learning;
therefore, class attendance is STRONGLY encouraged. Furthermore
, students who do not
attend class regularly will not receive individualized assistance from the instructors after
class hours.

Cheating

Cheating will not be tolerated. Within the context of this course, cheating is defined as
giving

or
receiving

assistanc
e on a quiz or exam.


Students caught cheating will be
dismissed from class immediately and receive a "0" on the exam or quiz.



Documentation)

Java Servlet API
Inform
ation:

(Javadoc 2.3
Download)

https://jsecom16a.sun.com/ECom/EComActi
onServlet;jsessionid=jsecom16a.sun.com
-
4b78b%3A4007043d%3Abaea7dc2f97784c5

Eclipse

Version
2.1.3

Download

http://download2.eclipse.org/downloads/drops/R
-
2.1.3
-
200
403101828/index.php


Setting up Java
on the machine
is required for
Eclipse to work
on the machine.
On a Windows
XP Operations
System, this
requires the
editing of the
PATH
&
CLASSPATH

settings. After
the installation
of Java, Eclipse
and all of its
pl
ug
-
ins, and the
editing of the
PATH
and
CLASSPATH
statements, you
must reboot
(restart) your
computer.

Under Windows XP Click: Start


Control Panel


Under the Control
Panel View, make sure you are viewing “Classic View” (This will make
a bunch of smaller

icons on the desktop view)


Click on the icon for
“System”


Click “Advanced”


Click “Environmental Variables”


Under the “System Variables” section look for the CLASSPATH and
PATH statements


If they are not listed there click on “New” and
create the
m using either the CLASSPATH or PATH as the name


If
they already exist, then double click on them and edit them as follows:


The PATH statement should include the following at the very beginning
of the :

C:
\
j2sdk1.4.2_04
\
bin;

(The path
C:
\
j2sdk1.4.2_0
4
\

may change depending on the folder where
you installed Java on your machine, but this is the default. You can do a
search for the file “javac.exe” on your machine to verify the bin folder
path you need.)


-

The CLASSPATH statement should start with the

following:


.;C:
\
j2sdk1.4.2_04
\
workbench
\
lib
\
javax.servlet.jar;

(Make sure there is a period to start it and the

C:
\
j2sdk1.4.2_04
\
workbench
\

may change depending on the folder
where you installed the iCarnegie Workbench on your machine. You
can do a s
earch for “javax.servlet.jar” on your machine to verify the lib
folder path you need.)

Grading

Quizzes, exercises, and exams all count towards the student's final course grade. The
weight of each graded component
is as follows:

Attendance/Participation

5%

Multiple
-
choice quizzes (x
7)

7%

Exercises (x 8)

8%

Book Homework
Assignments

10%

Practical Exams (x 8)





16%

Unit Multiple Choice Exam
(x 3)

12%

Unit Practical Exam (X 3)

12 %

Final Multiple Choice E
xam

10%

Final Practical Exam

20%

Total

100%

The grading scale is as follows:

A

90
-

100%

B

80
-

89%

C

70
-

79%

D

60
-

69%

F

59 % and
below

Late Homework

Unless specified otherwise, all homework assigns are due the session after they are
assigned.

Homework assignments that are turned in late may be subject to a penalty of 5
-
points per day late. However, for homework assignments to be worth any credit at all,
they must be turned in no later than the final deadline established for their corresponding

unit. These unit
-
wide deadlines are noted on the schedule below.

Information on iCarnegie Certificates

As part of this course, iCarnegie offers a single certification exam


which is the final
multiple choice exam and final practical exam
-

that is taken
at the end of a semester.
Students who pass with an 80% or better in both will also have completed the SSD1
course for an iCarnegie Certificate in Computer Programming. An iCarnegie certificate
demonstrates that a student has achieved a professional leve
l of competency in a
particular technical subject area. That is, a certification exam is designed to test for the
proficiency expected of professional programmers with respect to the skills and
knowledge that are taught in the corresponding course. The exa
m, which consists of a
multiple
-
choice component as well as a practical component will cover the course's entire
content. There will be a multiple
-
choice part and a practical part. Here are some things
about the exam you should be aware of well in advance
of taking it:



You will be allowed to take up to one hour on the multiple
-
choice component and
up to three hours on the practical component.



You will be prohibited from using any manner of reference materials (course note,
notes, books, and so forth) w
hile

taking the m
ultiple
-
choice
exam
s
.



While you are taking the practical component of the exam, you will be prohibited
from using

o

hardcopy reference materials

such as your textbook, other reference
books, printed out course pages, or your personal notes (han
dwritten or
typed)

o

online Internet resources other than the course pages on the iCarnegie site

o

any of the work you submitted for the course's assessments



While you are taking the practical component of the exam, you
are

permitted to
use the following
resou
rces:

o

the course's pages online on at the iCarnegie site

o

downloaded

copies of the J2SE 1.4.2 Documentation

and
Java Servlet Javadoc 2.3

(i.e., the resources listed above in the

"Other Materials" sectio
n).

o

Instructor class homepage course material.


Note
:
you would do well to get used to working with these resources
during the semester, long before you have to rely on them during the exam.



Finally, you will be provided with a sample exam at least a week before the exam
date, if not sooner.

Class Website

A
website will be updated with class schedule and reference material for students. Please
refer to it for updated class material and information throughout the course.

http://www.bscheele.com/
ssd3/


**
NOTE ON TAKING ONLINE ICARNEGIE EXAMS:

Unit 1,2,3 & Final Multiple Choice Exams



Students cannot use any online or book
material while taking the multiple choice tests

Un
it 1,2,3 & Final Practical

Exams



Students are allowed to use all of the online
iCar
negie material, including their submitted files, while taking the practical exam. Use
of book material or Internet sites (except potential class websites posted by the instructor)
cannot be used.

Course Schedule

(
Note
: This is a tentative, flexible plan
that is subject to change as circumstances dictate.)

Course Schedule


Class Date

Class

Homework

Saturday

Sep. 25
th


Class 1

Introductions

Java
Exception Handling
Presentation

Exercise 1



Required

(iCarnegie 1.1.1)
: Barker,
chapter 1 (pages 13

44
).




Require
d (iCarnegie 1.1.1)
: Barker,
chapter 2 (pages 47

55).



Required (iCarnegie 1.1.6)
: Java
Software, Sun Microsystems, Inc,

Code Conventions for the Java
Programmin
g Language
”.



Optional (iCarnegie 1.1.
6)
:
Java Code
Conventions Quick Reference
.



Required (iCarnegie
1.1.7)
:.Supplemental
Handbook
Materia
l: “What is Javadoc”.



Required (iCarnegie 1.1.7)
: Java
Software, Sun Microsystems, Inc.,

How to Write Doc Comments for the
Javadoc Tool
”.



Install Eclipse
2.
1.3
& Omondo
Free
edition on home computers.



HW: Barker, Complete Ex. 3, 4
-
pp: 45
.



HW:
Barker, Complete Ex 1, 2,
4

pp:

56.



HW: iCarnegie Unit 1.1 Multiple
Choice Quiz 1, Exercise 1, Practical

1,
and Practical 2



HW: iCarnegie 1.2 Multiple Choice
Quiz 2

Saturday

Oct. 2
nd

Class 2

Java
Debugging

Presentation

Exercise 2



Required (iCarnegie 1
.
2.1):

Barker,
chapter 10 (pages 230

3).



Required (iCarnegie 1.2.2)
: Barker,
chapter 5 (pages 113

20); chapter 10
(pages 233

40).



Required (iCarnegie 1.2.5)
: Barker,
ch
apter 10 (pages 213

30).



HW: iCarnegie
1.2, Practical

3, and
Practical 4



HW:
Barker, C
omplete Ex. 1
-
pp. 140.



Preparation for the Unit 1
Multiple
Choice Exam

Saturday

Oct. 9
th

Class 3
(TEST
)

Unit 1 Multiple Choice
Exam

Course Review



Required

(iCarnegie
2.1.1)
: Barker,
C
hapter 3 (pages 59

62), Chapter 4
(pages 83

109), Chapter 7 (pages 179
-
85), C
hapter 13 (pages 326
-
33).



HW: Read UML information
in the
supplemental handout



HW: iCarnegie Exercise 2



Preparation for the Unit 1
Practical

Exam


Saturday

Oct.
16
th

Class 4 (TEST
)

Unit 1 Practical Exam

Presentation


Java
Inheritance, Testing



Required (iCarnegie 2.1.2)
: Barker,
chapter 5 (pages 120

39); chapter 13
(pages 305
-
11 and 335

43).



Optional

(iCarnegie 2.1.4)
: IPL
Information Processing Ltd,
Why
Bother to Unit Test?




Optional

(iCarnegie 2.1.4)
: IPL
Information Processing Ltd,
Designing
Unit Test Cases
.



HW: iCarne
gie Multiple
-
Choice

Quiz 3



HW: iCarnegie Practical Quiz 5




HW:
iCarnegie

Exercise 3

Saturday

Oct. 23
rd

Class 5

Presentation


Vectors &
Arrays



Required

(iCarnegie 2.2.1)
: Barker,
chapter 6 (pages 143

8); chapter 13
(pages 316

8).



Required

(iCarnegie 2.2
.2)
: Barker,
chapter 13 (pages 343

6).



HW: iCarnegie
Multiple
-
Choice Quiz 4



HW: iCarnegie
Practical Quiz 6




HW: iCarnegie
Practical Quiz 7




HW: iCarnegie
Exercise 4

Saturday

Oct. 30
th

Class 6

Presentation


Abstract
Classes & Design Patterns



Required (iC
arnegie
2.3.1)
: Barker,
chapter 7 (pages 169

75).



Required (iCarnegie 2.3.2)
: Barker,
chapter 7 (pages 164

8).



Required (iCarnegie 2.3.3)
: Barker,
chapter 7 (pages 175

8).



Optional (iCarnegie 2.3.4)
: James W.
Cooper,
The Design Patterns Java
Companion
. "Some Background on
Design Patterns" (pages 10

6).



Optional (iCarnegie 2.3.5)
: James W.
Cooper,
The Design Patterns Java
Companion
. "The Singleton Pattern"
(pages 31

6).



Optional (iCarnegie 2.3.6)
: James W.
Cooper,
The Design Patterns Java
Companion
. "The Strategy Pattern"
(pages 194

201).



HW: iCarnegie
Multiple
-
Choice Quiz 5



HW: iCarnegie
Pra
ctical Quiz 8



Prepare for
Unit 2
Multiple

Choice
Exam

Saturday

Nov. 6
th

Class 7
(TEST
)

Unit 2

Multiple Choice

Exam



HW: iCarnegie
Practical Quiz 8



HW: iCarnegie
Exercise 5



Prepare for Unit 2 Practical Exam

Saturday

Nov. 13
th

Class 8
(TEST
)

Unit 2

Practical

Exam

Presentation


Java IO



Required (iCarnegie 3.1.1)
: Barker,
chapter 15 (pages 427

32).



Required (iCarnegie 3.2.1)
: Barker,
chapter 16 (pages 471

522).



Required (iCarnegie 3.2.3)
: Barker,
chapter 16 (pages 545

52).



HW: iCarnegie
Exercise 6

Saturday

N
ov. 20
th


Class 9

Presentation


Java Swing



HW: iCarnegie
Multiple
-
Choice Quiz 6



HW: iCarnegie
Exercise 7



Prepare for Unit 3 Multiple Choice
Exam

Saturday

Nov. 27
th

Class 10
(TEST
)

Unit 3

Multiple Choice

Exam



HW: iCarnegie
Exercise 8



Prepare for Unit 3 P
ractical Exam

Saturday

Dec. 4
th

Class 11
(TEST
)

Unit 3

Practical Exam

Go over Sample
Certification Exam



Prepare for Final Multiple Choice
Certification Exam



Prepare for Final Practical Certification
Exam



Hand out Sample Certification Exam

Saturday

Dec. 11
th

Class 12
(TEST
)

Initial class review

Final

Multiple Choice

Certification
Exam

Final

Practical

Certification
Exam



Class review and any retakes.