COM1370, IS1320 Spring 2003 - How to do projects
Professor Futrelle -- College of Computer & Information Science, Northeastern U., Boston, MA
Updated 25 March 2003
Introduction
The projects will be organized in similar ways in both courses, though
the details of the assignments will differ.
In both courses, the following will be required:
-
Every student in both classes must have a CCIS account. If you don't
have one, get a form, read the directions, set up your account on
a Sun machine (or by remote login) and turn in the signed form,
in that order. Check to see when your account is activated. You won't
get a notification.
- Each student will work in a team, three to four students per team
in COM1370 and about three students per team in IS1320. The team
makeup and assignments will be put together as follows:
- By Friday midnight, March 28th, you should email the TA
and Professor Futrelle the team you want to be on, with one
email message per team. Email addresses are on the Information
page accessible through the course homepage. If you don't join
a team, you will be assigned to one.
- On Monday, March 31st, I will hand out, in class, a list of
the teams. You will then confer, in class, to make sure you
have the email and/or phone numbers of the other members on your
team. (We could do it all by email but you should meet the other members
of your team!)
- Each team will come up with a list of five preferred projects,
in rank order, from #1 to #5, to be handed in at the beginning
of class on Wednesday, April 2nd.
- On Wednesday, April 2nd, a lottery will be held in class to decide
which team gets which project. (Delayed until Thursday for IS1320
because of class in Library on the 2nd.)
- All programming projects must be written in Java and will be
required to compile and execute correctly on the CCIS Sun Solaris systems,
currently running Java 1.4.1. This is the only arrangement that will
allow us to grade your work in a uniform and efficient manner.
(There are at least 70 students total in the two courses.)
Do not develop your code elsewhere and assume it will work without
problems on the Sun systems. It is your responsibility to ensure that
it does.
- Every student will build project and web directories on the
College Sun Solaris system where public reports and private work
will be assembled. Details below.
- Every student will be responsible for updating their public
reports every week.
- Every team will present a brief oral report during the class period,
approximately three presentations during the quarter for each team.
The schedule will be
handed out immediately after the team assignments are chosen on the 2nd
and the presentations begin on the following Monday, April 7th.
Presenters should rotate so that, if possible, every team member
presents at least once. The presentations will be very short,
about five minutes, so they should be carefully rehearsed.
It will be impractical to set up students' computers for these
brief presentations, so any material you wish displayed should
be made available on the CCIS Unix system so it can be presented
on Professor Futrelle's machine, either in a browser, or via X11.
- Every student must create separate weekly reports that are linked
to a central page in their course web directory.
We will pay attention to your English, and if you write sloppily,
you will lose some credit. Writing will be important in whatever
career you pursue in the future, so pay careful attention to
practicing and improving your writing.
- Here are the rules for setting up your course public and private
directories in your web space on Unix. (You may keep some of these
pages on your own server or ISP if you must, but you run the risk
of having your pages unavailable when we are grading your work --
that is your responsibility and your problem.)
All Java code must be on the Sun systems so we can execute it.
- Create a .www directory in your unix home directory; you should
already have such a directory. ls -l on the directory should give
permissions: drwxr-xr-x, readable and executable by others is the
primary point, the rightmost r-x. Use mkdir to create directories.
- In your .www directory create a directory which is either
com1370sp2003 or is1320sp2003 (or both, if you're taking both
courses ;-( This directory should have the same drwxr-xr-x
permissions.
- In this directory, create a pub and a priv directory.
The pub directory should have the same drwxr-xr-x permissions
as before. For priv directory, restrict the readability using
the command:
chmod go-rw priv
If you then execute
ls -ld priv
you will see the permissions:
drwx--x--x
so the directory is executable but not readable.
- cd to the priv directory and do the following relatively secure
thing. Create a directory whose name is of the form priv123456
but with a "random" choice for the six digits. (I often use the last
six digits of some randomly chosen number from the phonebook to
choose such numbers.) If, for example, you choose priv943562
then this is the directory name that you must mail the TA.
And you must do this early in Week 2 of the course, the week
starting 31 March.
The directory can have the usual drwxr-xr-x permissions.
- In your "priv123456" directory (using your digits), create
an index.html page that tells us where any of your private
pages are and where any subdirectories are that hold any code
that you're handing in. Anything that you want only Professor
Futrelle and the TA to have access to.
This index.html page should be readable by all, e.g., permissions -rw-rw-r--.
All code should have indications in it
of which students designed, coded, tested and documented which parts of it.
You should realize that no one can access your index.html page or
any subdirectories, because your "priv123456" directory name is
unguessable. This is an adequate enough security system for our
purposes. I use it for many private web directories for various research
groups on campus that I'm involved with.
- In your pub directory you should place a public index.html page
that looks like this.
Each week you should add a new link on it to your latest public report,
a report that anyone can read. The pages linked to will be in your
pub directory or any subdirectories you create.
- The point of all this organization is that there will be a location
for your weekly reports that we can monitor (and grade!) and that can be used as
part of your in-class presentation. The TA will make up a two pages
for her and my use that will have links to the public and private
index pages of every student in each class.
- We might find that it's useful to have one of the students in each
group set up a public and private group directory and pages.
We'll see how that works out as the quarter proceeds. But any such material
would only supplement, not replace, individual student pages.
The directions above will be discussed and refined in the first weeks of class.
Go to Futrelle's Teaching Gateway
Return to Prof. Futrelle's home page