Course Expectations and Tentative Syllabus

 

CSC:480                               Project Design                                                                                   Fall 2003

                                                Olney 200                                                                                          Tu Thr 11:00am-12:15pm

 

Professor:                             Dr. Michael Redmond   

                                                330 Olney Hall  (215) 951-1096

                                                redmond@lasalle.edu

                                                http://www.lasalle.edu/~redmond/teach/480/

 

Office Hours:                       W 10-10:50am; MWF 12-12:50am, TuThr  2:00-3:00pm

                                                And at other times by appointment. Also, by phone and e-mail.

 

Text:

                   Sommerville, I., Software Engineering, Sixth Edition, Addison-Wesley, 2001

 

Course Description:

                This is the first course in a two course senior sequence of courses. The intent is for these two courses (480 and 481) to act as a “capstone” on the undergraduate experience. To do this, we develop a large semi-realistic project. We also cover basics in software engineering – which is a field within computer science devoted to applying rigor to the software development process in order to increase the odds of successful projects.

                The catalog description of 480 says:

Basic concepts and major issues of project design using a software engineering approach; project planning; cost estimation; requirements definition. Requires a team project to design a software system.

                The catalog description of 481 says:

A continuation of CSC 480; Implementation issues; programming language features; validation techniques; software maintenance. Requires a team project to develop, document, test, and maintain a software system.

                This course focuses most heavily on requirements definition and design, with some coverage of project management. We use prototype development as part of requirements determination, as done in many organizations today. 481 focuses on full development, validation and maintenance. This is perhaps the most applied, most project oriented course(s) in the CS curriculum. Group work is fundamental to this course, in order to be realistic. Class attendance is critical, due to in class meetings/ group work. Short quizzes will be given at the beginning of most classes.  Arrive promptly.

 


 

                Course Objectives

 

Concepts:

 

1. The student should understand the processes involved in software engineering.

 

2. The student should understand important aspects of project management, including tracking progress.

 

3. The student should understand the process of determining system and software requirements.

 

4. The student should understand the importance of good design.

 

5. The student should understand design processes in Object-oriented and regular development.

 

6. The student should understand design principles for current interface  technologies.

 

 

 

Applications:

 

1.        The student should gain experience in a significant team development project.

 

2.        The student should gain experience managing a significant project.

 

3.        The student should gain experience carrying out interviews as part of requirements determination.

 

4.        The student should gain experience using OO design tools such as UML.

 

5.        The student should gain experience doing system and interface design.


 

 

Grading:

Midterm                                                                              15%

Final Exam                                                       20%

Small Assignments                                        10%  (probably project management and UML)

Class Participation                                          10% (including beginning of class reports)

Project

                Requirements Document                10%

                Design                                   15%

                Prototype                              10%

                Presentation                            5%

                Reflective Paper                     5%

 

                Final Grades:

A                92-100                                A-                 90-91

B+                88-89                                B                82-87                                B-                80-81

C+                78-79                                C                72-77                                C-                70-71

D+                68-69                                D                60-67                                F                < 60

 

Makeup exams only by advance arrangements or for documented real emergencies, such as medical problems. Makeup may involve double counting final exam. The final exam is cumulative, with heavier focus on the previously untested second half of the course.

                I expect two “smaller” assignments in addition to the project. These will probably be assigned one week and be due the next week. If you need to miss class, make sure you find out what happened.

                The project is a group project. You will be assigned to groups. Part of your responsibility is to make the group work (as in the real world). The project has several deliverables over the course of the semester: requirements document, design, prototype, and a presentation during the final exam period. In addition, you will write a short, reflective paper about what you learned in working on the project. More details will be available later.

                Class attendance and participation are important, and is counted in the final grade.  An important part of class participation is preparation. Reading the assigned readings prior to class allows class time to be productively used for discussions and activities rather than repeating information that is in the book. Hence to encourage and assess preparation, students must turn in at the start of each class a brief write up with – A) what you believe are the 5 most important points of the chapter or sections of the chapter; B) the biggest question you have on the material; and C) a possible test question on the material covered.

Information about the project will be distributed after some initial coverage of software engineering topics. Most weeks after the midterm will include some time for groups to meet and to meet with me. It is expected that significant additional time and communication outside of class will be necessary.

Note also that, to discourage slackers, that if you do not do your share of the project you can get a lower grade than the group grade. If there appears to be a problem in a group, first try to solve it internally. If that doesn't solve the problem, as a last resort (but before the end of the term), I may have to mediate. I reserve the right to assign different project grades to different team members if effort appears to be unequal.

 

 


 

Tentative Course Plan:

 

Date        Material                                                                           Reading

 

 

Aug 26                     Intro to Class,

Aug 28                        Intro to Software Engineering                           Chapt 1

 

Sept  2                     Systems Engineering                                               Chapt 2

Sept  4                    Software Processes                                              Chapt 3

 

Sept  9                    Project Management                                         Chapt 4

Sept 11                   Project Management Software

 

Sept 16                   Software Requirements                                        Chapt 5

Sept 18                   Requirements Engineering                                           Chapt 6

 

Sept 23                   System Models                                                  Chapt 7

Sept 25                   Software Prototyping                                           Chapt 8

 

Sept 30                   TEST

Oct    2                    Project Begins

 

Oct   7                     Formal Specification                                         Chapt 9

Oct   9                     Project – Requirements

 

Oct 14                     Architectural Design                                          Chapt 10

Oct 16                     Project - Requirements

 

Oct 21                     FALL BREAK – NO CLASS

Oct 23                     Project – Requirements

 

Oct 28                     OO Design                                                   Chapt 12

Oct 30                     Project – Requirements

 

Nov 4                     Design with Reuse                                            Chapt 14

Nov 6                     UML Software

 

Nov 11                   User Interface Design                                   Chapt 15

Nov 13                   Project – Design

 

Nov 18                   Project – Design

Nov 20                   Project – Prototyping

     

Nov 25                   Project – Prototyping

Nov 27                   THANKSGIVING – NO CLASS

 

Dec 2                      Project – Prototyping

Dec 4                      Project –Presentations

 

Dec 9  10:30am                Final Exam