Your browser does not support JavaScript!
http://iet.metastore.ingenta.com
1887

Software engineering, the software process and their support

Software engineering, the software process and their support

For access to this article, please select a purchase option:

Buy article PDF
£12.50
(plus tax if applicable)
Buy Knowledge Pack
10 articles for £75.00
(plus taxes if applicable)

IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.

Learn more about IET membership 

Recommend Title Publication to library

You must fill out fields marked with: *

Librarian details
Name:*
Email:*
Your details
Name:*
Email:*
Department:*
Why are you recommending this title?
Select reason:
 
 
 
 
 
Software Engineering Journal — Recommend this title to your library

Thank you

Your recommendation has been sent to your librarian.

Computers are being applied more and more widely, penetrating ever deeper into the very fabric of society. Mankind is becoming increasingly dependent on the availability of software and its continuing validity. To achieve this consistently and reliably, in an operational domain that is forever changing, requires disciplined execution of the software development and evolution process and its effective management. That is the goal of advanced software engineering [1]. This paper summarises basic concepts of software engineering and of the software development process. This leads to a principle of uncertainty, analysis of its implications for the software development process, an overview of computer-assisted software engineering (CASE) and brief comments on the societal relevance of these topics. For researchers in the field and practitioners familiar with individual concepts, issues and specific solutions, the paper provides a unifying framework, a basis for conceptual advance. Those without a significant practical software engineering background and experienced graduate students will extend general familiarity with fresh insights, new concepts and additional detail. Undergraduate and graduate students without significant experience may treat the paper as an introductory text.

