再利用できるソフトウェア部品の構築
結果の再利用から再利用設計へ
2つ目のセッションでは、
再利用を意識した設計を
ビースラッシュ 取締役 近藤満氏
2つ目のセッションのテーマは、組込み開発における既存資産の再利用率の向上です。ビースラッシュ 取締役の近藤満氏は、まず再利用の効果として、
では、実際の現場ではどの程度再利用が進んでいるのでしょうか。近藤氏によれば、
こうした再利用の推進による効率的な開発を実現するためには、再利用方法の改革が必要であると話は進みます。具体的な改革のポイントとして紹介されたのは、設計段階から再利用を意識するということです。開発したモジュールが結果的に再利用することができた、というようなことでは当然再利用できてもプロジェクトに大きなインパクトを与えるまでには至らないでしょう。しかしあらかじめ再利用することを前提に設計すれば、その成果をほかの製品に展開しやすくなるというわけです。そして再利用の粒度を大きくしていくことと、資産の包括的な再利用がポイントとして示されました。
具体的な再利用率の向上のためには、リファクタリングとリエンジニアリングにより、既存コードを再利用しやすいように手直しを施すことや、ソフトウェアを小さなドメインに分割して開発を行う、プロダクトラインエンジニアリング
しかし実際には、プロダクトラインエンジニアリングは組織的な取り組みが要求されるため、
再利用部品開発を阻む高い壁
ビースラッシュ 取締役 酒井郁子氏
近藤氏に続いて登壇した同じくビースラッシュ 取締役の酒井郁子氏は、特に派生開発や多品種並行開発を行っている企業で、再利用可能な部品を構築したいというモチベーションは高まっている一方、現実的にはさまざまな困難がつきまとっていることを紹介します。
再利用部品開発の失敗例として、多数の製品で利用できる部品を目指して開発が進められたものの、汎用化しすぎて小さな部品しか残せなかった、あるいは部品の亜種が大量に発生し、効率的な再利用には至らなかったケースが紹介されました。
後々の開発に役立つ、再利用部品を開発するためには
それでも効率的な開発を実現していくためには、再利用可能な部品の構築は必要不可欠です。そこで部品構築に失敗しないための原則として、部品の仕様や設計を明らかにすること、リファクタリングによるコード品質の向上、部品の骨組みの見える化などの重要性が解説されました。
ただ、コードのリファクタリングや品質管理、骨組みの見える化は決して楽な作業ではありません。また自分の開発したものであればまだしも、過去の資産となると多くの苦労がつきまとうのは目に見えています。そこで、こうした作業を補助するツールとして紹介されたのが、東陽テクニカの
ツールを活用して再利用部品開発を推進
QAC/
このQAC/
加えてプロジェクト内のすべてのファイルを対象に、コピー&ペーストで生成したクローンコードを検出する機能もあります。クローンコードに修正が必要な内容が含まれていた場合、漏れなくすべて修正するのは骨が折れる作業ですが、exQutoを使えば大幅に手間を軽減できるわけです。
そのほか、やはりQAC/
さらに酒井氏が指摘するのは、部品の適切な管理です。具体的にはソースコードやドキュメント、テストコードのセット、そして変更履歴や使用履歴といった部品の履歴を残すために、構成管理ツールを活用して確実に部品を管理していくべきだと言います。こうした構成管理ツールの1つとして、東陽テクニカが提供しているのがPERFORCEです。低コストで導入できる上、開発規模によって拡張可能な柔軟性も持ち合わせています。さらに独自のブランチ方式であるInter-File Branchingにより、複数のリリースや並行する開発の流れを管理できるなど、開発の現場において有用な機能を備えています。
最後に酒井氏は