Human-Computer Interaction (HCI) team project
Kiosk is rapidly increasing nowadays, many people use it
But there are many blind spots, hard to using for barrier people
So, our team suppose some concepts to mitigate barriers or blind spots
Note that, our team's prototype is not fully providing all features Like code, UI etc might be unstable, not fully-implemented
Link - 0.0.2-beta
Ref file example_config.json
Detailed explanation
{
"category": [ <- category section
{
"title": "category name", <- category name like, pizza pasta beverage
"items": [0], <- index of items
"details": [[]] <- detail index for each items
}
],
"details": [ <- detail section
[ <- first detail configuration
{
"name": "detail name like, nothing", <- first item of current detail
"price": 0
},
{
"name": "add ice", <- second item of current detail
"price": 0
}
]
],
"items": [ <-item section
{ <- first item
"name": "item name", <- item name
"price": 1000, <- item price
"images": "image path (relative path)", <- item image path
"description": "description of item, this will be used in recommendation system" <- item description for natural language processing
}
]
}
or using easy configuration app
Install application
Set config.json and image directory
git clone https://github.com/devhoodit/barrier-free-kiosk-app.git
cd barrier-free-kiosk
Current developing on
- Flutter 3.8.0-4.0.pre
- Dart 3.0.0 (build 3.0.0-204.0.dev)
- DevTools DevTools 2.21.1
- 13.5 Freeform API 33 (android-x64 emulator)
Our team use 키오스크(무인정보단말기) 이용실태 조사 to analyze problems
Our targets are
- Elders (Digital Abbreviation)
- Blinds
- Lower extremity disorders
- Kiosk Customers
- Developers
We propose several concepts
First, so many types of kiosk in many place, inconsistent UI design can confuse people
So, provide consistent UI form
This UI form is based on Material Design Guide, since we experience a lot of UI design based on material design guide that is friendly
See reference, older people tend to prefer the recommendation system
Our goal is decreasing accessibility for youngers, increasing for elders
Providing recommendation system is annoying for youngers but providing better experience for elders
This will lead to situtation youngers use default (no recommendation system kiosk), elders use barrier free kiosk (recommendation system kiosk)
This mean mainly customer is focused on our targest not for normal people (not our target)
This recommendation system will be implemented with Natural Language Processing
*UI also has this concept
Common kiosk is fixed in position
We will use tablet PC as a kiosk, tablet can be fixed or freely moved in hand
Then why we give freedom to table PC move?
For lower extremity disorders, sight height and action radius, they just get tablet PC and order with it
This section is quite similar with consistency
With freedom, comes responsibility
Consider some situation when people do not put in place after use kisok
This might give low UX for people and specially, for blind people, put in right place is very important
For consistency initial state for every situation, we will restrict last state
Then how we restrict last state? we restrict "pay" part.
Pay only works in "pluged-in" state, pay is last part of kiosk ordering phase
So after ordering, tablet kiosk might be in right place
Cost is also important thing to supply barrier fress kiosk
Common barrier free kiosk cost is too expensive, so the barrier to entry is high for some managers
But, as we propose, tablet PC is very cheap compared to default kiosk (not only barrier free kiosk also common kiosk)
When we investigate kiosk cost, common kiosk cost is about 750~1500$, barrier free kiosk cost is about 20k$, but tablet PC is about 450$ (we use samsung tab S7 FE for this project)
This only about install cost (CapEX), we also need to consider about maintenance cost (OpEX)
Tablet is common thing, not only for kiosk also we use in real-life, so, like A/S, maintenance cost is understandable
(And time for maintenance also has good condition)
Not only for android platform or specific device, we want to provide compatibility
So we use Flutter that provide multi-platform like, mobile (android, ios), PC application, Web, embedded
And also flutter provide material widgets
In this prototype, not support many compatibility
First, what is scalability?
In some specific kiosk, they need some special device for processing (like fingerprint reader)
Tablet PC is scalable with C-type port or networking
If need hardware device, connect C-type port to use (networking too)
Also, tablet basically provide some hardware like camera
Don't make complex function into basic function
Complex function is hard to maintenance and user also be confused when using
Provide very basic and simple function
This need to be cover up as many situation as possible (this is why we don't put AI and additional hardwares)
Produce the best results even in the worst case scenario
Not fully-implemented
- Focus on digital device, not kiosk: not need to retricted by kiosk UI guideline like fontsize, fontsize is consider in tablet UI guideline
- Consideration for OCR, in blind UI make 6 division screen with complementary color, provide simple and important text
- Simple is better, consider trade-off: addtional hardware is good (like braille device), but too many complex hardware can harm unity
- Keep coding state simple as possible: don't manage state complex
@4ch1o3 - Drawing sketches that describes specific situation for better explanation