CALIFORNIA STATE UNIVERSITY, CHICO


Department of Computer Science



 

 

CSCI 15A Course Requirements

Spring 1998

 

CSCI 15A-1,2,3 Programming and Algorithms: 1

3.0 Units

 

Instructors: John Zenor, Simon Goberstein

John Zenor (zenor@ecst.csuchico.edu)

Office: OCNL 230, 898-4414; Department Office: OCNL 215, 898-6442

Office Hours: M, Tu, Th 2:00-2:50; W 4:20-5:10; M 4:20-5:10, by appt.

Simon Goberstein (simong@ecst.csuchico.edu)

Office: HOLT 140, 898-6367; Department Office: HOLT 181/183, 898-6111

Office Hours: Tu, Th 5:00-6:30

 

Lab Instructor: Lonnie Heinke (lheinke@ecst.csuchico.edu)

Two hours of individual lab help are available: Tu 10:00 - 10:50; W 2:00 - 2:50

Link to Lonnie's Web Page for Additional Information about Lab Assignments

 

1. Course Time Schedule: TR 11:00AM - 12:15PM GLNN 212

Activity-1: F 1:00 PM 1:50 PM OCNL 119 / 131

Activity-2: F 12:00 PM 12:50 PM OCNL 119 / 131

Activity-3: F 11:00 AM 11:50 AM OCNL 119 / 131

The Activities will meet in the classroom, OCNL 119, unless lab demonstrations are to be given. In that case, the activity will meet in OCNL 131, the computer laboratory.

 

2. Text: Required: An Introduction to Computer Science Using Java, 1st Edition, by S. N. Kamin, M. D. Mickunas, E. M. Reingold, McGraw Hill, 1998

Reference for students without any programming experience:

Teach Yourself Java 1.1 in 21 Hours, SAMS press.

Reference for students with programming experience in another language:

Teach Yourself Java 1.1 in 21 Days, Lemay and Perkins, SAMS press.

References for students with considerable "C++" programming experience:

Core Java 1.1 (2 Volumes), Horstman and Cornell, Prentice Hall

Java in a Nutshell + Java Examples in a Nutshell, David Flannagan, O'Reilly Press

 

C++ References

The Beginner’s Guide to Visual C++, WROX press, is a very good
reference if you are going to use Visual C++ on your home PC.

Computing Fundamentals, by Mercer, is the text used two semesters ago. It has a very good introduction to the use of classes and good programming design in C++.

 

3. Costs which might be incurred during the semester:

One required text, optional reference books, occasional copied reference material; optional MetroWerks Development System, if you wish to program on your PC at home. A $35 lab card is required for use of lab equipment in OCNL.

 

4. Prerequisites: One year high school algebra.

 

5. Evaluation Procedures:

 Midterm 1  15%
 Midterm 2  15%
 Final Exam  20%
 6-8 Programs  40%
 Homework & Quizzes  10%
 Total  100%

 

All but one of the assigned programs must be submitted in working order to pass the course! Quizzes may be unannounced and may not be made up, but the lowest score (or one missing score) will be discarded.

 

Programs will be weighted by difficulty, with a total point value ranging from 20 to 150 points. The program grades will be computed as follows. Design, Style, Documentation 20%, Correctness 80%. Programs are to be turned in during the Activity session in which you are enrolled, withing the first five minutes of the activity session. 10% reduction in grade if the program is submitted after the first five minutes; 20% reduction per week after the due date. Programs may optionally be turned in during the lab instructor's scheduled help sessions, but will not be accepted at other times. Do not turn programs into the Department Office, and do not slide them under the instructor's office door.

 

6. Additional Comments: You are being graded as individuals; you must do your own work. If you hand in a program containing code written by someone else, you and the other person will receive an 'F' in the course. If you have an illness or emergency resulting in missing a due date, quiz, or exam, you must present verifying documentation.

 

7. Additional Recommendations: Attend every class session, read ahead, get an early start on every program. If you can't figure out how to get started on a program, or if you are unclear about some topic in class: ask questions!

 

8. Programming at Home: We are using the Metrowerks Development Environnment for the development of the Java 1.1 programs for this class. There are many Java enviornments you may use at home to develop your programs, but class and lab instruction will be based on the Metrowerks environment. You may be required to bring your finished programs to school and run them using Metrowerks in order to submit them in the required format. The Metrowerks environment is available at the Student Bookstore (Computer Works) for a considerable educational discount.

