In early 1967, the NATO Science Committee, held discussion on “software engineering ” which comprised of scientists representing the various member nations in the field of computer science. Major motive for organizing the conference was to emphasize the increasing importance of software engineering.
This was the first time when the word “software engineering” came into existence. In the summit various issues related to software engineering were discussed like software engineering and society, design , production, service, software engineering as education, software pricing. Other agenda of scheduling meetings etc.were also discussed.
Nature of software engineering
Nash & Seling gave figures showing various activities in software development life cycle. They used the terms which being used in today’s life also. Seling gave most of the time to testing. Seling gave a figure which didn’t have feedback between the phase this was criticized by perlis so as to monitor the system & for future use. On this galler gave an example from his experience stated as “a request to allow user extensions of the PL/1 language. After a week of internal discussion at IBM it was decided that this could not be done because the language designers were not to tell the implementers how to implement the desired extensions.”
Seling gave External and internal design and their mutual feedback stated “External specifications at any level describe the software product in terms of the items controlled by and available to the user. The internal design describes the software product in terms of the program structures which realize the external specifications. It has to be understood that feedback between the design of the external and internal specifications is an essential part of a realistic and effective implementation process. Furthermore, this interaction must begin at the earliest stage of establishing the objectives, and continue until completion of the product.”
Firstly it was discussed that what could be the right way to approach for designing the software. Many suggestion were given by researchers in the field but the basic fundamental design concepts proposed dealt with concentration on the maintaining the software. That could be modularity, specification and generality.
While designing user requirement have to be also kept in mind. It is impossible to keep all user happy. Major problem is sometimes user himself doesn’t know what they need.
Main problem is estimating the time required for completing the production. Some say we can estimate according to per instruction but there is no agreement on what the average cost will be for per instruction and also the ratio varies according to the phases of process in which you are in. If we talk practically no such data exists that can be used as an standard for the estimation. We have to rely on the experience of the worker and the judgment.
Documentation from design and production aspect should be done. There can be two manuals: a general introduction to the solution of the problem by means of the package and a technical manual giving the exact available facilities and operation rules. These should be as attractive as possible.
Feedback to manufacturers from user is very important phase.
Other special topics were argued upon but couldn’t come to an solution to it. Every one had there own view in favor and against also
Should software be charged separately from hardware?
Software engineering as an different study in education?
Similarities between software engineering and computer science?