Trung Đào
Writer
Nếu bạn đã từng rút tiền từ máy ATM, có khả năng cao bạn đã tương tác với một hệ thống chạy trên COBOL. Mặc dù đã xuất hiện từ những năm 1950, ngôn ngữ lập trình này vẫn là xương sống của nhiều hệ thống quan trọng, đặc biệt là trong chính phủ Mỹ.
Những sai sót trong hệ thống không hẳn là dấu hiệu của gian lận, mà chủ yếu xuất phát từ cách dữ liệu được lưu trữ và chuyển đổi qua nhiều thập kỷ. Trước năm 1950, tất cả hồ sơ An sinh Xã hội được lưu trữ trên giấy và phim vi mô, sau đó được nhập thủ công vào hệ thống kỹ thuật số, làm tăng nguy cơ sai sót.
Ngoài chính phủ, các ngành ngân hàng và bảo hiểm cũng phụ thuộc vào COBOL. Khoảng 43% hệ thống ngân hàng hiện tại được viết bằng COBOL, và 90% ngân hàng vẫn sử dụng ngôn ngữ này cho một số hoạt động quan trọng. Khi bạn rút tiền từ ATM, có đến 95% khả năng là giao dịch của bạn được xử lý bởi một chương trình viết bằng COBOL.
Dù đã có những tổ chức như Bộ Lao động và Lương hưu Anh (DWP) hay New York Times thành công trong việc chuyển đổi khỏi COBOL, nhưng phần lớn hệ thống sử dụng COBOL vẫn còn nguyên vẹn. Hiện có từ 220 tỷ đến 800 tỷ dòng mã COBOL đang hoạt động, khiến việc hiện đại hóa trở thành một thách thức khổng lồ.
Ngoài ra, việc thiếu lập trình viên có kỹ năng COBOL cũng là một vấn đề. Đa số chuyên gia COBOL đã về hưu hoặc sắp nghỉ hưu, trong khi thế hệ lập trình viên trẻ lại ít quan tâm đến việc học ngôn ngữ này.

COBOL và vai trò trong hệ thống An sinh Xã hội
Một trong những lĩnh vực sử dụng COBOL nhiều nhất là Cơ quan An sinh Xã hội (SSA). Hệ thống của SSA hiện vẫn vận hành hơn 60 triệu dòng mã COBOL để xử lý các yêu cầu bồi thường hưu trí, khuyết tật và nhiều dịch vụ khác. Tuy nhiên, COBOL không có tiêu chuẩn hóa chung về cách lưu trữ ngày tháng, khiến các lập trình viên phải tự nghĩ ra phương pháp riêng. Một ví dụ điển hình là ngày 20/5/1875 thường được sử dụng làm ngày mặc định khi thiếu thông tin về ngày sinh của một cá nhân. Điều này đã tạo ra hiện tượng có nhiều người hưởng An sinh Xã hội trông như thể đã sống hơn 149 năm.Những sai sót trong hệ thống không hẳn là dấu hiệu của gian lận, mà chủ yếu xuất phát từ cách dữ liệu được lưu trữ và chuyển đổi qua nhiều thập kỷ. Trước năm 1950, tất cả hồ sơ An sinh Xã hội được lưu trữ trên giấy và phim vi mô, sau đó được nhập thủ công vào hệ thống kỹ thuật số, làm tăng nguy cơ sai sót.
COBOL vẫn cần thiết trong nhiều lĩnh vực
Không chỉ SSA, nhiều cơ quan chính phủ khác vẫn đang phụ thuộc vào COBOL. Bộ Y tế và Dịch vụ Nhân sinh, Dịch vụ Medicare & Medicaid, Sở Thuế vụ (IRS), thậm chí cả Bộ Quốc phòng vẫn duy trì những hệ thống dựa trên COBOL. IRS hiện vẫn sử dụng khoảng 160 ứng dụng COBOL để xử lý dữ liệu thuế quan trọng.Ngoài chính phủ, các ngành ngân hàng và bảo hiểm cũng phụ thuộc vào COBOL. Khoảng 43% hệ thống ngân hàng hiện tại được viết bằng COBOL, và 90% ngân hàng vẫn sử dụng ngôn ngữ này cho một số hoạt động quan trọng. Khi bạn rút tiền từ ATM, có đến 95% khả năng là giao dịch của bạn được xử lý bởi một chương trình viết bằng COBOL.
Vì sao việc thay thế COBOL gặp khó khăn?
Vấn đề lớn nhất trong việc thay thế COBOL không phải vì ngôn ngữ này lỗi thời, mà vì chi phí và độ phức tạp của việc chuyển đổi. COBOL được thiết kế tối ưu để xử lý lượng lớn dữ liệu với độ chính xác và hiệu suất cao. Trong nhiều thập kỷ, mã COBOL được phát triển với phong cách lập trình không nhất quán, thiếu tài liệu đầy đủ và chứa nhiều quy trình nghiệp vụ phức tạp.Dù đã có những tổ chức như Bộ Lao động và Lương hưu Anh (DWP) hay New York Times thành công trong việc chuyển đổi khỏi COBOL, nhưng phần lớn hệ thống sử dụng COBOL vẫn còn nguyên vẹn. Hiện có từ 220 tỷ đến 800 tỷ dòng mã COBOL đang hoạt động, khiến việc hiện đại hóa trở thành một thách thức khổng lồ.
Ngoài ra, việc thiếu lập trình viên có kỹ năng COBOL cũng là một vấn đề. Đa số chuyên gia COBOL đã về hưu hoặc sắp nghỉ hưu, trong khi thế hệ lập trình viên trẻ lại ít quan tâm đến việc học ngôn ngữ này.