スマートリファクタリング
h2-0
リファクタリング図0
h2-1

 スマートリファクタリングの特長 -多数の海外実績を誇る海外企業の近代化システムを採用-


<スマートリファクタリングの概要>

イーセクターのリファクタリングは「AIエンジンとオブジェクトモデル」を使用する独自の仕組みにより、 従来サービスでは提供出来なかった範囲まで「自動変換」で実現可能となります。


<スマートリファクタリング・イメージ>

migration図1

種類 変換内容 ポイント
①自動リファクタリング
(コードレベル)
自動変換 ・未使用、冗長、重複したソースコードを完全に自動で最適化
・既存システムの機能に影響を与えずに保守性を向上
②半自動リファクタリング
(機能レベル)
一部自動変換
SI領域
・顧客仕様に従ったコード設計見直しによる改良、強化
・変数等の命名規約統一、コードパフォーマンス(最適な文法)改善
③カスタムリファクタリング
(設計レベル)
一部自動変換
SI領域
・設計レベルのシステム構造見直し(マイクロサービス化等)
・機能構造の分割や統合、セキュリティ惰弱性の改善、堅牢化

① 自動リファクタリング

migration図2

② 半自動リファクタリング

migration図3

③カスタムリファクタリング

migration図4

<スマートリファクタリング・サービス対象言語、DB>

カテゴリ リファクタリング・サービス対象
ソース言語 COBOL PL/SQL VB.NET Rust PL1 Angular Python TypeScript C, C#, C++ Java HTML5 その他言語
DB DB2 Oracle Microsoft SQL Server SQL Sybase MariaDB MongoDB NoSQL その他DB

※バージョン、システム環境により対応可能なリファクタリングレベルが異なります。詳細はお問い合わせください。


<海外プロジェクト事例>

事例① Javaリファクタリング(医療系、院内システム、約65万行規模)
【自動リファクタリング、半自動リファクタリング】
・繰り返し行われてきた保守開発でスパゲティ化された不要なコードを削除、コード内に
記載されたコメント(処理説明など)を文書化
・システムの機能と保守性を改善、改善後のシステムを自動の現状分析にてドキュメント化
・プロジェクトは約8ヶ月程の期間で完了、以降の運用にて当初想定以上の効果を発揮
事例② COBOLリファクタリング(公共系、人事システム、約25万行規模)
【自動リファクタリング、半自動リファクタリング】
・長年の使用によりブラックボックス化したシステム資産について、次期開発で撤去せざるをえなかったサブシステムを現状分析、リファクタリングで再生し次期に活用
・更に全体の業務見直しの為、別のサブシステムと統合し、運用の利便性が向上
・プロジェクトは約4ヶ月程の期間で完了、以降本番でリファクタリング起因のエラーなし

 「実は非効率だった!?」既存システムの最適化は大幅なコスト削減に!

<意外にも知られていない、現行システムの未使用アプリの状況>

長年のメンテナンスでツギハギされたシステムは徹底した資産管理を行っていても実態が不明な点が多くあります。
ある民間調査で複数の会社のシステム資産管理について調査を行った所、実に「全体の30%~40%のアプリケーションが未使用」であるという調査結果が報告されています。

これは氷山の一角であり、あらゆる企業のシステムが多かれ少なかれ同様の状態に陥っている可能性があります。

<既存システムの現状分析の弊害となっている要因>

長年携わったシステム管理者であれ、「全体の構造を完璧に把握出来ている開発者は、ほぼ存在しない」というのが実情となっています。

その上で更に現状分析を複雑にする要因は複数あります。(以下はその一部です。)
・階層構造が深く、上位、下位モジュールが相互に呼び合い、必要可否の判別困難
・ユーティリティ、簡易言語、ベンダー提供ツールなどの使用有無
・オブジェクトのみでソースコードが存在しない

これらの課題はいくらシステムを熟知している開発者がいたとしても簡単には改善出来るものではありません。 「人手」による調査、分析ではコストに見合った成果が伴わず、頓挫してしまうケースが数多くあります。

<現状の可視化により不要ロジック、アプリ等の洗い出し>

「スマートリファクタリング」では上記の様な課題を解決する為に、現状把握を行いたいシステムのソースコードを元に「自動分析ツール」を使用して、分析結果を可視化します。
これにより現状を可視化することで、システム全体への対応方針を明確に定めることが出来ます。

以下が分析結果の参考例の一部です。
◆構造図(-Structure Charts-)
migration図5

◆デッド、冗長、および類似のコード分析(-Dead, Redundant, and Similar Code Analysis-)
migration図6

<リファクタリングにより最適化で運用、保守コストの改善に>

現状の可視化後に具体的な対応を行う場合、従来であればシステム開発プロジェクトを立ち上げて対応することになります。
しかし「スマートリファクタリング」では、単純な「人手」による開発を行わず、「AIエンジンとオブジェクトモデル」を活用した弊社独自のプロセス(自動変換+SIサービス)を経て、「システムを最適化」します。

【例①】ソースコードの最適化
migration図7

【例②】DB構造の最適化
migration図8

【例③】環境、セキュリティの最適化
migration図9
弊社の独自プロセスを用いることで、上記の例を実現することが可能となります。
「自動変換」によるプロセスは「人手」によるパフォーマンスや人為的エラーの改善だけでなく、UML形式での機能統一性、セキュリティの脆弱性の解消にも大きな効果を発揮します。

またお客様からご提示いただいた仕様を踏まえて、機能の統廃合や再設計を行うことも可能となります。
当サービスによる「最適化」により運用、保守コストの改善に大いにお役に立てると思います。

ご興味がありましたら、【お問い合わせフォーム】にてお気軽にお問合せ下さい。

お問合せ