組込みシステムのソフトウェア資産で、以下のような困りごとありませんか?
また、まだまだ活用できるソフトウェア資産が、メンテナンスできず眠ったままになっていませんか?
日立産業制御ソリューションズの「リファクタリングサービス」は、自動車や産業分野で培った豊富な開発経験を生かし、
あなたの会社の大切なソフトウェア資産を、さらに価値のあるものに、より長く使えるように改善します!
日立産業制御ソリューションズのリファクタリングサービスは、組込みシステムソフトウェアの「長期的な活用」を目的としたサービスです。
長い間利用しているソフトウェアは、機能追加や、部品EOL対応などによりソースコードが複雑化したり、粒度や項目が人によって異なる開発ドキュメントができてしまうなどの問題があります。そのため開発効率や品質が低下してしまい、思わぬコストがかかるケースがあります。このような状況になる前に、日立産業制御ソリューションズのエンジニアが豊富な開発経験を生かし、プログラムの内部構造を可視化、可読性や品質を向上させる作業を行います。また、お客様の開発体制やドキュメント体系に寄り添った作業を行うことで、将来性を高めつつ現行のソフトウェアを長期的に活用するためのサポートいたします。
【組込み開発向け】開発言語: C言語、C++
サービスの一例を紹介します。
現行のソフトウェアを分解・解析して、その構造や動作原理を明らかにします。
1次解析にて解析レポート、最終的には、機能仕様書、関数仕様書、依存構造ダイヤグラムを作成します。
No. | 作業内容 | 効果 |
---|---|---|
① | 機能仕様書作成 |
▪ 開発方針の明確化が期待できる ▪ 実装している機能一覧の明確化 ▪ 他の機能とのインターフェースの明確化 |
② | 詳細設計書作成 |
▪ 具体的な設計方針の明確化 ▪ 内部構造や処理フローの明確化 |
③ | 依存構造 ダイアグラム作成 |
▪ 各コンポーネントの呼び出し関係が明確になり、現在の構成が複雑か判断可能 ▪ 派生開発/不具合対策時に、影響範囲を明確化 |
プログラムの外部から見た動作を変えずにソースコードの内部構造を整理し、開発工数削減、検証のし易さ向上による品質向上を図ります。
約50社/約80ソフトウェアの実績あり※2024年12月現在
対応実績の一例を紹介します。
No | 業種 | 規模 | 構造 解析 |
リファクタリング | リバースエンジニアリングほか | |||||
---|---|---|---|---|---|---|---|---|---|---|
設計 | 実装 | 単体 テスト |
組合 テスト |
仕様書 作成 |
マイコン 置換 |
C基準 対策 |
||||
1 | 産業系 | 約74k LOC | 〇 | 〇 | ||||||
2 | 産業系 | 約74k LOC | 〇 | 〇 | 〇 | |||||
3 | インフラ系 | 約7,200k LOC | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 | 〇 | |
4 | 自動車系 | 約3k LOC | 〇 | 〇 | 〇 | 〇 | ||||
5 | 自動車系 | 約150k LOC | 〇 | 〇 | ||||||
6 | 医療系 | 約500k LOC | 〇 | 〇 | ||||||
7 | 情報通信系 | 約100k LOC | 〇 | 〇 | ||||||
8 | 自動車系 | 約500k LOC | 〇 | 〇 | ||||||
9 | 自動車系 | 約3k LOC | 〇 | 〇 |
お客様の困りごとから日立産業制御ソリューションズの対応事例を下記に紹介します。
■課題:
ベテランの技術者が一人でプログラムを組んでいたため、機能仕様や関数仕様がドキュメントとしてまとめられていなかった。
ベテラン技術者の退職後、ソフトウェア資産が上手く流用できなくなった。
■解決策:
■課題:
EOL対応のためマイコンを置き換える際、ソースをスリム化(最適化)し、標準的に活用できるソフトウェアに作り変えたい。
■解決策:
エッジAIからCPU内蔵FPGA(SoC)の活用、機能安全対応など、経験豊富なメンバーがFPGAベンダーとのパートナーシップを活用し、迅速に対応するFPGA設計・開発サービスを提供しています。
車載・医療・産業・民生品などの組込み機器開発で培ったパワーエレクトロニクスやモーター・インバーター制御開発の経験と技術を生かして、お客様の電動化開発を支援。
国際規格から機能安全や組込みセキュリティ対応開発を、導入から製品開発、評価までトータルで支援。
自動車分野で培った、機能安全対応ノウハウを、さまざまな製品開発にお役立ていたします。
• 現行ソフトウェアを活用し、長期に活用できるようにプラットフォーム化したい。
• 設計ドキュメントが無く、誰もメンテナンスする人がいなくて困っている。
• ソースコードのコメントが少なく、理解するのに時間がかかる。
• 長期的に利用するソフトウェアだが不具合が多くて困っている。