Course Description | Course Calendar | Grading | Policies | Resources | Project, Assignments, Handouts |
Prerequisites: Grade of C or better in CSC130/230/330. This course requires the student to have good object-oriented programming skills in C++. (The student is expected to learn on his own any computer skills needed to implement the course project.)
Description: This is an introduction to software engineering, which is the engineering discipline concerned with finding and applying solutions to problems encountered in delivering high quality, large-scale, real-world software systems in a timely and cost-effective manner.
Course Objectives: The overall goal is for the student to learn basic principles and techniques that can be applied to his or her career as a software engineer, or that can be the foundation for graduate study. The specific objectives are for the student to 1) learn foundations and terminology of the field of Software Engineering, 2) learn object-oriented modeling (UML) and classical modeling techniques, 3) practice doing requirements, analysis, design, implementation, and testing of a software system through a course project; and practice presenting project deliverables in written and oral form.
Student Learning Outcomes: By the end of the course, the student should 1) demonstrate knowledge of foundations and understand terminology of the field of Software Engineering, 2) demonstrate knowledge of object-oriented and classical modeling techniques, 3) apply knowledge outlined in Course Objectives 1 and 2 to the requirements, analysis, design, implementation, and testing/debugging of a software system in a course project; and present project deliverables in written and oral form.
Topics (with related chapters in textbook)
Required Textbook: Schach, Stephen, Object-Oriented and Classical Software Engineering. 7th ed. McGraw-Hill, 2007. ISBN 978-0-07-319126-3. Web site: <http://highered.mcgraw-hill.com/sites/0073191264/> Note: be sure to get the 7th ed.!
Week (Tu) | Lecture Topic | Class Activities, Due dates |
1/15 |
Intro & SW Process |
Student information due 1/17 |
1/22 |
SW Life Cycle, Teams |
Show proof of textbook ownership by 1/22 |
1/29 |
Requirements & UML |
|
2/5 |
PA1 demo in lab 2/5; client meeting 2/7 |
PA1 due 2/5 (10 points) |
2/12 |
Requirements & UML (contin.) |
|
2/19 |
Classical Analysis |
|
2/26 |
OO Analysis & UML | WA1 due 2/26 (10 points) |
3/4 |
Review & discuss WA1: 3/4 Test 1 (ch. 1-4, 10-11, part of 16): 3/6 |
Test 1 on 3/6 |
3/11 |
Spring Break (no class) |
|
3/18 |
OOA & UML (contin.) |
Revised WA1 due 3/20 (optional) |
3/25 |
Design |
|
4/1 |
PA2 demo in lab 4/1 and 4/3 |
PA2 due 4/1 (10 points) |
4/8 |
Implementation & Testing |
|
4/15 |
Planning & Estimating |
WA2 due 4/29 (5 points) |
4/22 |
Review & discuss WA2: 4/22 Test 2 (ch. 6-9, 12-16): 4/24 |
|
4/29 |
Project demo in lab 4/29 and 5/1 |
PA3 due 4/29 (10 points) |
5/6 |
No class (UNCG on Friday schedule) |
Revised WA2 due 5/6 (optional) |
Students are expected to attend all classes, to participate in class activities,
and to read assigned readings. Students will be assigned a course project
involving programming in an object-oriented language (C++ or Java), written
deliverables, and in-class presentations. The course grade will be based
on
Attendance is required. You may be dropped from the course for missing more than five classes.
Disruptive behavior during class such as cell phone use, use
of computers for non-class-related activities, private conversations,
arriving late or leaving early (unless you have made arrangements with
the instructor), and other non-class-related activities may result in a
request to leave the classroom. Persistent behavior of this type may result
in being dropped from the course (see UNCG Disruptive Behavior Policy).
Textbook: The required textbook is indispensable to this course.
You may be dropped from the course if you do not have it by the second
week. (In case of financial hardship, see the instructor immediately to
discuss getting help to purchase a copy.)
Academic Integrity: All work is subject to the UNCG Academic Integrity Policy. Exams and assignments designated for individual credit are to be the work of the individual student alone. (For group assignments, each student's individual contribution should be clearly identified.) When you submit your work you are implicitly agreeing to this policy.
Due dates: Late work will not normally be accepted. Make arrangements with the instructor to turn in work early if you will not be in class on the due date.
Missed exams may be taken only if the student's absence has been
excused by the instructor and if the exam is made up on the make-up
exam time announced by the instructor.
Disabilities: If you have disability-related requirements, please
inform us as soon as possible.
Samples of student work (assignments and tests) may be shown to
reviewers for departmental accreditation.
On-line Reference Materials
Other Related Web Sites