EECE 417 – Software Architecture
(Spring’10)
Instructor: Matei Ripeanu
Announcements
[14/04] Project demos: 15/04@3:30pm
or 26/05@1pm – see email for submission details.
[14/04] Final exam: April 20th
@ 12pm in MCLD214
[25/03] Guidelines
for high-level design document added. Deadline:
April 7th, 11:59pm. Submission: send your document to Lauro.
[03/03] An early project prototype (by group8).
[01/03] Project phase II
published. Deadline: March 16, 11:59pm.
[03/02] Project phase I
published. Deadline: February 18, 11:59pm.
[03/02] Guidelines for your requirements document
added. Deadline for submitting
requirements document: February 11th, 11:59pm. Submission: send your
document to Lauro.
[22/01] Project --
MyPlay.com initial product requirements
published.
[19/01] Form project
groups of up to 3 students by 26/01. Email your project group to Lauro at
lauroc@ece.ubc....
[12/01] Mailing
list now working! Subscribe to the class mailing list either by emailing sympa@lists.ece.ubc.ca with “subscribe
eece417@lists.ece.ubc.ca” in
the body of the message or by visiting https://lists.ece.ubc.ca/
Logistics
·
Class: Tu/Th 15:30 to 17:00 in MCLD228
· Office hours: 17:00 to 17:30 after each class in my office (KAIS 4033). Other times by appointment.
|
|
Date |
Topic
|
Required |
Slides |
Recommended material. |
Project |
(programming) Design pattern |
|
W1 |
01/05 |
Overview.
The ‘big idea’. |
Gorton
chapter 1 |
[s01] [s02] |
|
|
|
|
W2 |
01/12 |
Architecture
in context. Review
of OO modeling & UML |
|
[s03] [s04] |
UML
Distilled: A Brief Guide to the Standard Object Modeling Language, M.
Fowler, Addison Wesley, 2003. |
|
|
|
W3 |
01/19 |
Review
of OO modeling & UML Basic concepts.
Architectural
patterns. |
|
[s05] [s06] |
|
Form project groups by 26/01 Customer requirements document published |
|
|
W4 |
01/26 |
Tree
tier web- applications – cloud computing Google AppEngine |
|
[s07-08] |
|
Customer ‘interview’ 01/26 |
|
|
W5 |
02/02 |
Google
AppEngine Architectural styles. |
[s09] [s10] |
AppEngine: main site, blog, talks Servlets and JSP tutorial D. Garlan, M. Shaw, An
Introduction to Software Architecture |
Requirements documentation. Guidelines [due: 11/02] |
||
|
W6 |
09/02 |
Styles
and MapReduce |
|
[s11-12] |
ClusterComputing and MapReduce video
series MapReduce: Simplified
Data Processing on Large Clusters, Jeffrey Dean, Sanjay Ghemawat, OSDI’04 |
[due 18/02] |
[slides] [another take][] |
|
|
|
|
|||||
|
W7 |
02/03 |
Software
connectors. [Quiz: March 4th] |
|
|
|
[due 16/03] |
Adapter, Proxy, Iterator,
Template method [slides] |
|
W8 |
09/03 |
Software
connectors. |
|
[s13] [GoogleFS] |
The Google File System: [paper][video][interview] Towards a taxonomy of
software connectors, N. Mehta, N. Medvidovic, S. Padhke, 2000 |
|
Composite, builder, mediator [slides] Prototype, façade [slides] |
|
W9 |
16/03 |
Software
connectors. Quality
Attributes. |
|
[s13] [s14-15] |
|
|
Strategy, decorator [slides] |
|
W10 |
23/03 |
Designing
for security. Achieving
qualities |
[s14-15] [s16] |
|
[due: 07/04] |
|
|
|
W11 |
30/03 |
More
quality attributes. Case
study: The eBay architecture |
|
[slides] |
An interview
with R. Shoup – eBay Distinguished Architect |
|
|
|
W12 |
06/04 |
Modeling. Architecture
evaluation. |
Bass chapter 11 |
[slides] |
Bass
chapter 9 |
|
|
|
W13 |
13/04 |
Wrap-up Project
presentations |
|
[slides] |
|
Project demos * 15/04@3:30pm * 26/05@1pm |
|
Subscribe to the class mailing list either by emailing sympa@lists.ece.ubc.ca with “subscribe
eece417@lists.ece.ubc.ca” in
the body of the message or by visiting https://lists.ece.ubc.ca/
*
[Required] Essential
Software Architecture, Ian Gorton, Springer, 2006. ISBN:
978-3540287131
*
[Recommended] Software
Architecture: Foundations, Theory, and Practice, Richard N. Taylor,
Nenad Medvidovic, Eric Dashofy, Wiley Eds., 2009. ISBN: 978-0470167748
*
[Recommended] Software Architecture in Practice, 2nd edition, Len Bass,
Paul Clemens, Rick Kazman, Addison Wesley 2008, ISBN: 978-0321154958
Grading
*
Assignments + Mini-Project: 40%
*
Quizzes: 15%
*
Final exam: 45% (no midterm).
*
Class and mailing list participation:
3% (bonus)
Class attendance is mandatory,
though attendance won't be taken. Most of the course material, including
assignments and lecture notes, will be posted on the class web pages. However,
some topics may get covered in class and not reflected in the online notes. You're responsible for all material covered
in class, whether or not
it appeared on the Web site - I suggest you ask a fellow student, the TA, or
the professor to fill in any material you may have missed.