References

    1. 1)
      • Formal methods in software engineering. IEEE Trans. , 9 , 929 - 1103
    2. 2)
      • Madhavji, N.H.: `The prism model of changes', Proc. 13th Int. Conf. on Software Engineering, 13–16 April 1991, Austin, Texas, p. 166–177.
    3. 3)
      • : Proc. 2nd and 4th mt. Conf. on Software Engineering (ICSE):Programmers' Work Bench, (see also Proc. ICSE 2, 1976, ‘CADES’. Proc. ICSE 4, 1979, pp. 136–152).
    4. 4)
      • Stenning, N.V., Iggulden, D.: `Software engineering: present and future in the corporate database', Info Tech State of the Art Report, 1985, p. 83–93, 13, (3).
    5. 5)
      • M.A. Ould , C. Unwin . (1988) , Testing in software development.
    6. 6)
      • N. Wirth . Program development by stepwise refinement. Commun. ACM , 4 , 221 - 227
    7. 7)
      • G. Boudier , F. Gallo , R. Minot , I. Thomas . An overview of PCTE and PCTE +. ACM SIGPLAN Not. , 2 , 248 - 257
    8. 8)
      • R.A. Snowdon . An introduction to the IPSE 2.5 Project. ICL Tech. J. , 3 , 467 - 478
    9. 9)
      • Osterweil, L.: `Software processes are software too', Proc. 9th int. Conf. on Software Engineering, 30th March–2nd April 1987, Monterey, California, IEEE, p. 2–13.
    10. 10)
      • : Proc. First Int. Software Process Workshop, February 1984, Egham, Surrey UK, IEEE, p. 175.
    11. 11)
      • Lehman, M.M.: `Software engineering — theory and practice', 91/25, Research Report, , p. 19.
    12. 12)
      • M.H. Halstead . (1977) , Elements of software science.
    13. 13)
      • Putnam, L.H., Wolverton, R.W.: `Quantitative management — software cost estimation', Compsac 77, IEEE Computer Software and Applications Conf. Tutorial, November 1977, Chicago, p. 326.
    14. 14)
      • H. Bondi , R. Duncan , M. Weston-Smith . (1977) The lure of completeness, The encyclopaedia of ignorance.
    15. 15)
      • P.G. Neumann . , Risks to the public in computers and related systems.
    16. 16)
      • : `VDM — a formal method at work', VDM '87, 1st VDM European Symp., 1987, Brussels, (see also Lect. Notes Comput. Sci., 252).
    17. 17)
      • Turski, W.M.: `Specification as a theory with models in the computer world and in the real world', Info Tech State of the Art Report, 1981, p. 363–377, 9, (6).
    18. 18)
      • E.W. Dijkstra . The humble programmer. Commun. ACM , 10 , 859 - 866
    19. 19)
      • P.A. Lindsay . A survey of mechanical support for formal reasoning. Softw. Eng.J. , 1 , 3 - 27
    20. 20)
      • J.N. Buxton , V. Stenning . (1980) , Requirements for Ada programming support environments—Stoneman.
    21. 21)
      • D. Gries . (1978) , Programming methodology — a collection of articles by members of IFIP WG2.3.
    22. 22)
      • M. Thomas . (1989) , Development methods for trusted computer systems.
    23. 23)
      • C.A.R. Hoare . An axiomatic basis for computer programming. Commun. ACM , 10 , 576 - 583
    24. 24)
      • M.M. Lehman . , A further model of coherent programming processes.
    25. 25)
      • M.M. Lehman , L.A. Belady . (1985) , Program evolution: processes of software change.
    26. 26)
      • Potts, C., Bruns, G.: `Recording the reasons for design decisions', Proc. 10th Int. Conf. on Software Engineering, 11–15 April 1988, Singapore, p. 418–427.
    27. 27)
      • H. Partsch . (1990) , Specification and transformation of programs — a formal approach to software development.
    28. 28)
      • W. Atkinson , J. Cunningham . Proving properties of a safety-critical system. Softw. Eng. J. , 2 , 41 - 50
    29. 29)
      • : `Requirements for software engineering databases', RG1 4QA, Final report to the CEC under the Preliminary Esprit Program, July 1983, p. 86.
    30. 30)
      • B. Boehm . Software engineering. IEEE Trans. , 12 , 11 - 21
    31. 31)
      • T.G. Lyons , M. Tedd . Technical overview of CAIS and PCTE. Ada User , 65 - 72
    32. 32)
      • T. Gilb . Evolutionary development vs. the waterfall model. ACM Softw. Eng. Notes , 3 , 49 - 61
    33. 33)
      • D. Parnas . Software, aspects of strategic defense systems. Am. Sci. , 3 , 432 - 440
    34. 34)
      • J. Kramer , K. Ng , C. Potts , K. Whitehead . Tool support for requirements analysis. Softw. Eng. J. , 3 , 86 - 96
    35. 35)
      • Comments on a paper by Fetzer. Commun. ACM , 3 , 287 - 290 and 374–381
    36. 36)
      • G.F. Hoffnagle , W.E. Beregi . Automating the software development process. IBM Sys. J. , 2 , 102 - 120
    37. 37)
      • J. Fiadeiro , T. Maibaum , G. Rozenberg . (1991) Describing, structuring, and implementing objects, Foundations of object-oriented languages.
    38. 38)
      • Lehman, M.M.: `Programs, life cycles and laws of software evolution', Proc. IEEE Special Issue on Software Engineering, September 1980, p. 1060–1076, (see also, [24] pp 393–449).
    39. 39)
      • Harel, D., Lachover, H., Naamad, A., Pnueli, A., Politi, M., Sherman, R., Shtul-Trauring, A.: `STATEMATE: a working environment for the development of complex reactive systems', Proc. 10th Int. Conf. on Software Engineering, 11–15 April 1988, Singapore, p. 396–406.
    40. 40)
      • Lehman, M.M.: `Model based approach to IPSE architecture and design: the IST ISTAR project as an instantiation', IEEE Computer Society Technical Committee on Database Engineering, Special Issue on Software Engineering Systems and Database Requirements, 1987, 10, p. 2–13, 1 (see also Softw. Eng. Notes, 1986, 11, (4), pp. 49–60).
    41. 41)
      • E. Yourdon , U. Constantine . (1979) , Structured design:fundamentals of a discipline of computer system design.
    42. 42)
      • M.E. Fagan . Advances in software inspections. IEEE Trans. , 7 , 744 - 751
    43. 43)
      • M.M. Lehman . Uncertainty in computer application and its control through the engineering of software. Softw. Maint. Res. Pract. , 1 , 3 - 27
    44. 44)
      • W.M. Turski , T.S.E. Maibaum . (1987) , The specification of computer programs.
    45. 45)
      • R. de Millo , R. Upton , A. Perus . Social processes and proofs of theorems and programs. Commun. ACM , 5 , 271 - 280
    46. 46)
      • : `Formal VLSI specification and synthesis', Proc. IFIP WG 10.2/WG 10.5 Int. Workshop on Applied Formal Methods for Correct VLSI Design, 1990, Leuven Belgium, North Holland.
    47. 47)
      • Basili, V.R.: `Models and metrics for software management and engineering in Advances in Computer Technology', Int. Computer Technology Conf., ASME Century 2-Emerging Technologies Conf., 12–15 August 1980, San Francisco, ASME, New York, 1, p. 278–289.
    48. 48)
      • Lehman, M.M.: `Process models, process programs, programming support', Proc. 9th int. Conf. on Software Engineering, p. 14–16.
    49. 49)
      • Naur, P., Randell, B.: Software engineering: report on a conference sponsored by the NATO Science Committee, 1968, Garmisch , NATO, Scientific Affairs Division, Brussels, p. 164.
    50. 50)
      • Lehman, M.M.: `Advanced software technology: development and introduction to practice', Proc. IFIP Congress 1986, 1–5 September 1986, Dublin, Elsevier Science Publishers (BV),North Holland, p. 605–661.
    51. 51)
      • M.M. Lehman , W.M. Turski . Essential properties of IPSEs. Softw. Eng. Notes , 1 , 52 - 55
    52. 52)
      • E.W. Dijkstra . On the cruelty of really teaching computing science. Commun. ACM , 12 , 1398 - 1404
    53. 53)
      • J.H. Fetzer . Program verification: the very idea. Commun. ACM , 8 , 1048 - 1063
    54. 54)
      • Royce, W.W.: `Managing the development of large software systems: concepts and techniques', Proc. Wescon, August 1970.
    55. 55)
      • M.M. Lehman . Uncertainty in computer application. Commun. ACM , 5 , 584 - 586
    56. 56)
      • Lehman, M.M.: `Program evolution', Proc. Symp. on Empirical Foundations of Computing and Information Sciences, 3–7 November 1982, Georgia Institute of Technology, (see also Special Issue, J. Inf. Proc. Manag., 19, (1), pp. 1–18; Proc. IFIP TC2 Working Conf. on System Description Methodologies, 22nd–27th May 1983, Kecskemet, Hungary (North Holland); and [24] with a specific reference to repositories on p. 32).
    57. 57)
      • Bartlett, A.J., Cherrie, B.H., Lehman, M.M., MacLean, R.I., Potts, C.: `The role of executable metric models in the programming process', DARPA order B-2-3288, Final Report to the Advanced Research Projects Agency, April 1984, p. 220, monitored by EOARD under contract F49620-82-C-0098.
    58. 58)
      • K. Gödel . (1931) Über Formal Unentscheidbare Sätze dec Principia Mathematica und Verwandter Systeme, Monatsheft für Mathematik und Physik.
    59. 59)
      • Lehman, M.M., Stenning, N.V., Turski, W.M.: `Another look at software design methodology', 83/13, ICST DoC Research Report, June 1983, p. 38–53, (see also softw. Eng. Notes, 1984, 9, (2)).
    60. 60)
      • Kramer, J.: `Configuration programming — a framework for the development of configurable systems', Proc. Comp-Euro '90, 8–10 May 1990, Tel Aviv, Israel, Int. Conf. on Computing Systems and Software engineering, p. 374–384.
    61. 61)
      • A.C. Melton , D.A. Gustafson , J.M. Bieman , A.L. Baker . A mathematical perspective for software measures research. Softw. Eng. J. , 5 , 246 - 254
    62. 62)
      • B.W. Boehm . A spiral model of software development and enhancement. ACM Softw. Eng. Notes , 4 , 14 - 24
    63. 63)
      • Lehman, M.M.: `Programming productivity: a life cycle concept', Proc. Compcon '81, IEEE, Proc. Productivity: An Urgent Priority, September 1981, Washington, DC, (see also [24], pp. 469–489).
    64. 64)
      • D. Notkin . Applying software process models to the full life cycle is premature. , 116 - 117
    65. 65)
      • : `Representing and enacting the software process', Proc. 4rd Int. Process Workshop, 11–13 May 1988, Moretonhampsted, Devon , p. 173, (see also ACM Softw. Eng. Notes, June 1989).
    66. 66)
      • E.W. Dijkstra . A constructive approach to the problem of program correctness. BIT , 3 , 174 - 186
    67. 67)
      • C.A.R. Hoare . Proof of a program FIND. Commun. ACM , 1 , 39 - 45
    68. 68)
      • Curtis, B., Krasner, H., Shen, V., Iscoe, N.: `On building software process models under the lampost', Proc. 9th int. Conf. on Software Engineering, p. 96–103.
    69. 69)
      • Basili, V.R.: `Recent advances in software measurement', Proc. 12th Int. Conf. on Software Engineering, 26–30 March 1990, Nice, France, p. 44–49.
    70. 70)
      • R.A. Demillo , W.A. McCracken , R.J. Martin , J.F. Passafiume . (1987) , Software testing and evaluation.
    71. 71)
      • Lehman, M.M.: `Software — promise and threat', Proc. Software Engineering in the Nineties, October 1988, Utrecht, The Netherlands, Software Engineering Research Centre, (see also ‘Logistics where ends have to meet’. Proc. Shell Conf. on Logistics, Appledoom, The Netherlands, 2nd–3rd November 1988. VAN RIJN, C.F.H. (Ed.) (Pergamon Press, 1989) pp. 172 183).
    72. 72)
      • Lehman, M.M.: `Software uncertainty and the role of CASE in its minimisation and control', Proc. JCIT, 22–25 October 1990, Jerusalem, p. 236–246.
    73. 73)
      • Jones, C.B.: `The role of formal specifications in software development', 8, InfoTech State of the Art Conf. on Life Cycle Management, Report, 1980, p. 117–133, (7).
    74. 74)
      • : Proc. Annual Conferences on Very Large Data Bases, Morgan Kaufmann, , p. 164–199.
    75. 75)
      • M.M. Lehman . Human thought and action as an ingredient of system behaviour, The encyclopaedia of ignorance.
    76. 76)
      • Lehman, M.M.: `The programming process', RC 2722, IBM Res. Rep., September 1969, p. 39–84, (see also [24]).
    77. 77)
      • (1982) , ACM SigSoft Workshop on Rapid Prototyping.
    78. 78)
      • : `Iteration in the software process', Proc. 3rd Int. Process Workshop, March 1987, Breckenridge Colorado, IEEE, p. 143.
    79. 79)
      • H.A. Simon . (1981) , The sciences of the artificial.
    80. 80)
      • A.C.W. Finklestein , C. Potts , D. Barnes , P. Brown . (1986) Structured common sense: the elicitation and formalisation of system requirements, Software engineering.
    81. 81)
      • Comments on a paper by DeMillo, Lipton and Perlis. Commun. ACM , 11 , 621 - 630
    82. 82)
      • Zurcher, F.W., Randall, B.: `Iterative multi-level modelling — a methodology for computer system design', 1938, IBM Research Report RC, November 1967, p. D138–D142, (see also Proc. IFIP Congress on Information Processing, Edinburgh, August 1968).
    83. 83)
      • : `VDM — the way ahead', VDM '88, 2nd VDM European Symp., September 1988, Dublin, (see also Lect. Notes Comput. Sci., 328).
    84. 84)
      • B.I. Blum . Volume, distance, and productivity. J. Syst. Softw. , 3 , 217 - 226
    85. 85)
      • : Special Issue on the 2nd Int. Workshop on the Software Process and Software Environments, 27–29 March 1985, , Softw. Eng. Notes.(see also ACM Softw. Eng. Notes, 1986, 11 (4), p. 74.
    86. 86)
      • C. Jones . (1980) , Software development' a rigorous approach.
    87. 87)
      • M.M. Lehman . , Programs, cities, students —; limits to growth.
    88. 88)
      • : Proc. Symp. on the High Cost of Software, September 1973, Naval Postgraduate School, , p. 138.
    89. 89)
      • S. Meyers . Difficulties in integrating multiview development systems. Softw. , 1 , 49 - 57
http://iet.metastore.ingenta.com/content/journals/10.1049/sej.1991.0028
Loading

Related content

content/journals/10.1049/sej.1991.0028
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading
This is a required field
Please enter a valid email address