Path: utzoo!attcan!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!rutgers!mcnc!rti!ntpdvp1!willr From: willr@ntpdvp1.UUCP (Will Raymond) Newsgroups: comp.software-eng Subject: Re: recap so far Summary: Software Engineering involves two components: manipulating software & understanding the task to be accomplished Message-ID: <595@ntpdvp1.UUCP> Date: 28 Jun 90 01:54:04 GMT References: <30852@cup.portal.com> <102100011@p.cs.uiuc.edu> <8488@jpl-devvax.JPL.NASA.GOV> Organization: Northern Telecom DMS-10 Div., Raleigh, NC Lines: 27 In all the conversations so far, I've yet to see anyone mention learning the task you are trying to program. I am in the end days of a fairly com plex project, writing a "user friendly (!?)" front-end to a DMS10 telephone switch. My shop has a good repetoire of C routines, and we generally use them. In some respects, we assembled the software from off the shelf components. Half the time I've spent on this project ( 1 of 5 programmers spending 28 weeks ) has been learning the switch. The switch is essentially a single purpose computer with 1.8 Megs. of executable written over a 15 year period. Our Technology group produced dozens of conflicting input and output formats for switch commands, the documentation of which encompasses 5 binders and 4,500 pages. 15 years of incremental programming produced many inconsistencies, both in software and documentation. The up shot, adapting our product to the switch took a long time not because we couldn't assemble code from reliable building blocks, but because we had to learn and relearn the task. Will "Because I care...." Dr. Moreau