Instructor | Atif Khan, DC 3318 , a78khan@uwaterloo.ca |
Office hours | Wed 9:30-11:00 DC 3318 |
Teaching Assistants | Sandy Beidu (sbeidu@uwaterloo.ca) Karim Ali (karim@uwaterloo.ca) |
Lectures | 8:30AM-9:20AM, MWF at MC 2038 |
Tutorials | |
Schedule & reading | schedule |
11/07/11: Exercise 4 is now available (here).
11/07/11: Marking scheme for Assignment 3 is available (here).
11/07/11: Marking scheme for Assignment 4 is available (here).
03/07/11: Midterm marks are now available (UWACE). Solution is also posted here
27/06/11: Exercise 3: is now available. Due on Jul 4th, 2011
26/06/11: Assignment 4 draft is now available
26/06/11: Assignment 3 draft is now available
26/06/11: Marking scheme for Assignment 2 is now posted
21/06/11: Student project presentation schedule (July 13-25) is now posted. See Schedule
18/06/11: Exercise 1 solution-class diagram
17/06/11: Midterm Spring 2010 with solutions
16/06/11: Exercise 2 solution
12/06/11: Assignment 2 is now available
30/05/11: SE464-Past exam review session today at 2:30PM in mc2017 details
26/05/11: Assignment 1 is due on June 8th, 2011
19/05/11: Exercise 2: is now available. Due on May 27th, 2011
19/05/11: Exercise 1: is now available. Due on May 27th, 2011
19/05/11: Class schedule updated: Please review
19/05/11: EX0 feedback has started to appear at the UWACE wiki-Student Term Projects (found under Lessons tab)
19/05/11: Ex0 will expire on Monday May 23th, 2011
18/05/11: Graduate students please submit your paper selections via UWACE email by Tuesday May 24th, 2011. Try to select more than two papers if possible.
I will try to assign you your first choice, however that can not be guaranteed if multiple students show interest in the same paper.
Send me a reference or a link to the paper.
09/05/11: Exercise 0 is to be submitted by each group member. You should discuss the project details as a group
but then every member must submit in his own words what the group project is about. If project responsibilities were divided
over the group members, then the individual reports should highlight that.
07/05/11: added UML reading references
06/05/11: Paper list for graduate students is now available
05/05/11: Assignment 1 is now available
05/05/11: Graduate student presentations on June 17th, 2011
05/05/11: Exercise 0 due by May 11th, 2011
03/05/11: Exercise 0 is now available.
03/05/11: Project ideas posted.
03/05/11: Created Wiki on UWACE for Group Projects.
Important Links
To introduce students to: (i)the software architecture & design process and their models, (ii)representations of design/architecture (iii)software architectures & design plans, (iv)design notations & methodologies.
The main emphasis of this course will be on software architecture & design. Students will select a term-project and will provide various designs along with a limited-scope implementation. Again the emphasis being on design.
Term Project: Students will select a term project for which they will create software architectural and design artifacts. The project is 40% of the course so start early. Four assignments will act as project milestones with marked deliverables. Students will work in teams (minimum of three). The final implementation will be presented towards the end of the course. All project (design and implementation) artifacts will be required for final submission. Students are encouraged to present original project ideas. I could also suggest some if needed. More than one team can work on the same idea (parallel development).
An interesting large-scoped idea can be broken down over multiple teams, where each team works on a smaller scoped component. Extra marks (upto 5%) will be awarded if the components are fully functional when integrated together.
Review Exercises:Five review exercises will be posted covering various fundamentals topics covered in class. Each exercise will be graded on a pass/fail basis.
Course Topics: See schedule.
Guest Speakers: There will be guest lectures by Derek Rayside and others.
Prof. Derek Rayside is teaching SE464. We are working together to keep the two sections similar and will have
the same mid-term and final exam for both sections. Material presented in Prof. Rayside's lectures will be on the exams.
Other guest lectures are planned as well. I will update the schedule accordingly.
Research Papers: We will be reading a few research papers in the earlier part of this course. I will mark them in the schedule. Students are expected to read them in detail. Material from these papers will be on the exams.
Graduate students research papers: CS 746 has a long list of papers suitable for graduate students.
Design & Development Tools: Any IDE of your choice is fine. Projects can be implemented in C,C++. Java, Perl, Python etc (clear it with the TA). There are a number of UML tools available free of charge (I can suggest some if required). For design validation we will use the Alloy tool from MIT (alloy.mit.edu), and might use the Spin tool from NASA (spinroot.com). Prof. Rayside's lectures will cover these tools.
Third or fourth year CS/ECE students, or first year CS graduate students
Students must have programming experience. Familiarity with GoF design patterns and UML.
CS446 ECE452 | CS646 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Exercises: (individual)
|
5% (PASS/FAIL) | ||||||||||
Assignments:
| 40% | ||||||||||
Graduate Research (CS646 only):
| 15% | ||||||||||
Midterm: | 15% | 10% | |||||||||
Final: | 40% | 30% |
Late Policy: Late submissions for assignments will be accepted only up to 48 hours after the original due date. There is no penalty for accepted late submissions, and multiple assignments can be submitted late, including the last one. Course personnel will not give assistance for assignments after their original due dates. Due dates will be posted well in advance in the Calendar section of the UW-ACE course site. Assignments will be returned in class.
Final Exam:
The final exam covers all reading material, lecture material, and project material unless otherwise announced. MUST PASS THE FINAL TO PASS THE COURSE.
Past Exams Prof. Rayside will review the following exams on May 30th, 2011 in SE464 class tutorial
Students are encouraged to talk to one another, to the TAs, to the instructor, or to anyone else about any of the assignments. Any assistance, though, must be limited to discussion of the problem and sketching general approaches to a solution. Each student must write his or her own solutions, including code and documentation if appropriate, for the assignments. Consulting another student's solution is prohibited, and submitted solutions may not be copied from any source. These and any other forms of collaboration on assignments constitute cheating. If you have any questions about whether some activity constitutes cheating, please ask the instructor.
The general Faculty and University policy:
Academic Integrity: In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. Check the Office of Academic Integrity's website for more information.
All members of the UW community are expected to hold to the highest standard of academic integrity in their studies, teaching, and research. This site explains why academic integrity is important and how students can avoid academic misconduct. It also identifies resources available on campus for students and faculty to help achieve academic integrity in - and out - of the classroom.
Grievance: A student who believes that a decision affecting some aspect of his/her university life has been unfair or unreasonable may have grounds for initiating a grievance. Read Policy 70 - Student Petitions and Grievances, Section 4. When in doubt please be certain to contact the department's administrative assistant who will provide further assistance.
Discipline: A student is expected to know what constitutes academic integrity, to avoid committing academic offenses, and to take responsibility for his/her actions. A student who is unsure whether an action constitutes an offense, or who needs help in learning how to avoid offenses (e.g., plagiarism, cheating) or about "rules" for group work/collaboration should seek guidance from the course professor, academic advisor, or the Undergraduate Associate Dean. For information on categories of offenses and types of penalties, students should refer to Policy 71 - Student Discipline. For typical penalties, check Guidelines for the Assessment of Penalties.
Avoiding Academic Offenses Most students are unaware of the line between acceptable and unacceptable academic behaviour, especially when discussing assignments with classmates and using the work of other students. For information on commonly misunderstood academic offenses and how to avoid them, students should refer to the Faculty of Mathematics Cheating and Student Academic Discipline Policy.
Appeals: A decision made or a penalty imposed under Policy 70, Student Petitions and Grievances (other than a petition) or Policy 71, Student Discipline may be appealed if there is a ground. A student who believes he/she has a ground for an appeal should refer to Policy 72 - Student Appeals.
The Office for Persons with Disabilities (OPD), located in Needles Hall, Room 1132, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with the OPD at the beginning of each academic term.