Sự khác biệt giữa cờ tính năng và tính năng bật tắt (nếu có) là gì?


7

Một phần của câu trả lời cho câu hỏi (meta) của tôi " Đổi tên cờ tính năng thành tính năng chuyển đổi? " Là như vậy:

... của Có thể có những câu hỏi hợp lệ về cờ tính năng (hình thức, tài liệu về họ, quá trình định nghĩa), mà có thể không được liên quan đến tính năng Toggles nhưng tính năng lên đoạn đường nối mà mang một ý nghĩa ít nhị phân. ...

Câu hỏi của tôi : Trong ngữ cảnh của DevOps, sự khác biệt giữa các cờ tính năng và các tính năng bật tắt (nếu có) là gì?

Tái bút: Nhìn vào https://martinfowler.com/articles/feature-tlass.html , tôi không nhận được sự khác biệt giữa các cờ và toggles như vậy.

Câu trả lời:


8

Nếu bạn đưa nó trên quan điểm duy nhất về mục tiêu, sẽ không có sự khác biệt.

Tuy nhiên, các tính năng bật tắt mang tính năng "bật / tắt" nhị phân nặng cho toàn bộ ý tưởng ứng dụng, trong khi các cờ tính năng là một thuật ngữ thoải mái hơn có thể bao gồm việc tăng cường kiểm tra dễ dàng hơn.

Khi bạn khởi chạy thử nghiệm tăng tốc và bật tính năng mới cho 10% lưu lượng truy cập hoặc cơ sở người dùng của bạn và tăng lên 20% vào tuần tới, v.v., thuật ngữ chuyển đổi trở nên hiệu quả. Một số người (người quản lý / quảng cáo / một số người hỗ trợ khách hàng) có thể không thực sự hiểu chỉ một phần của khách hàng có được tính năng mới.

Ramp up có thể được định nghĩa là (trích dẫn từ wikipedia về công nghệ kiểm thử phần mềm ):

Trình tự thông thường là tăng cường tải: bắt đầu với một vài người dùng ảo và tăng số lượng theo thời gian lên mức tối đa được xác định trước. Kết quả kiểm tra cho thấy hiệu suất thay đổi theo tải như thế nào, được đưa ra theo số lượng người dùng so với thời gian phản hồi.

Tôi thích API tính năng của etsy (thậm chí không được duy trì) làm nguồn để giải thích, đó là một khung công tác dễ dàng có khả năng đọc tốt xung quanh các cờ tính năng và cách sử dụng của chúng.

Vì vậy, sự khác biệt có thể được thực hiện trong việc sử dụng các thuật ngữ để chỉ giúp tránh nhầm lẫn về những gì xảy ra trên ứng dụng.


OK, điều đó đã giúp. Bạn cũng có thể thêm một số lời giải thích về thử nghiệm "tăng tốc" (hoặc một liên kết hoặc một cái gì đó). Chỉ để tránh tôi đạt đến giới hạn câu hỏi hàng ngày của mình quá nhanh ...
Pierre.Vriens

Hãy cho tôi một giây, tôi sẽ làm điều này
Tensibai

Hãy thư giãn, mặc dù "thứ hai" của bạn đã hết hạn, cũng tốt cho tôi "một ngày nào đó" ... Nếu bạn có thể / muốn, có thể một số mẫu cơ bản có thể giúp cải thiện hơn nữa câu trả lời của bạn ...
Pierre.Vriens

@ Pierre.Vriens xong;) Tôi không nghĩ các ví dụ giả sẽ thực sự phù hợp, mã không cần thiết ở đây IMHO.
Tensibai

3

Tôi sẽ nói thêm rằng bật / tắt (hiển thị quảng cáo trên trang web, không hiển thị quảng cáo) và có lẽ được tăng thêm bởi một cờ như (West Coast nhận quảng cáo từ nhà cung cấp A, East Coast nhận quảng cáo từ nhà cung cấp B). Toggling tắt tất cả các quảng cáo. Cờ tính năng có thể có thể chuyển từ nhà cung cấp A sang nhà cung cấp C.

Tôi cũng nghĩ rằng một phần quan trọng đang quyết định cách thức chuyển đổi và cài đặt của bạn hoạt động - bạn có phải triển khai bản dựng mới không? hoặc tháp điều khiển của bạn có thể xác định bờ biển phía đông / bờ tây và trả lời "nhà cung cấp nào" đang hoạt động với giao diện dễ dàng, gần như hoàn hảo.


Bổ sung can thiệp và ví dụ để giải thích các khái niệm! "Tháp điều khiển" có vẻ như "từ xa", phải không? Nếu vậy, thì tôi nghĩ một biến thể khác là khi chạy phần mềm, một số kiểm tra về một số điều kiện tiên quyết (ví dụ: việc phát hành HĐH mà nó đang chạy), để có / không (= chuyển đổi) làm cho điều gì đó xảy ra. Tôi có thân thiết không? Nếu vậy bạn có phiền thêm điều này vào câu trả lời của bạn không?
Pierre.Vriens

Có lẽ đáng để bình luận nhưng cũng có thể đáng giá câu hỏi của riêng mình. Nếu bạn hỏi điều gì đó như "Làm cách nào để kiểm soát cài đặt tính năng của tôi để tôi có thể tăng dần các cài đặt của mình một cách có kiểm soát?" Tôi có thể đưa ra ý kiến ​​của mình. Quá dài cho 500 ký tự và có lẽ sẽ bị lạc trong shuffle ở đây. Cũng có những người có ý kiến ​​khác / tốt hơn tôi.
Không hoàn lại tiền Không trả lại

devops.stackexchange.com/questions/162/ Mạnh là câu hỏi mà điều này có thể được thảo luận.
Không hoàn lại tiền Không trả lại
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.