Syllabus: CS 4531 Software Engineering


Course Web Page

Term Schedule

Course Text: Core JavaServer Faces

Course Content and Objectives

This course will introduce you to the practice of software engineering, which we will define as "the process of solving customers' problems by the systematic development and evolution of large, high-quality software systems within cost, time, and other constraints". In some respects it is a continuation of CS 2511, Software Analysis and Design, in that it emphasizes object-orientation from both a design and coding standpoint. In other respects it goes beyond CS 2511, emphasizing domain analysis, requirements, and testing.

The course will be based on a combination of theory and practice, with the hands-on component using server-side Java. A large component of the course will be working on a team project.

Grading Basis

Your grade will be based on the total points you earn on exams, individual lab exercises, and a team project. These points are broken down as follows:

item number points each total
Individual Lab Exercise 1 10 10
Individual Lab Assignment 4 20 80
Team Project 1 156 156
Midterm Exam 2 100 200
Final Exam 1 100 100
Grand Total 546


The final grades will be based on the 546 point total. Generally:

90% guarantees an A
80% guarantees a B
70% guarantees a C
60% guarantees a D

These grade cutoffs will never be raised; but they may be lowered.

Course Organization

We will meet in small lecture on Tuesdays and Thursdays, when new material will be presented. The midterm and final exams will also be given in lecture. Lecture material, reading assignments, lab and project information, and all relevant dates are given on the TERM SCHEDULE.

You will meet in lab on Wednesdays, where you will initially practice using software engineering tools. Later, the labs will be devoted to working on your team projects.

Team Project Breakdown

The points for the team project are broken down as follows:

item number points each total
Team Lab 5 3 15
In-Class Team Meeting 7 3 21
Analysis Document 1 15 15
Test Plan 1 15 15
Prototype User Interface 1 15 15
Midterm Presentation 1 15 15
Demonstration and Final Web App 1 36 36
Individual Team Performance 1 24 24
Grand Total 156

Course Policies

Lectures

You are responsible for all material presented in lecture. Lecture notes will be available from the TERM SCHEDULE.

Exams

Exams will cover all lecture, reading, lab, and project material. Coverage and topics will be given on the course web page well before the time of the exam. Exams must be taken on the hour they are scheduled. They will not be given early, and can be made up only if documented evidence of medical emergency or death in the family is presented before the time of the exam.

Note: The final exam date and time is noted on the Term Schedule. It will not be given early. If you are an international student, do not make travel plans before this date.

Submission of Lab Exercises, Projects, and Documentation

Lab and project assignments will be submitted electronically. More details will be given in the assignment web pages.

Collaboration

The lab exercises are individual, and just like an essay or term paper, the work for them is expected to be your own. The team project, of course, allows collaboration among team members. A team may not, however, collaborate with another team on a project.

There will be no collaboration on exams.

Late Submissions

Lab exercises and assignments must be turned in by 8:00 p.m. the days they are due. Ample time is given to complete these projects, and the only reason for being late will be poor time management. Late submissions are subject to a 10% deduction per day, up to a 50% total deduction.

Labs that meets all requirements will be penalized a maximum of 50% if they are received by Friday of the last day of the regular semester; they will not be accepted during finals week.

Term Schedule

Permission to Copy Your Work

As you may know, the Department of Computer Science has an ABET-accredited bachelor's degree in CS. This is an indication of the strength of our program, and it benefits CS majors and even non-majors by allowing us to provide strong course offerings.

In order to retain accreditation, we must periodically collect samples of student work for each of the courses. To that end, the department would like your permission to anonymously copy samples of your work in this course. This will be done by eliminating all identification such as names, ID's, etc. before copying the work. This is voluntary. In the past almost all students have agreed to this, which has been a key factor in retaining accreditation.

If you do not want your work copied for this purpose, please send the instructor an email to that effect.

Thank you for helping with this; it is very much appreciated.

Etc.

Last Word

All excellent things are as difficult as they are rare. -- Spinoza

Page URL: http://www.d.umn.edu /~tcolburn/cs4531/syllabus.html
Page Author: Tim Colburn
Last Modified: Monday, 30-Apr-2012 16:25:05 CDT
Comments to: tcolburn@d.umn.edu