informalsystems / vdd

Verification-Driven Development
21 stars 0 forks source link

Integrating traceability concerns in VDD process #4

Open milosevic opened 4 years ago

milosevic commented 4 years ago

Issue raised by @konnov, @josef-widder and @adizere.

adizere commented 4 years ago

Had a look over "DO-254 explained" document [1]. We can consider two types of traceability it seems:

Note that by "component" I mean a "unit of review of verification". So examples of components are: a code block, or a TLA+ module, or an English spec defining a problem abstractly.

-- [1] https://www.cadence.com/content/dam/cadence-www/global/en_US/documents/solutions/aerospace-and-defense/do-254-explained-wp.pdf

josef-widder commented 4 years ago

Thanks for the pointer!

I guess the main problem is combination of the two types. E.g., if I have some temporal property A, and then in the process of refinement I figure out that A needs to be rewritten, I have to update to A2. Now it becomes complicated if other components use A. Should A still be there and A2 added, etc. In order even to understand the situation, it would be important to understand what components refer to A. For that the matrix of which Igor talks about would be important...

konnov commented 4 years ago

I think I have a clear idea in my head now. So I have started writing a proposal.

konnov commented 4 years ago

See the pull request #11