eliverable for this part of the project will be an 8-page report
documenting your project so far (4 of the 8 pages will be your first
report!). This part of the project is worth 30% of the overall project
Your overall objective for Deliverable 2 will be to demonstrate,
through your paper, that you have implemented Module 1, and that you
have done so in a way that supports your architectural requirements.
In evaluating your deliverable 2, we will be looking for the follwing:
Avoid boilerplate, content-free text! (e.g., "we presented our
architecture, the element catalog, the list of interactions, and some
- A clear, succint, and well-polished presentation that takes into account the
feedback given on deliverable 1.
- Refinements to your overall architectural documentation taking
into account anything that you may have learned or discovered while
implementing module 1.
- A precise description of the interface of your components, and
especially Module 1.
- A description of the design of your module 1 (including at least 1
- A description of your testing strategy for Module 1.
- Rationale information that will help us understand your design and
the justification for your decisions.
- Pertinent comments on your experience.
Deliverable 3: Module 3
For this part of the project, you will extend Module 1 so that it can
be deployed as a component, and complete your application by
developing Module 2 and integrating it with Module 1.
The deliverable for this part of the project will be an 12-page report
documenting your project (most of which will be from your first 2
reports). You will also be required to perform a live demo of your
application in front of the instructor and TA, and answer questions
about the design, implementation, and testing of your application
(with the source code available for inspection and discussion). The
deliverable will also include the entire application (source and
binaries). This part of the project is worth 50% of the overall
Except for the component reused and explicitly
documented as such in the project reports, each team must author the
entire code of their project.
McGill University values academic integrity. Therefore all students
must understand the meaning and consequences of cheating, plagiarism
and other academic offenses under the Code of Student Conduct and
Disciplinary Procedures (see http://www.mcgill.ca/integrity
for more information).
The term project is a critical part of the course. It should be
assumed that completing the project will require readings (e.g.,
manuals, web resources, etc.) that go beyond the class readings listed
in the schedule. The Instructor and TAs will remain available
throughout the term to answer questions and provide suggestions about
the project. Some important topics related to the project will also be
covered in class.
In addition, the following list provides starting points and
suggestions for selecting COTS for the project.