🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.org.acm
Article #314

Re: HS Contests....

#314
From: Roger A. Hurwitz
Date: Thu, 02 May 1991 19:17
52 lines
3517 bytes
I was pleasantly surprised by the encouraging responses I received on
my criticism of current ACM programming contests.  In a nutshell, I 
(and others) believe that these contests, while encouraging an interest
in computer science, send the wrong message to future practitioners.
That is, current contests reward cleverness and speed at the expense
of quality and discipline.  In order to move beyond the current "hacker"
mentality fostered by these contests without undermining the enthusiasm
they generate, I propose the following alternative:  

            The ACM Student Software Development Contest.

The basic idea is as follows:

    1) individual contestants are put randomly together into teams,
    2) each team is divided into two groups, implementation and
       maintenance,
    3) every team is given the same detailed set of specifications 
       for a simple project,
    4) the implementation group on each team is responsible for 
       implementing the project within a fixed period of time,
    5) the maintenance group cannot participate in the original 
       implementation but may retire elsewhere to study the specifications,
    6) at the end of the implementation phase, each team is given a
       revised set of specifications reflecting user requested changes,
       "fixes" to the original specification and other changes typical
       to the maintenance phase of any software project,
    7) the maintenance group of each team is then responsible for 
       implementing the changes to the *existing* program *without* any 
       assistance from the implementation group, and within a 
       fixed period of time, :^)
    8) at the end of the maintenance phase each team is judged on their
       programs conformance with the specs, as well as on such things
       as module cohesiveness and coupling (if we can expect high
       school students to traverse a binary tree we can expect them to
       understand fundamental notions of good programming!).  Time to
       completion by the maintenance group can also be a criterion, since
       a fast maintenance cycle often reflects well on the implementors.
       
I believe that this form of contest encourages good software engineering 
practices because, in effect, contestants will be rewarded for their
ability to write programs that are easily maintainable and understandable
by others.  By isolating implementation from maintenance, the maintenance
group will have to rely on the code itself to complete their task.  Poorly
commented, loosely structured implementations will fall apart in the
hands of the maintenance group.

I also believe that contestants will get valuable team work experience from
this approach.  By randomly assigning teams, the contestants will get a 
real feel for the world of software development!  In addition, maybe they
will make some new friends in the process =).

Responses are welcome.
Technical Details
Message-ID: <9105021917.AA27597@enuxha.eas.asu.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!ucbvax!ENUXHA.EAS.ASU.EDU!hurwitz
References: <91122.084729TAINT021@ysub.ysu.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!ucbvax!ENUXHA.EAS.ASU.EDU!hurwitz
From: hurwitz@ENUXHA.EAS.ASU.EDU (Roger A. Hurwitz)
Newsgroups: comp.org.acm
Subject: Re: HS Contests....
Message-ID: <9105021917.AA27597@enuxha.eas.asu.edu>
Date: 2 May 91 19:17:23 GMT
References: <91122.084729TAINT021@ysub.ysu.edu>
Sender: daemon@ucbvax.BERKELEY.EDU
Reply-To: hurwitz@enuxha.eas.asu.edu (Roger A. Hurwitz)
Organization: Arizona State Univ, Tempe AZ
Lines: 52