Refactoring
アーキテクチャ改善,ソースコード改善,リファクタリングサービス,マイグレーションサービスのご紹介
現状の多くのソフトウェア開発組織では、開発成果物として最新のソースコードしか存在していないのが現実です。開発予算の削減やメンテナンスにかける時間と要員不足、度重なる機能追加・変更により、当初作成した要求文書および設計文書類がソースコードと乖離してしまい、最新の開発成果物がソースコードのみとなってしまうのです。弊社サービスは、このような状況においても、現状の開発に負担をかけず、既存の開発資産(レガシー資産)価値を高めることができます。
QCD+Fを悪化させる原因と打ち手
ソフトウェア開発に於いて、QCD+F(Quality, Cost, Delivery, Flexibility)を悪化させる主な原因は、ドキュメントの不備と問題のあるプログラムです。開発が逼迫している現場は、QCD+Fが悪化する循環に陥りがちであり、組織的な対応も不可能となっています。これらを好転させていくために、弊社では、半自動的に最低限の設計情報を整備するための「見える化」、問題の発見を支援する「メトリクス」、問題を除去するための「リファクタリング/マイグレーション」を三位一体で推進し、成果を得ています。
具体的なアプローチ
既存のソースコードから、DSMツール(Lattix)等を用いてアーキテクチャの可視化を行い、お客様が目標とするアーキテクチャとのギャップを認識していただきます。ギャップを元に改善戦略を策定し、目標に近づけていくために必要となるリファクタリングを弊社にて実施いたします。
既存の成果物評価
既存の成果物の第3者評価を行い、問題点を明らかにします。
成果物及びアーキテクチャの評価アプローチとして ATAM, SAAM, ISO/IEC9126, SARA等を用います。
あるべき(To-Be)アーキテクチャの提案
現状の成果物の問題点とビジネス要件を考慮してTo-Beアーキテクチャを提案します。
必要に応じてCan-Beアーキテクチャを設定し、目標に近づくためのアプローチを検討します。
成果物改善
あるべき(To-Be)アーキテクチャへ成果物をリライトします。
開発プロセス及び開発標準
モデル駆動型の開発プロセスの定義を行います。
お客様の現場での定常的な開発要件量、開発成果物量、技術開発の方向性に準じ、最適化を行います。
技術者教育
改善された成果物と開発プロセスを使った実務者教育を実施します。
→リファクタリングに関する研修はこちら
→DSMによるアーキテクチャ改善に関する研修はこちら
アーキテクチャ管理環境構築
アーキテクチャ管理を自動的に実行するための環境を構築します。
→プロダクトライン・アーキテクチャの維持/管理についてはこちら
ソースコード・リファクタリング
弊社では、お客様よりご依頼いただいた既存ソースコードを、可読性の高い洗練されたソースコードに書き換えます。このとき、同時にテストコードを整備し、検証結果とともに納品いたします。なお、お客様は、すべてのソースコードをリファクタリングする必要はありません。弊社は、ソースコード・メトリクスの結果と、変更頻度の高い部分、今後変更が予想される部分を基に、問題のあるプログラムを効率的に検出&評価し、戦略と見積りを元に適切なタイミングでリファクタリングを実施していきます。
具体的な成果/実績/効果
リファクタリングをアウトソースすることにより、お客様は、既存の開発を継続させることができます。
以後、質の良いソースコードに対して機能追加&変更を行うことが可能となり、開発効率が高まります。
また、普段見慣れていたソースコードに対し、改善済みの内容をコードレベルで理解することにより、お客様のドメインに即した新規開発技術の組織的獲得と、担当者スキルアップを容易に図ることができます。
※本サービスについての詳細は、こちらまでお問い合わせください。