F社は自動販売機において世界的なシェアを持つメーカーです。以前よりRubyユーザーであり、プリンタ制御部分をRubyで実装、実機にはCにコンバートして利用していました。ただ、開発を中国で行っていたこともあり、「オフショア開発では要求・設計仕様など、情報伝達や共有が難しい」「C言語では動作させるまでに手間がかかる」「RubyからC言語に変換するのは、質にばらつきが大きい」といった課題を抱えていました。
そこでmrubyの開発時に検証企業として参加を頂いたところ、「気が付いたら出来上がっていた」「パフォーマンスは何ら問題ない」との感想が寄せられました。検証後のレポートでも、プリンタ初期化ではCruby(PCなどで動作する通常のRuby)が勝るものの、それ以降はmrubyのほうがはるかに高速で動作するとの評価を頂きました。
F社 10KLOC規模のプロジェクトにおけるmruby導入効果 | |||
---|---|---|---|
バグ件数 | 19(従来型) | 11(mruby導入後) | ▲42% |
開発工数(人日) | 101.5(従来型) | 67.5(mruby導入後) | ▲33% |
人工衛星の開発はCPUの制限等から全てをイチから行うのが通常です。開発言語は主にCやC++で行われ、人工衛星ごとに仕様が異なるため、開発費用はとても大きくなるのが通例でした。しかしながら今後、人工衛星をさまざまな企業が利用すると考えられ、低コスト化、開発スピードの向上が必要とされています。QPS研究所では人工衛星の開発にmrubyを利用することで以下のようなメリットがあると考えています。
さらにmrubyがネットワークアプリケーションを開発しやすい点を生かして、TCP/IP通信システムを用いた小型衛星の開発を行っています。
(1)人工衛星で使われるセンサー、GPSなどの周辺機器のインタフェースの標準化により、インターネット上での開発や個別開発が容易に
今までの衛星開発は通信方式の制限があり、1カ所での集中開発が必要不可欠でした。ですが、TCP/IP化によりインターネットやシミュレーター上での開発が可能となりました。また、確立された既存システムを使えることによる安定性の確保が可能となりました。
(2)シミュレーターで人工衛星の状態を確認する事が可能になり、開発やテストが容易に
(3)開発のコストダウン、スピードアップが可能に
これらの結果、人工衛星、宇宙開発への新規参入を促すとともに衛星のIoT化、衛星間通信(M2M)などの可能性が広がると期待されています。
Copyright © ITmedia, Inc. All Rights Reserved.