Interface Architecture
2
2019-2020
02033089
Computer Science
Portuguese
English
Face-to-face
SEMESTRIAL
6.0
Elective
2nd Cycle Studies - Mestrado
Recommended Prerequisites
Programming.
Teaching Methods
The teoretical classes are used for explainig models and modeling techniques. The exploration of architecture design patterns will follow a desmonstrative approach. Practical laboratory classes will be used for conducting of exercises with demonstration solutions, by adapting existing solutions. Students will produce a mini-project of a software architecture for an interface applied to a concrete context, with individual presentation and defense.
Learning Outcomes
Understand and apply models and design patterns of Software Architecture in the speciifc domain of user interface construction. Understand the basics of software architecture modeling. Understand the achitecture models more often used in the diverse user interface paradigms and its adequacy to the functional and quality requirements of each project. Design and evaluate software architecture models, adequate for the exploration of specific technologies and project contexts.
Work Placement(s)
NoSyllabus
1. Introduction to Software Architecture
2. Selected Software Design Patterns (MVC, PAC, Pipes&Filters, etc)
3. Generalized Components Model for an Interface Architecture
4. Multiuser and Collaboration Architectures
5. Specialization of input/output functions and event models based on the technological evolution (linguistic, direct manipulation, delegation, tangible, embeded, mobile, multitouch, etc).
6. Virtual and Augmented Reality techniques
7. Game Engine Architectures.
Head Lecturer(s)
Jorge Carlos dos Santos Cardoso
Assessment Methods
Assessment
Exam: 50.0%
Project: 50.0%
Bibliography
Gama et al (1997) Design Patterns: elements of reusable object-oriented software
Borchers, Jan (1996) A pattern approach to interaction design
Gregory, Jason (2009) Game Engine Architecture
Coutaz, Joelle (?) Software Architecture Modeling for User Interfaces, Software Encyclopedia, Wiley
Selected chapters and papers on Software Architecture
Software Implementations of specific demonstration systems.