This is an past offering of this course. This course has changed considerably. Please see the ECE course guide for the new 310.
|Staff||Logistics||Topics||Announcements||Lectures||Assignments and Project|
Instructor: Karthik Pattabiraman (karthikp AT ece DOT ubc DOT ca )
TAs : Pooya Jafferian (pooya AT ece DOT ubc DOT ca)
Fahimeh Raja (fahimehr AT ece DOT ubc DOT ca )
This is a third-year course on software engineering for electrical, computer and software engineering majors. The pre-requisite for this class is CPSC 260 (Object Oriented Programming Design) or equivalent. Students are expected to have strong backgrounds in object oriented and procedural programming. Prior experience with Java is helpful but not required. However, students will be expected to learn enough Java on their own for completing the assignments and the term project.
|What ?||When ?||Where ?|
|Lectures||Tuesdays and Thursdays (12:30 to 2:00 PM)||1204 Civil Engineering|
|Karthik’s Office hours||Tuesdays (2:00 PM to 3:00 PM) and Thursdays (9:00 to 10:00 AM)||KAIS 4048|
|TAs’ Office hours||TBD||KAIS 4085|
|Lab hours||TBD||MCLD 348|
INSTRUCTIONS FOR EMAILING TAs and INSTRUCTOR:
- All course-related emails must have the words “EECE 310” in the subject, otherwise we will not respond. Please send us email only from your UBC addresses.
- Questions about course logistics, lectures, exams and the term project must be addressed to Karthik (see email address above)
- All questions regarding Java programming and/or the assignments must be addressed to the TAs. Their email addresses are shown above.
We will cover the following topics in this course:
- Modular Development: Procedures, exceptions, data abstractions, iteration and polymorphism
- Programming in the large: Requirements analysis, writing specifications, design patterns, testing and debugging
- Other activities: Design documentation and evaluation, quality assurance, etc.
The course syllabus is available in here.
Click here for course-related announcements.
Lectures and Schedule
|Topic covered||Date posted||Lecture notes||Textbook Chapters|
|Course orientation||Sep 10|| Part 1 – PPT
Part 2 – PPT
|Java Overview||Sep 14 and 16||PPT||Chapter 2|
|Specifications||Sep 21 and 23||PPT||Chapters 1, 3 and 9|
|Writing robust code||Sep 28 and 30, Oct 5 and 7||PPT||Chapters 4 and 10|
|Data Abstractions||Oct 12 and 14, 19, 21 and 26|| PPT|
Polynomial example (buggy !)
|Iteration abstraction||Nov 9th and 16th||PPT||Chapter 6|
|Type hierarchies||Nov 18th, 23rd, 25th and 30th||PPT||Chapter 7|
|Polymorphism||Dec 2nd||PPT||Chapter 8|
Assignments and Project
Please see this presentation for information about course projects
|Assignment||Date posted||Due Date||Supporting code|
|Assignment 1||Sep 21||Oct 6th or 7th*||–|
|Assignment 2||Oct 4||Oct 20th or 21st*||–|
|Assignment 3||Oct 18||Nov 10th||–|
|Assignment 4||Nov 8th||Nov 24th or 25th*||–|
|Assignment 5||Nov 22nd||Dec 1st or 2nd*||–|
* The assignment is due on the date on which your lab session falls
Back to top