Homework 1
CS520, Summer 2008


Due: Friday, April 10


[Reading]

[Account] Send an email to csun@calstatela.edu and ask for account information on the CS3 server. You have to be already enrolled in the class in order to get an account. Note that the account includes a Subversion repository, and a copy of the CSNS source code is already imported into the repository for you.

[Development Environment] Check out the CSNS source code from your Subversion repository, and set up your development environment. Refer to the class notes, but you don't have to follow them exactly, e.g. you may prefer NetBeans over Eclipse. If you have any questions, post them in the class forum. To avoid confusion, in the assignment descriptions I'll use CSNS (i.e. without hyperlink) to refer to the project, and CSNS (i.e. with hyperlink) to refer to the server where you submit your work.

[CSNS] (10pt) Modify the CSNS code so that when an instructor adds a section, the instructor automatically becomes a moderator of the class forum for that section.

HINTS:

[Ant] (10pt)

1. Read build.xml of CSNS and understand what it does.

2. Modify build.xml of CSNS to create a new target called zip. This target should create a zip file csns.zip which contains all the source files in CSNS except build.properties. The directory structure must be preserved in the zip file.

"Source files" means source code, configurations files, build file, web pages and images etc.; it does not include any class files, jar files, files created during the build process (e.g. files under /build or /dist), files used for version control (e.g. files under /.svn), or whatever additional files you put under the project directory. To further reduce the size of the zip file, you should also exclude the files under the following folders:

The size of the zip file must be under 450KB, and if yours is larger than that, you are doing something wrong. To receive full credit for this problem, also make sure this target is repeatable, i.e. you shouldn't see any error when you run "ant zip" multiple times.

Once you are done, submit the csns.zip file created by this target to CSNS.

[Subversion] (10pt)

1. After you complete the previous two exercises, commit the changes you've made to your Subversion repository, then create a tag called cs520-hw1.

2. Which of the following files should be version controlled? And why?

Please put your answer to this question in a file hw1.txt and submit it to CSNS.