Homework 1
CS520, Summer 2008


Due: Thursday, June 26


[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 setup your development environment. Refer to the class notes, but you don't have to follow them exactly, e.g. if you 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) Currently when a new user first log onto CSNS, the system automatically subscribes the user to all the mailing lists. Modify the CSNS code so that the system only subscribes a new user to the mailing lists cs-students and csns-users.

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. More specifically, "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. The size of the zip file must be under 320KB, 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.