Advertisement

Reasoning about Software-Component Behavior

  • Murali Sitaraman
  • Steven Atkinson
  • Gregory Kulczycki
  • Bruce W. Weide
  • Timothy J. Long
  • Paolo Bucci
  • Wayne Heym
  • Scott Pike
  • Joseph E. Hollingsworth
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1844)

Abstract

The correctness of a component-based software system depends on the component client’s ability to reason about the behavior of the components that comprise the system, both in isolation and as composed. The soundness of such reasoning is dubious given the current state of the practice. Soundness is especially troublesome for component technologies where source code for some components is inherently unavailable to the client. Fortunately, there is a simple, understandable, teachable, practical, and provably sound and relatively complete reasoning system for component-based software systems that addresses the reasoning problem.

Keywords

component-based software reasoning software component software reuse specification verification 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Aronszajn, M., Sitaraman, M., Atkinson, S., Kulczyski, G.: A System for Predictable Component-Based Software Construction. In: Winter, V., Bhattacharya, S. (eds.) High, Integrity Software. Kluwer Academic Publishers, Dordrecht (2000)Google Scholar
  2. 2.
    Booch, G.: Software Components With Ada. Benjamin/Cummings, Menlo Park (1987)Google Scholar
  3. 3.
    de Champeaux, D., Lea, D., Faure, P.: Object-Oriented System Development. Addison-Wesley, Reading (1993)Google Scholar
  4. 4.
    Fleming, D.: Foundations of Object-Based Specification Design. Ph.D. diss., West Virginia University, Dept. Comp. Sci. and Elec. Eng. (1997)Google Scholar
  5. 5.
    Freedman, D.P., Weinberg, C.: Handbook of Walkthroughs, Inspections, and Technical Reviews: Evaluating Programs, Projects, and Products, 3rd edn. Dorset House, New York (1990)Google Scholar
  6. 6.
    Harms, D.E., Weide, B.W.: Copying and Swapping: Influences on the Design of Reusable Software Components. IEEE Trans, on Soft. Eng. 17(5), 424–435 (1991)CrossRefGoogle Scholar
  7. 7.
    Heym, W.D.: Computer Program Verification: Improvements for Human Reasoning. Ph.D. diss., The Ohio State Univ., Dept. of Comp. and Inf. Sci. (1995)Google Scholar
  8. 8.
    Knuth, D.: "Knuth Comments on Code: An Interview with D. Andrews," Byte (September 1996), http://www.byte.com/art/9609/sec3/artl9.htm (current October 11, 1999)
  9. 9.
    Leavens, G.T., Cheon, Y.: Extending CORBA IDL to specify behavior with Larch. In: OOPSLA 1993 Workshop Proc: Specification of Behavioral Semantics in OO Info. Modeling, pp. 77–80. ACM, New York (1993); also TR #93-20, Dept. of Comp. Sci., Iowa State Univ. (1993)Google Scholar
  10. 10.
    Orfali, R., Harkey, D., Edwards, J.: The Essential Distributed Objects Survival Guide. J. Wiley, New York (1996)Google Scholar
  11. 11.
    Owre, S., Rushby, J., Shankar, N., von Henke, F.: Formal Verification of Fault-Tolerant Architectures: Prolegomena to the Design of PVS. IEEE Trans, on, Soft. Eng. 21(2), 107–125 (1995)CrossRefGoogle Scholar
  12. 12.
    Sitaraman, M.: An Introduction to Software Engineering Using Properly Conceptualized Objects. WVU Publications, Morgantown (1997)Google Scholar
  13. 13.
    Sitaraman, M., Weide, B.W. (ed.): Component-Based Software Using RESOLVE. ACM Software Eng. Notes 19(4), 21–67 (1994)CrossRefGoogle Scholar
  14. 14.
    van Leeuwen, J. (ed.): Handbook of Theoretical Computer Science. Algorithms and Complexity, vol. A. Elsevier Science Publishers, Amsterdam (1990)Google Scholar
  15. 15.
    Weide, B.W., Hollingsworth, J.E., Heym, W.D.: Reverse Engineering of Legacy Code Exposed. In: Proc. 17th Intl. Conf. on Software Eng., pp. 327–331. ACM, New York (1995)Google Scholar
  16. 16.
    Weide, B.W., Edwards, S.H., Heym, W.D., Long, T.J., Ogden, W.F.: Characterizing Observability and Controllability of Software Components. In: Proc. 4th Intl. Conf. on Software Reuse, pp. 62–71. IEEE CS Press, Los Alamitos (1996)CrossRefGoogle Scholar
  17. 17.
    Weide, B.W.: Software Component Engineering, OSU Reprographics, Columbus, OH (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Murali Sitaraman
    • 1
  • Steven Atkinson
    • 1
  • Gregory Kulczycki
    • 1
  • Bruce W. Weide
    • 2
  • Timothy J. Long
    • 2
  • Paolo Bucci
    • 2
  • Wayne Heym
    • 2
  • Scott Pike
    • 2
  • Joseph E. Hollingsworth
    • 3
  1. 1.Computer Science and Electrical EngineeringWest Virginia UniversityMorgantownUSA
  2. 2.Computer and Information ScienceThe Ohio State UniversityColumbusUSA
  3. 3.Computer ScienceIndiana University SoutheastNew AlbanyUSA

Personalised recommendations