Fall 2005 CS 2205 Software Engineering

advertisement
Syllabus Fall 2005 CS 2205 Software Engineering
Instructor: Kyongil Yoon (kyoon@mcdaniel.edu), 410.386.4670 (ext 4670), LHS 114a
Office Hours: M-F 10:00-11:00 (other times by appointment)
Class Times: T TH 8:20 - 9:50 LHS 109
Textbook: Bernd Bruegge and Allen H. Dutoit. Object-Oriented Software Engineering: Using
UML, Patterns and JAVA (2nd Edition), 2004, Prentice Hall ISBN: 0-13-047110-0
Class Web Page: http://www2.mcdaniel.edu/kyoon/2005-Fall-2205/
Course Description:
Fundamental software engineering techniques and methodologies commonly used during software
development are studied. Topics include various life cycle models, project planning and estimation,
requirements analysis, program design, construction, testing, maintenance and implementation,
software measurement, and software quality. Emphasized are structured and object-oriented
analysis and design techniques, use of process and data models, modular principles of software
design, and a systematic approach to testing and debugging. The importance of problem
specification, programming style, periodic reviews, documentation, thorough testing, and ease of
maintenance are covered.
Prerequisites:
CSC 1107 or permission of the instructor.
Course Requirements & Grading
1.
Class attendance is mandatory for successful completion of the course. Students will be
expected to find time to complete the various assignments either on their own machines or
in the Lewis Hall Math/Computer Science Lab.
2. Programs can be done using CodeWarrior or XCode C++ which is available on campus only
on the G5 computers in the Mathematics/Computer Science Lab in Lewis Hall. When you
want to use a special environment, it is possible with permission of the instructor. Student
versions of CodeWarrior for either Macintosh or Windows computers are available from
Metrowerks, Inc.
3. Weekly assignments will be posted after Thursday class and due the following Thursday
class. Weekly assignments are expected to be submitted in paper form. It is fine to send
them to the instructor as attachments to email messages. Assignments submitted after the
due date will have a grade reduction of 10% for each day late up to a maximum of 5 days.
4. Project assignment will be posted on the class web page.
5.
Submission of work that is a modification or copy of another person will be considered a
violation of the Honor System unless authorization for using that code has been granted by
the instructor.
6. Grading will be based on the following
Weekly Homework/Assignment: 25%
Project: 40%
Midterm Exams: 15%
Final Examination:20%
Tentative Schedule of Classes
Week 1 (8/30, 9/1)
Introduction
Week 2 (9/6, 9/8)
Modeling with UML
Week 3 (9/13, 9/15)
Requirements elicitation
Week 4 (9/20, 9/22)
Analysis
Week 5 (9/27, 9/29)
Project organization and communication
Week 6 (10/4, 10/6)
System design
Week 7 (10/11, 10/13)
System design/Object design, Midterm October 13
Week 8 (10/20)
Object design
Week 9 (10/25, 10/27)
Mapping models to code
Week 10 (11/1, 11/3)
Testing
Week 11 (11/8, 11/10)
Rationale management
Week 12 (11/15, 11/17)
Configuration management
Week 13 (11/22)
Project management
Week 14 (11/29, 12/1)
Software life cycle
Week 15 (12/6, 12/8)
Methodologies: Putting it all together
Exam Week
Final Examination - to be announced
Download