Vì vậy, tôi bắt đầu làm việc cho một tập đoàn lớn, một trong số đó có 3 chữ cái và họ đang cố gắng trở thành Agile, nhưng có vô số quy trình, mà tôi không cảm thấy là Agile.
Một trong những điều khiến tôi đau lòng nhất là đánh giá mã. Công việc cuối cùng của tôi là với một công ty khởi nghiệp mà tôi muốn nói là nhóm phát triển Agile nhất mà tôi đã thấy, đã tham gia và / hoặc đã từng nghe nói đến.
Dù sao, lập luận của tôi là Đánh giá mã là một sự lãng phí thời gian trong phát triển lặp hoặc Agile trong đó UX / UI cực kỳ / dữ dội (nghĩ rằng sự hoàn hảo của Apple / Steve Jobs). Có lẽ ai đó ở đây có thể giúp hiểu trước khi họ sa thải tôi?
Đây là quá trình phát triển của tôi và là quá trình khởi nghiệp cuối cùng của tôi ... rất Agile.
Chúng tôi thực hiện công việc tính năng ban đầu để sắp xếp nhiệm vụ / todos phát triển. Chúng tôi sẽ chế giễu một vài phiên bản và trình bày cho người dùng, nhóm và tiếp thị để nhận phản hồi. Sau đó, chúng tôi thực hiện một bước lặp khác để có được một vòng từ các bên liên quan ở trên. Sau đó, chúng tôi sắp xếp công việc và bắt đầu. Chúng tôi có các mốc và ngày để gặp nhau, nhưng chúng tôi tiếp tục cắm đi. Chúng tôi không có đánh giá mã trong bất kỳ điều này. Một vài lần trong những tuần phát triển của chúng tôi, chúng tôi lại tổ chức các cuộc gặp gỡ với các bên liên quan để xem liệu họ có đồng ý các tính năng / chức năng / UX / UI vẫn phù hợp và đúng mục tiêu hay không.
Khi chúng ta gần đến cuối chu kỳ lặp lại 8 tuần, QA bắt đầu thử nghiệm, sau đó nó sẽ đến với người dùng alpha và cuối cùng là người dùng beta. Nhưng trong quá trình phát triển alpha và beta, các tính năng mới và các tính năng cũ hơn sẽ thực hiện các thay đổi hàng ngày hoặc hàng giờ cho UI để cải thiện UX. Vì vậy, một tính năng đang được phát triển bản phát hành này, cuối cùng có thể được thay đổi thêm 3 lần trong bốn tuần qua để cải thiện và hoàn thiện nó hoặc thêm một vài tính năng nhỏ (ví dụ: làm cho thành phần trở nên bóng bẩy hơn hoặc thông minh hơn). Đôi khi các thay đổi có thể là bề ngoài có nghĩa là không có thao tác CRUD nào được thay đổi hoặc sửa đổi, nhưng tất cả UI chỉ thay đổi.
Vì vậy, với loại quy trình phát triển này, Agile cực đoan, các đánh giá mã sẽ không lãng phí thời gian? Có nghĩa là nếu tôi có một hoặc hai nhà phát triển khác xem xét mã của mình, nhưng sau đó mã đó thay đổi thêm 3 lần nữa trước khi nó ra khỏi cửa, vì tất cả các cải tiến UI / UX, chúng tôi không lãng phí thời gian của mình cho 3 lần đầu tiên họ đã xem xét nó mã như mã / thành phần / UI đó đã bị loại bỏ?
Chúng tôi chưa bao giờ gặp nhiều vấn đề về chất lượng với quy trình này và vâng, nếu nhà phát triển bỏ lại tất cả kiến thức, nhưng chúng tôi luôn tìm thấy các nhà phát triển thông minh để tiếp nhận và tiếp quản.
Và vâng, chúng tôi có rất nhiều người thử nghiệm vì họ có thể phải kiểm tra lại mọi thứ 3 hoặc 4 lần. Ngoài ra, vui lòng đừng gác máy khi hỏi tại sao tất cả UI / UX thay đổi ... đó chỉ là cách mọi thứ được thực hiện ... đó là lý do tại sao ứng dụng giành được hàng tấn giải thưởng cho UI / UX và người dùng sẽ giết vì ứng dụng. Quá trình suy nghĩ là nếu tôi có thể cải thiện thậm chí 2% trong một cái gì đó bởi vì tôi có thêm một giờ thì hãy làm điều đó. Người dùng sẽ hạnh phúc hơn, có nghĩa là nhiều đô la hoặc người dùng hơn. Và vâng, người dùng của chúng tôi vẫn ổn với ứng dụng thay đổi liên tục vì đó là cách nó được thực hiện kể từ ngày đầu tiên để họ không thấy nó là xấu hay tiêu cực.
Hy vọng bài đăng này không trở nên khoa trương, nhưng tôi không thể thấy Code Reviews không lãng phí. Có thể 2% tất cả mã của chúng tôi trong mã được xem xét có lỗi. Mỗi bản phát hành, chúng tôi có thể tìm thấy 3 lỗi thông qua đánh giá mã. Vì vậy, kết thúc là 40 giờ xem xét mã cho mỗi nhà phát triển trên mỗi bản phát hành (4 x 40 = 160 giờ) để tìm ra 3 đến 5 lỗi? Có thể 50% trong số đó có 3 đến 5 lỗi đã được QA chọn. Sẽ không tốt hơn nếu dành 40 giờ cho mỗi nhà phát triển để thêm một tính năng mới hoặc cải thiện các tính năng hiện có?