WILLIAM PATERSON UNIVERSITY OF NEW JERSEY COLLEGE OF SCIENCE ...

laboredbumbaileySoftware and s/w Development

Jun 7, 2012 (5 years and 13 days ago)

299 views


1

WILLIAM PATERSON UNIVERSITY OF NEW JERSEY

COLLEGE OF SCIENCE AND HEALTH

Computer Science Department Course Outline


1.

Title of Course, Course Number and Credits:



CS
399

Net
-
Centric Computing, 3 credits


(
Core/Elective

for Computer Science Major)




2.

Course
Prerequisites


CS

342



3.

Description of the Course Consistent With the WPUNJ catalog


Beginning with
fundamentals of computer networking
, this course
emphas
e
s software
development in Java

for Inter
-
Process Communications in standard networks,


wireless, an
d mobile
contexts
.

Major topics include
computer
networking

basics
,
the
Internet,
J
ava programming

and applets
, Java
-
based
concurrency/
threa
ds, Java

for
network
ed

client/server
applications
,
mobile and wireless
applications
,
and
non
-
Java
alternatives

(suc
h as

ASP.Net development and web
-
based scripting)
.


4.

Course Objectives


The main objective of this course is to learn the
basic
s of computer
networking

at the
software development level,
Java fundamentals, and networked
applications with an
emphasis on the
following:




Basic concepts of computer networking

and the Internet
.



Networking
hardware and
protocols.



Java
programming and applet
fundamentals
.



Java concurrency and threading



Java networking

and RMI.



Java applications design for
networks
,



Client
-
side ve
rsus server
-
side
; JSP
.



Wireless considerations



Mobile Computing: the new frontier



Non
-
Java alternatives (X
-
Windows
,

MS
ASP
.Net
solutions
, and web
-
based
scripting
)



5.

Student Learning Outcomes


Upon completion of this course, students will be able to:



i
dent
ify, explain, and
use
hardware components of a
computer network
, both
wired and wireless
.


2



prepare for the Network+ certification exam.



set
-
up

a
small
computer network for standard networking and mobile contexts
,
primarily to test network software
.



unde
rstand the
basic
s of
protocols
for computer networking

in a software context



program basic applications
and applets
in Java




install, work with, and contrast Java IDE’s such as Netbeans, Studio
-
1, J++/J#,
Eclipse, and others,



design and develop Java
IPC f
or
threaded and networked applications



explore networked game development basics as an application area



use Java to develop
applications on clients and servers



appreciate
new technologies such as 802.11a/b/g, Bluetooth and Blackberry
devices

with a softwar
e development perspective



code rudimentary mobile computing applications




know about and experiment with non
-
Java alternatives (X
-
Windows and
Microsoft
ASP.NET
solutions)



explore current web
-
based scripting models



conduct further inquiry into modern dir
ections in network
-
based

programming


Additionally, students are also expected to achieve in the context of the above topics
the below university
-
wide student learning outcomes through lectures; classroom
discussions; homework, essay and project assignme
nts; and oral presentations.



Demonstrate the ability to think critically. This is achieved by and best measured
by problem
-
solving applying principles and methodologies
of
network
programming
, which will be conducted in examinations and projects. . .



Locat
e and use information on these topics. Projects and written assignments will
involve current communications technologies, requiring research on the Internet
and the library’s recent periodicals.



Integrate knowledge and ideas in a coherent and meaningful
manner. Projects and
examinations will have problems applying and integrating various tools and
components towards
learning Java, applying Java in a networking context,
and
adapting
Java and other
technologies
to mobile computing
.



Effectively express the
mselves in written and oral form. Students will be expected
to deliver progress reports on network design
and programming
projects..
Examinations will have several essay questions on network
programming
,
the
web,
security

/

privacy issues
in programming
an
d hypothetical cases.



6.

Topical Outline of the Course Content


Topics covered in the course
include

but
are
not necessarily limited to the following:




Networking

Fundamentals



Hardware and components for network design



Networking protocols

(
Telnet, FTP, H
TTP, and others
)



S
oftware
aspects of networking



Java Fundamentals


3



Java
support
for
n
etworking (Basics)



Java
c
oncurrency and
t
hreading (Basics)



Java networking and RMI.



Java application design for networks,




Client
-
side versus server
-
side applicat
ions
; JSP




Wireless considerations



Mobile Computing: the new frontier
(Java ME style)



