CPSC 871/881: Introduction to Software Engineering for
Systems Engineers
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: 9:30 – 10:45; other hours by appointment
Catalog Description:
CP
SC 881 Introduction to Software Engineering for Systems Engineers 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 or
Systems Engineering.
Course Objectives:
· Provide an overview of software engineering for systems engineers
· 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
This course will be taught on line.
You will participate in activities such as listening to lectures and carrying
out exercises. The course involves no programming but it does involve the use
of tools. Since this is a
distance learning course the student must have access to a Windows/ Linux/
Apple system that is capable of running the latest version of Eclipse Process
Framework (www.eclipse.org/epf) and Topcased (www.topcased.org).
Grading Policy:
There are 12 modules.
To earn a C you must have 8 accepted modules
To earn a B you must have 9 accepted modules
To earn an A you must have 11 accepted modules
The project will be part of the
module assignments.
Tokens:
It is understood that life is chaotic and that taking courses while working full-time only contributes to the chaos. While each Module Assignment has a definite due date by which the assignment must be turned in to be considered Acceptable, each student can turn in or resubmit up to three assignments at any time in the course. These do-overs are formalized as Tokens. Each student begins the course with three tokens. Tokens are spent when the student submits a Module assignment past the due date or resubmits one that was deemed Unacceptable. Token balances will be available at any time.
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.
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 |
|
Design of internal Interfaces |
Unit testing\verification techniques |
|
Implementation issues |
Realization tools |
|
Integration |
Integration testing\verification
techniques |