在开发高完整性软件时使用 DVCS

using DVCS when developing High Integrity Software

有没有人在开发用于高完整性软件领域的项目时使用分布式版本控制工具(例如 Mercurial、Git、Bazaar 等),我在想您是否必须开发航电软件,要说DO-178B标准?

是否有禁止使用现代 DVCS 的规则?

一个很好的来源是 2010 年的论文“FLOSS for safety: Mastering mission critical development with GIT”(尽管 Git 从那时起确实有所发展)

Andreas Platschek 和 Nicolas McGuire 在 12 号实时 Linux 研讨会上给出的 paper (pdf),内罗毕 2010,坚持 "some examples of features of git that are [in the their eyes] useful in helping the developers to fulfill the traceability and documentation requirements of safety related development life-cycles for bespoke components"

尽管它没有涉及身份验证和授权,which are lacking in a DVCS. In that regard, a workaround is the ability to GPG sign commits or tags 因为有更有力的证据证明提交实际上来自您认为的人。


也是从 2010 年开始,Laurent Fournier 博士的研究“SVG Based Diagram Editor/Viewer for Requirements Engineering”提到了修订 ID(或 Git 提交),这很重要,因为:

Diagram version management traces all changes, date and author of the change. It is possible to recover any version of any diagram and have access to the commit message explaining the change. Undo/redo is always available.