using DVCS when developing High Integrity Software

170 views Asked by At

Has anyone got any experience with using distributed version control tools such as Mercurial, Git, Bazaar etc when developing projects for use in the high integrity software arena, I'm thinking if you've got to develop avionics software, to say DO-178B standards?

Are there any rules that would prohibit the use of a modern DVCS?

1

There are 1 answers

0
VonC On BEST ANSWER

One good source for that is the paper "FLOSS for safety: Mastering mission critical development with GIT" from 2010 (although Git did evolve a bit since then)

The paper (pdf) by Andreas Platschek and Nicolas McGuire, given on the 12th Real-Time Linux Workshop, Nairobi 2010, insists on "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"

It doesn't touch about authentication and authorization though, which are lacking in a DVCS. In that regard, a workaround is the ability to GPG sign commits or tags for having a stronger evidence that the commit actually came from the person you think it did.


Also from 2010, the study "SVG Based Diagram Editor/Viewer for Requirements Engineering" by Dr. Laurent Fournier mentions the revision id (or Git commit), which is important because:

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.