Specification for the final project:
- Deadline: 01.03.2014 12:00
 - Allowed programming languages: Vala, Python, C++, C#, Java, JavaScript
 - A documentation is required (given as PDF file). It must contain:
- 1 high-level UML diagram (e.g. package diagram of the application)
 - 4 mid-level UML diagrams (e.g. class diagram of an applied design pattern)
 - 1 low-level UML diagram (e.g. sequence diagram describing the algorithm of a certain method or class)
 - 1-2 paragraphs describing the project
 - A short description of followed principles (e.g. OCP)
 - Remarks on any special technique (e.g. TDD, agile, unit-tests in general, ...)
 - A short tutorial on how to compile (or what dependencies must be fulfilled for a successful compilation)
 
 - The project itself (source code) must contain:
- At least 4 patterns from at least two of these categories: (Behavioral, Structural, Creational, Concurrency), e.g. factory, singleton, composite and observer (these are 4 from 3 categories)
 - For UI applications: Use any presentation pattern (e.g. MVC, MVP or MVVM)
 - For libraries: The facade pattern should be used to include an API layer
 - C++ only: Avoid memory leaks (check e.g. with valgrind)
 - Managed languages only: Avoid unnecessary references (e.g. check memory consumption)
 
 - The whole project is then to be zipped (preferred, 7-Zip, but anything else will also be sufficient) and send via e-mail to florian.rappl @ physik ... (standard university e-mail)
 
