Intinya...
Jika ketidakaktifan pengguna dapat menyebabkan hilangnya data, peringatan harus diberikan
- sebelum timeout,
- dengan cukup waktu untuk merespons, dan
- memiliki opsi untuk memperpanjang sesinya.
Apa itu WCAG 2.26?
Kalau sebuah situs menggunakan timeout karena tidak aktif yang bisa menyebabkan pengguna kehilangan data, situs web tersebut harus memberi tahu pengguna berapa lama mereka bisa diam sebelum itu terjadi. Dengan begitu, pengguna bisa mengatur waktu, istirahat, dan kembali lagi tanpa tiba-tiba kehilangan progress mereka.
Beberapa situs atau aplikasi web secara otomatis mengeluarkan pengguna atau menghapus data setelah periode tidak aktif, biasanya karena alasan keamanan, privasi, atau performa server. Contoh umum di mana timeout karena tidak aktif sering terjadi:
- Formulir lamaran kerja atau sekolah
- Formulir panjang dengan banyak halaman
- Keranjang belanja atau proses checkout online
- Alat keuangan atau medis
- Dasbor dan portal akun
Tujuan dari kriteria keberhasilan ini adalah memastikan pengguna tahu tentang timeout dan berapa lama waktunya, agar bisa mencegah kehilangan data.
Waktu Bisa Disesuaikan vs Timeout
Kriteria WCAG 2.2.1 Waktu Bisa Disesuaikan berkaitan dengan memberi pengguna kontrol atas batas waktu aktif, seperti ketika halaman otomatis me-refresh atau formulir punya hitung mundur. Pengguna seharusnya bisa mematikan, memperpanjang, atau menyesuaikan timer tersebut, kecuali jika waktunya memang penting dan tidak bisa diubah.
Di sisi lain, WCAG 2.2.6 Timeout bertujuan untuk memperingatkan pengguna kalau ketidakaktifan bisa menyebabkan kehilangan data. Kalau seseorang pergi dari perangkatnya dan sesi akan kedaluwarsa, mereka perlu tahu berapa lama waktu yang tersisa—kecuali sistem menyimpan data mereka setidaknya selama 20 jam.
Batas waktu 20 jam ini didasarkan pada anggapan bahwa pengguna mungkin ingin kembali melanjutkan tugas di hari yang sama atau keesokan paginya, dan seharusnya bisa melanjutkan tanpa harus mulai dari awal.
Mengapa ini penting?
Beberapa pengguna butuh waktu lebih lama untuk menyelesaikan tugas. Kalau pekerjaan mereka hilang hanya karena mereka istirahat sebentar atau terdistraksi, hal itu bisa sangat membuat frustrasi dan mematahkan semangat.
Bayangkan mengisi formulir panjang dan detail, lalu pergi makan siang, dan saat kembali, sesi sudah berakhir dan semua data hilang. Sekarang bayangkan kamu adalah seseorang yang memproses informasi dengan lambat, atau butuh waktu lebih karena masalah memori, fokus, atau kendala gerak. Kehilangan kemajuan membuat tugas jadi jauh lebih sulit, bahkan bisa mustahil diselesaikan.
Dengan memberi peringatan sederhana tentang timeout, kamu memberi kesempatan pada pengguna untuk memutuskan: lanjut sekarang atau kembali nanti saat mereka siap.
Siapa yang terpengaruh?
Pengguna dengan gangguan memori dan pengguna dengan gangguan pemrosesan bahasa.
Pengguna dengan gangguan memori bisa saja lupa bagian mana yang sudah mereka kerjakan atau butuh waktu tambahan untuk membaca ulang petunjuk dan mengecek kembali input mereka. Timeout yang tiba-tiba bisa membuat tugas jadi lebih sulit diselesaikan dan memaksa mereka mulai dari awal lagi.
Pengguna dengan gangguan pemrosesan bahasa mungkin butuh waktu lebih lama untuk membaca, memahami, dan merespons isi konten. Timeout yang memotong mereka di tengah proses bisa mengganggu alur berpikir dan menyulitkan mereka menyelesaikan formulir yang kompleks atau proses yang terdiri dari beberapa langkah.
Cara menerapkan WCAG 2.2.6
Simpan sesi atau data selama 20+ jam
Salah satu cara memenuhi kriteria ini adalah dengan memastikan pengguna tidak kehilangan akses atau kemajuan selama setidaknya 20 jam tidak aktif. Ini bisa dilakukan dengan dua cara:
- Simpan data mereka agar bisa dilanjutkan nanti dari posisi terakhir
- Perpanjang waktu sesi (timeout) jadi 20+ jam agar halaman tidak cepat kedaluwarsa
Kalau penyimpanan data tidak memungkinkan, mengatur timeout jadi 20+ jam sudah cukup. Pengguna tidak akan logout atau kehilangan data, dan kamu tidak perlu memberi peringatan timeout.
Saat menyimpan data sensitif—terutama kalau pengguna belum login—ingat untuk mengikuti aturan privasi seperti HIPAA (Health Insurance Portability and Accountability Act). Jika pengguna sudah login, pastikan juga melihat WCAG 2.2.5 Autentikasi Ulang untuk panduan menyimpan data yang melibatkan proses login.
Beri tahu pengguna tentang timeout
Kalau kamu tidak bisa menyimpan data selama 20 jam dan harus menggunakan timeout yang lebih pendek, beri tahu pengguna di awal berapa lama waktu mereka sebelum timeout terjadi. Supaya tidak mengganggu pengguna di tengah tugas, tampilkan peringatannya sejak awal, sebelum mereka mulai mengisi informasi.
Contoh pemberitahuan yang wajar:
“Demi alasan keamanan, sesi kamu akan kedaluwarsa setelah 30 menit tidak aktif. Pastikan kamu menyimpan progresmu.”
Jangan gunakan timeout sama sekali
Kalau memungkinkan, lebih baik tidak menerapkan timeout karena tidak semua formulir atau interaksi butuh fitur ini. Jika tidak ada akibat apa pun saat pengguna diam selama satu jam, maka tidak perlu memberi peringatan apa pun. Pengguna bisa beristirahat kapan saja.
Kalau tidak ada risiko kehilangan data pengguna, kriteria ini tidak berlaku.
Kesimpulan
Timeout karena tidak aktif memang umum, tapi tanpa komunikasi yang jelas, fitur ini bisa sangat merepotkan, terutama bagi pengguna yang butuh waktu lebih. Kalau pengguna bisa kehilangan pekerjaan mereka karena diam terlalu lama, mereka harus tahu berapa lama waktu yang mereka punya.
Baik dengan memperpanjang timeout jadi 20+ jam atau memberi peringatan di awal, tujuannya tetap sama: mencegah kehilangan data secara tiba-tiba dan memberi pengguna kesempatan menyelesaikan tugas dengan ritme mereka sendiri.