Dogfooding là gì? Nó giúp gì cho lập trình viên?  | Học trực tuyến CNTT, học lập trình từ cơ bản đến nâng cao

Dogfooding là gì? Nó giúp gì cho lập trình viên? 

Chia sẻ kiến thức 01/03/2022

Dogfooding có thể có một cái tên ngớ ngẩn, nhưng nó là một phần quan trọng của chu trình phát triển phần mềm.

Hãy cùng FUNiX khám phá “dogfooding” có nghĩa là gì và nó giúp ích như thế nào trong công nghệ? 

Dogfooding có nghĩa là gì?

“Dogfooding” là khi một nhà phát triển dùng thử phần mềm mà họ đã phát triển như thể họ là một người dùng bình thường. Nó bắt nguồn từ cụm từ “Eating your own dog food” (ăn thức ăn cho chó của bạn), mô tả một người nào đó đang thử thứ gì đó mà họ đã phát minh hoặc phát triển, từ góc nhìn của đối tượng mục tiêu của họ.

Dogfooding hơi khác so với thử nghiệm alpha và beta. Trong khi cả quá trình thử nghiệm và dogfooding đều liên quan đến việc sử dụng phần mềm để xem nó hoạt động như thế nào, thử nghiệm alpha và beta tập trung vào việc tìm ra lỗi. Và tuy dogfooding cũng có thể tìm ra các lỗi cần sửa, mục tiêu chính của quá trình này là “cảm nhận” phần mềm để xem nhà phát triển có thể cải thiện nó như thế nào.

Ví dụ: giả sử bạn đã phát triển một ứng dụng email gần như sẵn sàng để phát hành. Trong giai đoạn thử nghiệm alpha và beta, bạn có thể sẽ thực hiện các kiểm tra cụ thể, chẳng hạn như cách khách hàng xử lý các email đến, cách nó xử lý kết nối internet không ổn định và liệu bạn có thể gửi email từ đó không. Đây là những bài kiểm tra cụ thể để loại bỏ các lỗi sẽ ngăn chương trình vận hành chính xác.

Mặt khác, dogfooding là nếu bạn sử dụng ứng dụng email của mình trong nhiều ngày, nhiều tuần hoặc nhiều tháng. Trên thực tế, bạn sẽ sử dụng chương trình email đó như thể bạn là một trong những người dùng của mình, những người sẽ phụ thuộc vào công cụ của bạn hàng ngày.

Mặc dù sử dụng trong một khoảng thời gian dài như vậy chắc chắn sẽ giúp bạn tìm ra lỗi, nhưng trọng tâm chính là xem việc sử dụng chương trình đó trong cuộc sống hàng ngày dễ dàng và thú vị như thế nào. Nếu bạn thấy chương trình của mình đơn giản và dễ sử dụng, thì không còn gì tốt hơn. Tuy nhiên, nếu bạn muốn chuyển sang một chương trình khác trong khi sử dụng ứng dụng của riêng mình, thì rất có thể khách hàng tiềm năng cũng sẽ cảm thấy như vậy. 

Dogfooding có ích như thế nào?

Dogfooding giúp các nhà phát triển khám phá tất cả các sai sót trong thiết kế ban đầu của họ. Khi các lập trình viên tạo ra một tính năng hoặc công cụ cụ thể, họ thường dựa trên một kế hoạch nghe có vẻ tốt trên giấy. Tuy nhiên, các tính năng được đề xuất trong tài liệu thiết kế đôi khi không được hiện thực hóa đúng như lập trình viên mong đợi.

Đó là lúc dogfooding sẽ có tác dụng. Bằng cách sử dụng phần mềm hàng ngày và như một thói quen, lập trình viên sẽ tìm thấy tất cả những phần khó chịu và thiếu sót trong phần mềm của họ. Trong ví dụ email của chúng tôi, có lẽ các hộp thoại cảnh báo bạn thiết lập thực sự gây khó chịu khi bạn sử dụng chương trình hàng ngày. Hoặc có thể bạn nhấn CTRL + B để in đậm văn bản trong email, để rồi phát hiện ra bạn đã quên code phím tắt đó.

Đó là lý do tại sao bạn nên dùng thử chương trình của mình, ngay cả khi bạn khá tự tin rằng nó không có lỗi. Hãy sử dụng nó như thể bạn chính là khách hàng của mình, xem vấn đề gì phát sinh và khắc phục chúng để người dùng thực không phải trải qua những điều tương tự!

 Kết luận

Dogfooding nghe có vẻ kỳ lạ, nhưng đó là một cách hữu ích để các nhà phát triển loại bỏ tất cả các cơ hội bị bỏ lỡ và các tính năng thiết kế khó chịu trong phần mềm của họ. Do đó, nếu bạn mới bắt đầu lập trình, hãy đảm bảo hãy dùng thử chương trình của bạn và ghi lại mọi thứ mà bạn cho rằng cần phải bổ sung hoặc thay đổi.

Dịch từ: https://www.makeuseof.com/what-is-dogfooding/

Vân Nguyễn

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
Chat với FUNiX GPT ×

yêu cầu gọi lại

error: Content is protected !!