A presentation of a single pattern should take around 10 minutes.
Try to work through your presentation orally before class, so that you
are sure you will hit within that range. Although you may wonder how
you
will talk for a full 10 minutes about anything, I will be praying that
you actually succeed in communicating the pattern in
just 10 minutes!
The advice of Thoreau is nowhere more apt than in this context:
SIMPLIFY,
SIMPLIFY, SIMPLIFY. Your goals with your presentation will be to
simply
explain, clearly and concisely, what the pattern accomplishes, why it
would
be used, and then give as simple an example of its implementation that
you can come up with. KISS!
The general format of a Pattern Presentation should be as follows:
1. General Description of Purpose of Pattern
What design problem(s) does this pattern solve? Why is this pattern significant? How might it help the designer? What forces does this pattern resolve? What is the problem context?
2. Description of Example
Verbally describe your example. Show a UML model that you have
created (no you cannot copy and paste the UML from Wikipedia) which
demonstrates
the
implementation of the pattern. Explain how the
pattern
in question is used in your example. Note that those brave few
who go before
we have discussed UML may use any notation they wish to communicate
their
design (SON Notation, scribble on napkin). Most of
you should use a tool such as astah, LucidChart, Dia, gliffy, Visio ($), graffle ($), Visual Paradigm ($), etc.
For your UML model of the pattern, I will be less impressed if you simply regurgitate the GoF example than if you think up one on your own. Even if your example runs abit abeam of the point, that miss would be instructive for the rest of us as you lead us in understanding the details of the design. And I, for one, will be impressed with your valor. But remember, whatever you do, KISS.
3. Implementation of Example
An actual example implementation in source code (Java, C++, C#, Python, Ruby, even PseudoCode) that demonstrates your pattern. Kudos if it runs! In AS CONCISE A FORM AS POSSIBLE, show how this pattern might be implemented in your example you modeled in item 2.
Grading:
Your grade on the presentation will be based on:
1. How clearly you describe the pattern.
2. How clear your example is in demonstrating how the pattern is implemented.
3. The clarity of your courage with which you have tackled the problem.
Your grade on the presentation will not be based on:
1. Your achievement of perfection.
N.B. If your example is brilliant, scintillating, but
recondite,
if it obfuscates the central theme of the pattern with an exquisite
sesquipedalian
musing, if the point is lost in a recalcitrant pattern of perplexity,
if
only those members of le salon des refusés would appreciate your
enigmatic landscape, your grade will surely suffer. Your job is
to teach the pattern to those of us who don't know it as well
as
you do in plain English. Be gentle, be concise, and above all be
clear. KISS!