User interfaces implementation - B4B39IUR

Credits 6
Semesters Winter
Completion Assessment + Examination
Language of teaching Czech
Extent of teaching 2P+2S
Annotation
Based on the user interface specification (created by design team), the student will be able to implement user interface and communicate efficiently with other stakeholders taking part in the whole process of design, testing, and implementation of the user interface.
Study targets
The goal of the study is to teach the implemetators of user interfaces to understand the UI specification created by designers and to efficiently collaborate with other stakeholders of the development process (designers, testers, user researchers, etc.).
Course outlines
1. User interfaces - means of communication between user and computer
2. User interface components and models
3. Patterns for user interfaces
4. User interfaces for smart homes and IoT
5. Tools and frameworks for complex user interface programming
6. Multiplatform user interfaces
7. Design specification of user interfaces
8. Design specification of user interfaces
9. Accessibility implementation
10. Techniques of user interface testing
11. Implementation for user interface testing
12. GUI in games
13. Implementation of conversation user interfaces
Exercises outlines
1. Introduction
2. Naïve implementation of UI
3. Implementation of UI based on MVC (MVP, MVVM)
4. Implementation of UI based on MVC (MVP, MVVM)
5. Implementation of UI based on MVC (MVP, MVVM)
6. Declarative specification of UI / Styling
7. Custom control / User Control
8. Semestral project - assignment
9. Semestral project - individual work, consultation
10. Evaluation of User Interfaces
11. Implementation of accessibility
12. Semestral project - individual work, consultation
13. Semestral project - individual work, consultation
14. Presentation of semestral project
Literature
1. Microsoft Blend for Visual Studio. Nástroj pro efektivní implementaci uživatelského rozhraní (MVC), simulaci modelu aplikace a spolupráci s grafickým designérem.
Requirements
Knowledge of higher programming languages (e.g., C++, Java, C#) and algorithmization. Basics of SW engineering.