Fall Term: September 8 – December 15, 2005
Instructor: Dr.
Vladimir V. Riabov, Associate Professor of Computer Science, Division of
Sciences
Office: STH-312;
Phone: (603) 897-8613; E-mail: vriabov@rivier.edu
Web : http://www.rivier.edu/faculty/vriabov/index.htm
COURSE
DESCRIPTION:
This course covers techniques and methodology of commercial software engineering practices. The system software life cycle processes used in industry today and methods of graphically representing software, data and control will be learned. Prerequisites: CS250 Data Abstraction.
COURSE OBJECTIVES:
Students will be introduced to the software engineering design process. Topics covered include the software life cycle, software quality, requirements analysis, architectural design, data design, detailed design methods, software project management, and miscellaneous topics.
Students will participate as members of one of several teams on a software project. There will be design and code reviews and a student project leader will assure timely delivery of the results before the end of the term. The software is expected to be integrated and run without error on a computer in the Rivier College Computer Lab. Each person will have a specific “role” on the team and will receive a grade for efforts as an individual team member as a team grade.
· Roger S. Pressman: Software Engineering: A Practitioner's Approach, 6th Edition; McGraw-Hill, 2005 (Resources: http://www.mhhe.com/pressman/).
RECOMMENDED BOOKS:
· Ian Sommerville: Software Engineering, 7th Edition; Addison-Wesley, Reading, MA, (2004). Slides can be downloaded from URL: http://www.comp.lancs.ac.uk/computing/resources/SE6/Slides/index.html. Software Engineering Resources: http://www.comp.lancs.ac.uk/computing/resources/ser/SE.links.html.
· (OOD) Dennis, Wixom, and Tegarden, System Analysis & Design: An Object-Oriented Approach with UML, John Wiley & Sons, Inc., 2002 or 2005 (Resources: http://www.wiley.com/college/dennis/).
· (SAD) Shelly, Cashman, and Rosenblatt, System Analysis & Design, 5th edition, Course Technology, 2003 (Resources: http://www.course.com/catalog/downloads.cfm?isbn=0-7895-6649-4);
· (OOS) Stephen R. Schach, An Introduction to Object-Oriented Systems Analysis and Design with UML and the Unified Process, McGraw-Hill, 2004 (Resources: http://www.mhhe.com/schach/).
COURSE PREREQUISITES: Preliminary Core Courses (C/C++ or Java and Data Structures)
Weekly Homework Assignments 60%
Participation in Team Software Project 30%
Quizzes 10%
Presentations, Active Participation up to 5 Points extra credit
CLASSROOM POLICIES:
Any late assignments will receive a 10% grade discount. Assignments must be completed on time. Only those situations involving instructor’s permission will be exempt from this policy. Instructor must know in advance of class that a student will not be present or an assignment will be late.
ATTENDANCE:
Active participation requires attendance and arrival to class in time to be prepared for work when the class period begins. You are expected to attend all classes. Much of the learning will take place in classroom activities that cannot be duplicated easily outside of class. If you miss class, you are responsible for doing all classroom activities you missed, getting the notes from a classmate, and turning in all work on the day it is due. If you miss more than two classes, your absences will be reported to the registrar and you must meet with the professor to discuss the advisability of your remaining in the course for the remainder of the semester. Students who miss three classes may be withdrawn from the course and receive disciplinary action from the college (see Rivier College attendance policy). If you anticipate that job-related duties or prior commitments will cause several absences, please discuss the matter with the instructor outside of class.
HONESTY POLICY:
All work turned in on tests and quizzes must be entirely your own. Behavior contrary to this will result in a grade of F on the test. Serious infractions may result in an F for the course. Similarly, the paper you write for your project must not be plagiarized. See library discussion on plagiarism. Regarding homework, the instructor will not give you credit for any work that is copied from another source (from a classmate, instructor, a text, the answer key, web assistance, tutor, etc.). Take notes while getting help, but put aside the notes as you attempt to do the problems on your own.
AMERICANS WITH DISABILITIES
ACT (ADA):
Rivier College wants to provide reasonable accommodations to students with disabilities. To accomplish this goal effectively and to ensure the best use of our resources, timely notice of a disability must be provided to the Office of Special Services for verification and for evaluation of available options. Any student whose disabilities fall within ADA should inform the instructor within the first two weeks of the term of any special needs or equipment necessary to accomplish the requirements for the course. To obtain current information on this procedure, contact the Office of Special Services at telephone extension 8497.
COMPUTER
LABORATORY:
Students will be required to use computers in the Computer Lab for coding and testing the software. Since this is a team project all software must be available in a single place. The Lab equipment can be used between 9 a.m. and 10 p.m. If you have any problems with the equipment, contact Sister Martha’s office in the Computer Lab.
COMPUTER LANGUAGES
& TOOLS:
UML, Java or C/C++ may be used. The ArgoUML tool is available in EDU-305 and STH-135 classrooms (or free on the Internet) and may be used for the team project development. The Project Team Leader will be responsible for assuring designers create “compatible” modules and properly link the modules.
INSTRUCTOR AVAILABILITY:
I will be available before and after class, during the office hours at my office (STH-312) and via telephone: (603) 897-8613 or E-mail: vriabov@rivier.edu (E-mail is a preferable form for communication).
CLASS SCHEDULE: (Thursdays, 7:45 PM – 9:45 PM)
Week |
Date |
Subject |
Output from Class |
Text Reading |
01 |
Sept. 8 |
Software & Software Engineering; Process Framework; CMMI |
Form Project Teams |
Chs. 1, 2 |
02 |
Sept. 15 |
Software Development Life Cycle, Process Models; Project Mgmt. |
Team Project TOPIC Due |
Chs. 3, 21 |
03 |
Sept. 22 |
System Engineering; Requirements, Specs. |
Homework #1 Due |
Chs. 6, 7 |
04 |
Sept. 29 |
Analysis Modeling |
ArgoUML Tool; Quiz #1; Functional Spec Due |
Ch. 8; Notes; ArgoUML Manual |
05 |
Oct. 6 |
Design Engineering & Architectural Design |
Homework #2 due; Functional Spec FROZEN |
Chs. 9, 10 |
06 |
Oct. 13 |
Component-Level Design |
Quiz #2 |
Ch. 11 |
07 |
Oct. 20 |
User Interface Design |
Homework #3 due |
Ch. 12 |
08 |
Oct. 27 |
Software Testing Strategies |
Design Spec due; Quiz #3 |
Ch. 13; Notes |
09 |
Nov. 3 |
Software Testing Techniques |
Homework #4 due |
Ch. 14; Notes |
10 |
Nov. 10 |
Software Metrics & Quality |
Design Rev Report due; Quiz # 4 (optional) |
Ch. 15; Notes |
11 |
Nov. 17 |
Software Cost Estimating; Process & Project Metrics |
Homework #5 due; Revised Design Spec FROZEN |
Chs. 22, 23 |
12 |
Nov. 24 |
NO CLASSES |
NO CLASSES |
NO CLASSES |
13 |
Dec. 1 |
Risk & Quality Management; Software Change & Evolution |
Homework #6 due |
Chs. 25, 26 |
14 |
Dec. 8 |
Re-Engineering; Configuration Management |
Project Status due (for Project Managers only) |
Ch. 31; Notes |
15 |
Dec. 15 |
Team Presentations |
Software & Documents due; Software Accepted/Rejected |
|