COURSE SYLLABUS Semester/Year

advertisement
Software Design & Development
CSC-160
Spring 2015
Instructor:
Other
Instructor
Information:
Section
Number:
Cate Sheller
Office: 1180C Linn Hall
Office hours: Mondays and Wednesdays, 11:15-12:10; Tuesdays and Thursdays,
3:35-4:30; Fridays 12:20-1:15; other times by appointment
Office phone: 398-5899 ext. 5842
E-mail: cate.sheller@kirkwood.edu
Section CRF10 (0224174)
meets Mondays and Wednesdays from 12:20 to 2:20 PM in room 1178 Linn Hall
Credit hours:
4
Course
description:
Building on the foundation of basic programming skills acquired in CSC142, the course emphasizes the design and development of software
systems. Topics include user interface programming, graphics and
multimedia, networking and concurrency. Long-term projects will provide
students with experience developing software over an extended time
period. Students will also gain a general understanding of computer and
systems organization.
Prerequisites:
CSC-142 Computer Science
Course
Materials
Needed:
Required Text: Object-Oriented Design & Patterns by Cay Horstmann, 2nd
edition; Wiley, 2006
Course web site: http://www.kirkwood.edu/faculty/cshelle
Flash drive
Optional:
 personal computer
 Java SDK version 5.0 (or later)
 IDE for Java (such as BlueJ)
Books and course materials for this course are available at the Kirkwood
Bookstore.
At the conclusion of this course, you will be able to:



Course
Learning
Outcomes and
Competencies:





Design, develop and implement a software project over a long term
Work successfully in a software development team
demonstrate proficiency in the use of object-oriented design and
programming tools
Apply object-oriented design and analysis techniques
Produce and interpret UML design artifacts
Compare class implementations and recognize advantages and
disadvantages of different design approaches
Apply and recognize the application of object-oriented design
principles, including encapsulation, inheritance and polymorphism
Describe the concept of a pattern in programming









Recognize and give examples of design patterns in use
Apply patterns within the context of GUI programming
Describe the Java object model
Extract reflection information from an object
Describe application frameworks using Lejos as an example of a
framework model
Explain the importance of thread synchronization, thread
termination and locks to prevent conflicts
Write programs that use multiple threads in the context of animation
Incorporate images, sounds and animation in Java programs and
applets
Program autonomous robots using Java to solve problems within a
simulation context
Your grade will be determined by the sum of the total points earned from
the following assessment instruments:
Assessment of
Student
Learning:
Late
Work/Makeup Test Policy:



2 midterm exams (100 points each: 200 points total)
Group term project (200 points total)
Labs and other homework (about 100 points total)

All homework assignments must be satisfactorily completed in
order to participate in group project. Because group work
depends on the participation of all group members, you will be
expected to complete each lab and homework assignment in order to
demonstrate basic mastery of the subject matter.

