<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;"><span style="font-family:'Helvetica'; font-size:medium; color:rgba(0, 0, 0, 1);"><b>From: </b></span><span style="font-family:'Helvetica'; font-size:medium;">Chris Gearing &lt;<a href="mailto:chris@whamcloud.com">chris@whamcloud.com</a>&gt;<br></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;"><font class="Apple-style-span" color="#000000"><b><br></b></font></div><meta charset="utf-8"><div>The greatest problem facing the code acceptance process for Lustre is establishing the complete history of the code being submitted.&nbsp;To fully establish the history the code development process must be documented from conception thru landing. &nbsp;This documentation which will form part of the landing&nbsp;collateral&nbsp;will include at least the requirements specification, the design document, test specification/plan, results of testing, the code itself and for copyright purposes the identity of the owner of the submitted code. A key piece of information that must be present is evidence in the form of failing tests that indicate the tests built are fit for purpose. Results showing the failing tests before code implementation are vital to demonstrate that passing results have value.</div><div>
<br>As a timeline this collateral can be defined as;</div><div>1/ What is the requirement</div><div>2/ How will the requirement be met</div><div>3/ How will success be measured</div><div>4/ Validation that the code does not already meet the requirement</div>
<div>5/ The Code</div><div>6/ Validation the code now meets the requirement including general regression testing.</div><div>7/ Code ownership information.<br><br>The documents can be extensive and detailed for a major project like the health network or updates of a bugtracker for a bug or small improvement, however in all cases each of the 7&nbsp;collateral&nbsp;points must be covered. Another key requirement of all documents is that they must be free standing in&nbsp;their&nbsp;own right, this means that whilst references to other specifications or documents are obviously acceptable&nbsp;references&nbsp;to 'lustre-devel', 'email-threads' or 'Skype&nbsp;discussions' etc are not. In all cases a lustre capable gatekeeper should have at hand everything to answer the 7 points on the timeline without the need for any historical knowledge of the code change.<br>
<br></div>
</blockquote></div><br><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div><br class="Apple-interchange-newline">Cheers, Andreas</div><div>--</div><div>Andreas Dilger&nbsp;</div><div>Principal Engineer</div><div>Whamcloud, Inc.</div><div><br></div></span><br class="Apple-interchange-newline">
</div>
<br></body></html>