CSE 1001: Fundamentals of Software Development I (Spring 1999)

General Information

Instructor

Ryan Stansifer, contact info at http://www.cs.fit.edu/~ryan/ , e-mail address ryan@cs.fit.edu

Lectures

Lectures are from 9:30pm to 10:45pm Tuesdays and Thursdays in A102.

Lab sections

The class has one lab section which meet in the CS PC Lab, S 332 (the Crawford Science Building) at 3:00pm to 4:50pm on Monday. The lab instructor is Rishi Gupta e-mail address rgupta@cs.fit.edu. The lab WWW site is http://www.cs.fit.edu/~ryan/cse1001/lab

WWW-based Bulletin Board

The Computer Sciences ListServ Site has a WWW-based bulletin board especially for this class. Please read and contribute to it.

Catalog Description

CSE 1001. An introduction to software development as it applies to small programs. Students learn to program in a higher-level language and will learn to read, understand, write and evolve typical small-higher-level programs.

Course Goals

In this class we expect students to learn

This class has no prerequisites.

Another document gives a more detailed list of topics to be covered in this class. And another WWW document gives a syllabus with links to the example programs covered in class.

Students often come with a wide variety of backgrounds and vastly different experience. As a consequence some students may be bored and some may be lost. Your patience, support of your classmates, and participation in class are appreciated.

Textbook

The textbook for this class is the

Nell Dale, Chip Weems, and John McCormick. Programming and Problem Solving with Ada. D. C. Heath, Lexington, Massachusetts, 1994. ISBN 0-669-29360-1.
We will follow the book quite closely. We expect to cover all the chapters in the text up to 12. If time permits, we may cover some additional material.

The book comes with a diskette containing all the Ada programs appearing in the book; the programs are also available on the WWW (see below).

Information on the WWW

How to get an Ada Compiler

You do not need to get an Ada compiler; will be using the GNAT compiler and it is available both in the CS PC lab (S 332), and by anyone with an account in the Harris Lab.

If you would like your own Ada compiler, and you have a (large and fast) computer, the GNAT compiler is free and runs under Linux and Windows 95. Down-load the distribution from the Ada Core Technologies WWW Page. The distribution for Windows 95/NT includes the IDE and is 12 MB large. A local copy convenient for downloading is in the directory gnat.

A CD is available to purchase with software for Windows 95 on it. This CD also contains the example programs, course notes, and exam questions.

Programming Style

No Ada program will be considered completely correct unless it is a model of clarity and good style. You must compile all programs with the -gnatr option to enforce a minumum level of compliance with these generally accepted standards. A separate document gives some advice on style. A lengthy and detailed style guide for Ada 95 is available on the WWW. It gives specific and sensible advice about writing clear Ada programs.

Classwork and Grading

There will be three midterms and a final in the class. Lab projects will count 40% of the total grade. Each midterm will count 10% and the final 30%. Each exam and lab project will be assigned a numeric score. The average numeric score is roughly equivalent to a C+/B- letter grade. The letter grade for the class will be assigned to each student based on the weighted sum of these numeric scores. Your grade is determined by how you do relatively to the rest of the class, not by the magnitude of your numeric scores. No letter grades will be determined until the final grade. Florida Tech use the A, B, C, D, and F system--no pluses and minus. Some cutoffs between grades will inevitably be close. Please do not take it personally--try to be above the cutoff!

All work is to be your own. Please keep in mind the CS honor code. On tests, be sure to explain your answers as if you were tutoring someone else. Anything in the textbook may be on the test, even if we do not cover it in class. Read the book; to prepare for the tests do the problems at the end of the chapters. Some of this problems will be on the tests.

For each student the numeric scores for the lab assignments and exams are recorded. If you have any question about your standing in the class, or if some score has been recorded wrong, please contact me immediately. Corrections will not be made long after the due dates.

Please note, that copies of some work (homework, projects, exams, etc) is kept on file for review by the CSAB, for the purposes of maintaining the accreditation of the CS program.

Grade distribution

In the past the grade distribution has looked like this:
     Fall 1994   Fall 1995   Fall 1996   Fall 1997  Spring 1998  Fall 1998
  A     5 15%      12 25%       8 16%       9 17%        1  5%      6 12% 
  B    11 32%      18 38%      17 35%      13 24%        7 37%	   11 22%
  C    10 29%      12 25%      11 22%      18 33%        4 21%	   20 39%
  D     4 12%       3  6%       8 16%       8 15%        5 26%	    7 14%
  F     5 15%       3  6%       5 10%       6 11%        2 11%	    7 14%
       ------      ------      ------      ------   -----------  --------
       34          48          49          54           19         51

Reading for Fun

Important Dates

Monday, January 11, 1999first lab
Tuesday, January 12, 1999first lecture
Tuesday, February 9, 1999first midterm, Chapters 1-4
Thursday, March 4, 1999second midterm, Chapters 5, 6
March 8 -- March 12, 1999Spring break - no classes
Thursday, April 1, 1999third midterm, Chapters 7-9
Thursday, April 29, 1999last lecture
Monday, May 3, 1999final exam (3:30pm-5:30pm), Chapters 1-12

Quote by E. W. Dijkstra

We now know that a programmable computer is no more and no less than an extremely handy device for realizing any conceivable mechanism without changing a single wire, and that the core challenge for computing science is hence a conceptual one, viz. what (abstract) mechanisms we can conceive without getting lost in the complexities of our own making.

E. W. Dijkstra, "On a Cultural Gap," The Mathematical Intelligencer, volume 8, number 1, 1986, page 49.


Ryan Stansifer <ryan@cs.fit.edu>
Document location: http://www.cs.fit.edu/~ryan/cse1001/
Last modified: Mon Feb 8 17:51:22 EST 1999