
Your grade in the course is based on these weighting factors: lab exercises 10%, midterm exam 20%; final exam 35%; programming projects 35%. Conversion from numerical to letter grades is done only when final grades are to be assigned. Grades are usually adjusted to the overall performance of the class, although there is no formal "curve" used.
There will be a one-hour midterm and a two-hour final exam, both strictly timed. These will be open-book, open-notes exams. If you are coming to class regularly, and keeping up with the reading and the projects, the exams should not be difficult for you. Exams will require a mixture of reading and interpreting short program segments, writing short program segments, and short "essay" questions.
There will be five or six projects. Details will be given to you separately, but, in summary, the programming part of these will be written in Ada 95. In principle you will use the GW computing facilities. You may also use a computer at home or at work, but must log in to the GW system frequently (once a week) to check for e-mail and download files.
Projects must represent the results of your own work. I cannot prevent your speaking with friends to sketch out a solution. But if you collaborate on the detailed design or coding, or copy a program from an acquaintance, then submit the results as your own work, I will charge you with plagiarism, and I will win. Please read the handout on Plagiarism and Collaboration. Also read the GW Code of Academic Integrity.
Lab exercises must be completed during the lab period, and will count 10% of your final grade.
Under University and SEAS regulations, here are the rules for withdrawing from courses:
Under University regulations, and my own policies, here are the rules for Incomplete grades:
An Incomplete grade is undesirable. You are required to remove the I by completing the work of the course. Taking the course a second time does not (NOT!) remove the original I. Under SEAS rules, an Incomplete not removed within one year becomes an F.
We, like about 150 other colleges and universities, are using Ada 95 in this course because we are convinced it is absolutely the best choice for a course of this type. We have used Ada here since 1985, and Ada 95 since 1995, and it works!
The basic syntax of Ada is very similar to Pascal, and not very difficult; if you have had a course in Pascal, C, C++, or Java, you will probably find it straightforward to learn Ada. Hundreds of students like you have taken CSci 131 successfully. If you have not previously studied any of these programming languages, you are much better off to take CSci 51 before attempting this course.
If you have not previously studied the basics of Ada, you will find it helpful to read the first 9 chapters of the text used in CSci 51, which is Feldman/Koffman, Ada 95 Problem-Solving and Program Design, Addison Wesley, published Feb. 1996 (ISBN 0-201-30485-6). Alternatively, if you are experienced with C or C++, you might find Johnston, Ada 95 for C and C++ Programmers, Addison Wesley 1997 (ISBN 0-201-40363-3), to be useful in picking up Ada.
More information about Ada 95 (compiler availability, etc.) will be given in class. You can also learn lots about this interesting language on the web at http://www.acm.org/sigada/education.