<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Sending to KWLUG list & KWARTZLAB list</p>
<p>I saw the following in a tech newsletter:<br>
</p>
<p>Do you control releases using a Version Description Document?
There's a good write-up about these in the deceased and
very-missed Dr. Dobb's Journal <a
href="http://www.drdobbs.com/implementing-a-version-description-docum/184415521">here</a>,
and a sample <a
href="http://sce.uhcl.edu/helm/MS_2167/vdd_80013A.doc">here</a>.</p>
<p>My spin. A few times in my career I have been asked to revive
long dormant embedded systems firmware development efforts. <br>
</p>
Embedded systems are notorious for their long life spans, often
spanning decades - often outlasting the availability of the parts
used to build the products.<br>
<br>
People at one organization asked for a Version Description Document
(VDD) - and I had to look this up. <br>
<br>
When I was first asked for the VDD the purpose was to document the
requirements to replicate a development environment required to be
able reproduce the work product. <br>
This would include listing the tools (IDE, Compiler, Linker), and
libraries as well as versions thereof.<br>
Also listed would be the configuration/make files and, of course,
the source code and the versions thereof.<br>
A description of the target target hardware would be relevant for
embedded systems (2,3), and could be important in other areas (1). <br>
<br>
(1) I once was called into troubleshoot a client/server network
problem (circa 1995). The code would run on an NT server running a
single core CPU but had intermittent problems with an early dual
core CPU. I suspected timing / race conditions were hard coded in
the software and these failed with the dual core CPU in the NT
server.<br>
<br>
(2) One project (circa 1995) was started in the 1970s on an Apple II
PC (6502 uC) and the task was to port the code to a current (1995)
PC w/P1 CPU under Windows. Trying to find the development tools,
documents and source code for the Apple II was a challenge.<br>
<br>
(3) I am making this up as I go. Consider a product developed around
a vintage 8051 uC (6 kHz CPU) see below. Then, because the uC has
been discontinued we asked to go a new CPU with a 30 MHz clock and
which decodes and executes instructions in 1 clock cycle as opposed
to the original 12 clock cycles. <br>
Where to start. Being able to reproduce the original executable code
used in - say 1985 - would be a good starting point.<br>
<p><a moz-do-not-send="true"
href="https://www.maximintegrated.com/en/app-notes/index.mvp/id/2035">https://www.maximintegrated.com/en/app-notes/index.mvp/id/2035</a></p>
<p><a moz-do-not-send="true"
href="https://jaycarlson.net/2017/06/27/blinking-an-led-with-an-original-intel-8051/">https://jaycarlson.net/2017/06/27/blinking-an-led-with-an-original-intel-8051/</a><br>
</p>
Regards<br>
JohnJ<br>
<br>
<p> </p>
</body>
</html>