NEW
Font size
WorksheetsHCI Prefinals
Total questions: 64
Worksheet time: 32mins
What is a framework?
A loosely organized bundle of files meant for storing and sharing data during software design processes.
A random structure that includes unrelated programming libraries used in designing web interfaces.
A well-defined environment that exposes toolkits, functions or algorithms that can be used to develop new applications.
A set of graphical elements that only helps visualize output without any programming features.
What does a framework contain?
A user interface model that provides access to image editing and media resources.
A package of internet tools to modify software performance and adjust storage settings.
Specific structure for creating applications, building executable versions of applications, and sometimes including mechanism for deploying and/or running an application.
A documentation format used mainly for organizing coding tutorials and examples.
What terms are used to describe frameworks?
Widget builder and UI platform
Toolkit and object pack
Development platform and software development platform
System file explorer and window manager
What is a toolkit?
A system-level set of commands primarily used for monitoring kernel activity in the OS.
A framework used exclusively for compiling code with no support for graphical content.
A library of precomposed UI objects and predefined set of events or routines that are composed from the lower level UI software layer.
A high-performance rendering engine that focuses on hardware acceleration for visual effects.
What does a UI toolkit abstract?
The icons and logos of the app
The software license and copyright
The system details of handling events
The hardware configurations
What benefit does using a toolkit provide?
It helps in compressing memory usage and eliminating old software dependencies.
It automatically adjusts the software runtime to include optional device support.
It makes programming easier and more convenient while creating user-friendly interfaces.
It integrates low-level firmware modules to enhance system security and response time.
What does using a toolkit promote?
The use of random and uncoordinated design elements to test UI flexibility.
More complex and fragmented control patterns that reduce readability.
The creation of an interface with a consistent look, feel, and mechanism.
Variable design implementations depending on the developer's operating system version.
What form do UI objects often take?
Coding algorithms
Non-interactive scripts
Manipulable graphical objects, commonly called widgets
Internal databases
What is a widget?
A runtime package that compiles driver scripts for managing OS performance.
An external library dependency that connects to web-based application loggers.
An essential part of a graphical user interface (GUI) that displays information or provides a specific way for users to interact with the operating system or application.
A virtual private protocol that encrypts graphical rendering on local servers.
What are examples of widgets?
Binary compilers, performance analyzers, virtual machines, and schedulers for programs.
Debugging consoles, firmware logs, encryption routines, and antivirus agents.
Icons, menus, buttons, selection and text boxes, progress indicators, on-off checkmarks, scroll bars, windows, toggle buttons, forms, and even images.
Backup utilities, driver packages, BIOS editors, and access control software tools.
How is the UI toolkit structured?
For small mobile applications only
To support the backend logic of the database
To support large applications
To operate without any event-handling mechanism
What does the design of a UI toolkit assume?
All code is written manually without UI support
Programs do not require modular events
Individual events or routines will support the major functions of an application
Widgets operate independently of routines
What does the main routine consist of?
UI themes and animations that play during the software boot process.
Compiled runtime modules for video output and interaction history logging.
Small decision kits that make the appropriate calls of the other routines.
System priority schedules that control file access through automated triggers.
How do routines and programs interact with the window library?
Through direct file downloads
By creating backup files
When processing the codes
By syncing with cloud storage
What are some toolkits in relation to frameworks?
Always independent and cannot be integrated
Only available in closed-source environments
Some are standalone, while some are already integrated in a framework
Only work with specific programming languages
What is the user programming environment and execution mode for Android based on?
Python and shell scripts embedded into the Linux core
C++ graphical modules with OpenGL rendering utilities
Java, even though at the low level, the operating system is derived from Linux
Binary scripting and UI libraries derived from Unix file system extensions
What is the Android event-processing model mostly the same as?
C# UI Framework and the .NET Core UI Toolkit
Python Tkinter with extended visual plugins
Java AWT, except for some processes in the Android UI toolkit
Qt Framework with modular open-source UI packages
Through what are the features of the Android operating system available?
Object-based drivers and hardware integration models
XML schemas and open-access layout definitions
Application program interfaces or APIs written in Java
Third-party rendering tools connected to Google Play Services
What does the Android framework provide according to the developers' website?
A light file access model, a GPU monitor, and a debugging assistant
A code repository manager, screen resolution adapter, and event replicator
A rich and extensible View System, Resource Manager, Notification Manager, Activity Manager, and Content Provider
An audio controller unit, widget animation handler, and content exporter tool
What kind of events can be generated in Android?
Sound-based events only triggered by volume changes and mic input
Memory cache events triggered by battery or CPU status
Various forms of raw external actions like touch and button input, and composite higher-level events like gestures and virtual keyboard input
Delayed rendering cycles activated by inactive layout resources
How are events processed in the Android framework?
Events are sorted by priority in a stack-based reverse order
Events are processed randomly depending on app focus
Events are placed into an event queue and removed on a first-in, first-out (FIFO) basis
Events are deleted after each application switch to optimize system memory
What are the three major types of discrete events for iOS?
Visual display, audio control, and network sync
Cloud sync, GPS ping, and language switching
Multi-touch, motion, and remote control
Battery usage, orientation shift, and background tasks
What does the iOS UIKit framework provide?
Core system drivers and memory handling operations for embedded UI rendering
Layout compression services, display memory management, and cross-platform access
Infrastructure for iOS or tvOS applications and the window and view architecture
Event tracing systems, background priority handlers, and dynamic theme rendering
What infrastructure does UIKit offer for handling inputs?
File system management tools that track user access and session logs
Signal-based transmission of user gestures through XML encoded maps
Event handling infrastructure for delivering multi-touch and other types of input to the application
Cache-based interaction overlays that identify app-switch events
What does the main run loop in iOS manage?
Audio streaming and file decompression
Device boot sequence and user authentication
Interactions among the user, the system, and the application
UI updates from background services and system logs
What are some additional features offered by the iOS UIKit framework?
RAM partitioning, sensor bypassing, GPU rendering options
Cross-platform theme loaders, OpenGL animation utilities, and driver sync tools
Animation support, document support, drawing and printing support, information about the current device, text management and display, search support, accessibility support, app extension support, and resource management
Application-specific timers, firmware access, graphical overclocking tools, and digital signature engines
What does iOS generate when users touch application views?
Storage tokens that map layout positions with gesture predictions
Visual memory logs used for animations during UI state shifts
Low-level events that are sent as UIEvent objects to the view on which the touch occurred
XML documents that define app boundaries and permissions per user session
How are touch events handled in iOS?
They are converted into static images and stored for future rendering
They are passed directly to third-party modules outside the UIKit framework
They are analyzed by the view, which responds and may recognize higher-level gestures such as flicks and swipes
They are filtered through system sound layers before being rendered visually
Which framework is used for continuous sensor data in iOS like accelerometers and gyroscopes?
UIKit View Sensor
Apple Touch Motion
Core Motion framework
Virtual Device Connector
How is sensor data or abstract event transferred in iOS?
Sensor data is recorded and exported into a CSV format for later processing
Data is streamed to the developer console only when the app is minimized
Conveyed from iOS to the application and then to the particular view depending on the structure of the application's user interface
Logged inside the operating system's virtual directory for direct system access
What kind of access is typically available for most UI frameworks and toolkits online?
Most are completely paid and require premium subscriptions with monthly fees
Only available through university licenses or government procurement programs
Most are downloadable for free, though some require a subscription
Available only in closed beta releases requiring direct developer invitation
What is JavaServer Faces (JSF)?
A rendering engine for creating SVG graphics in mobile applications
A toolkit for creating Python-based machine learning visuals
A Java Enterprise Edition framework for building web applications
A library for creating interactive user interfaces in Java
What is JavaServer Faces (JSF)?
A rendering engine for creating SVG graphics in mobile applications
A toolkit for creating Python-based machine learning visuals
A Java Enterprise Edition framework supported by Oracle with complex documentation features
A music visualizer engine used for sound-reactive animations in Java
What is the basis of the Struts framework?
Event-response sequence based on mobile synchronization codes
A UI toolkit that relies on shape drawing and bitmap layering
Model-View-Controller (MVC) approach and fast development with fixed coding rules
A document parser system that separates logic based on CSV or XML inputs
What is Wicket known for?
Rendering high-quality 3D animations on Android tablets
Developing cross-platform system drivers for large-scale mobile apps
Being a lightweight Web framework designed in a component-based language with HTML integration
Supporting audio streaming services with full-device gesture control
What does the Spool UI Kit contain?
20 HTML layouts for use in responsive website navigation design
10 dashboard designs optimized for business management systems
Six screen designs in Photoshop Document (PSD) format
Animated widgets using JavaScript and React components
What is included in the Travel UI Kit?
100 icon packs for Windows desktop applications
40 splash screen variants for Android developers
50 different screen designs in Sketch format
30 image galleries compatible with Flash and HTML5
What makes Splash UI Kit stand out?
It offers live templates that are connected to social media accounts
It supports dynamic refresh for websites and desktop interfaces
It contains more than 55 high-quality, ready-to-use screens for iOS apps
It allows real-time collaboration through cloud-hosted PSD files only
What does Java AWT offer as part of its library?
Layout wrappers that simplify large database access layers
Video rendering tools for large-scale media applications
Object classes for creating 2D user interface and graphical objects
Command-line functions for driving mobile sensor controls
What does AWT handle in Java UI execution framework?
Task scheduling and automated data storage for web forms
Network delays during high-resolution streaming content
A large subset of interaction events called AWTEvents
Low-level virtual machine processes such as heap and thread allocation
What are AWTEvents?
Static object pointers used in layout transitions for mobile platforms
Unmanaged code snippets that help initiate visual transitions
Descendants of EventObjects that cover useful UI events such as mouse click and keyboard input
Background image loaders and format converters for UI design
What features are supported by Java AWT for GUI programming according to Oracle?
Native sound processors, display signal decoders, and access logs
Only text-based interfaces designed to mimic terminal commands
A set of native UI components, event-handling model, graphics tools, data transfer classes, and layout managers
Database visualization dashboards and financial chart rendering APIs
What does an interactive system development framework pertain to?
A centralized server that stores all compiled views and controller logic
A language translator tool that converts backend logic into native mobile language
A set of elements that helps visualize, capture, and build useful software functions
An extended language used exclusively for cloud-based computing services
What commonly supports interactive system development frameworks?
Compiler optimization routines and plugin rendering scripts
Real-time debugging modules within the database
A user interface (UI) toolkit, which provides the abstraction for the interface part
Dynamic URL routing and file system watchers in full-stack applications
What is an example of a development framework for interactive systems?
Windows File Handler Framework
RESTful Interface Protocol Framework
Model-view-controller framework
Java Virtual Console Toolkit
What is the primary structure of the MVC framework?
User, Server, and Logic Modules
Command, Control, and Display Layers
Model, View, and Controller
Input, Output, and Feedback Managers
What is the main benefit of dividing software into three interconnected parts in MVC?
It forces all data handling to be done visually
Makes deployment through cloud networks mandatory
To separate internal representations of data and information from the ways that information is presented to or accepted from the user
Reduces the need for user testing and debugging across all platforms
Who initially proposed the MVC approach as a computational architecture?
Microsoft during the creation of the .NET Framework
Developers of the C programming language
The designers of the programming language called Smalltalk
Java Foundation under the Oracle standards group
What kind of programming language is Smalltalk?
A procedural and logic-based scripting language
A low-level driver-based assembler
One of the first object-oriented and modular languages in the programming history
A markup language used for defining interface layouts in HTML5
What does the model component of MVC specify?
The visual layout of an interface and its sizing rules
Button attributes and on-click visual responses
The logical structure of data and the associated high-level classes in a software application
Color schemes and font sizing tools embedded into the application
What is the role of the model in an interactive banking application?
Displays account balances and interest rates to the user via panels
Stores and renders transaction history using an XML parser
Maintains the balance, computes for the interest, makes wire transfers, etc.
Routes input from users to other interface widgets on demand
What does the view component involve in MVC?
Storage of all event history and raw input streams
Definition of business rules for backend calculation
All the user interface (UI) logic in a software application, which also presents the application's user interface as an output
Middleware routines for backend database access and data type conversion
In an interactive banking application, how might views be used?
To directly access the user's saved passwords and PIN codes
To detect network latency and process silent updates to data
To display the list of all possible transactions and the balance of a given account
To send automatic reports to backend support systems
What is a controller's function in the MVC framework?
Caches data locally for offline usage
Encrypts all user inputs before sending it to the model
Processes all the business logic and incoming requests and input, manipulates data using the model component, and interacts with the views to render the final output of a software application
Controls how often the application refreshes on the frontend without view updates
Why are view and controller sometimes merged in MVC?
Due to a lack of backend processing capabilities
To reduce network bandwidth usage on wireless devices
Because of their close connection, such as a UI button object being defined by both visual attributes and event handlers
To reduce the number of compiled files and increase binary compression
What is one of the advantages of the MVC framework regarding development speed?
Models and controllers are always written in a single file for faster loading
Can automatically generate user interfaces from sample data
Faster development process through parallel development of all MVC components
All code is processed only after deployment, reducing test delays
Why can multiple views exist for a single model in MVC?
Models are converted into JavaScript pages automatically
Each view can only access a limited portion of a model at a time
Because of the separation of data and business logic from the display
Views have built-in data parsers that generate versions for export
Why does modifying the model not affect the entire MVC framework?
Controllers independently replicate all model logic
Framework uses cache-based deployment that protects live interfaces
The model component does not depend on the views component
Model data is stored externally in a version-controlled library
How does MVC promote component reusability across different interfaces?
Each component is precompiled and locked for hardware reuse
Components are defined in CSS and reused in mobile and web
MVC framework pattern returns data without applying any formatting so that components can be used many times for different interfaces
The model caches widget designs for future frontend interactions
How does MVC help in generating SEO-friendly content?
View components analyze metadata and adjust HTML in real time
Controller logs all searches into a central ranking system
Easy to develop an SEO-friendly uniform resource locator (URL) to generate more visits from a specific application
Model automatically creates indexed links for all view files
What development approach is supported by MVC?
Use-case-only programming and deployment first
Backward compatibility-driven testing
Test-driven development approach
Visual-first design using component scaling
What is a disadvantage of MVC regarding data access in the view?
All data must be encrypted before use
Views are not compatible with backend queries
Inefficiency of data access in view because of minimal code duplication
Views must directly manage database locks and transactions
What challenge does MVC present with modern UI design?
Cannot be used with real-time graphics engines
Requires all apps to be compiled in Java
Difficulty of implementing MVC framework with modern user interface involving different modalities
Views and models cannot share event handlers across displays
What knowledge must developers have when using MVC?
How to compress video streams and serve from a CDN
How to build APIs for third-party machine learning tools
Programmers/Developers must be knowledgeable about the business process linked to the application development for each MVC component
Developers must be certified in HTML5 and CSS3 compatibility testing
