CSCI 350 - Software Engineering

Spring 2013

Course Overview:

This course investigates software engineering techniques for maintaining intellectual control of software projects. While programming is an indispensible component of software engineering, the terms are not synonymous. In the big picture, software engineering consists of the following tasks:

Several different software projects will be developed in parallel during the semester. All of the above activities will be performed for each project. You will rotate between the projects throughout the semester. Requirements analysis and some specification work will be done individually; other tasks will be performed in teams.

At the end of the course, you will be expected to be able to: Instructor: Dr. Gabriel Ferrer
M.C. Reynolds 312
http://ozark.hendrix.edu/~ferrer/

Office Hours:
MF: 1:30-3:30 pm
W: 1:30-2:30 pm
TR: 2:45-4:00 pm
Visitors are welcome whenever my door is open, and you are always welcome to make appointments.

Class Web Page: http://ozark.hendrix.edu/~ferrer/courses/350/

Lecture Time: A3 (MWF 10:10-11:00 am)

Final Exam Period: Friday, May 3, 8:30-11:30 am

Required Textbook: Writing Effective Use Cases by Alistair Cockburn, Addison-Wesley, 2001.

Grading Criteria:
Requirements documents and specifications: 20%
Presentations: 15%
Term paper: 20%
Class Participation: 5%
Project implementation: 40% (subdivided as follows): Each assignment and presentation will be assigned a letter grade. Each letter grade has associated with it a percentage grade as follows:
Letter gradePercentage
A95
B85
C75
D65
F50
Missing grades will be scored zero. Any grade can have a "+" or "-" attached to it. A "+" is worth +5, and a "-" is worth -4. A grade of "A+" will only be assigned to work that in some way impresses me above and beyond the requirements for the assignment.

For each category above, the total points earned will be divided by the total points possible to yield a percentage. These percentages will be weighted as given above. A final average of at least 90 earns an A; 80 earns a B; 70 earns a C; 60 earns a D; below 60 is failing.

Requirements documents: We will complete a series of exercises from the textbook to build skills in writing requirements documents. These exercises will culminate in a complete requirements document for one of our class projects. A printed copy of each document you compose should be brought to class on the day it is due. For some assignments, it is also required that an electronic copy should also be submitted.

Project implementation: Once requirements documents have been completed, project implementation will begin. Each project will continue for the rest of the semester. Students will be divided into teams for each project iteration. Project grades will take into consideration:

Team Responsibilities: All members of a team will receive the same grade for the submission. Students should keep in mind that procrastination will affect not only their grade, but the grade of other students. When a team project is underway, every team member has the responsibility to communicate with their teammates.

Presentations: Presentation assignments will happen at various times throughout the semester. Details for each presentation will be given when it is assigned.

Term paper: A term paper will be due on the reading day, April 30. It will be your personal summary of what you have learned from the course, in combination with a review of a book about software engineering. Book selection is up to the student; some possible ideas are suggested, but a book not on the list may also be selected. A book must be selected by March 15.

Writing Assignments and W2 credit: All writing assignments will be graded for both technical correctness and writing quality. If you elect to receive W2 credit for this course, you will also be required to revise your written assignments to correct issues in writing quality identified by the instructor. These revisions must all be satisfactory in order to receive W2 credit.

No late work will be accepted. Any work not submitted on time is a zero.

Computer Lab Facility: You will receive an account that enables you to use the Linux machines in MCReynolds 316. Be sure to review the lab policy page: http://ozark.hendrix.edu/linux/policies.html

Accommodations: It is the policy of Hendrix College to accommodate students with disabilities, pursuant to federal and state law. Any student who needs accommodation in relation to a recognized disability should inform the instructor at the beginning of the course. In order to receive accommodations, students with disabilities are directed to contact Julie Brown in Academic Support Services at 501-505-2954.