Course
Syllabus for CO 315, Large File Organization and Access
Computer Science Department, Indiana University of Pennsylvania
Dr. John A. Cross, Fall 2000
1. Course and Curriculum Design
COSC 315 - Large File Organization &
Access
Credits: 3.00
The organization of large computer files for business systems, information
systems, and other applications. Use of advanced COBOL for efficient file
access. Evaluation of file access methods and directory organization.
Introduction to random file algorithms and integrated file systems.
Lecture: 3.00
College: College of Nat Sci and Math
Department: Computer Science
Pre-requisites: ( COSC 220 Minimum Grade: D )
This course is designed to continue to build
practical skills in file processing and data management for information
systems. CO 220 focused on sequential file processing tasks and algorithms
while developing hands-on skills in Cobol and batch processing. CO 315 adds
random access and interaction to those concerns. CO 310 introduced you to
internal data structures for organizing data, algorithms for effective use of
those structures, and procedures for analyzing processing cost. CO 315 applies
these concepts to files that are large enough to require secondary memory and the
ability to measure and tune the performance of file systems. (CO 310 is
strongly recommended as a prerequisite to this course.)
Since this course was originally designed,
object-oriented methods and data base technology have become widely accepted.
CO 441, Database Management, has been an important sequel to CO 315 in our
undergraduate degree programs for many years. The Computer Science Department
is working on moving database topics into the position that CO 315 currently
occupies in our curriculum. However, CO 315 will remain in its current form for
at least another year and it is a prerequisite for other courses, especially CO
441 and CO 319 (Software Engineering).
2. Course Objectives
3. Evaluation Methods. I will award points for your performance on projects,
in-class activities, quizzes, two exams, and a final exam. All exams will be
open-book and open-notes. There will be roughly 300 points for examinations and
quizzes and 225 points for other graded activities.
I use point scores to determine grade
cutoffs. The grade cutoffs will reflect my best judgment of what letter grade a
particular point total represents. Grade cutoffs will be no higher than 90%,
80%, 70%, and 60% of the possible point total for grades A through D. I will
determine your course grade based on your point total relative to the grade
cutoffs, plus my personal judgment for students who are at a borderline score.
The primary factor for deciding a borderline score will be exam and quiz
scores.
I am under no obligation to grade late
assignments and I may simply lose them. If you are not finished working when a
program is due, submit what you have finished. I will assess a 5-point penalty
per meeting for all late assignments or assignments requiring resubmission
(grade R), up to 50% off. If you fail to hand in any assignment, I may assign a
one-letter grade penalty in addition to a zero for the assignment. You may
check your grades throughout the academic session by using the
"grade-check" program on the academic VAX. Don't be late; don't
procrastinate; don't miss class.
4. People who will help you learn. The best way to contact me outside of class is
through E-mail To: jacross@grove.iup.edu. You may check my online office hours and advising notes. If you want to see me at another time, you may make
an appointment through e-mail or by phoning me. I maintain a course support page for CO315.
If you need technical help, please access
appropriate man pages or online help as a first step. Please bring as much
current hard copy as you can. "Bringing something up on my screen"
should be a last resort.
The student helpers in public work areas
will probably not be much help; that is not their job function even if they
could provide good help. I encourage you to learn from each other. Talk with
fellow students, but be careful that you do not get or give too much help on
programming assignments. Inspecting each other's plans and code is good
professional behavior; group coding and submitting someone else's work as yours
are serious forms of academic misconduct. Email me and annotate anything that I
may construe as improper academic conduct.
Note: I attempt to make one or more projects
a two-person effort. Timely, professional effort is especially critical when
you work together. I hope that you will help each other learn more than you
annoy each other; I usually observe a little of both.
5. Handins for projects. When you submit paper for a project, place the
following items in LARGE BLOCK LETTERS on the outside of the folded listing.
Folding greenbar paper around your submission should be adequate to keep it
together. DO NOT staple your handin in a way that makes it difficult to read.
(YOUR NAME)
COSC 315
PROJECT (PROJECT NUMBER)
SUBMITTED (DATE SUBMITTED)
Annotate each project requirement and
how you met it. A handin that is
easy to grade may receive bonus points; a project that is difficult to grade
may have additional points taken off. A project with incorrect output is likely
to receive more favorable consideration if you annotate the flaws in the
output, possibly with your best guess about what went wrong. You must provide
adequate demonstration that your project does what it is supposed to do.
Usually this requires multiple tests with the correctness or flaws of the
results annotated. If your printed handin contains extraneous things, line them
out so that the grader does not get annoyed or confused. Do not edit any script
or carbon files except to make them printable. Always include a directory
listing of the pertinent files, with date of last modification and size.
Projects are due in Stright 107 on the due
date by 5:00 P.M. You may submit projects in class on the due date. If your
handin consists of several separate documents, that is OK, but you must have
the above data on every document and fold them together. Do not make it
difficult for me to grade your work. I will not grade what I cannot find
easily.
6. Style. All programs (including programs written in
the command language interface for an operating system) must begin with
comments that declare three things: the problem; programmer's name; and the
date when the program was written. A good guideline for what to comment is to
consider what was said in the problem statement and your algorithm design.
Every good program or script should have a plan; the minimum for a plan is a
sequence of statements about program data and steps in the procedure. Write
your plan before you write code. Put these statements into your code in appropriate
places. Then write the code.
Show the logical structure of your code by
consistent indentation. Use upper and lower case, following conventional
English usage, in interactive dialogue and comments. Follow a consistent style
for the use of upper and lower case in your code. Cobol was designed in the
early 1960's to be English-like and readable. Note that lowercase text and
terminal format have been widely available for program code since the early
1980's. All uppercase code is less English-like and less readable than
conventional prose style. Terminal format is better suited to terminals while
ANSI format is better suited to punched cards. Although your programs may run
correctly with poor visual style or other style flaws, points will be subtracted
from your grade for poor style.
7. Attendance And The "Buddy"
System. According to university
policy, you are responsible for all class activities, including quizzes, exams,
and handouts. I do not grade on attendance, but you will probably hurt your
grade by missing class. Any class absence jeopardizes your chance to benefit
from this course and achieve a good grade. This course relies heavily on
lecture notes and classroom interactions. Make arrangements with a classmate to
share notes and pick up handouts if you are not in class. (This is my
"buddy system." Please let me know if your buddy appears to be
drowning!)
I will keep track of attendance because I
have found that it helps you. In accordance with official IUP policy, I hereby
state that I reserve the right to reduce your grade for excessive class
absence. If you want to play games with rules, ANY absence for oversleeping or
any other reason short of health, sudden personal problems, or transportation
emergencies is unwarranted. . Do not miss class! Do not
fall behind!
8. Textbooks and Other Documents.
Required textbooks: None! :-( Strong recommendation: Maintain a notebook
with daily notes and printed copy of online support materials. Locate and use a
Cobol textbook that includes the topics we will address this semester. (Your
COSC 220 text should be adequate.)
Recommended books:
·
Textbooks from CO 110,
CO 220, and CO 310.
·
Help, man pages, and
Web pages for all compilers and utilities related to this course!
·
Online resources for this course.
·
Loomis, Mary. Data
Management and File Structures, Second Edition. 1989. Prentice-Hall.
9. Special Resource Requirements. IUP will provide you with access to all the necessary
computer hardware and software. You will use PC's in Windows 95/98 and the
academic VAX/VMS. The Computer Science Department encourages students to
acquire sufficient personal computing resources to access IUP computing
facilities for this course and do significant computing on your own. Your
instructor, Microcomputer Support Services (Mack Data Center), and the IUP
Co-op Bookstore will provide free consultation to students who are considering
the purchase of personal computing resources. Lab hours and system details are
online.
*
End of Syllabus for COSC 315 *