    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
     <channel>
        <title>ACCU  :: The Wall</title>
        <link>https://members.accu.org/index.php/articles/1055</link>
        <description>Professionalism in Programming</description>
        <dc:language>en-us</dc:language> 
        <dc:creator>Administrator</dc:creator> 
        <admin:generatorAgent rdf:resource="http://www.xaraya.org" /> 
        <admin:errorReportsTo rdf:resource="mailto:webeditor@accu.org" />
       <sy:updatePeriod>hourly</sy:updatePeriod>
       <sy:updateFrequency>1</sy:updateFrequency>
       <docs>http://backend.userland.com/rss</docs>




<div class="xar-mod-head"><span class="xar-mod-title">Letters to the Editor + CVu Journal Vol 12, #5 - Sep 2000</span></div>

<table border="0" cellpadding="1" cellspacing="0">
    <tbody>
    <tr>
        <td valign="top">
            Browse in :
       </td>
       <td valign="top">

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c184/">Journal Columns</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c186/">LettersEditor</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c76/">Journals</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c77/">CVu</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c124/">125</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/c186-124/">Any of these categories</a>

                    -                        <a href="https://members.accu.org/index.php/articles/c186+124/">All of these categories</a>
<br />
</td>
   </tr>
   </tbody>
</table>




<div class="xar-error">
   <p>
 <strong>Note:</strong> when you create a new publication type,
the articles module will automatically use the templates
<em>user-display-[publicationtype].xt</em>
and <em>user-summary-[publicationtype].xt</em>.
If those templates do not exist when you try to preview or display a new article,
you'll get this warning :-)  Please place your own templates in themes/<em>yourtheme</em>/modules/articles . The templates will get the extension .xt there. </p>
</div>
<div class="xar-norm xar-standard-box-padding">
   <h1><strong>Title:</strong>&nbsp;The Wall</h1>
<p><strong>Author:</strong>&nbsp;</p>
<p>
<strong>Date:</strong> 08 September 2000 13:15:39 +01:00 or Fri, 08 September 2000 13:15:39 +01:00</p>
<p><strong>Summary:</strong>&nbsp;</p>
<p><strong>Body:</strong>&nbsp;<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e20" id="d0e20"></a>Re
Professionalism in Programming Part 3:</h2>
</div>
<p>Dear Sir,</p>
<p>I was most interested in Peter Goodliffe's article <i class=
"citetitle">Professionalism in Programming Part 3</i>, and I would
like to make the following observations regarding specifications
and professionalism.</p>
<p>In all but very trivial developments, it is most important that
the Project Plan defines the document configuration items to be
created, their purpose in the project, their relationship to other
project configuration items and their lifecycles. This eliminates
the potential for misunderstanding of a document's purpose, which
tends to result in a proliferation of 100+ page 'Wuthering
Heights'-type documents which no-one can be bothered to read and
often get abandoned at about third draft, having wasted a
tremendous amount of time.</p>
<p>As regards professionalism, this is related to the first and
second 'laws' of systems engineering, which are true for any
systems engineering, not just computer-related systems:</p>
<p>The 'First Law of Systems Engineering' is:</p>
<p><span class="bold"><b>All 'good' systems engineering comes from
one thing and one thing alone:</b></span> <span class=
"emphasis"><em>the solid application of knowledge</em></span>.</p>
<p>Note that 'good' computer systems engineering does not come from
having ISO 9001, a heavy quality management system, the latest CASE
tools or automated test tools!</p>
<p>The 'Second Law of Systems Engineering' is:</p>
<p><span class="bold"><b>Any systems engineering can only be as
'good' as the</b></span> <span class=
"emphasis"><em>models</em></span> <span class="bold"><b>of the
system being engineered</b></span>.</p>
<p>Optimum specification documents are better constructed in terms
of static and dynamic models of the system, as the models fix
semantics and facilitate correctness and completeness of the
specifications for a particular system's context. This is the area
of expertise of professional analysts.</p>
<p>I thought that the definitions given of 'correct', 'complete',
'consistent' and 'verifiable' were too woolly, but they are typical
of those found in documentation standards. It is all too easy to be
superficial, both in construction of specifications and in their
verification. If inadequate specification documents are being
created for a project, then this may be because of the 'Universal
Law of Incompetence', which is:</p>
<p><span class="bold"><b>In any crap organization, the biggest
shit-head is the one at the top</b></span>.</p>
<p>In my experience of 'poor' projects, typically littered with
abandoned documents, this has always held true.</p>
<p>The designated Project Manager must have sufficient knowledge to
ensure that optimum processes are in place on the project, and that
all participants in the project have the appropriate level of
knowledge to carry out their duties within the context of the
project and its defined processes.</p>
<p>If the Project Manager has an inadequate level of knowledge for
the project, inadequacy is likely to spread throughout the project
organization. This can have another effect, in that knowledgeable
staff will raise issues that will not be addressed, if even
understood! This can result in beneficial knowledge being present
in the project, but not being applied, and knowledgeable staff
being frustrated. I am sure most of us have been put in this
position at some time. Under these circumstances, asking for an
improved standard of documentation is pointless, as the project
staff know no better.</p>
<p>In my view, professionalism for the individual means the
continuing acquisition and refinement of his/her knowledge, by, for
example, reading papers and textbooks, attending training courses,
learning from more knowledgeable mentors and experimentation.</p>
<p class="c3"><span class="remark">Unfortunately the sftware
industry is one that seems to be woefully short of people who are
willing to continue learning. Somewhat ironic.</span></p>
</div>
</p>
<p><strong>Notes:</strong>&nbsp;</p>
<p><em>More fields may be available via dynamicdata ..</em></p>
</div>
</channel>
</rss>
