Path: utzoo!utgpu!water!watmath!clyde!cbosgd!ihnp4!ihlpf!warren From: warren@ihlpf.ATT.COM (Montgomery) Newsgroups: comp.software-eng Subject: Re: Is it Art or is it Engineering Summary: It's neither, it's management! Keywords: Art Engineering Tolerances Message-ID: <3676@ihlpf.ATT.COM> Date: 11 Feb 88 14:41:18 GMT References: <6879@agate.BERKELEY.EDU> Organization: AT&T Bell Laboratories - Naperville, Illinois Lines: 29 The question of whether software art or software engineering more correctly describes what software people do is age old. While software development has aspects of both to it, I'd like to suggest that the dominant aspect for any large project is neither, it's management of complexity. In large systems, there are tasks that are clearly engineering. Picking data structures and algorithms to achieve a desired level of fault tolerance is one that comes to mind, as is figuring out how to cope with widely varying loads with acceptible performance. The enterprise that to me most clearly models a software development is that of publishing a large multi-author document, such as a newspaper, a magazine, or an encyclopaedia. There is a large part of the input that is creative in nature, both in determining overall structure and in filling in the sections. There are also many specialized sub-problems, such as page layout, printing, production of figures, obtaining the rights to material taken from other sources, etc. A lousy product will be produced if the basic creative talent of the people who must supply it isn't up to the task. The best printing and layout in the world won't sell a newspaper with poor writers. Assuming that this is taken care of, though, the dominant concern is managing the thousands of individual tasks involved so that they come together when required to make a product. -- Warren Montgomery ihlpf!warren