Bug từ đâu mà ra? - 9 lý do bạn nên biết.

Chủ nhật - 05/07/2020 12:53
Có rất nhiều lý do gây ra lỗi ( bug). Lý do phổ biến nhất là do con người tạo nên – trong quá trình design và coding. Sản phẩm càng có yêu cầu phức tạp thì khả năng tồn tại nhiều bug càng cao. Và không thể tự tin để nói rằng sản phẩm của mình là Bug Free. Vậy câu hỏi đặt ra là: Những yếu tố nào dẫn đến bug trong sản phẩm?
7

1) Yếu tố con người:
Con người góp phần tạo nên sản phẩm, mà đã là con người thì không thể hoàn hảo.Con người sẽ tạo ra sai lầm và không thể khẳng định chắc chắn rằng sản phẩm phần mềm mình làm ra không có bất kì lỗi nào. Và rằng chúng ta chưa tìm ra bất kì công cụ – trí tuệ nhân tạo nào có thể tạo nên sản phẩm phần mềm tốt hơn con người. Đó là lý do vì sao bug xuất hiện.

2) Thiếu sự trao đổi thông tin:
Một lý do thường gặp khác là về việc thất bại trong quá trình trao đổi thông tin: hiểu sai, thiếu giao tiếp,… Sự thất bại này có thể xảy ra tại nhiều phases trong quá trình phát triển phần mềm: Thu thập yêu cầu, tổng hợp – giải thích yêu cầu, hiểu yêu cầu để thực hiện implement,… Nếu trong trường hợp yêu cầu mơ hồ, không rõ ràng, developer sẽ implement mà không thật sự hiểu rõ yêu cầu, vì vậy dẫn đến bug. VÀ một trường hợp khác, khi 1 developer cố gắng sửa một đoạn code của một người khác và thiếu đi sự trao đổi giữa hai bên.

3) Thời gian phát triển quá gấp:
Sản phẩm thường được phát triển theo lịch trình gấp gáp, dồn dập, với nguồn lực hạn chế. Vì vậy, để đáp ứng kịp thời hạn release, đôi khi sẽ không có đủ thời gian để thiết kế, code và kiểm thử một cách cẩn thận. Một sự thay đổi yêu cầu nhỏ vào thời gian cuối sẽ dẫn đến sự thay đổi của code và có khả năng gây ra bug.

4) Không có sự Logic khi đưa ra quyết định:
Trong thời đại phát triển phức tạp của hệ thống phần mềm, đôi khi phần mềm phức tạp đến mức nó đòi hỏi rất nhiều sự nghiên cứu, phát triển và động não để đạt được một giải pháp đáng tin cậy. Sự thiếu kiên nhẫn và mong muốn hoàn thành nó càng nhanh càng tốt có thể dẫn đến sai sót. Áp dụng sai công nghệ (linh kiện, sản phẩm, kỹ thuật), mong muốn/khao khát sử dụng cách dễ nhất để thực hiện giải pháp, thiếu hiểu biết đúng đắn về tính khả thi của kỹ thuật trước khi thiết kế kiến trúc đều có thể gây ra lỗi. Thật không may, không phải là do chúng ta không thông minh; chỉ là chúng ta thường không-có-thời-gian/không-được-phép-nghĩ!

5) Thực hiện code kém hiệu quả:
Bug thường xuất hiện bởi code yếu kém. Code yếu, kém thể hiện qua việc quên xử lý lỗi/ exception hoặc xử lý không hiệu quả, thiếu validate dữ liệu ( kiểu dữ liệu, phạm vi, điều kiện biên,…). Thêm vào đó, developers có thể phải làm việc với những tool, compilers, debuggers,…kém hiệu quả.

6) Thiếu sự kiểm soát các build version:
Nếu một function đã được test ở bản build trước và sau một vài lần build, bug hồi quy xảy ra thì rất khó để có thể phát hiện ra chúng. Vì vậy việc kiểm soát các bản build là rất quan trọng.

7) Thiếu sót về kĩ năng kiểm thử:
Ở một vài công ty, quy trình kiểm thử thường bị xem nhẹ hoặc không xảy ra. Thêm vào đó, tester thiếu hiểu biết và chưa có nhiều kinh nghiệm về kiểm thử sẽ dẫn đến việc bỏ sót bug trong sản phẩm. Ngoài ra, nếu tester không cẩn thận, không chú ý trong quá trình thực hiện test, kết quả sẽ là sản phẩm với chất lượng yếu kém và tồn tại nhiều bug nghiêm trọng.

8) Sử dụng tool của bên thứ ba:
Trong quá trình phát triển phần mềm, chúng ta thường sử dụng ít nhất một tool của bên thứ ba, và chính trong các tool này có thể chứa lỗi. Các tool này có thể là công cụ hố trợ lập trình (class libraries, shared DLLs, compilers, HTML editors, debuggers etc.) Nhưng lỗi trong tool này sẽ dẫn đến lỗi trong phần mềm đang được phát triển.

9) Thay đổi trong phút chót:
Những thay đổi có thể xảy ra với requirement, cơ sở hạ tầng, tools, platform có thể rất nguy hiểm, nhất là khi sản phẩm chuẩn bị được release. Những thao tác như thay đổi cấu trúc cơ sở dữ liệu, làm cho sản phẩm có thể tương thích với nhiều hệ điều hành/trình duyệt khá phức tạp và nếu được làm trong thời gian ngắn sẽ dẫn đến việc xảy ra bug.

                                                                                                                       SVTT: Lò Văn Qũy
                                                                                                                        Nguồn: internet

Tổng số điểm của bài viết là: 0 trong 0 đánh giá

Click để đánh giá bài viết

  Ý kiến bạn đọc

Những tin mới hơn

Những tin cũ hơn

Giới Thiệu

Ủy ban nhân dân tỉnh công bố thủ tục hành chính nội bộ trong tỉnh Sơn La

Công bố kèm theo Quyết định này thủ tục hành chính nội bộ trong hệ thống hành chính nhà nước thuộc phạm vi chức năng quản lý của UBND tỉnh Sơn La bao gồm các lĩnh vực: Lĩnh vực nội vụ: Thủ tục Bổ nhiệm vào ngạch công chức đối với người hoàn thành chế độ tập sự; thủ tục Thẩm...

Thăm dò ý kiến

Bạn biết đến website trung tâm CNTT & Truyền thông qua kênh thông tin nào

Ảnh hoạt động
IMG-7754.jpg IMG-7795.jpg IMG-7801.jpg IMG-7771.jpg 20170719-092244.jpg 20170719-092505.jpg
Liên kết nhanh
Thống kê
  • Đang truy cập39
  • Hôm nay1,268
  • Tháng hiện tại148,868
  • Tổng lượt truy cập9,429,858
Hỗ Trợ Online
Soi Keo Bong Da,
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây