振舞いと結果を自働評価
「振舞い」と「結果」を自働的に評価する
「④コードの変更」を実施した後、「⑤変更後のテスト」で振舞いが変わっていないことを確認します。下図はGoogle testフレームワークを使ったテストプログラムの例です。テストフレームワークでは、フレームワークが用意している仕組みを使って、単体テストを簡単に作成することができます。下図のように、フレームワークを使うことで、テスト結果も分かりやすく表示してくれます。
最終的に「⑥結果の評価」で「リファクタリング」の目標である保守性の問題が解決されていることを確認します。
⑤⑥の結果がNGだった場合は「②解決策の立案」もしくは「④コードの変更」に戻り、繰り返し「リファクタリング」を実施します。この繰り返しが煩わしいと、継続的に「リファクタリング」をしていく上で、大きなブレーキとなってしまいます。この煩わしさを解消するためには、CIフレームワークを使ったシステムで自働化することが有効です。
CIフレームワークを使ったシステムでは、「ビルド」「テスト」「静的解析」を自働的に実行することで、生産性を大幅に上げることができます。
冒頭で「リファクタリング」を踏みとどまらせている要因の一つとして「多忙」をあげました。本来「リファクタリング」は、日常的な開発の中で取り組むべきことです。できるだけ簡単かつ効率的に続けられる環境で実施することが、継続的に「リファクタリング」をしていくための大事なポイントといえます。

レガシーリファクタリングの関連サービス
適用支援
レガシーリファクタリング実施支援サービス
ソースコード診断による問題の把握から、あるべき姿への改善まで、設計技術支援とプロセス設計によって、レガシーコードの改善を総合的に支援します。
適用支援
要求仕様書作成サービス
「要求仕様書」を作成したいのに作成する工数が取れないといったお客様に向けて、エクスモーションが制御仕様書や機能仕様書などの既存資料の調査や開発者へのヒアリングを行って「要求仕様書」を作成します。
「リファクタリング」による品質改善についての理論を学び、問題発見・コードの変更・CIフレームワークを使ってのテストまでを実践する本格的トレーニングです。テスト自動化ツール「Google Test」とCIフレームワーク「Jenkins」を使用します。
頑張ってるけど、ちっとも楽にならない…何で?
すぐに成果を出すために頑張ってるけど、自前ではもう限界
効果的だろうけど高額なコンサルには手がでない…
あなたに合う一番最適な解決方法を
エクスモーションがご提案いたします。
レガシーリファクタリングに関する記事を見る
他のソリューションを見る
モデリング プロダクトライン開発
最新コラム
SDV時代を生き抜くための サイバーセキュリティ&機能安全
近年SDV(Software Defined Vehicle)が注目を集めています。SDVではソフト...
設計ノウハウの蓄積と活用を促進する パワエレ製品向けMBSE
パワエレの製品開発では電力・電子・制御など複数の技術ドメインに対する定量値や制約の扱いがシステム設計...
SDVの価値向上に欠かせない データ駆動開発のすすめ
車がネットワークにつながったことで、多種多様なデータを収集することができるようになりました。集めたデ...
生成AIとともに変わりゆく開発のあり方 LLMOpsが導く新たな可能性
エクスモーションでは、全社的に生成AIを皆さんの開発現場にどう生かせるかを模索しています。ここでは、...