CPSC 871: Introduction to Software Engineering
Instructors: Dr. John D. McGregor
Associate Professor, School of Computing
312 McAdams Hall; phone 864-656-5859; email: johnmc@cs.clemson.edu
Office Hours: TTh: 2:00 – 3:15; other hours by appointment
Catalog Description:
CP
SC 871 Foundations of Software Engineering 3(3,0) Techniques
and issues in software design and
development; tools, methodologies and environments
for effective design, development
and testing of software; organizing
and managing the development
of software projects. Preq:
Graduate
standing in Computer Science.
Course Objectives:
· Provide experience in an end-to-end software engineering process
· Provide exposure to state-of-the-practice and state-of-the-art software engineering methods
· Provide criteria for evaluating alternative methods for each software engineering task
· Provide a foundation for further study in software engineering
Textbooks:
Instructor notes and available web resources
|
Exams |
65 points |
|
Assignments |
30 points |
|
Class participation |
5 points |
|
|
|
Academic Integrity:
The university’s academic integrity statement says: As members of the Clemson University community, we have inherited Thomas Green Clemson's vision of this institution as a "high seminary of learning." Fundamental to this vision is a mutual commitment to truthfulness, honor, and responsibility, without which we cannot earn the trust and respect of others. Furthermore, we recognize that academic dishonesty detracts from the value of a Clemson degree. Therefore, we shall not tolerate lying, cheating, or stealing in any form. See: http://www.cs.clemson.edu/html/academics/academic_integrity_2002.html for more.
August 27 Last day to register or add a class
September 3 Last day to drop a class or withdraw from the University
without a W grade
October 14-15 Fall break
October 29 Last day to drop a class or withdraw from the University
without final grades
November 27-29Thanksgiving holidays
December 9-13 Exams – Monday Dec 9 at 3pm
December 19 Graduation
Topical course
outline:
|
Development module |
Quality counterpart module |
|
Introduction |
Process models |
|
Requirements elicitation/analysis |
Requirements review |
|
Team work/project management |
Version control |
|
Architecture |
|
|
Architecture analysis |
Architecture evaluation - ATAM |
|
Design patterns |
|
|
Systems of Systems |
Interaction testing |
|
Component-based Software Engineering |
Verification and Validation |
|
Detailed design |
Design reviews\verification
techniques |
|
Design of user interfaces |
Usability testing\verification
techniques |
|
Interface specification |
Unit testing\verification techniques |
|
Implementation issues |
Realization tools |
|
Integration |
Integration testing\verification
techniques |