CSC/ECE 517: Object-Oriented Languages & Systems

advertisement
CSC/ECE 517: Object-Oriented
Languages & Systems
Web site:
http://courses.ncsu.edu/csc517/lec/001
http://courses.ncsu.edu/ece517/lec/001
http://courses.ncsu.edu/csc517/lec/601
http://courses.ncsu.edu/ece517/lec/601
http://www.csc.ncsu.edu/faculty/efg/517/f11
Live Question
Used as a “backchannel” during class
http://cyber.law.harvard.edu/questions/CSC517
Google forms
To respond to
questions from
me during class …
Major course topics
Ruby
Ruby on Rails
O-o design fundamentals
and UML
O-o design principles
Design patterns
Collaborative learning
Based on …
– Pair programming
– Agile methodologies
– Educational research
What’s wrong with working alone?
Industry doesn’t do it that way
Learn more from peers
Less threatening to work with others
Raises burden on TAs
So I don’t have to do all evaluation
Increase burden of
– interface
– integration
What’s wrong with working alone?
Too easy to cheat!
Why do students nevertheless …
work individually?
– Individual accountability…
Why nevertheless (cont.)…
Time …
Why nevertheless (cont.) …
Place …
Syllabus: Course goals
Learn to design programs with classes that work together
with maximum cohesion and minimum coupling,
Learn how design methodologies, such as CRC cards,
and the Uniform Modeling Language, can be used to
express the interaction betweeen program components.
Understand the differences between statically and
dynamically typed object-oriented languages, and be
able to program in both,
Learn how an understanding software design patterns
can be used to structure programs so that they are robust
and extensible, and
Appreciate how programs can be restructured
("refactored") to improve their adherence to the
principles of good design.
TAs
Aysu Ezen
David Young
Xibin Gao
Textbooks
Textbooks
Textbooks
Textbooks
Webassign
Used for quizzes, exams
Account costs $19.95 for semester
Attendance requirement
Everyone responsible for “attending”
25 of 27 class sessions.
Satisfy this by …
Responding to ½ of Google
forms during class
(min. 2), or
Passing post-quiz w/in 1
week
On-campus students must
do Google forms ≥ 12x
during semester
Audit requirement
Do one homework, or take one test
(not post-quiz), before fall break and
score at least 50%; then
– do one homework, or take one test,
after fall break and score at least 50%.
You can choose which homework or
test to take, and if you take one and
fail to score 50%, you can try
another.
Assignments and weighting
Programming assignments
Wiki textbook
Textbook chapter
Teaming requirement
Work with a minimum of 6 other
students during the semester
– Wiki 1 in teams of 2
– Live Question app (Program 1) up to 3
– OSS project (Program 2) up to 3
– Wiki 2 up to 2
– Semester project (Program 3) up to 4
Penalty for lateness
10 pts./day
Academic integrity
See
http://www.csc.ncsu.edu/faculty/efg
/517/f11/integrity
Technological support (summary)
For questions in class …
– Your questions to me
– My questions to you
Technological support (summary)
For questions outside of class
– Piazza
– Webassign
For us to work together
Synchronously: VCL, Skype
Asynchronously: Wiki, Expertiza
Exercise
Read one of these wiki pages on use
cases:
–
–
–
–
Rows 1, 5, etc.: http://tinyurl.com/row-1-page
Rows 2, 6, etc.: http://tinyurl.com/row-2-page
Rows 3, 7, etc.: http://tinyurl.com/row-3-page
Row 4, 8, DE: http://tinyurl.com/row-4-page
Then fill out the rubric linked to
today’s exercises.
Download