Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dmamakas2000/hci
https://github.com/dmamakas2000/hci
gradle hci java swing-gui
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/dmamakas2000/hci
- Owner: dmamakas2000
- Created: 2022-04-11T14:10:33.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-11-30T18:21:27.000Z (3 months ago)
- Last Synced: 2024-11-30T19:26:22.845Z (3 months ago)
- Topics: gradle, hci, java, swing-gui
- Language: Java
- Homepage: https://dmamakas.com/
- Size: 4.95 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Air Conditioner Interface Using Java Swing :computer: :snowflake: :sun_with_face:
An accessible air conditioner interface designed with Java Swing, focusing on simplicity and usability for elderly users. Developed using the Spiral Model, the project emphasizes iterative design, user feedback, and enhanced accessibility features, such as intuitive navigation and real-time feedback.
## π’Noteπ’
π―Please, clone this repository before reading the description. Don't forget to likeπand share your thoughtsπ.
## Overview
This project focuses on designing and developing an improved user interface for an air conditioning device, aiming to address usability challenges faced by specific user categories, particularly elderly individuals. The project uses the Spiral Model methodology and involves a computer-based interface for controlling the air conditioner. The application replaces the traditional remote control with a screen interface, providing a more intuitive and user-friendly interaction. The interface reduces complexity while ensuring accessibility, simplicity, and clarity.## Project Goals
This project seeks to enhance the user experience for air conditioner interfaces by focusing on:- Reducing cognitive load for users.
- Improving accessibility for elderly individuals.
- Setting a foundation for inclusive design that can be extended to other user groups.## Features
**Simplified Interaction:**
- Focusing on the primary functions of the air conditioner (e.g., temperature, modes, fan speed).**Accessibility Enhancements:**
- Using large buttons and text for readability.
- Applying optional voice guidance for status and confirmation feedback.**User-Centered Design:**
- Tailored for elderly users, with potential expansion to other user categories, such as those with vision impairments.**Tablet Integration:**
- Designed for a touch-screen tablet with optional internet connectivity.## Development Process
***First Phase: Requirements Analysis and Initial Design***
- Conducted interviews and distributed questionnaires to gather feedback from everyday users, particularly elderly individuals, on current air conditioner interfaces.
- Key findings:
- Over 75% of users found traditional remotes confusing due to too many buttons and complex options.
- Elderly users particularly struggled with understanding icons and lacked technological familiarity.
-Initial focus: Design a simplified interface tailored for elderly users with intuitive options and clear feedback mechanisms.
- Developed usability goals:
- Minimize cognitive load with simple buttons and clear labels.
- Provide real-time feedback on system status and user actions.
- Ensure accessibility through larger text, recognizable icons, and consistent design.***Second Phase: Prototyping and Usability Evaluation***
- Created low- and mid-fidelity prototypes incorporating insights from Phase 1.
- Features:
- Core functionalities (temperature adjustment, cooling/heating mode) with large, intuitive buttons.
- Visual aids like color-coded states and familiar icons (e.g., snowflake for cooling, flame for heating).
- Conducted usability testing using:
- Cognitive walkthroughs.
- Keystroke-level modeling for efficiency analysis.
- User surveys and interviews for subjective feedback.
- Iteratively refined the interface based on results, such as simplifying navigation and improving feedback mechanisms.***Third Phase: Final Implementation and Advanced Evaluation***
- Finalized the interface design, introducing additional features:
- Support for advanced functions (e.g., turbo mode, economy mode).
- Enhanced help and guidance options tailored to elderly users.
- Voice feedback for interaction confirmation, particularly useful for visually impaired users.
- Conducted comprehensive usability evaluations, including:
- Heuristic evaluation to ensure compliance with usability principles.
- Detailed task analysis using real-world scenarios.
- User feedback collection on the improved interface.
- Achieved a polished, user-friendly interface validated for its simplicity, accessibility, and effectiveness.## Installation
We strictly recommend advising the following instructions.1. Clone the repository.
```
git clone https://github.com/dmamakas2000/hci
cd your-repository-name
```2. Use the ```.jar``` file placed into the ```/jar``` directory ([Click here](jar/)) to execute the application.
:mega: Click **[here](https://www.youtube.com/watch?v=fudltjPybo8)** to review a free demonstrational video! :mega:
## Directory Structure
```
hci/
β
βββ src/ # Core application files
β βββ main/ # Main application logic and resources
β β βββ java/ # Java source code for the project
β β βββ resources/ # UI resources (e.g., layouts, icons)
β β βββ AndroidManifest.xml # Application configuration and permissions
β βββ test/ # Unit tests for the application
β
βββ jar/ # Executable Java archive
β βββ app.jar # Precompiled application jar file
```## Authors
| Full Name | University's Registration Number |
| ------------- |:-------------:|
| Petros Tsotsi | 3180193 |
| Dimitrios Mamakas | 3180102 |## License
This project is licensed under the **MIT License** - see the **[LICENSE](LICENSE)** file for details.