A free version of Java 1.1 may be obtained on the Web from Sun's Web Site which could be used to develop the programs required for the course. This software is also provided on the CD's in several of the suggested references for the course. You must plan to use version 1.1 of Java. (This temporarily rules out the use of Microsoft's J++ without some rather complicated upgrades which are available on the Microsoft Web Site.)

Internet Explorer 4.0 is required to use the debugging features of Metrowerks. Netscape has an update on the Web that will allow the viewing of Java 1.1 applets, but will not allow interactive debugging.

Setting up your home machine is a complex operation that may take a while. Until you get your home system up and running use the machines in the lab. Troubles with your home equipment will not be accepted as an excuse for late assignments.

 

 


CSCI 272 Course Requirements

Spring 1998

 

 

 

CSCI 272 Multi-User Operating Systems

3.0 Units

 

Instructor: John Zenor (zenor@ecst.csuchico.edu)

Office: OCNL 230, 898-4414; Department Office: OCNL 215, 898-6442

Office Hours:M, Tu, Th 2:00-2:50; W 4:20-5:10; M 4:20-5:10, by appt.

 

1. Course Time Schedule:

M 2:00PM - 3:15PM OCNL 123

W 2:00PM - 3:15PM OCNL 131

 

2. Text: Required: Practical Unix Programming. A Guide to Concurrency, Communication, and Multithreading, 1st Edition, by K. A. Robbins, S. Robbins, McGraw Hill, 1998

References:

Managing Projects with make, Andrew Oram and Steve Talbott, O'Reilly press.

3. Costs which might be incurred during the semester:

One required text, optional reference books, occasional copied reference material. A $35 lab card is required for use of lab equipment in OCNL.

 

4. Prerequisites: CSCI 152.

 

5. Evaluation Procedures:

 Midterm 1  15%
 Midterm 2  15%
 Class Participation  20%
 Project and Lab Notebook  50%

6. Project: Groups of 2 to 3 students will pick one of the four projects in the text. The project will be completed by the group, and a detailed presentation will be given to the class. Documentation will be produced for the project code and for the various questions asked by the text in the project chapter. One member of the group will be designated project manager, and will be responsible for coordinating and evaluating the efforts of the group members. The group members will, in turn, perform an evaluation of the project manager.

7. Lab Notebooks: Notebooks will be prepared by each student, containing the documentation for exercises completed during the course. This documentation may be informal, including hand annotations of program listings. Work in the notebook should be dated.

 


CSCI 397C Computer Security and Privacy

Course Requirements

 

Units

3.0 units Spring 1998

Satisfies Graduate Area:

Operating Systems/Networks

Prerequisite:

CSCI 152 (Operating Systems Programming) or faculty permission

 Class Days and Times:

Tue & Thu, 3:20p-4:30p (Pacific)

 Instructor:

John Zenor

 Office Hours:

M, Tu, Th 2:00-2:50; W 4:20-5:10; M 4:20-5:10, by appt.

 Office Phone:

530-898-4414

 Message Phone:

530-898-6442

 Fax Phone:

530-898-5995

 E-mail Address:

zenor@ecst.csuchico.edu

 Textbook:

Security in Computing, by C. P. Pfleeger, Prentice Hall, 1997 (Required) ISBN 0133374866

Course Description:

The class will begin with a historical discussion of cryptography. Emphasis then shifts to security in computer systems, particularly identification, authorization, operating system security, data flow security, and data base security. ATMs and POCs are rapidly entering the business scene. Security considerations, especially for multi-organization transactions, will be covered as a specialized extension of some of the more general previous discussions. Computer systems are similar to other assets and businesses in certain aspects of security, and these will be the next topic. Included are such areas as physical security, site selection, and insurance for hardware and data.

Course Topics:

 1.    Introduction  6.    System security (continued)
 2.    Encryption    c.  Information access problems
   a.  Basic techniques    d.  Service problems
   b.  1940's advances  7.    Operating systems
   c.  Modern Computer approaches  8.    Data bases
 3.    Data encryption  9.    Networks
 4.    Secure communication 10.    Physical protection
 5.    Digital signature 11.    Risk Analysis
 6.    System security 12.    Legal issues
   a.  Identification 13.    Ethical issues
  b  Authorization      

Evaluation Procedures:

 Project  50%
 Midterm (in-class)  20%
 Final (take-home)  30%

Graded exams (both midterm and final) will be returned.

For the project, I will return a comment sheet and grade. If you want the comments directly on the project itself, send two copies and I will return one.

The projects will be due approximately 10 weeks into the semester, so the material can be discussed in class. DO NOT select a topic that is company proprietary or otherwise restricted with respect to public dissemination.

Anything mailed to me must be sent to my campus address (Department of Computer Science, CSU, Chico, Chico, CA 95929-0410).