Object-Orientation

  • Grady Booch
  • Robert G. Fichman
  • Chris F. Kemerer
Part of the Formal Approaches to Computing and Information Technology (FACIT) book series (FACIT)

Abstract

Although object-oriented programming languages appeared in the late 1960s with the advent of Simula-67, it was not until the late 1980s that the object paradigm became popular. Over the last decade we have seen the emergence of many object-oriented programming languages, and extensions to existing languages to support object-oriented programming (e.g., C++, Object Pascal).

Keywords

Transportation Expense Encapsulation Dinated Paral 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    T. Rentsch, “Object-oriented programming.” SIGPLAN Notices, vol. 17, no. 9, p. 51, Sept. 1982.CrossRefGoogle Scholar
  2. 2.
    J. Guttag, E. Horowitz, and D. Musser, The Design of Data Type Specification (Current Trends in Programming Methodology, Vol. 4). Englewood Cliffs, NJ: Prentice Hall, 1978, p. 200.Google Scholar
  3. 3.
    Adapted from an exercise provided by P. Ward at the Rocky Mountain Institute for Software Engineering, Aspen, CO, 1984.Google Scholar
  4. 4.
    C. Gane and T. Sarson, Structured Systems Analysis: Tools and Techniques. Englewood Cliffs, NJ: Prentice Hall, 1979.Google Scholar
  5. 5.
    E. Yourdon and L. Constantine, Structured Design. Englewood Cliffs, NJ: Prentice Hall, 1979.MATHGoogle Scholar
  6. 6.
    H. Levy, Capability-Based Computer Systems, Badford, MA: Digital Press, 1984, p. 13.Google Scholar
  7. 7.
    G. Curry and R. Ayers, “Experience with traits in the Xerox Star workstation,” in Proc. Workshop Reusability in Program., ITT Programming, Stratford, CT, 1983, p. 83.Google Scholar
  8. 8.
    M. Shaw, “Abstraction techniques in modern programming languages,” IEEE Software, vol. 1, no. 4, p. 10, Oct. 1984.CrossRefGoogle Scholar
  9. 9.
    D. L. Parnas, “On the criteria to be used in decomposing systems into modules,” Commun. ACM, Dec. 1972.Google Scholar
  10. 10.
    R. Abbott, “Report on teaching Ada” Science Applications, Inc., Rep. SAI-81–312WA,Dec. 1980.Google Scholar
  11. 11.
    R. Abbott, “Program design by informal English descriptions,” Commun. ACM, vol. 26, no. 11, p. 884, Nov. 1983.CrossRefGoogle Scholar
  12. 12.
    M. Jackson, System Development. Englewood Cliffs, NJ: Prentice Hall, 1983.MATHGoogle Scholar
  13. 13.
    M. Alford, “SREM at the age of eight: The distributed computing design system,” Computer, vol. 18, no. 4, Apr. 1985.Google Scholar
  14. 14.
    G. Buzzard and T. Mudge, “Object-based computing and the Ada programming language,” Computer, vol. 18, no. 3, p. 12, 1985.CrossRefGoogle Scholar
  15. 15.
    D. Boehm-Davis and L. Ross, “Approaches to structuring the software development process,” General Elec. Co., Rep. GEC/DIS/TR84-B1V-1, Oct. 1984, p. 13.Google Scholar
  16. 16.
    B. Meyer, “Towards a two-dimensional programming environment,” in Readings in Artificial Intelligence. Palo Alto, CA: Tioga, 1981, p. 178.Google Scholar
  17. 17.
    A. Borgida, S. Greenspan and J. Mylopoulos, “Knowledge representation as the basis for requirements specification,” Computer, vol. 18, no. 4, p. 85, Apr. 1985.CrossRefGoogle Scholar
  18. 18.
    D. Boehm-Davis and L. Ross, “Approaches to structuring the software development process,” General Elec. Co., Rep. GEC/DIS/TR-84-B1V-1, Oct. 1984, p. 14.Google Scholar
  19. 19.
    B. MacLennan, “Values and objects in programming languages,” SIGPLAN Notices, vol. 17, no. 12, p. 75, Dec. 1982.MathSciNetCrossRefGoogle Scholar
  20. 20.
    H. Levy, Capability-Based Computer Systems. Bedford, MA: Digital Press, 1984, p. 13.Google Scholar
  21. 21.
    B. Liskov, “A design method for reliable software systems,” in Proc. Fall Joint Comput. Confi, AFIPS, 1972, p. 67.Google Scholar
  22. 22.
    B. Liskov, and S. Zilles, “Specification techniques for data abstractions,” IEEE Trans. Software Eng., vol. SE-1, Mar. 1975.Google Scholar
  23. 23.
    J. Guttage, E. Horowitz, and D. Musser, The Design of Data Type Specification (Current Trends in Programming Methodology, Vol. 4). Englewood Cliffs, NJ: Prentice Hall, 1978.Google Scholar
  24. 24.
    M. Shaw, “Abstraction techniques in modern programming languages,” IEEE Software, vol. 1, no. 4, Oct. 1984.Google Scholar
  25. 25.
    A. Abelson, G. Sussman, and J. Sussman, Structure and Interpretation of Computer Programs. Cambridge, MA: M.I.T. Press, 1985.Google Scholar
  26. 26.
    B. Cox, “Message/object programming: An evolutionary change in programming technology,” IEEE Software, vol. 1, no. 1, Jan. 1984.Google Scholar
  27. 27.
    “A symposium on actor languages,” Creative Comput., Oct. 1980.Google Scholar
  28. 28.
    G. Myers, Advances in Computer Architecture. New York: Wiley, 1982.MATHGoogle Scholar
  29. 29.
    H. Deitel, An Introduction to Operating Systems. Reading, MA: Addison-Wesley, 1983, p. 456.Google Scholar
  30. 30.
    B. Liskov and S. Zilles, An Introduction to Formal Specifications of Data Abstractions (Current Trends in Programming Methodology, Vol. 1). Englewood Cliffs, NJ: Prentice Hall, 1977, p. 19.Google Scholar
  31. 31.
    M. Shaw, W. Wulf, and R. London, “Abstraction and verification in Alphard: Iteration and generators,” in Alphard: Form and Content. New York: Springer-Verlag, 1981.CrossRefGoogle Scholar
  32. 32.
    B. Liskov, R. Atkinson, T. Bloom, E. Moss, J. Schaffert, R. Schiefler, and A. Snyder, CLU Reference Manual. New York: Springer-Verlag, 1981, p. 8.MATHGoogle Scholar
  33. 33.
    E. G. Booch, “Describing software design in Ada,” SIGPLAN Notices, Sept. 1981.Google Scholar
  34. 1.
    E. Yourdon, “Object-Oriented Observations,” Am. Programmer, Vol. 2, No. 7–8, Summer 1989, pp. 3–7.Google Scholar
  35. 2.
    G. Booch “What Is and What Isn’t Object-Oriented Design?” Am. Programmer, Vol. 2, No. 7–8, Summer 1989, pp. 14–21.Google Scholar
  36. 3.
    P. Coad and E. Yourdon, Object-Oriented Analysis, 2nd edition, Prentice Hall, Englewood Cliffs, N.J., 1991.Google Scholar
  37. 4.
    A.I. Wasserman, P.A. Pircher, and R.J. Muller, “An Object-Oriented Structured Design Method for Code Generation,” Software Eng. Notes, Vol. 14, No. 1, Jan. 1989, pp. 32–55.CrossRefGoogle Scholar
  38. 5.
    M. Page-Jones and S. Weiss, “Synthesis: An Object-Oriented Analysis and Design Method,” Am. Programmer, Vol. 2, No. 7–8, Summer 1989, pp. 64–67.Google Scholar
  39. 6.
    D. De Champeaux and P. Faure, “A Comparative Study of Object-Oriented Analysis Methods,” J. Object-Oriented Programming, Vol. 5, No. 1, 1992, pp. 21–33.Google Scholar
  40. 7.
    R.J. Wirfs-Brock and R.E. Johnson, “Surveying Current Research in Object-Oriented Design,” Comm. ACM, Vol. 33, No. 9, Sept. 1990, pp. 104–124.CrossRefGoogle Scholar
  41. 8.
    P.H. Loy, “A Comparison of Object-Oriented and Structured Development Methodologies,” ACM SIGSoft Software Eng. Notes, Vol. 15, No. 1, Jan. 1990, pp. 44–48.CrossRefGoogle Scholar
  42. 9.
    E. Yourdon and L. Constantine, Structured Design: Fundamentals of a Discipline of Computer Programming and Design, 2nd edition, Prentice Hall, New York, 1979.Google Scholar
  43. 10.
    T. DeMarco, Structured Analysis and System Specification, Yourdon Inc., New York, 1978.Google Scholar
  44. 11.
    P.T. Ward and S.J. Mellor, Structured Development of Real-Time Systems, Yourdon Press, Englewood Cliffs, N.J., 1985.Google Scholar
  45. 12.
    E. Yourdon, Modern Structured Analysis, Yourdon Press, Englewood Cliffs, N.J, 1989.Google Scholar
  46. 13.
    J. Martin, Information Eng., Books I, II, and III, Prentice Hall, Englewood Cliffs, N.J., 1990.Google Scholar
  47. 14.
    S.C. Bailin, “An Object-Oriented Requirements Specification Method,” Comm. ACM, Vol. 32, No. 5, May 1989, pp. 608–623.CrossRefGoogle Scholar
  48. 15.
    S. Shlaer and S.J. Mellor, Object-Oriented Analysis: Modeling the World in Data, Yourdon Press, Englewood Cliffs. N.J., 1988.Google Scholar
  49. 16.
    S. Shlaer and S.J. Mellor, Object Life Cycles: Modeling the World in States, Yourdon Press, Englewood Cliffs, N.J., 1992.Google Scholar
  50. 17.
    R.G. Fichman and C.F. Kemerer, “Object-Oriented Analysis and Design Methodologies: Comparison and Critique,” MIT Sloan School of Management, Center for Information Systems Research Working Paper No. 230, Nov. 1991.Google Scholar
  51. 18.
    R. Wirts-Brock, B. Wilkerson, and L. Wiener, Designing Object-Oriented Software, Prentice Hall, Englewood Cliffs, N.J., 1990.Google Scholar
  52. 19.
    G. Caldiera and V. Basili, “Identifying and Qualifying Reusable Software Components,” Computer, Vol. 24, No. 2, Feb. 1991, pp. 61–70.CrossRefGoogle Scholar
  53. 20.
    P. Coad and E. Yourdon, Object-Oriented Design, Prentice Hall, Englewood Cliffs, N.J., 1991.Google Scholar
  54. 21.
    J. Rumbaugh et al., Object-Oriented Modeling and Design, Prentice Hall, Englewood Cliffs, N.J., 1991.Google Scholar
  55. 22.
    D. De Champeaux, “Object-Oriented Analysis and Top-Down Software Development,” Proc. European Confi Object-Oriented Programming, Lecture Notes in Computer Science, P. America, ed., Springer-Verlag, Geneva, 1991, pp. 360–376.Google Scholar

Copyright information

© Springer-Verlag London Limited 1999

Authors and Affiliations

  • Grady Booch
  • Robert G. Fichman
  • Chris F. Kemerer

There are no affiliations available

Personalised recommendations