Non
-
Java alternatives (X
-
Windows and MS
ASP
.Net
solutions)



C
urrent web
-
based scripting models



New trends and emerging technolog
ies



7.

Guidelines/Suggestions for Teaching Methods and Student Learning Activities


Lecture, demonstrations, and hands


on activities


Problem solving sessions

Group work

Written homework/exercises

Inquiry


based instruction.



8.

Guidelines/Suggestions for
Methods of Student Assessment (student learning
outcomes)


Attendance will be taken.

Homework and projects will be assigned.

Written and group activities will be distributed and collected.

Projects will be demonstrated.

All students are expected to
partici
pate,
tak
ing

an active role in the learning process.


9.

Suggested Reading, Texts, Objects of Study


Gaddis
,
Starting Out with Java: From Control Structures through Objects
, Addison
-

Wesley
,
200
8



Jan Graba
,
An Introduction to Network Programming with Jav
a
,
Springer, 2006.


Tamara Dean
,
Network+ Guide to Networks,

5
th

edition
,

Course Technology
,
20
1
0
.


John R.

Hubbard,
Programming with Java (Schaum's Outline)
,
2
nd


e
dition,


McGraw
-
Hill, 2004.


and O’Reilly
or SUN
text
s

on specific chosen network API
’s.






4

10.

Bibliography of Supportive Texts and Other Materials


General Networking:


William J.
Beyda
,
Data Communications: From Basics to Broadband
, 4
th

edition,

Prentice Hall
, 2005.


Bradford
,
The Art of Computer Networking
,
Prentice Hall, 2007.


J. Richard

Burke
,
Network Management: Concepts and Practice, A Hands
-
On

A
pproach
,

Prentice Hall,
2004
.



Douglas E.

Comer
,
Hands
-
on Networking with Internet Technologies
, 2
nd

edition,

Prentice Hall
,

2005
.


Douglas E.

Comer,
The Everything You Need to Know About
Computer Networking

and How

the Internet Works
, 3
rd

edition, Prentice Hall 2000


Douglas E.

Comer
,

Computer Networks and Internets
, 5
th

edition, Prentice Hall 2009


Joe Habraken
,
Absolute Beginner's Guide to Networking
,
4
th

edition, Que, 2004.


Bruce Hal
lberg,
Networking: A Beginner's Guide
,
4
th

e
dition, McGraw
-
Hill Osborne

Media
,
2005
. (great Net
-
centric Intro)


James F.
Kurose & Ross
,
Computer Networking: A Top
-
Down Approach
,
4
th

edition,

Addison
-
Wesley
,
2008
.


Jorg
Liebeherr & El Zarki
,
Masterin
g Networks: An Internet Lab Manual
, Addison
-

Wesley
,
2004
.



Stanford H.
Rowe
,
Computer Networking
,

Prentice Hall
,
2005
.


Andrew S. Tanenbaum,

Computer Networks
, 4
th

edition, Prentice Hall 2004



Network
+

and Networking Pragmatics
:



David Groth, T
.

Skan
dier, B
.
l Ferguson,
CompTIA Network+ Certification Kit:

Exam N10
-
003
,

Sybex, 2007
.


David Groth, T
.

Skandier
, et al.,
Network+ Study Guide: Exam N10
-
003, Deluxe
, 2
nd


e
dition
,
Sybex, 200
5.


Tamara Dean
,
Network+ Guide to Networks
,
4
th
e
dition
,
Course T
echnology
,
2005
.



5


Java Basics:


Gaddis & Muganda
,
Starting Out with Java: From Control Structures through Data

Structures
, Addison
-
Wesley
,
2007


Harvey Deitel
,
Paul Deitel
,
Java How to Program,

7
th

edition,
Prentice Hall
,
2007
.


Ralph Morelli
,
Ralph
Walde
,
Java, Java, Java, Object
-
Oriented Problem Solving
, 3
rd


edition,
Prentice Hall
,
2006
.


Walter Savitch,

Absolute Java
,
3
rd

edition,
Addison
-
Wesley
, 2007.


Savitch & Carrano
,

Java: Introduction to Problem Solving and Programming,

5
th


edition,
Prent
ice Hall
,
2009



Java for Network Applications:


Hans Bergsten
,
JavaServer Pages
,
3
rd
e
dition
,
O’Reilly,
2003
.


Kenneth L. Calvert, Michael J. Donahoo
,
TCP/IP Sockets in Java, Second Edition:

Practical Guide for Programmers,

Morgan Kaufmann, 2008
.



Naci Dai
,
Lawrence Mandel
,
Arthur Ryman
,
Eclipse Web Tools Platform:

Developing Java™ Web Applications
,
Addison
-
Wesley Professional
,
2007
.


Jayson Falkner
,
K
.
W. Jones
,
Servlets and JavaServer Pages: The J2EE Technology

Web Tier
,
Addison
-
Wesley Professional
,
2004
.


Jim Farley
,
Java Distributed Computing
,
O’Reilly,
1998
.


Brian Goetz (Author), Tim Peierls
, et al.,
Java Concurrency in Practic
e,
Addison
-

Wesley
,

2006
. (*best on Java concurrency)


William Grosso
,
Java RM
I,
O’Reilly,
2001
.



Elliotte Harold, Elliotte Rusty Harold,

Java Network Programming,
3rd edition,

O’R
eilly, 2004.


Merlin Hughes, Michael Shoffner,
et al.,
Java Network Programming, 2nd
e
dition
,

Manning Pub., 1999.



Scott Oaks, Henry Wong
,
Java Threads
,
3
rd
e
dition
,
O’Reilly,
2004


Patrick Keegan
,
L
.

Champenois
, et al.,
NetBeans™ IDE Field Guide: Developing


6

Desktop, Web, Enterprise, and Mobile Applications, 2
nd

edition,
Prentice Hall
,
2006
.


Jonathan Knudsen
,
Kicking Butt with MIDP and MSA: Creating Great Mobile

Applications
,

Prentice Hall
,
2008
.

(best for NetBeans Mob
ility Pack & Java

Wireless Toolkit)


Qusay Mahmoud
,
Wireless Java
,
O’Reilly,

2002
.


Bruce W. Perry
,
Java Servlet & JSP Cookbook
,

O’Reilly,

2004


Denis Piliptchouk
,
Java vs. .NET Security
,

O’Reilly,

2004
.



Marco Pistoia
,
N
.

Nagaratnam
, et al.,
Enter
prise Java™ Security: Building Secure

J2EE™ Applications
,
Addison
-
Wesley Professional
,
2004
.


Esmond Pitt
,
Fundamental Networking in Java
,
Springer, 2005.

(API ?)


David Reilly

and
Michael Reilly
,
Java™ Network Programming and Distributed

Computing
,
Addison
-
Wesley
,
2002
.

h
ttp://www.davidreilly.com/jnpbook


George Reese
,
Java Database Best Practices
,
O’Reilly
,
2003
.



Riggs, Taivalsaari,
et al.,
Programming Wireless Devices with the Java2 Platform,

Micro Edition
, 2
nd

edition,
Prentice Hall
,

2003
.



Singh, Brydon,
et al.,
Designing Web Services with the J2EE™ 1.4 Platform: JAX
-

RPC, SOAP, and XML Technologies
,
Prentice Hall
,
2004


Christopher Steel
,
Ramesh Nagappan
,
Ray Lai
,
Core Security Patterns: Best

Practices and Strategies for J2EE™, Web Services, and Identity Manage
ment
,

Prentice Hall
,
2006
.


Kim Topley
,
Java Web Services in a Nutshell
,
O’Reilly,

2003



Current (continuously updated) source of network API Java books:

http://www.sun.com/books/java_series
.html





Wireless and
Mobile Computing:


Harold Davis
,
Anywhere Computing with Laptops: Making Mobile Easier
,

Que Publishing
,
2006
.


Harold Davis
,
Absolute Beginner's Guide to Wi
-
Fi Wireless Networking,


7

Que Publishing
,
2004



Andy Dornan
,
The Essentia
l Guide to Wireless Communications Applications
, 2
nd


edition,
Prentice Hall
,
2002
.


Roger Riggs
,
A
.

Taivalsaari
, et al.,
Programming Wireless Devices with the Java™2

Platform, Micro Editio
n,

2
nd

edition,
Prentice Hall
,
2003
.


Jochen Schiller
,
Mobile Com
munications
, 2
nd

edition,

Addison
-
Wesley
,
2004
.





11.

Preparers’ Name and Date
:

Dr.
John Najarian, March 21, 2009.


12.

Original Departmental Approval Date:


Fall 2009



13.

Reviser’s Name and Date:
NA


14.Departmental Revision Approval Date:
NA