Vụ bắn hạ chuyến bay 655 năm 1988 được xem là thảm họa giao diện người dùng
(octodon.social/@jalefkowit)Tóm tắt: Bi kịch của Iran Air 655 và tầm quan trọng của UI
- Ngày 3 tháng 7 năm 1988, tuần dương hạm tên lửa USS Vincennes của Hải quân Mỹ đã bắn hạ chuyến bay Iran Air 655, khiến toàn bộ hành khách và phi hành đoàn trên máy bay thiệt mạng.
- USS Vincennes, khi đó được trang bị Aegis, hệ thống phòng không tối tân hàng đầu thế giới, đã nhầm lẫn một máy bay dân sự đơn lẻ và bắn hạ nó, làm dấy lên câu hỏi về nguyên nhân của sai lầm này.
- Báo cáo chính thức của Hải quân Mỹ kết luận lỗi thuộc về các thủy thủ chứ không phải hệ thống Aegis, nhưng những phát hiện sau đó cho thấy các khiếm khuyết trong giao diện người dùng của Aegis có thể đã góp phần gây ra tai nạn.
Ý kiến của GN⁺
Điểm quan trọng nhất của bài viết này là nhấn mạnh tầm quan trọng của thiết kế giao diện người dùng (UI). Hệ thống cần được thiết kế để người dùng có thể nhận được thông tin rõ ràng và chính xác ngay cả trong những tình huống căng thẳng tột độ như chiến đấu. Bài viết này không chỉ là một trường hợp thú vị đối với kỹ sư phần mềm mà còn với các chuyên gia ở nhiều lĩnh vực khác, cho thấy thiết kế UI sai có thể dẫn đến hậu quả nghiêm trọng như thế nào.
1 bình luận
Các ý kiến trên Hacker News
Thật thú vị khi thấy câu chuyện này trên HN. Hiện tôi đang làm việc tại công ty đã thiết kế lại HMI/UI sau tai nạn này; chính xác hơn thì sự việc này là lý do công ty được thành lập
Sau tai nạn, Bộ Tư lệnh Hải quân Mỹ ở San Diego đã liên hệ với các giáo sư khoa học nhận thức và tâm lý học của UCSD, những người đang nghiên cứu việc ra quyết định rủi ro cao trong điều kiện căng thẳng và tải nhận thức; Hải quân rất ấn tượng với phân tích chi tiết và khuyến nghị của họ nên tiếp tục hợp tác trong các dự án khác
Cuối cùng, công việc cho Hải quân trở nên quá nhiều, nên họ lập ra một công ty tập trung vào công thái học và thiết kế giao diện cho các hệ thống phức tạp; hai đồng sáng lập ban đầu gần đây đã nghỉ hưu, còn CEO mới là cựu hạm trưởng USS Zumwalt
stakes tuy ít chết người hơn một chút nhưng vẫn quan trọng
Một bài viết hay khác về tai nạn này nằm trên blog Admiral Cloudberg rất xuất sắc:
https://admiralcloudberg.medium.com/the-long-shadow-of-war-t...
Một bài khác trong cùng loạt cũng liên quan đến lỗi UX, đó là chuyến bay Air France 447
Tai nạn này một phần xảy ra do cách hệ thống lấy trung bình khi hai cần điều khiển có đầu vào khác nhau. Điều đó khác với Boeing khi đó, vốn được liên kết vật lý nên khó có đầu vào mâu thuẫn, và phi công bên kia có thể cảm nhận được việc đồng nghiệp đang đẩy hay kéo cần lái
Khi máy bay rơi vào thất tốc, một phi công đã hạ mũi đúng cách để thoát thất tốc, còn phi công kia theo bản năng làm điều có vẻ đúng nhưng thực ra sai: kéo mũi lên. Các đầu vào triệt tiêu nhau nên hầu như không có tác dụng; về cuối thì cả hai đều đang kéo, nhưng ở giai đoạn đầu khi còn có thể giải quyết vấn đề thì không phải vậy
https://admiralcloudberg.medium.com/the-long-way-down-the-cr...
Cơ trưởng đang nghỉ và quay lại buồng lái vào những khoảnh khắc cuối cùng; cuối cùng ông cũng nhận ra vấn đề, nhưng đã quá muộn
“Cứ kéo tiếp đi,” Dubois nói; không rõ câu đó có phải là sự cam chịu cay đắng trước số phận hay không
Ngoại lệ nổi tiếng là MCAS trên 737 MAX, vốn thiếu tài liệu và huấn luyện; còn các Boeing gần đây hơn như 777 hay 787 thì theo tôi biết là fly-by-wire nên có tự động trim
Nếu bộ ổn định chịu tải khí động quá lớn, có thể cần lực của cả hai phi công để sửa trim sai; trong tình huống cực đoan, thậm chí có thể phải giảm tải về mặt khí động để có thể trim thủ công
Thật mừng khi Airbus dự định đưa vào sidestick có phản hồi lực trong tương lai
[0] https://news.ycombinator.com/item?id=37089363
Nghĩ đến việc HN chỉ trích màn hình cảm ứng trên ô tô nhiều đến thế nào, cũng đáng xem việc thay các bộ điều khiển analog cũ bằng UI màn hình cảm ứng phần mềm đã góp phần như thế nào vào vụ va chạm của USS John S. McCain: https://features.propublica.org/navy-uss-mccain-crash/navy-i...
Thật ngạc nhiên là trên một con tàu trị giá hàng trăm tỷ đô la, họ thậm chí không nghĩ đến việc dán một biển đỏ bằng tiếng Anh bình thường cạnh nút đỏ lớn, kiểu như “Nút giành quyền điều khiển khẩn cấp. Nhấn để đưa quyền điều khiển về vị trí này”
Các nhà thiết kế phần mềm cũng hoàn toàn có thể dùng ngôn ngữ đơn giản, trực tiếp, khiến việc làm đúng trở nên dễ dàng và những việc kỳ lạ chỉ có thể xảy ra khi có chủ ý. Nếu việc chia độc lập quyền điều khiển lực đẩy mạn trái/mạn phải cho hai người là cực kỳ bất thường, thì sau “chuyển quyền điều khiển lực đẩy” nên hiện một hộp thoại modal với nút “cả hai bên” thật lớn, cùng các nút nhỏ “chỉ mạn trái”, “chỉ mạn phải”
Tôi cũng không hiểu vì sao khi chuyển một thứ quan trọng như quyền điều khiển tàu lại không có thông báo bằng giọng nói đơn giản. Loa chắc khoảng 20 đô một cái chứ mấy? Chỉ cần “Quyền điều khiển lực đẩy đã được chuyển sang Lee Helm” hoặc “Nút đỏ giành quyền điều khiển tại vị trí đó đã được nhấn, toàn bộ quyền điều khiển đã được chuyển về Bridge” là đủ
Đôi khi có cảm giác chỉ những người không suy nghĩ và các tín đồ Jony Ive mới làm thiết kế UI
Ngay cả nếu vệt theo dõi tiếp xúc được hiển thị là tiêm kích F-14, tôi vẫn thấy lạ khi giả định rằng Iran đột nhiên cử một chiếc F-14 đi tấn công một con tàu. Chẳng lẽ không có khoảnh khắc nào họ nghĩ “có khi nào là nhầm không?”
Tôi nhớ đến trường hợp Stanislav Petrov diễn giải cảnh báo phóng ICBM của hệ thống cảnh báo sớm Liên Xô là lỗi thiết bị
Tất nhiên mức độ stakes hơi khác. Bắn hạ một máy bay chở khách vẫn ít nghiêm trọng hơn nguy cơ khởi động một cuộc chiến tranh hạt nhân toàn cầu
Khinh hạm Sabalan của Iran cũng bị hư hại nặng, 2 giàn khoan Iran bị phá hủy, 1 máy bay chiến đấu Iran bị hư hại, và ít nhất 56 thủy thủ Iran thiệt mạng
Ngay trong ngày hôm đó, trực thăng Mỹ cũng bị tàu tuần tra Iran bắn bằng vũ khí cá nhân, và vụ bắn hạ xảy ra trong lúc đang truy đuổi tàu tuần tra đó
Trong bối cảnh như vậy, nghĩ rằng Iran có thể cho máy bay chiến đấu cất cánh để tấn công cũng không kỳ lạ đến thế
Việc chiếu radar điều khiển hỏa lực tên lửa vào máy bay quân sự Iran để cảnh cáo quay về là thông lệ tiêu chuẩn. Thuyền trưởng Carlson hồi tưởng: “Khi khóa radar đó vào họ, họ về nhà. Họ không quan tâm đến tên lửa”
Thuyền trưởng Vincennes nổi tiếng là người vội vã nổ súng, và Vincennes có biệt danh Robo-Cruiser
Khi bắn hạ, Vincennes đang ở trong lãnh hải Iran
Băng ghi của USS Vincennes, thông tin từ USS Sides và các tài liệu tình báo đáng tin cậy đều củng cố sự thật rằng TN 4131, sau khi cất cánh từ Bandar Abbas cho đến thời điểm bị bắn hạ, liên tục tăng độ cao, bay theo cấu hình kế hoạch bay thương mại bình thường và đang phát Mode III 6760
“Thuyền trưởng Rogers là một học viên khó tính. Ông không quan tâm đến chuyên môn của giảng viên, và có thói quen đáng xấu hổ là vi phạm quy tắc giao chiến trong các cuộc diễn tập chiến tranh”[2]
Trung tá Lustig, điều phối viên tác chiến phòng không, thậm chí còn nhận Navy Commendation Medal vì “thành tích anh hùng”, “khả năng giữ bình tĩnh và tự tin trong lúc bị bắn”, nhờ đó được đánh giá là đã “hoàn tất quy trình khai hỏa nhanh chóng và chính xác”
Tất cả thủy thủ đoàn của Vincennes và Elmer Montgomery đều nhận combat action ribbon
[1] https://www.newsweek.com/sea-lies-200118
[2] https://www.usni.org/magazines/proceedings/1993/august/vince...
[3] https://archive.org/details/FormalInvestigationintotheCircum...
Nếu hệ thống phản ứng của Stark hoạt động đúng, nhiều khả năng các tên lửa đã bị bắn hạ, nhưng điều đó đã không xảy ra và 37 người Mỹ thiệt mạng
Nhìn trong bối cảnh đó, việc coi máy bay Iran là mối đe dọa nghiêm trọng không phải là điều kỳ lạ
Tôi nhớ rằng khi đó, và có lẽ đặc biệt là khi đó, đây là một mối lo lớn
Vài năm trước vụ này, Mỹ đã thử nghiệm xem F-14 có thể phóng tên lửa chống hạm Harpoon hay không, vì Iran sở hữu cả F-14 lẫn Harpoon. Cuộc thử nghiệm thành công
Khả năng Iran thực sự lắp Harpoon lên F-14 là rất thấp, nhưng vì đó là năng lực họ có trong tay, nỗi sợ rằng họ có thể làm vậy khi ấy là rất thực tế
Gần đây PayPal cũng có một thảm họa UX khá lớn
Ứng dụng PayPal trên iOS có cách nhập số rất kỳ lạ. Bạn phải nhập số tiền muốn gửi theo đơn vị cent, nên muốn gửi 50 đô la thì phải gõ 5000, và PayPal sẽ thêm dấu phân cách thập phân sau chữ số thứ hai tính từ bên phải. Điều còn lạ hơn là các con số được căn phải, tạo cảm giác như đang nhập ngược. Cuối cùng tôi vẫn không thể quen được
Vài tuần trước, toàn bộ giao diện đã thay đổi mà không có bất kỳ thông báo nào, và giờ người dùng phải tự nhập dấu phân cách thập phân. Nếu nhập 5000 như trước, bạn sẽ gửi 5000 đô la chứ không phải 50 đô la. Tôi thực sự biết một người đã gửi quá nhiều tiền, và tôi nghi là do thay đổi UX này
Thiết kế thận trọng là điều quan trọng
Unicode định nghĩa một ký hiệu phím dấu phân cách thập phân trông giống dấu nháy đơn (⎖, hệ 16 U+2396, hệ 10 9110). Ký hiệu này xuất phát từ ISO/IEC 9995, dùng để đánh dấu phím thực hiện chức năng phân tách thập phân trên bàn phím
Tôi tự hỏi liệu một ngày nào đó Tesla có phải ra tòa vì tình huống như thế này không
Không phải nói về Autopilot, mà là việc họ cứ tiếp tục loại bỏ các điều khiển vật lý trong xe, đến mức giờ đã vô lý
Ví dụ, các mẫu Model S/X đời đầu có điều khiển chuyên dụng cho nhiều chức năng như đèn xi-nhan, chuyển số, gạt mưa, Autopilot, chỉnh độ nghiêng vô-lăng. Hai bên vô-lăng mỗi bên có hai nút và một bánh cuộn, còn còi thì bấm vào giữa vô-lăng. Trên cửa có chỉnh gương, cửa sổ và khóa
Đáng tiếc là một số điều khiển quan trọng như sấy kính trước/sau lại nằm trên màn hình cảm ứng, còn điều hòa và các chức năng linh tinh khác thì phải chạm nhiều lần, hoặc vùng chạm nhỏ, hoặc cả hai
Không phải tất cả đều tệ. Những thiết lập chi tiết nhưng không quan trọng như dặm/km thì rất hợp để đặt trên màn hình cảm ứng. Nhưng lẽ ra cần nhiều điều khiển chuyên dụng hơn
Khi Model 3 ra mắt, việc loại bỏ điều khiển bắt đầu. Chỉ còn hai cần gạt; cần xi-nhan kiêm phần nào cả đèn pha và gạt mưa, còn cần chuyển số thì chồng chức năng với Autopilot. Hai bánh cuộn không có nút phải được gạt sang trái/phải
Mọi điều khiển còn lại đều nằm trên màn hình cảm ứng. Những thứ quan trọng thật sự cần điều khiển chuyên dụng
Các bản Model S/X cập nhật sau đó còn tệ hơn. Không còn cần gạt nào cả. Xi-nhan, đèn pha, còi, gạt mưa đều là vùng cảm ứng trên vô-lăng, còn bánh cuộn thì tùy ngữ cảnh mà làm chức năng khác nhau
Chuyển số cũng không còn, xe sẽ đoán người lái muốn đi hướng nào. Nhiều chức năng hơn, như đưa xe về chế độ đỗ, phải thông qua màn hình cảm ứng. Ở bảng điều khiển trung tâm cũng có bộ chọn hướng chạy dạng cảm ứng, nhưng phải nhìn xuống, chạm để đánh thức rồi mới chọn
Hoàn toàn là một mớ hỗn độn, và khiến việc lái xe tệ hơn
Thỉnh thoảng không rõ vì sao xe không chịu vào số tiến/lùi
Khi tôi mới mua Tesla không lâu, tôi đang quay đầu ba điểm để vào lối xe chạy. Tôi nhích lên một chút rồi dừng, xoay vô-lăng, gạt cần xuống để vào số lùi, nhấn ga, nhưng xe lại đi tới và làm móp cửa chiếc xe cũ. Ngoài biểu tượng trên màn hình thì không có dấu hiệu nào cho biết xe đã từ chối lệnh lùi
Giờ Tesla đã phát hành bản cập nhật để xe phát âm thanh khi chuyển sang tiến/lùi, và phát âm thanh riêng khi xe từ chối lệnh. Tốt hơn nhiều, nhưng vẫn bực vì xe vẫn khá thường xuyên từ chối lệnh vào tiến/lùi, đặc biệt là ngay sau khi vừa lên xe. Giờ tôi có thói quen vừa lên xe là nhấn cần số 4–5 lần
Gần đây tôi mua xe mới, và với tôi bố trí điều khiển là tiêu chí quyết định có mua hay không. Quá nhiều hãng xe đã chạy theo trào lưu màn hình cảm ứng
Với một số mục đích như Android Auto thì ổn, nhưng lúc nào cũng làm mọi thứ bằng màn hình cảm ứng thì trong Star Trek đã ngu ngốc, ngoài đời thật cũng ngu ngốc. Các chức năng như đèn, gạt mưa, điều hòa bắt buộc cần điều khiển vật lý
Một chiếc xe tải ở làn ngược chiều có lẽ đã cán qua vũng nước, khiến nước bùn bắn một mảng lớn lên kính chắn gió chỉ trong tích tắc, mà ngay trước mặt là khúc cua nên tôi phải nhìn được mình đang đi đâu
Tôi chỉ có khoảng 1 giây để tìm vị trí cần gạt mưa, và đó là xe của người khác. Nếu không tìm thấy, có lẽ tôi đã lao khỏi đường hoặc sang làn ngược chiều. Đó không phải lúc để cuống cuồng tìm nút gạt mưa trên màn hình cảm ứng
Tôi cố tình không mua Tesla vì muốn lái một chiếc xe, chứ không phải một món đồ chơi
Không phải mọi giao diện cảm ứng đều tệ, nhưng trong tình huống cần tập trung cao và đầu vào thay đổi linh hoạt, nó trở thành thảm họa
Hai ngày liên tiếp các chuỗi bài trên Mastodon đã lên trang nhất HN. Tôi không biết lần cuối một chuỗi Twitter làm được như vậy là khi nào, và cũng tự hỏi liệu còn ai không nghi ngờ rằng Twitter không còn là trung tâm của các cuộc thảo luận công nghệ nữa không
Tôi tò mò không biết điều này so với công nghệ kiểm soát không lưu phổ biến thời đó thì thế nào. Phía kiểm soát không lưu có làm tốt hơn không? Tất nhiên, ngay cả thời đó cũng đã có nhiều thảm họa do kiểm soát không lưu gây ra.
Lúc đầu tôi tưởng đây là một bài viết về flat design, rồi mới đọc toàn bộ toot. Ai mà ngờ UI lại có thể tệ đến mức này trong một nhiệm vụ sinh tử cơ chứ.
Sẽ rất hay nếu ai đó đăng thêm chi tiết về giao diện rối rắm đã dẫn đến sự cố này. Có lẽ đó sẽ là bài học tốt cho hầu hết chúng ta.
Có vẻ Lockheed cũng đã giành được hợp đồng liên quan đến hệ thống này vào năm 2023 [1]. Nếu có ai biết gần đây họ thực sự đã sửa vấn đề UI hay chưa thì mong chia sẻ.
1 - https://news.clearancejobs.com/2023/03/13/lockheed-martin-wi...
Về cơ bản, không rõ vì sao, nhưng hướng và vị trí thì lấy từ một máy bay, thông tin nhận dạng lại từ một máy bay khác, còn độ cao thì từ một máy bay khác nữa.
Admiral Cloudberg có một bài viết phân tích chi tiết vụ tai nạn này, bao gồm cả hoạt động của giao diện người dùng:
https://admiralcloudberg.medium.com/the-long-shadow-of-war-t...
Sau khi đọc nhiều cách diễn giải về sự kiện này, tôi có ấn tượng rằng vấn đề không chỉ đơn giản là ở giao diện người dùng.