ビルド時間を短く抑えて開発サイクルの高速性を維持する

単体テストの実行に長時間かかる場合、開発者は単体テストの実行を避けるようになり、単体テストの価値が失われます。コードのビルドおよびデプロイに長時間かかる場合は、ビルドおよびデプロイの頻度が減ります。短いビルド時間の方を優先すると、テスト範囲および CI インフラストラクチャにこれまで費やしてきた時間はそのままチームの生産性向上につながります。

Sonar とその他の静的コード分析ツールを微調整し、ツールが出力したレポートに基づいて対処する

コード分析ツールは、そのレポートが開発チームメンバー側の対処につながって初めて有用であると言えます。ツールが提供する分析を微調整しないと、ツールが生成する推奨事項は関連性のないものになり、ツールの価値が失われます。

ボーイスカウトのルールを守る

ボーイスカウトには、「来たときよりも美しく」というルールがあります。開発チームのメンバー全員がこのルールを守り、散らかっていたらそのままにしないで片付けるようにすると、コードは継続的に改善されます。

YAGNI 機能を導入しない

YAGNI(You Are Not Gonna Need It の略)機能は、今は必要なくても将来は必要になると思われる場合に導入するものです。理想は、今すぐ機能する最も単純なものを導入し、継続的にリファクタリングを行って、システムのアーキテクチャが要件に応じて長期間で進化していくようにすることです。このようにすると、重要なことに集中することができ、コードの膨張や機能クリープを防ぐことができます。

Experience Manager