You must take the midterm exams at the scheduled times in
order to receive full credit. If you must miss an exam, contact me
before the exam or as soon afterward as possible in order to arrange
a make-up time.
Class
Attendance
Policy and
College
Sponsored
Activities:
As stated in the Student handbook: In compliance with Public Law 105-244,
Kirkwood Community College makes a wide variety of general institutional
information available to students.
For additional information, go to:
http://www.kirkwood.edu/site/index.php?p=32303
Class attendance is strongly recommended. If you miss class it is your
responsibility to find out what you missed and catch up with course
activities. You are responsible to your group to participate actively
and to do your share. A significant proportion of your grade for group
work will be based on peer evaluation.
We believe that the best learning takes place in an environment where faculty and
students exhibit trust and mutual respect.
Productive
Classroom
Learning
Environment:
In a productive learning environment, faculty and students work cooperatively,
recognize and respect differences, model the values of character and citizenship,
and become lifelong learners.
See Student Policies: Academic and Enrollment Policies
http://www.kirkwood.edu/site/index.php?p=32303
Plagiarism
Policy:
It is cheating to pass off another student's (or programmer's) work as
your own. This is plagiarism and is inappropriate behavior in an institution
of higher learning. Don’t do it. If you collaborate with another person to
complete a lab, program, or homework, you must clearly credit the
other person's contribution. Depending on the nature of the
collaboration, and the degree of contribution you make, such collaboration
may affect your grade. Failure to give due credit to a collaborator will
result in a zero.
See Student Policies: General Policies and Student Rights
http://www.kirkwood.edu/site/index.php?p=32309
Campus
Closings:
Local radio and TV stations will announce school closings as they received
the information, but the best way to keep informed about class
cancellations or delays is via the Kirkwood Alert System. This system will
alert you via e-mail and/or text message of cancellations, delays, and
emergencies. Sign up at http://alert.kirkwood.edu.
Learning
Environment
Expectations:
Turn off or leave home any devices (cell phone, etc.) that may distract you
or your classmates. You may bring a laptop computer or tablet to
practice programming skills in class. You may not use these devices on
exams, however.
Americans
with
Disabilities
Act:
Students with disabilities who need accommodations to achieve course objectives
should file an accommodation application with Learning Services, Cedar Hall 2063
and provide a written plan of accommodation to your instructor prior to the
accommodation being provided.
Student
Evaluation:
See “Assessment of Student Learning” on page 2 and tentative schedule, last
2 pages.
Midterm
grades:
A midterm grade will be calculated and posted on EagleNet. The midterm grade is
a grade-in-progress, and will not affect your official GPA, nor will it impact
financial aid. The midterm grade has three purposes: first, to communicate your
academic performance; second, to provide opportunities for you to discuss your
progress with your instructor; and third, to allow Kirkwood to design college-wide
intervention programs that will improve student success.
How final
grades are
determined:
Final grades are based on the total number of points accumulated over the
semester. The grading scale below is applied by dividing a student’s total points
(with the lowest exam score dropped) by the total number of points possible
(again, with the corresponding exam dropped).
Grading Scale:
B+
89%
C+
79%
D+
69%
A
91%
B
8188.9%
C
7178.9%
D
6168.9%
A-
9090.9
%
B-
8080.9%
C-
7070.9%
D-
6060.9%
F
less
than
60%
To get the last day to drop a class, or the last day for a 50% or 100% refund,
go to any of EagleNet’s search for sections screens. You don’t even have to
login if you just click EagleNet for Students and then Search for Sections.
https://eaglenet.kirkwood.edu/production/WebAdvisor?TOKENIDX=9443580219&type
=M&constituency=WBST&pid=CORE-WBST
In EagleNet for Faculty when you’re logged in, the last item under Faculty
Information is your Search for Sections link:
https://eaglenet.kirkwood.edu/production/WebAdvisor?TOKENIDX=3671408920&typ
e=M&constituency=WBFC&pid=CORE-WBFC
Students dropping a class during the first two weeks of a term may receive a
full or partial tuition refund for 16 week terms, for shorter courses check
with Enrollment Services for total withdraw information.
The last date to drop this class for this term is Friday, April 24.
Drop Date:
Details of the refund schedule can be found under Academic & Enrollment
Policies at:
www.kirkwood.edu/student_policies
Final Exam
Information:
Final exams are scheduled during the last week of the term from May 5 to
May 11. You and your group will present your final project to an audience
of invited guests during the designated final exam time slot, Monday May 11
at 2:30 PM.
See Facilities: Emergency/Crisis Information
Emergency
Information:
http://www.kirkwood.edu/site/index.php?p=7987
Other
[List here any information specific to the course, such as information
[If desired, list emergency phone numbers, department office locations, etc.]
Information:
regarding exposure to hazardous chemicals, biohazard, invasive procedures,
performance expectations, and also a course time line or calendar, if desired.]
Check Refund Policy at: www.kirkwood.edu/registration
Rev. 4/11
Rev. 5/11
Rev. 6/12
Rev. 8/14/12
Rev. 1/22/14
Rev. 7/29/14
CSC-160 Spring 2015
Tentative Schedule
Date
Topic
Wed, Jan 21, 15 Course intro / Use cases, finding classes
Mon, Jan 26, 15
Class responsibilities / UML & OO design
tools
Wed, Jan 28, 15 Class design guidelines / design exercise
Reading
Sections 2.1-2.3, 2.6, 2.12
Sections 2.4-2.5, 2.10, 2.12 Homework 1
Chapter 3
Mon, Feb 2, 15 Agile development / Agile exercise
Wed, Feb 4, 15
Assignment Due
Homework 2
Interfaces & polymorphism / Java graphics
Chapters 4 & 9
& animation
Mon, Feb 9, 15 Lab 1 (HW4)
Wed, Feb 11, 15 Patterns & GUI programming
Homework 3
Chapter 5
Mon, Feb 16, 15 Lab 2 (HW 5) / exam review
Homework 4
Wed, Feb 18, 15 Midterm Exam 1
Mon, Feb 23, 15
Inheritance & abstract classes / Java Object
Chapters 6 & 7
Model
Homework 5
Wed, Feb 25, 15 Lab 3 (HW6)
Mon, Mar 2, 15 Frameworks & Lejos
Chapter 8
Wed, Mar 4, 15 Instructor at conference – no class
Mon, Mar 9, 15 Lab 4 (HW7) / exam review
Homework 6
Wed, Mar 11, 15 Midterm Exam 2
Mon, Mar 16, 15 Spring Break – no classes
Wed, Mar 18, 15 Spring Break – no classes
Mon, Mar 23, 15 Project intro / break into groups
Homework 7
Wed, Mar 25, 15 Project time
Mon, Mar 30, 15 Project time
Team roles / PR1
Wed, Apr 1, 15 Project time
Mon, Apr 6, 15 Project time
Preliminary design / PR2
Wed, Apr 8, 15 Project time
Mon, Apr 13, 15 Project time
Peer/self assessment 1 / PR3
Wed, Apr 15, 15 Project time
Mon, Apr 20, 15 Project time
PR4
Wed, Apr 22, 15 Project time
Mon, Apr 27, 15 Project time
Wed, Apr 29, 15 Project time
PR5
Mon, May 4, 15 Project time
Mon, May 11, 15 Final Presentations
Final project/final peer & self
assessment
Download