Abstract
The concept of “information-hiding” as a software design principle is widely accepted in academic circles. Many successful designs can be seen as successful applications of abstraction or information hiding. On the other hand, most industrial software developers do not apply the idea and many consider it unrealistic. This paper describes how the idea developed, discusses difficulties in its application, and speculates on why it has not been completely successful.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Bartussek, W.,Parnas, D.L., “Using Assertions About Traces to Write Abstract Specifications for Software Modules”, UNC Report No. TR77–012, December 1977; Lecture Notes in Computer Science (65), Information Systems Methodology, Proceedings ICS, Venice, 1978, Springer Verlag, pp. 211–236. Also in Software Specification Techniques edited by N. Gehani & A.D. McGettrick, AT&T Bell Telephone Laboratories, 1985, pp. 111–130 (QA 76.6 S6437). Reprinted as Chapter 1 in item.
Britton, K.H., Parker, R.A., Parnas, D.L., “A Procedure for Designing Abstract Interfaces for Device Interface Modules”, Proceedings of the 5th International Conference on Software Engineering, 1981.
Dahl, Ol.-J., Nygaard, K., “SIMULA-An Algol-based Simulation Language”, Communications of the ACM, vol. 9, no. 9, pp. 671–678,1966.
Dahl, O-J., et al., “The Simula 67 Common Base Language”, 1970, Norwegian Computing Centre, publication S22.
Dijkstra, E.W., “The Structure of the THE Multiprogramming System”, Communications of the ACM, vol. 11, no. 5, May 1968.
Goldberg, A., “Smalltalk-80: The Interactive Programming Environment”, Addison-Wesley, 1984.
Hoffman, D.M., Weiss, D.M. (eds.), “Software Fundamentals: Collected Papers by David L. Parnas”, Addison-Wesley, 2001, ISBN 0–201-70369–6.
Parnas, D.L., “Information Distributions Aspects of Design Methodology”, Proceedings of IFIP Congress ’71, 1971, Booklet TA-3, pp. 26–30.
Parnas, D.L., “A Technique for Software Module Specification with Examples”, Communications of the ACM, vol. 15, no. 5, pp. 330–336, 1972;
Republished in Yourdon, E.N. (ed.), Writings of the Revolution, Yourdon Press, 1982, pp. 5–18:
in Gehani, N., McGettrick, A.D. (eds.), Software Specification Techniques, AT&T Bell Telephone Laboratories (QA 76.7 S6437), 1985, pp. 75–88.
Parnas, D.L., “On the Criteria to be Used in Decomposing Systems into Modules”,Communications of the ACM, vol. 15, no. 12, pp. 1053–1058, 1972;
Republished in Laplante P. (ed.), Great Papers in Computer Science, West Publishing Co,Minneapolis/St. Paul, 1996, pp. 433–441.
Translated into Japanese-BIT, vol. 14, no. 3, pp. 54–60,1982.
Republished in Yourdon, E.N. (ed.), Classics in Software Engineering, Yourdon Press, 1979, pp. 141–150.Reprinted as Chapter 7 in item [7].
Parnas, D.L., “A Course on Software Engineering Techniques”, in Proceedings of the ACM SICCSE, Second Technical Symposium, 24–25 March 1972, pp. 1–6.
Parnas, D.L., “Some Conclusions from an Experiment in Software Engineering Techniques”, Proceedings of the 1972 FJCC, 41, Part I, pp. 325–330.
Parnas, D.L., “On a ‘Buzzword’: Hierarchical Structure”, IFIP Congress ‘74, North-Holland, 1974, pp. 336–339.Reprinted as Chapter 8 in item [7].
Parnas, D.L., “Use of Abstract Interfaces in the Development of Software for Embedded Computer Systems”, NRL Report No. 8047, June 1977;
Reprinted in Infotech State of the Art Report, Structured System Development, Infotech International, 1979.
Parnas D.L., “Designing Software for Ease of Extension and Contraction”, IEEE Transactions on Software Engineering, Vol. SE-5 No. 2, pp. 128–138, March 1979;In Proceedings of the Third International Conference on Software Engineering, May 1978, pp. 264–277.
Parnas, D.L., Clements, P.C., Weiss, D.M., “The Modular Structure of Complex Systems”, IEEE Transactions on Software Engineering, Vol. SE-11 No. 3, pp. 259–266, 1985;In Proceedings of 7th International Conference on Software Engineering, March 1984, 408–417;
Reprinted in Peterson, G.E. (ed.), IEEE Tutorial: “Object-Oriented Computing”, Vol. 2: Implementations, IEEE Computer Society Press, IEEE Catalog Number EH0264–2, ISBN 0–8186-4822–8, 1987, pp. 162–169;Reprinted as Chapter 16 in item [7].
Parker, R.A., Heninger, K.L., Parnas, D.L., Shore, J.E., “Abstract Interface Specifications for the A-7E Device Interface Modules”, NRL Report 4385, November 1980.
Parnas D.L., Wang, Y., “Simulating the Behaviour of Software Modules by Trace Rewriting Systems”, IEEE Transactions of Software Engineering, Vol. 19, No. 10, pp. 750 - 759, 1994.
Roubine, O., Robinson, L., “Special Reference Manual” Technical Report CSL-45, Computer Science Laboratory, Stanford Research Institute, August 1976.
Robinson, L., Levitt K.N., Neumann P.G., Saxena, A.R., “A Formal Methodology for the Design of Operating System Software”, in Yeh, R. (ed.), Current Trends in Programming Methodology I, Prentice-Hall, 1977, pp. 61–110.
Robinson, L., Levitt K.N., “Proof Techniques for Hierarchically Structured Programs”,Communications of the ACM, Vol. 20, No. 4, pp. 271–283,1977.
Robinson, L., Levitt K.N., Silverberg, B.A., “The (HDM) Handbook”, Computer Science Laboratory, SRI International, June 1979.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Parnas, D.L. (2002). The Secret History of Information Hiding. In: Broy, M., Denert, E. (eds) Software Pioneers. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-59412-0_25
Download citation
DOI: https://doi.org/10.1007/978-3-642-59412-0_25
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-63970-8
Online ISBN: 978-3-642-59412-0
eBook Packages: Springer Book Archive