Некоторые причины, по которым возникают проблемы при работе с фича-флагами (feature toggles) в процессе разработки:
- Сложность тестирования. habr.com devalloy.github.io Если переключателей становится много, то и количество всевозможных состояний резко растёт. www.trueengineering.ru Тестировать нужно все возможные комбинации флагов, а это требует большого количества времени. habr.com
- Появление «мёртвого» кода. habr.com Значения многих feature toggle-ов не меняются на протяжении длительных промежутков времени или не меняются вовсе. habr.com Код, написанный для другого значения флага, фактически становится «мёртвым». habr.com
- Неожиданные поломки сайта. habr.com Многие из устаревших feature switcher-ов имеют свойство ломать что-либо при изменении своего значения. habr.com
- Зависимые фичи. devalloy.github.io Если фича зависит не только от своего состояния, но и от состояния других фич, то усложняется управление включённостью данной фичи. devalloy.github.io
Чтобы решить эти проблемы, рекомендуется создавать подробную документацию с описанием всех feature switcher-ов, а также периодически проводить их ревизию, удаляя неиспользуемые и связанный с ними код. habr.com