私は仕事で奇妙な状況を見つけました、そして私は解決策からどこから始めるべきかを理解しようとしています。
複数のボードを含むカスタムハードウェア/ソフトウェアデバイスがあり、それぞれに独自の機能とソフトウェアのフレーバー(CPLD、ブートローダー、アプリケーションなど)があります。さらに、デバイスは特定のWebアプリおよびPCアプリケーションと対話します。
これらの各コンポーネントには、個別に追跡される改訂履歴があります。特定のデバイス(もちろんすべて機能のないブラックボックス)には、すべてのコンポーネント、ハードウェア、およびソフトウェアのバージョンが異なる可能性があります。まだプロトタイプとテストの段階にあります。
私が欲しいのは、ある種の統一されたバージョン追跡です。ここでは、バグや機能要求に対してソフトウェアビルドを追跡し、ボードの履歴/回路図を持ち、最も重要なのは、コンポーネントのどのバージョンが他のどのバージョンに対してテストされたかを追跡できることです。コンポーネント。つまり、ブートローダーバージョン1はボードバージョンAと組み合わせてテストに合格しましたが、当時は存在していましたが、必ずしも同じボードのバージョンBに対してテストされたわけではありませんでした。
個々の回転数の追跡は比較的簡単です。さまざまなソフトウェアコンポーネントを使用している開発者が数人います。それらを結び付けて、「PRODUCT VERSION 1.0」はこのコンポーネントのバッグで構成されており、相互にテストされており、他にはあまりありません。そうすれば、たとえばブートローダーを更新するときに、他のすべてのコンポーネントの現在のバージョンに対して回帰テストを行い、「PRODUCT VERSION 1.1」全体にラベルを付けて、誰かがバージョンを入手したとしても、そのスナップショットが何であるかを知ることができます。同じ日のアプリケーションコードの1.4。
理想的には、すべてのコンポーネントにわたってリビジョン履歴を個別に追跡し、ユーザーが特定のコンポーネントまたは製品全体に対してバグをログに記録できるようにします。その後、開発者はバグを適切なサブシステムに再割り当てできます。開発者は物理的に同じ場所に配置されていないため、Webベースのものが理想的です。
現在、Bugzillaを使用していますが、これはタスクにほど遠いものです。私はTracを見ていますが、それが仕事に適したツールかどうかはわかりません。ソース管理システム、改訂履歴システム、プロジェクト管理システムはたくさんあるようですが、必要なものをすべて処理できるものは見つかりませんでした。
それよりも複雑に聞こえるかもしれませんが、私たちがそれを使って塹壕に入っているときはかなり複雑です。これには解決策が必要です!
何か案は?