分類

    デグレード | IT用語辞典

    デグレード 【 degrade 】

    フリー写真素材ぱくたそ

    デグレード(degrade)とは、バージョンアップにともなって、その品質が以前よりも悪くなることを意味する言葉である

    「デグレ」と省略形で用いられる場合もある。

    ちなみに「デグレード」に該当する事象は、英語では「リグレッション(Regression)」と呼ぶ。

    「デグレード」は日本のIT業界でしか通じない和製英語なので注意が必要である。
     

    デグレードの種類

    デグレードの中にはいくつか種類がある。

    特に下記の事項は「デグレード」に含まれるが、それぞれを区別しているエンジニアも多い。

    • 「先祖返り」
    デグレードの一つのパターンが、バージョンアップしたことで、以前に修正したはずの機能が前のバージョンに戻ってしまうというものである。

    この現象は「先祖がえり」と呼ばれる。

    具体的には、バージョンの管理ミスにより、追加したはずの機能が消えたり修正したはずのバグが復活したりすることを指す。
    • 「エンバグ」
    バグの修正や機能の追加をするために行ったソースコードの変更によって、今まで存在しなかったバグを作り出してしまうことを、「エンバグ」と呼ぶ。

    なお、「エンバグ」も「デグレード」同様に和製英語なので、英語には存在しない表現である。

    「退行」を意味する「リグレッション(Regression)」とは異なるミスであるため、「デグレード」と区別する人もいる。

    デグレードの原因と対策

    デグレードの主な原因は、新たに開発した部分のテストが不十分だったり、ソースコードのバージョン管理の不備によるものだったり、変更箇所が全体に及ぼす影響の評価が不十分であったりと複数の要素が考えられる。

    デグレードを防ぐためには、機能を追加したあとやコードの一部を改修したあとに、動作を確認するテストを実施することが有効である。

    このテストを「デグレードテスト」「リグレッションテスト」「回帰テスト」「退行テスト」などという。

    バージョンアップにともなう個別の作業をプログラム全体の構成と結びつけて把握することでデグレードの発生を抑えることは可能である。

    またチーム内やチーム相互の情報共有も、デグレードを防止するために必要だとされている。

    「デグレード」の関連用語

    Photo byjohnhain

    • リグレッションテスト  (回帰テスト)
    • リファクタリング  (refactoring)
    • バージョンアップ
    • 先祖返り
    • エンバグ
    • デバッグ
    • インフラ
    • レビュー

    「デグレード」の例文

    Photo bykaboompics

    例文

    • しっかりと設定を見直さなかったから、デグレードを起こしてしまったのだろう。
    • デグレードを起こさないために、修正のレビューを行おう。