Instructor |
|
Ruihong
Zhang |
Office |
|
Rekhi 302 |
Class Meeting |
|
M,W,F 3:05pm – 3:55pm |
Classroom |
|
Rekhi 117 |
Office Hour |
|
WMF
9:00 am – 10:00am or by appointment |
Phone |
|
(906)
482-1638 |
e-mail |
|
Ruihong
at mtu dot edu |
|
|
|
No
required textbook.
The
lecture notes and online resources are sufficient for this class.
1. Software Engineering, Seventh
Edition, by Ian Sommerville
2. UML user guide, by Grady Booch, James, Rumbaugh, Ivar Jacobson
Course Description:
This
course teaches practical techniques used in Software Engineering (SE) today. The
focus is in object-oriented SE. Students will learn object-oriented SE
techniques by acting as a team member on a realistic project.
Goals and
Objectives
By the end of the term, each student should be
able to:
To
be able to work in a team on a large software project.
To understand the
basic steps of large software project development.
To be able to
effectively analyze a programming problem
To be able to
effectively formulate use cases and scenarios
To be able to
create class, object, use case, interface, and state machine diagrams in UML
notation.
To
be able to effectively design a solution to a programming problem.
To
be able to assess risks of large software project.
Click Here
As you should expect, the major contributor to your grade in
this class will be your team project. Your grade will be determined roughly by
the following weighted combination of criteria.
30% Warm-up project
60% Team Project (click here
for the grading template)
4%
Participation in peer performance evaluations
6% Final Report
Bonus:
If
you spend significant number of hours, the instructor will examine your
timesheet log and give you some bonus point (up to 2 out of 100 points). In
general, you are expected to work about 6-8 hours each week.
Most
team related assignments are allowed to be late for one work
day. For example, if the due day is Friday 11:59pm, the cutoff date will
be Monday 11:59pm. The team has to send the extension request to the instructor
a day before due date.
The request for more than one day
extension will be granted only for special valid excuses.
Each team will start from scratch to
develop its own software product.
Teams are allowed to use open source
application packages only after the approval of the instructor.
You are NOT allowed to copy source
code from others and call it yours after making no or minor changes.
The same rule applies to all
individual homework assignments.
Please refer Academic Integrity Policy for
details.
No exam. There is a final report
that everyone has to finish individually.
Each team will have 4-5 students
Team will be assigned randomly by
the instructor
unless requested by the end of week 4.
Please click here
for detailed project requirement.
WARNING:
One semester is a short period of time to develop a large
scale project for a team of students taking many courses.
You should plan
to work 6-8 hours every week for this class.