, .
""
.
. ,
.
:
,
.
,
.
, .
Hypercard,
Excel, Pascal
MiniCad AutoLisp AutoCad.
. Hypercard,
Excel, MiniCad ,
,
. ,
. 60-
-
,
, .
Eastman Kodak
IBM 7080. ,
Queued Telecommunications Access Method
IBM OS/360 ,
, .
, , ,
. :
C++,
.
.
-
,
. , ,
.
,
,
. ,
Excel 4th Dimension, ,
, , ,
.
, ,
, .
, , ,
,
. , ,
, ,
. ,
, ,
.
?
:
- ,
, .
- ,
, ,
.
- ,
. , , ,
, .
, .
- , , ,
. ,
. ,
.
- .
. ,
, ,
, , , .
,
, .
,
. ,
, ,
, . ,
, FoxPro, , ,
. -
, .
, .
Unix
ASCII-. AppleScript.
(Jim Ferrell), -
,
, ,
- . ,
. (Arthur D. Little) 1918
,
.
, ,
, ,
, .
,
. ,
" ".
, .
, ,
,
. , ,
,
, ,
.
, 27
, ,
1945 .
-
.
,
1:
- , .
- , ,
, .
-
.
.
, ,
. , ,
.
,
, ,
,
.
,
, - 13 -
7 1944 Mark I,
(Howard Aiken), -
(Clair D. Lake), (B. M. Durfee) (F.
E. Hamilton).
(Vannevar Bush) "That We May Think" 1945 "Atlantic
Monthly",
.
1952 , ,
IBM , -,
IBM 604 IBM
701, .
,
. ,
, .
.
, ,
, .
, .
, ,
IBM Stretch.
1961 1964 ; 9 .
Macintosh Powerbook , ,
( ).
, ,
,
,
.
,
. 50-,
.
.
,
,
. ,
, , . !
, .
.
1
1. . . , ,
. A. P. Ershov. Aesthetics and the human factor in programming //
CACM. 1972. Vol. 15, N 7. July. P. 501-505
2
1. . . Bell Telephone Laboratories ,
30% .
, 7. . .
,
20% ,
, .
2. . International Computers Limited : "
, , ".
: Wolverton
R. W. The cost of developing large-scale software // IEEE Trans. on
Computers. 1974. Vol. C-23, N 6. June. P. 615-636.
3. 2.5-2.8 , ,
,
. Ogdin, J. L. The Mongolian hordes versus superprogrammer //
Infosystems. 1972. Dec. P. 20-23.
3
1. Sackman H., Erikson W. J., Grant E. E. Exploratory experimentation
studies comparing online and offline programming performance // CACM. 1968.
Vol. 11, N 1. Jan. P. 3-11.
2. Mills H. Chief programmer team, principles, and procedures // IBM
Federal Systems Division Report FSC 71-5108. Gaithersburg, Md., 1971.
3. Baker F. T. Chief programmer team management of production
programming // IBM Sys. J. 1972. Vol. 11, N 1.
4
1. Eschapasse M. Reims Cathedral, Caisse Nationale des Monuments
Histiriques. Paris, 1967.
2. Brooks F. P. Architectural Philosophy // Buchholz W. (Ed.). Planning
a Computer System. New York: McGraw-Hill, 1962.
3. Blaauw G. A. Hardware requirements for the fourth generation //
Gruenberger F. (ed.). Fourth Generation Computers. Englewood Cliffs, N. J.:
Prentice-Hall, 1970.
4. Brooks F. P., Iverson K. E. Automatic Data Processing, System/360
Edition. New York: Wiley, 1969. Ch. 5.
5. Glegg G. L. The Design of Design. Cambridge : Cambridge Univ. Press,
1969: " , ,
- , ,
, .
, ".
6. Conway R. W. The PL/C Compiler // Proceedings of a Conf. on
Definition and Implementation of Universal Programming Languages. Stuttgard,
1970.
7. .:
Reynolds C. H. Whats wrong with computer programming management? // Weinwurm
G. F. (Ed.). On the Management of Computer Programming. Philadelphia :
Auerbach, 1971. P. 35-42.
5
1. Strachey C. Review of Planning a Computer System // Comp. J. 1962.
Vol. 5, N 2. July. P. 152-153.
2. . ,
OS/360,
, .
3. Shell D. L. The Share 709 system: a cooperative effort; Greenwald I.
D., Kane M. The Share 709 system: programming and modification; Boehm E. M.,
Steel T. B., Jr. The Share 709 system: machine implementation of symbolic
programming. // JACM. 1959. Vol. 6, N 2. Apr. P. 123-140.
6
1. Neustadt R. E. Presidential Power. New York: Wiley, 1960. Ch. 2.
2. Backus J. W. The syntax and semantics of the proposed international
algebraic language // Proc. Intl. Conf. Inf. Proc. UNESCO, Paris, 1959 //
Oldenbourg R., Munich and Butterworth. (Eds.). London. ,
: Steel T. B., Jr. (Ed.). Formal
Language Description Languages for Computer Programming. Amsterdam: North
Holland, 1966.
3. Lucas P., Walk K. On the formal description of PL/I // Annual Review
in Automatic Programming Language. New York: Wiley, 1962. Ch. 2. P. 2.
4. Iverson K. E. A Programming Language. New York: Wiley, 1962. Ch. 2.
5. Falkoff A. D., Iverson K. E., Sussenguth E. H. A formal description
of System/360 // IBM Systems Journal. 1964. Vol. 3, N 3. P. 198-261.
6. Bell C. G., Newell A. Computer Structures. New York: McGraw-Hill,
1970. P. 120- 136, 517-541.
7. Bell C. G. .
7
1. Parnas D. L. Information distribution aspects of design
methodology. Carnegie- Mellon Univ., Dept. Of Computer Science Technical
Report. 1971. February.
2. Copyright 1939, 1940 Street & Smith Publications; Copyright
1950, 1967 . (Robert A. Heinlein).
Spectrum Literary Agency.
8
1. Sackman H., Erikson W. J., Grant E. E. Exploratory experimentation
studies comparing online and offline programming performance // CACM. 1968.
Vol. 11, N 1. Jan. P. 3-11.
2. Nanus B., Farr L. Some cost contributors to large-scale programs //
AFIPS Proc. SJCC. Spring 1964. Vol. 25. P. 239-248.
3. Weinwurm G. F. Research in the management of computer programming //
Report SP-2059, System Development Corp. Santa Monica, 1965.
4. Morin L. H. Estimation of resources for computer programming
projects // M. S. thesis. Chapel Hill: Univ. Of North Carolina, 1974.
5. Portman C. .
6. 1964 , E. F.
Bardain, , 27%
. ( : Mayer D. B., Stalnaker A. W. Selection and
evaluation of computer personnel // Proc. 23d ACM Conf., 1968. P. 661.)
7. Aron J. .
8. , AFIPS Proceedings.
9. Wolverton R. W. The cost of developing large-scale software // IEEE
Trans. On Computers. 1974. Vol. C-23, N 6. June. P. 615-636.
,
, .
10. Corbato F. J. Sensitive issues in the design of multi-use systems
//
Honeywell, 1968.
11. W. M. Taliaffero 2400
, Fortran Cobol. .: Modularity. The key to
system growth potential // Software. 1971. Vol. 1, N 3. July. P. 245-257.
12. Report TM-3225, Management Handbook for Estimation of
Computer Programming Costs (Nelson E. A. System Development Corp.)
3:1
(. 66-67), .
9
1. Brooks F. P., Iverson K. E. Automatic Data Processing, System/360
Edition. New York: Wiley, 1969. Ch. 6.
2. Knuth D. E. The Art of Computer Programming. Vols. 1-3. Reading,
Mass.: Addison-Wesley, 1968. ff.
10
1. Conway M. E. How do committees invent? // Datamation. 1968. Vol.
14, N 4. Apr. P. 28-31.
11
1. 22 1932 .
2. MULTICS
: Corbaty F. J., Saltzer J. H., Clingen C. T. MULTICS - the
first seven years // AFIPS Proc SJCC. 1972. Vol. 40. P. 571-583.
3. Cosgrove J. Needed: a new planning framework // Datamation. 1971.
Vol. 17, N 23. Dec. P. 37-39.
4. - ,
. .: Saltzer J. H. Evolutionary design of complex systems // Eckman
D. (Ed.). Systems : Research and Design. New York : Wiley, 1961. ,
, ,
.
5. Campbell E. Report to the AEC Computer Information Meeting. 1970.
Dec. : Ordin J. L. Designing reliable
software // Datamation. 1972. Vol. 18, N 7. July. P. 71-78.
,
.
6. Lehman M., Belady L. Programming systems dynamics.
ACM SIGOPS Third Symposium on Operating Systems Principles 1971 .
7. Lewis C. S. Mere Christianity. New York : Macmillan, 1960. P. 54.
12
1. . : Pomeroy J. W. A guide to programming tools and
techniques // IBM Sys. J. 1972. Vol. 11, N 3. P. 234-254. 166
2. Landy B., Needham R. M. Software engineering techniques used in the
development of the Cambridge Multiple-Access System // Software. 1971. Vol.
1, N 2. Apr. P. 167-173.
3. Corbato F. J. PL/I as a tool for system programming // Datamation.
1969. Vol. 15, N 5. May. P. 68-76.
4. Hopkins M. Problems of PL/I for system programming // IBM Research
Report RC 3489. 1971, August 5. Yorktown Heights, N. Y.
5. Corbato F. J., Saltzer J. H., Clingen C. T. MULTICS - the first
seven years // AFIPS Proc SJCC. 1972. Vol. 40. P. 571-582. "
, PL/I,
, . ,
, PL/I,
."
6. ( 3 ): "PL/I ,
".
Henricksen J. O., Merwin R. E. Programming
language efficiency in real-time software systems // AFIPS Proc SJCC. 1972.
Vol. 40. P. 155-161.
7. . :
" ,
.
,
".
8. Yarr J. Programming Experience for the Number 1 Electronic Switching
System. SJCC 1969 .
13
1. Vyssotsky V. A. Common sense in designing testable software.
, Chapel Hill, N. C.,
1972. Hetzel W. C. (Ed.). Program Test
Methods. Englewood Cliffs, N. J. : Prentice-Hall, 1972. P. 41-47.
2. Wirth N. Program development by stepwise refinement // CACM. 1971.
Vol. 14, N 4. Apr. P. 221-227. . : Mills H. Top-down programming in
large systems // Rustin R. (Ed.). Debugging Techniques in Large Systems.
Englewood Cliffs, N. J. : Prentice-Hall, 1971. P. 41-55; Baker F. T. System
quality through structured programming // AFIPS Proc FJCC. 1972. Vol. 41-I.
P. 339-343.
3. Dahl O. J., Dijkstra E. W., Hoare C. A. R. Structured programming.
London ; New York : Academic Press, 1972.
. . : GOTO statement
considered harmful // CACM. 1968. Vol. 11, N 3. March. P. 147-148.
4. Bohm C., Jacopini A. Flow diagrams, Turing machines, and languages
with only two formation rules // CACM. 1966. Vol. 9, N 5. May. P. 366-371.
5. Codd E. F., Lowry E. S., McDonough E., Scalzi C. A. Multiprogramming
STRETCH: Feasibility considerations // CACM. 1959. Vol. 2, N 11. Nov. P.
13-17.
6. Strachey C. Time sharing in large fast computers // Proc. Int. Conf.
On Info. Processing. 1959, June. UNESCO. P. 336-341. .
. 341, ,
.
7. Corbato F. J., Merwin-Daggett M., Daley R. C. An experimental
time-sharing system // AFIPS Proc SJCC. 1962. Vol. 2. P. 335-344.
: Rosen S. Programming Systems and Languages. New York :
McGraw-Hill, 1967. P. 683- 698.
8. Gold M. M. A methodology for evaluating time-shared computer system
usage. Ph. D. dissertation. Carngie-Mellon University, 1967. P. 100.
9. Gruenberger F. Program testing and validating // Datamation. 1968.
Vol. 14, N 7. July. P. 39-47.
10. Ralston A. Introduction to Programming and Computer Science. New
York : McGraw-Hill, 1971. P. 237-244.
11. Brooks F. P., Iverson K. E. Automatic Data Processing, System/360
Edition. New York : Wiley, 1969, P. 296-299.
12. ,
. . : Trapnell F. M. A systematic approach to
the development of system programs // AFIPS Proc SJCC. 1969. Vol. 34. P.
411-418.
13. . .,
: Ginzberg M. G. Notes on testing real-time system programs // IBM
Sys. J. 1965. Vol. 4, N 1. P. 58-72.
14. Lehman M., Belady L. Programming systems dynamics.
1971 . ACM SIGOPS Third Symposium on Operating Systems
Priciples.
14
1. .: Reynolds C. H. Whats wrong with computer programming
management? // Weinwurm G. F. (Ed.). On the Management of Computer
Programming. Philadelphia : Auerbach, 1971. P. 35-42.
2. King W. R., Wilson T. A. Subjective time estimates in critical path
planning - a preliminary analysis // Mgt. Sci. 1967. Vol. 13, N 5. Jan. P.
307-320; King W. R., Witterrongel M., Hezel K. D. On the analysis of
critical path time estimating behavior // Mgt. Sci. 1967. Vol. 14, N 1.
Sept. P. 79-84.
3. . Brooks F. P., Iverson K. E. Automatic
Data Processing, System/360 Edition. New York : Wiley, 1969. P. 428-230.
4. .
15
1. Goldsteine H. H., Neumann J. von. Planning and coding problems for
en electronic computing instrument. Part II. Vol. 1. ,
U.S. Army Ordinance Department, 1947. : Neumann J. von.
Collected Works // Taub A. H. (Ed.). Vol. V. New York : Macmillan. P.
80-151.
2. , 1957. : Iverson K.
E. The use of APL in Teaching. Yorktown, N.Y. : IBM Corp., 1969.
3. PL/I : Walter A. B., Bohl M.
From better to best - tips for good programming // Software Age. 1969. Vol.
3, N 11. Nov. P. 46-50.
Algol Fortran. . .
Fortran
STYLE,
. . : McCracken D. D., Weinberg G. M. How to write a
readable FORTRAN program // Datamation. 1972. Vol. 18, N 10. Oct. P 73-77.
16
1. , "No Silver Bullet", : Information
Processing 1986, the Proceedings of the IFIP Tenth World Computing
Conference .-. , 1986, . 1069-1076.
IFIP Elsevier Science B. V., , .
2. Parnas D. L. Designing software for ease of extension and
contraction // IEEE Trans on SE. 1979. Vol. 5, N 2. March. P. 128-138.
3. Booch G. Object-oriented design // Software Engineering with Ada.
Menlo Park, Calif. : Benjamin/Cummings, 1983.
4. Special Issue on Artificial Intelligence and Software Engineering //
Mostow J. (Ed.). IEEE Trans. on SE. 1985. Vol. 11, N 11. Nov.
5. Parnas D. L. Software aspects of strategic defense systems //
Communications of the ACM. 1985. Vol. 28, N 12. Dec. P. 1326-1335. .
: American Scientist. 1985. Vol. 73, N 5. Sept.-Oct. P. 432-440.
6. Balzer R. A 15-year perspective on automatic programming Mostow,
. .
7. Mostow, . 4.
8. Parnas, 1985, . 5.
9. Raeder G. A survey of current graphical programming techniques //
Grafton R. B., Ichikawa T. (Eds.). Special Issue on Visual Programming //
Computer. 1985. Vol. 18, N 8. Aug. P. 11-25.
10. 15 .
11. Mills H. Top-down programming in large systems // Rustin R. (Ed.).
Debugging Techniques in Large Systems. Englewood Cliffs, N. J. :
Prentice-Hall, 1971.
12. Boehm B. W. A spiral model of software development and enhancement
// Computer. 1985. Vol. 20, N 5. May, P. 43-57.
17
, , .
1. Brooks F. P. No silver bullet - essence and accidents of software
engineering // Kugler H. J. (Ed.). Information Processing 86. Amsterdam :
Elsevier Science, North Holland, 1986. P. 1069-1076.
2. Brooks F. P. No silver bullet - essence and accidents of software
engineering // Computer. 1987. Vol. 20, N 4. Apr. P. 10-19.
3. 1987
"Computer".
, "" ,
. (Bruce M. Skwiersky) ,
"Computer Reviews" 1988 . . .
"Computer Reviews" (, 1988) . 283-284
. :
"" "106".
4. " , ,
,
". Websters New
International Dictionary of the English Language, 2d ed., Springfield, Mass.
: G. C. Merriam, 1960.
5. Sayers D. L. The Mind of the Market. New York : Harcourt, Brace,
1941.
6. Glass R. L., Conger S. A. Research software talks : Intellectual or
clerical? // Information or Management. 1992. Vol. 23, N 4. ,
80%
20% - . Fjelstadt Hamlen (1979)
.
.
7. Herzberg F., Mausner B., Sayderman B. B. The Motivation to Work. 2nd
ed. London : Wiley, 1959.
8. Cox B. J. There is a silver bullet // Byte. 1990. Oct. P. 209-218.
169
9. Harel D. Biting the silver bullet : Toward a brighter future for
system development // Computer. 1992. Jan. P. 8-20.
10. Parnas D. L. Software aspects of strategic defense systems //
Communication of the ACM. 1985. Vol. 28, N 12. Dec. P. 1326-1335.
11. Turski W. M. And no philosophers stone, either // Kugler H. J.
(Ed.). Information Processing 86. Amsterdam : Elsevier Science, North
Holland, 1986. P. 1077-1080.
12. Glass R. L., Conger S. A. Research software tasks : Intellectual or
clerical? // Information and Management, 1992. Vol. 23, N 4. P. 183-192.
13. Review of Electronic Digital Computers, Proceedings of a Joint
AIEEIRE Computer Conference (Philadelphia, Dec. 10-12, 1951). New York :
American Institute of Electrical Engineers. P. 13-20.
14. Ibid. Pp. 36, 68, 71, 97.
15. Proceedings of the Eastern Joint Computer Conference (Washington,
Dec. 8-10, 1953). New York : Institute of Electrical Engineers. P. 45-47.
16. Proceedings of the 1955 Western Joint Computer Conference (Los
Angeles, March 1-3, 1955). New York : Institute of Electrical Engineers.
17. Everett R. R., Zraket C. A., Bennington H. D. SAGE - a data
processing system for air defense // Proceedings of the Eastern Joint
Computer Conference (Washington, Dec. 11-13, 1957). New York : Institute of
Electrical Engineers.
18. Harel D., Lachover H., Haamad A., Pnueli A., Politi M., Sherman R.,
Shtul-Traurig A. Statemate: A working environment for the development of
complex reactive systems // IEEE Trans. on SE. 1990. Vol. 16, N 4. P.
403-444.
19. Jones C. Assessment and Control of Software Risks. Engltwood
Cliffs, N. J. : Prentice-Hall, 1994. P. 619.
20. Coqui H. Corporate survival : The software dimension. Focus 89,
Cannes, 1989.
21. Coggins J. M. Designing C++ libraries // C++ Journal. 1990. Vol. 1,
N 1. June. P. 25-32.
22. . -
.
23. Jones, . . 19. P. 604.
24. Huang Weigiao. Industrializing software production // Proceedings
ACM 1988 Computer Science Conference. 1988. Atlanta. ,
.
25. 1994 IEEE Software
.
26. Jones, . . 19. P. 323.
27. Jones, . . 19. P. 329.
28. Yourdon E. Decline and Fall of the American Programmer. Englewood
Cliffs, N. J. : Yourdon Press, 1992. P. 221.
29. Glass R. L. Glass () // System Development. 1988. Jan. P.
4-5.
18
1. Boehm B. W. Software Engineering Economics. Englewood Cliffs, N. J.
: Prentice- Hall, 1981. P. 81-84.
2. McCarthy J. 21 Rules for Delivering Great Software on Time //
Software World USA Conference, Washington (Sept. 1994).
19
, , .
1. . : Niklaus Wirth. A plea for lean
software // Computer. 1995. Vol. 28, N 2. Feb. P. 64-68.
2. Coleman D. Word 6.0 packs in features; update slowed by baggage //
MacWeek. 1994. Vol. 8, N 38. Sept. 26. P. 1.
3.
, . ., :
Hennessy J., Patterson D. Computer Architecture.
,
. ,
, - .
,
, .
4. Conklin J., Begeman M. gIBIS : A hypertext Tool for Exploratory
Policy Descussion // ACM Transactions on Office Information Systems. 1988.
Oct. P. 303-331.
5. Englebart D., English W. A research center for augmenting human
intellect // AFIPS Conference Proceedings, Fall Joint Computer Conference.
San Francisco (Dec. 9-11, 1968). P. 395-410.
6. Apple Computer, Inc. Macintosh Human Interface Guidelines. Reading,
Mass. : Addison-Wesley, 1992.
7. , Apple Desk Top Bus
, .
8. Royce W. W. Managing the development of large software systems:
Concepts and techniques // Proceedings, WESCON (Aug., 1970).
ICSE 9 Proceedings. , ,
, .
. .: Parnas D. L., Clements P. C. A
rational design process : How and why to fake it // IEEE Transactions on
Software Engineering. 1986. Vol. SE-12, N 2. Feb. P. 251-257.
9. DOD-STD-2167 DOD-STD-
2167A (1988), , ,
. , MILSPECS,
2167A, - ,
, .
1994 "Report of the DSB task force on acquiring defense software
commercially" .
10. Mills H. Top-down programming in large systems // Rustin R. (Ed.).
Debugging Techniques in Large Systems. Englewood Cliffs, N. J. :
Prentice-Hall, 1971.
11. Parnas D. L. On the design and development of program families //
IEEE Trans. on Software Engineering. 1976. Vol. SE-2, N 1. March, P. 1-9;
Parnas D. L. Designing software for ease of extension and construction //
IEEE Trans. on Software Engineering. 1979. Vol. SE-5, N 2. March. P.
128-138.
12. Harel D. Biting the silver bullet // Computer. 1992. Jan. P. 8-20.
13.
: Parnas D. L. Information distribution aspects of design methodology
// Carnegie- Mellon Univ., Dept. Of Computer Science Technical Report. 1971.
Feb.; Parnas D. L. A technique for software module specification with
examples // Comm. ACM. 1972. Vol. 5, N 5. May. P. 330-336; Parnas D. L.
(1972). On the criteria to be used in decomprosing systems into modules //
Comm. ACM. 1972. Vol. 5, N 12. Dec. P. 1053-1058.
14. Hoare Dijkstra,
Simula-67,
Dahl Nygaard.
15. Boehm B. W. Software Engineering Economics. Englewood Cliffs, N. J.
: Prentice- Hall, 1981. P. 83-94; 470-472.
16. Abdel-Hamid T., Madnick S. Software Project Dynamics : An
Integrated Approach. Ch. 19 // Model enhancement and Brookss law. Englewood
Cliffs, N. J. : Prentice- Hall, 1991.
17. Stutzke R. D. A mathematical expression of Brookss Law // Ninth
International Forum on COCOMO and Cost Modeling. Los Angeles, 1994.
18. DeMarco T., Lister T. Peopleware : Productive Projects and Teams.
New York : Dorset House, 1987.
19. Pius XI. Encyclical Quadragesimo Anno // Ihm, Claudia Carlen.
(Ed.). The Papal Encyclicals 1903-1939. Raleigh, N. C. : McGrath. P. 428.
20. Schumacher E. F. Small Is Beautiful : Economics as if People
Mattered. Perennian Library Edition. New York : Harper and Row, 1973. P.
244.
21. Schumacher, . . 20. P. 34.
22. : "
, [] ". 23. Bush V. That we may think
// Atlantic Monthly. 1945. Vol. 176, N 1. Apr. P. 101- 108.
24. Bell Labs, Unix,
. ,
Tektronix 120 .