PCB設計でバージョンコントロールシステムを使う理由

Ari Mahpour
|  投稿日 December 13, 2021  |  更新日 May 13, 2022
PCB設計でバージョンコントロールシステムを使う理由

バージョンコントロールシステム(VCS)は、ソフトウェア業界では何十年も前から存在していますが、電子機器の設計業界では意外と知られていません。この記事では、VCSとは、その機能、PCB設計プロジェクトにVCSを使うべき理由について説明します。

バージョンコントロールシステムとは?

バージョンコントロールシステム(VCS)は、ファイルを保存し、レビジョン履歴を残すために使用されます。ドキュメントを書いて公開し、途中で変更を加えた場合、その変更がいつ行われ、どのようなものであったかを記録しておきたいですよね?VCSはまさにその機能を果たすためのもので、個人でもチームでもご利用になれます。ユーザーは自分の変更を「コミット」(アップデート)し、それをサーバーにプッシュします。サーバーは、それが行われたときに変更されたすべてのファイルと、ユーザーから提供されたその他のメタデータ(コメントなど)を追跡します。これにより誰がいつどのような変更をしたのか、履歴を確認することができます。これは、チーム内で変更があり、ファイルを元に戻したり、見直したりしなければならない場合に特に有用です。PCB設計を行う際には、Altium 365で提供されるようなバージョンコントロールシステムは、コンポーネントパラメータの更新から基板レイアウト内の大規模なルート変更まで、PCBプロジェクト内のすべての変更を追跡します。

現状

VCSのメリットを真に評価するためには、現状とその限界を理解する必要があります。私が出会ったすべての人が、PCB設計プロジェクトに何らかの形でVCSを使用していると言いたいところですが、それは真実からかけ離れています。2年以上も前に、Altium DesignerにおけるGitの使用について書きましたが、当時はコミュニティにとってこれは比較的新しい概念でした。それ以来、Altium DesignerでのVCSの採用が増えてきましたが、現在でも、基板を設計し、パッケージに入れ、同じ企業内であるにも関わらずチーム間でメールでやり取りするといった、その記事に記載したようなことがまだ多く見受けられます。「改善された方法」としてよくある2つ目のシナリオは、ネットワークやクラウドベースの共有ドライブに設計パッケージをドロップすることです。これは間違いなく1つ目のシナリオから改善されていますが、真の意味でチームが協力し合うことはできません。各自が個別に作業し、完成したものを共有ドライブにドロップすることになります。私たちはペースの速い世界に存在し、リアルタイムでコンフリクトをマージし、変更箇所を比較し、リアルタイムでコメントを入力して共同作業を行わなければなりません。現在は、VCSなしではPCB設計を行うことすらできません。

しかし自分の作業は自分で完結する

世の中の多くの人は1人で設計を行っており、VCSを使う必要性を感じていません。私自身は、プログラミングやPCB設計を始めた当初から、何らかの形でVCSを使用してきました。その主な理由の1つは「信頼」です。

  • 私はハードディスクが故障しないということを信じていませんでした。
  • また、大きな変更をするたびにバックアップすることを忘れないという自分の能力も信じていませんでした。
  • さらに、毎回それぞれのレビジョンの詳細を覚えることができるとは信じていませんでした。

ご自身のプロセスでこれらの問題が特にないのであれば、おめでとうございます!しっかりとVCSが導入されています。もしそうでなければ、他の人と同じように自分自身のためにもVCSを使うことをおすすめします。チームに新たなメンバーが加わっても、VCSがあればこれまでの流れを把握してもらうことも簡単です。

VCSのメリット

Subversion、Git、Altium 365などのVCSを導入する際には、レビジョンスキームやストレージソリューションについて考えます。これらは、VCSを使用する際の2つの大きなメリットです。VCSでは、コミットの履歴と、バックアップとしてそれらのファイルを保存している場所(通常はリモートサーバー上)が確認できます。これは一部のユーザーにとって十分かもしれませんが、今日の多くのユーザー、特に他のリモートユーザーと共同作業をするユーザーにとっては、基本のVCSでは十分ではありません。標準的なバージョンコントロールシステムではなく、Altium 365を使うでは、標準的なVCSで利用できる機能を超えた、現代のコラボレーションに必要なコンセプトとツールについて説明します。

まとめ

この記事では、VCSとは、その機能、PCB設計プロジェクトにVCSを使うべき理由について説明しました。また、VCSを使用しない場合のPCB設計、それに伴う制限について、いくつかの例を紹介し、標準的なVCSでできることを簡単に説明し、Altium 365のような高度ソリューションに移行する利点について説明しました。標準的なVCSを超えるAltium 365の高度機能については、「一般的なバージョンコントロールシステムではなく、Altium 365を使う」をご覧ください。

ここでは、Altium 365とAltium Designerで何が可能か、その一部を紹介したに過ぎません。今すぐ、Altium DesignerとAltium 36の無償評価版をお試しください。

筆者について

筆者について

Ari is an engineer with broad experience in designing, manufacturing, testing, and integrating electrical, mechanical, and software systems. He is passionate about bringing design, verification, and test engineers together to work as a cohesive unit.

最新の記事

ホームに戻る