SE 250a/b

Software Engineering Laboratory I

1999-2000

Objective

SE 250y begins with introductions to basic Von Neumann computer architecture and C programming. It is followed by an intensive coverage of the basic Unix utilities. In addition to understanding regular expressions, shell programming and the effective use of those utilities, students will be introduced to the basic Software Engineering Life Cycle and the relevant Unix supporting tools. The first term will conclude with an examination of Unix kernel syscalls. In the second term, students will participate in a group software engineering project, applying the lessons learned above. By the end of the course, the student will possess a knowledge of the basic tools necessary to engage in professional Software Engineering.

Contact hours

The course consists of 8 major modules given in a weeekly laboratory over the whole year. The material will attempt to be the software equivalent of a hardware lab. Each week, a new topic will be intorduced and students will be expected to program an example relating to that topic. All class materials will be made available in a course handbook.

Topics

  1. The basic Von Neumann computer architecture and an Introduction to Unix
  2. C programming
  3. Regular Expressions and Unix Utilities
  4. Shell programming
  5. The Software Engineering Life Cycle
  6. Unix Tools to support the SLC
  7. Programming with Unix Syscalls
  8. Major Project

Textbooks

  • Johnsonbaugh and Kalin, " C for Scientists and Engineers" P-H 1997
  • Blass, G. "Unix for progarmmers and Users" 2nd Ed. P-H 1999

Evaluation

In order to pass the laboratory, a student must obtain a passing grade in each component. A student who fails any component shall receive a final grade not greater than 48%. The approximate weights for each component in shown below. Note that these are maximums; if less than the stated number is given, the rest of the marks will be pro-rated.

  • 20% laboratory participation (10)
  • 30% programming assignments (4)
  • 20% quizzes
  • 30% major project