300 likes | 375 Views
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.
E N D
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 toquestions 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
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.
Teaming requirement • Work with a minimum of 6 other students during the semester • Wiki 1 • Live Question app (Program 1) • OSS project (Program 2) • Wiki 2 • Semester project (Program 3) in teams of 2 up to 3 up to 3 up to 2 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.