100 likes | 238 Views
Administrative Information SC/CSE 3311 3.00 SU10 -- Software Design. Course Information. Title: SC/ CSE 3311 3.00 SU10 -- Software Design Time/Location: Mon. 19:00-22:00, BC 215 Pre-requisites: General prerequisites; including SC/MATH 1090 3.00; SC/ CSE 2001 3.00; SC/ CSE 2031 3.00.
E N D
Administrative InformationSC/CSE 3311 3.00 SU10 -- Software Design
Course Information • Title:SC/CSE 3311 3.00 SU10 -- Software Design • Time/Location: Mon. 19:00-22:00, BC 215 • Pre-requisites: General prerequisites; including SC/MATH 1090 3.00; SC/CSE 2001 3.00; SC/CSE 2031 3.00. • Instructor: FarazTorshizi • Administrative questions faraz@cse.yorku.ca • Assignment/project questions Forum • Office hours: Mondays 18:00-19:00, Software Engineering Lab, CSEB 2056
Course Information (2) • Course website:sites.google.com/site/cse3311su10/ • Check the What’s new? and Lecture Schedule sections weekly • Subscribe to the RRS feeds • Forum: • groups.google.com/group/software-design-3311 • An invitation email will be sent to you by the end of this week (click on the link in that email and you’ll be able to join) • Join using your CS/Gmail account • Mention your name and CS number in the “send additional information to the manager” box • Course directory: • slides, sample codes, assignment and solutions /cs/course/3311
Required and Suggested Readings • Required Text (OOSC2): Bertrand Meyer, Object-Oriented Software Construction, second edition, Prentice Hall, 1997. ISBN 0-13-629155-4 http://archive.eiffel.com/doc/oosc/ • Lecture Slides: located on the course directory together with the sample code • Selected slides from “BigEiffel.pdf”: located on the course directory • Suggested reading (on reserve in Steacie): • Pete Thomas, Ray Weedon, Object-Oriented Programming in Eiffel, 2nd edition, Addison-Wesley, 1998 • Gamma, E., Helm R., Johnson R., Vlisssides, J.: Design Patterns. Addison-Wesley, 1995 • Design Patterns and Contracts, Jean Marc Jezequel, et. al., Addison-Wesley, 1999.
Evaluation • Assignment [10%] • To be done individually • Midterm Test [25%] • Project Phase 1 [15%] • Project Phase 2 [20%] • You may work individually or in a group of two (recommended) • All students must email me the group information by May 19 to get access to the SVN repository of the project. • Email subject: “3311 project membership” • Email body: <your cse ID> <cse ID of the group member> (if applicable) • Final exam [30%]
Important dates • Check the important dates section on the course website • May 3: Course start date • May 7: Last Date to add a course without permission of instructor • May 10: Assignment 1 out • May 14: Last Date to add a course with permission of instructor • May 19: Email group information to the instructor to get access to the SVN repository • May 20: Project (Phase 1) out • May 24: Victoria Day -- No class • May 31: Assignment 1 due • June 14: Midterm Test • June 21: Phase 1 due • June 28: Project (Phase 2) out • July 5: Last day to drop the course without receiving a grade • July 26: Phase 2 due • July 30: Last day of classes • Sometime in August 3 to 13: Exam
What this course is about • Building software systems and components • small to medium size systems • Object Oriented (OO) design • Design by Contract (DbC) for quality software • Documenting and testing software • Applying OO programming • Evaluating design decisions according to quality factors
What this course in not directly about • Requirements analysis: figuring out what a customer wants • Teaching algorithms, data structures, syntax • Teaching programming • expect that you know how to program • Teaching a programming language • use one language to explain and apply the concepts • Just getting programs to work • a program that executes is one small piece of the solution.
Why Eiffel? • Why not C++? Java? Smalltalk? • This isn't a language course! You're here to learn about design • Want a language that supports software engineering and production of quality software • Eiffel has been used successfully on many large projects • AXA Rosenberg Investment Management, Boeing Co., etc. • People who have learned Eiffel and OO have no trouble picking up • C++, Java, other design methods
Important • Checkout the lecture slides regularly (posted on the course directory) • It is expected that you familiarize yourself with Eiffel Language syntax and the EiffelStudio IDE on your own: • Start with the following introductions: • Getting started • A guided tour of EiffelStudio • Introductory Videos