Last updated April 3, 2002:
Last few changes are often in red
Linked alphabetical
index to this page:
1.
Background of the Instructor
11.
Warning Concerning Plagiarism
Background: The network, rather than the individual computer, is rapidly becoming the application platform of choice. Increasingly, applications consist of software from multiple sources, executing on a variety of physical platforms, and bound together by the Internet. This course is designed to investigate the technology options for this network-based application environment.
Description: Technology and development methods for internet-based distributed applications, including the World Wide Web platform. Distributed application architectures, language systems (e.g. C#, Java, JavaScript, XML). Distributed Java features will be exploited. Distributed object standards (CORBA and .NET), and net-focused development methodologies. Internet agents. Term papers investigating current literature and an application project are required. Laboratory course.
Prerequisites: (1) 665 (Advanced Object-Oriented Programming) or 565 (Java Programming), and (2) 673 (Software Engineering) or 679 (Architecture and Design of Client-Server Systems) or equivalent experience
This course is partially a "seminar": There will be a significant number of independent papers and presentations by students designed to promote their own learning and that of the class.
Students will be required to research at least one contemporary Internet-based Application Development (I.B.A.D.) topic, and implement an application of I.B.A.D. technology combinations that executed across the Internet. Typical topics involve combinations of: CORBA, COM, Servlets, Agents (e.g., Aglets), JavaScript client- and server-side, RMI, Python, and selected distributed Java packages.
There will be two projects during the term. Exact project requirements will be supplied.
Examples of prior projects have been posted to prior forums. In addition, I will give an example of an XML/Applet/Servlet/RMI application that students are encouraged to take seriously as a potential paper and project.
Each project/paper will consist of a preliminary and a final phase. The final submission should include a copy of the preliminary phase, showing the instructor's comments and indicating how they are addressed in the final submission. Every student should expect to give a presentation, together with handouts, on every project. Time and class size constraints are such that possibly not every presentation will take place.
The semester grade will be computed from the two projects, each weighted
equally.
Within each project, phase 1 will count for 1/4, and phase 2 for 3/4. In
addition, several short homework papers will be required on a pass/fail
basis. All submitted papers and projects must be posted to a class web
site within a week of regular submission, as explained with each homework. Students may decline to do so, but only if
they submit notice of this declination via e-mail to the instructor at the due
date.
Students will be given a number of pass/fail assignments throughout the semester. A “Pass” grade is an adequate basis for any grade in the course, which depends on the paper and project: However, a grade of A or A+ may be given for a pass/fail homework when the student has performed exceptionally and gone well beyond the requirements of the problem.
Late homework will not accepted unless there is a reason why it was impossible to perform the work. In that case, the written reason should be attached to the homework, which will be graded on a pass/fail basis.
Click here for generic information on how grades are allocated and averaged in all of my classes.
The Metropolitan College has specific guidelines defining plagiarism, and you are responsible for abiding by them. This section provides additional guidance.
The College has serious penalties for plagiarism, including expulsion from
the degree program. Please be very careful to cite all references used so that
it is very clear which parts of your submissions are your own, and which parts
are quoted from someone else. Simply
listing references at the end of your submission is not sufficient.
e-mail, see or call me if you have any doubts. In any case, clearly acknowledge
all sources in the context they are used, including code, of course.
|
Wk. |
Date |
Topic Note: due to
the rapid changes in technology, these topics and their order are subject to
about 20% change |
Chapters from Orfali & Harkey |
Project: (approximate: See “homework dates due” section for final dates) |
|
1 |
1/15 |
Overview Introduction to Internet
Applications and CORBA |
1; supple-ments |
|
|
2 |
1/22 |
Middleware and CORBA Introduction to the CORBA /
Java relationship Introduction to XML and SOAP |
2; |
Project 1-1 assigned |
|
3 |
1/29 |
Object Request Brokers |
5, 27 |
Discuss potential projects
|
|
4 |
2/5 |
Dynamic CORBA usage |
7,8 |
Project 1-1 due assigned |
|
5 |
2/12 |
Components for the Internet Java Beans Review the goals of components and
Beans. Emphasize Internet aspects. |
27-32 |
Student presentations |
|
6 |
2/26 |
C# and .NET Review the goals of C# and contrast with Java. Emphasize Internet aspects. |
supple-ments |
Student presentations Project 2-1 assigned |
|
7 |
3/11 |
Network programming: with Java |
10; supple-ments |
Project 1-2 due Student presentations |
|
8 |
3/18 |
Protocols and Data Languages: HTTP , CGI
and XML II |
11; supple-ments |
|
|
9 |
3/25 |
Miscellaneous, including JavaScript. |
|
|
|
10 |
4/2 |
Simple Remote Invocations: RMI |
13; supple-ments |
Student presentations |
|
11 |
4/9 |
Microsoft Middleware: COM, ActiveX, Web Services Understand COM; Review Active-X; Use Active-X controls for the Internet |
15-16; supple-ments |
Student presentations |
|
12 |
4/16 |
Advanced Middleware: .NET, CORBA Services Metadata in CORBA and Java |
17-18 19-22 |
Student presentations |
|
13 |
4/23 |
Internet Agents |
supple-ments |
Student presentations |
|
14 |
4/30 |
Student projects |
|
Students present results |
|
Number |
Name |
Due date |
|
1 |
Motivation |
1/22 |
|
2 |
ORB/Java |
2/12 |
|
Project 1 Phase 1 |
|
2/5 |
|
3 |
Preferably Dynamic CORBA (otherwise Applet/ORB) |
2/26 |
|
Project 1 Phase 2 |
|
3/12 |
|
4 |
BeanBox 11.2 |
2/26 |
|
5 |
.NET Exercises |
3/19 |
|
6 |
Sockets etc. |
3/26 |
|
Project 2 Phase 1 |
|
3/26 |
|
7 |
Reverse |
4/2 |
|
8 |
RMI |
4/16 |
|
Project 2 Phase 2 |
|
4/30 |
Spring 2002 group e-mail: 771Sp02@yahoogroups.com