Patterns and the UML
Patterns? Patterns are structured, packaged problem solutions in literary form Pattern languages are collections of related patterns that have a common domain They have some advantages over development methods They may form a basis for designing software development courses
Development Patterns Patterns instead of a development method
Other Patterns When to use Soft Systems How to harvest use cases from soft models How to develop a good use case model How to develop a sequence diagram from a use case How to develop a class diagram from a set of sequence diagrams How to map a class diagram to code
Examples of Design Patterns Patterns for designing software systems
Research Resources
Pattern Language for IR Software Design
Example Pattern Problem In order to efficiently solve the users information problem the user and the IRS have to gain a mutual understanding of what the user wants and what the system can do.
Example Pattern Solution Let the system behave like a human partner, who hypothesizes, poses questions and offers alternatives in order to find out what the users goals, problems and questions are and to expose it’s capabilities to the user.
Example Pattern Application Pandora.com is a music database, where artists are classified according to several criteria. The service engages the user in a dialogue to find out what the user’s preferences regarding music are: – The user initially enters an artist he likes or is interested in – The service plays a song from this artist – If the user likes this sample, she can ask for similar artists – The service presents samples from other artists based on similarity. It also gives a rationale why this sample was chosen.
Example Pattern
Another Pattern – “More of this” How can you convince the user to follow suggestions on similar documents or alternative queries without wasting too much screen space?
More of this There are many ways to infer similar or related documents for result sets as well as single documents (e.g. Good Hit Good Example). Because these related results were not what the user explicitly asked for, it is not a good idea to use a lot of screen space to show the whole list of them. On the other hand just placing a link to e.g. a list of similar documents might not be convincing enough.
More of this
Related Patterns The underlying principle is similar to Good Hit Good Example, in that a more or less abstract concept is replaced by some examples or placeholders which the users can easily evaluate. This pattern should be used, whenever the IRS makes proactive suggestions to the user (TEACH THE TAXONOMY CASUALLY, GOOD HIT GOOD EXAMPLE, SHOW THE TREASURES)
Example Patterns
New Pattern Languages For information seeking For designing information retrieval systems For stimulating creativity
Pedagogical Patterns Patterns to help with teaching and learning
Sources of inspiration Pedagogical patterns project Joseph Bergin