Skip to main content

Introduction to Software Performance Engineering: Origins and Outstanding Problems

  • Chapter
Formal Methods for Performance Evaluation (SFM 2007)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4486))

Abstract

This chapter first reviews the origins of Software Performance Engineering (SPE). It provides an overview and an extensive bibliography of the early research. It then covers the fundamental elements of SPE: the data required, the software performance models and the SPE process. It illustrates how to apply the modeling and analysis techniques with a case study. It concludes with a review of the current status and outstanding problems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alexander, C.T.: Performance Engineering: Various Techniques and Tools. In: Proceedings Computer Measurement Group Conference, Las Vegas, NV (1986)

    Google Scholar 

  2. Alexander, W., Brice, R.: Performance Modeling in the Design Process. In: Proceedings National Computer Conference, Houston, TX (1982)

    Google Scholar 

  3. Alter, S.: A Model for Automating File and Program Design in Business Application Systems. Communications of the ACM 22(6), 345–353 (1979)

    Article  Google Scholar 

  4. Anderson, G.E.: The Coordinated Use of Five Performance Evaluation Methodologies. Communications of the ACM 27(2), 119–125 (1984)

    Article  Google Scholar 

  5. Bagrodia, R.L., Shen, C.: MIDAS: Integrated Design and Simulation of Distributed Systems. IEEE Transactions on Software Engineering 17(10), 1042–1058 (1991)

    Article  Google Scholar 

  6. Balsamo, S., Marzolla, M.: Performance Evaluation of UML Software Architectures with Multiclass Queueing Network Models. In: WOSP 2005, Palma de Mallorca, ACM Press, New York (2005)

    Google Scholar 

  7. Baskett, F., et al.: Open, Closed, and Mixed Networks of Queues with Different Classes of Customers. Journal of the ACM 22(2), 248–260 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  8. Beilner, H., Mäter, J., Weissenburg, N.: Towards a Performance Modeling Environment: News on HIT. In: Proceedings 4th International Conference on Modeling Techniques and Tools for Computer Performance Evaluation, Plenum Publishing, New York (1988)

    Google Scholar 

  9. Beilner, H., Mäter, J., Wysocki, C.: The Hierarchical Evaluation Tool HIT. In: Bause, F., Beilner, H. (eds.) Performance Tools & Model Interchange Formats, pp. 6–9. Universität Dortmund, Fachbereich Informatik, Dortmund, Germany (1995)

    Google Scholar 

  10. Beizer, B.: Micro-Analysis of Computer System Performance. Van Nostrand Reinhold, New York (1978)

    Google Scholar 

  11. Beizer, B.: Software Performance. In: Vicksa, C.R., Ramamoorthy, C.V. (eds.) Handbook of Software Engineering, pp. 413–436. Van Nostrand Reinhold, New York (1984)

    Google Scholar 

  12. Bell, T.E. (ed.): Computer Measurement Group Transactions, Special Issue on Software Performance Engineering (1988)

    Google Scholar 

  13. Bell, T.E., Bixler, D.X., Dyer, M.E.: An Extendible Approach to Computer-aided Software Requirements Engineering. IEEE Transactions on Software Engineering 3(1), 49–59 (1977)

    Article  Google Scholar 

  14. Bell, T.E., Falk, A.M.: Performance Engineering: Some Lessons From the Trenches. In: Proceedings Computer Measurement Group Conference, Orlando, FL (1987)

    Google Scholar 

  15. Bentley, J.L.: Writing Efficient Programs. Prentice-Hall, Englewood Cliffs (1982)

    MATH  Google Scholar 

  16. Bernardi, S., Donatelli, S., Merseguer, J.: From UML Sequence Diagrams and Statecharts to Analysable Petri Net Models. In: Proc. Third Int. Workshop on Software and Performance (WOSP02), Rome, ACM Press, New York (2002)

    Google Scholar 

  17. Bernardo, M., Ciancarini, P., Donatelli, L.: AEMPA: A Process Algebraic Description Language for the Performance Analysis of Software Architectures. In: Proc. Second Int. Workshop on Software and Performance (WOSP00), Ottawa, ACM Press, New York (2000)

    Google Scholar 

  18. BMC: BMC Software, www.bmc.com

  19. Booth, T.L.: Performance Optimization of Software Systems Processing Information Sequences Modeled by Probabilistic Languages. IEEE Transactions on Software Engineering 5(1), 31–44 (1979)

    Article  Google Scholar 

  20. Booth, T.L.: Use of Computation Structure Models to Measure Computation Performance. In: Proceedings Conference on Simulation, Measurement, and Modeling of Computer Systems, Boulder, CO (1979)

    Google Scholar 

  21. Booth, T.L., Hart, R.O., Qin, B.: High Performance Software Design. In: Proceedings Hawaii International Conference on System Sciences, Honolulu, HI (1986)

    Google Scholar 

  22. Booth, T.L., Wiecek, C.A.: Performance Abstract Data Types as a Tool in Software Perfromance Analysis and Design. IEEE Transactions on Software Engineering 6(2), 138–151 (1980)

    Article  Google Scholar 

  23. Brataas, G.: Performance Engineering Method for Workflow Systems: An Integrated View of Human and Computerised Work Processes. In: Physics, Informatics, and Mathematics, p. 237. Norwegian University of Science and Technology, Trondheim, Norway (1996)

    Google Scholar 

  24. Buhr, R.J., et al.: Software CAD: A Revolutionary Approach. IEEE Transactions on Software Engineering 15(3), 234–249 (1989)

    Article  Google Scholar 

  25. Bulka, D., Mayhew, D.: Efficient C++: Performance Programming Techniques. Addison-Wesley Longman, Amsterdam (2000)

    Google Scholar 

  26. Buzen, J.P.: Queueing Network Models of Multiprograming. Harvard University (1971)

    Google Scholar 

  27. Chang, C.K., et al.: Modeling a Real-Time Multitasking System in a Timed PQ Net. IEEE Transactions on Software Engineering 6(2), 46–51 (1989)

    Google Scholar 

  28. CMG: Computer Measurement Group, http://www.cmg.org

  29. Crain, P., Hanson, C.: Web Application Tuning. In: CMG, Reno (1999)

    Google Scholar 

  30. D’Ambrogio, A.: A Model Transformation Framework for the Automated Building of Performance Models from UML Models. In: Proc. 2005 Workshop on Software and Performance, Palma de Mallorca, ACM Press, New York (2005)

    Google Scholar 

  31. Dilly, J., et al.: Measurement Tools and Modeling Techniques for Evaluating Web Server Performance. In: Marie, R., Plateau, B., Calzarossa, M.C., Rubino, G.J. (eds.) TOOLS 1997. LNCS, vol. 1245, Springer, Heidelberg (1997)

    Google Scholar 

  32. El-Sayed, H., Cameron, D., Woodside, C.M.: Automated Performance Modeling from Scenarios and SDL Designs of Telecom Systems. In: Proc. Int. Symposium on Software Engineering for Parallel and Distributed Systems (PDSE98), Kyoto, Japan (1998)

    Google Scholar 

  33. Estrin, G., et al.: SARA (System ARchitects’ Apprentice): Modeling, Analysis, and Simulation Support for Design of Concurrent Systems. IEEE Transactions on Software Engineering 12(2), 293–311 (1986)

    Google Scholar 

  34. Ferrari, D.: Workload Characterization and Selection in Computer Performance Measurement. IEEE Computer 5(4), 18–24 (1972)

    Google Scholar 

  35. Ferrari, D.: Computer Systems Performance Evaluation. Prentice-Hall, Englewood Cliffs (1978)

    Google Scholar 

  36. Ferrari, D., Serazzi, G., Zeigner, A.: Measurement and Tuning of Computer Systems. Prentice-Hall, Englewood Cliffs (1983)

    Google Scholar 

  37. Fox, G.: Take Practical Performance Engineering Steps Early. In: Proceedings Computer Measurement Group Conference, Orlando, FL (1987)

    Google Scholar 

  38. Fox, G.: Performance Engineering as a Part of the Development Lifecycle for Large-Scale Software Systems. In: Proceedings 11th International Conference on Software Engineering, Pittsburgh, PA (1989)

    Google Scholar 

  39. García, D., et al.: Performance Model Interchange Format: Semantic Validation. In: 2006 International Conference on Software Engineering Advances, Papeete Tahiti, INIRIA (2006)

    Google Scholar 

  40. Gomaa, H., Menasce, D.A. (eds.): Session: From Specifications to Performance Models. In: Second Int. Workshop on Software and Performance (WOSP00), Ottawa, pp. 47–88, ACM Press (2000)

    Google Scholar 

  41. Graham, R.M., Clancy, G.J., DeVaney, D.B.: A Software Design and Evalation System. Communications of the ACM 16(2), 110–116 (1973)

    Article  Google Scholar 

  42. Gu, G., Petriu, D.: XSLT Transformation from UML Models to LQN Performance Models. In: Proc. Workshop on Software and Performance, Rome, ACM Press, New York (2002)

    Google Scholar 

  43. Gu, G., Petriu, D.: From UML to LQN by XML Algebra-based Model Transformations. In: WOSP 2005, Palma de Mallorca, ACM Press, New York (2005)

    Google Scholar 

  44. Gunther, N.: The Practical Performance Analyst: Performance-By-Design Techniques for Distributed Systems (1998), http://www.perfdynamics.com

  45. Gunther, N.: E-Ticket Capacity Planning: Riding the E-Commerce Growth Curve. In: Proc. Computer Measurement Group, Orlando (2000)

    Google Scholar 

  46. Hanson, C., Crain, P., Wigginton, S.: User and Computer Performance Optimization. In: CMG, Reno (1999)

    Google Scholar 

  47. Haring, G.: On State-dependent Workload Characterization by Software Resources. ACM SIGMETRICS Performance Evaluation Review 11(4), 51–57 (1982)

    Article  Google Scholar 

  48. Hills, G., Rolia, J.A., Serazzi, G.: Performance Engineering of Distributed Software Process Architectures. In: Beilner, H., Bause, F. (eds.) MMB 1995 and TOOLS 1995. LNCS, vol. 977, pp. 357–371. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  49. Hopkins, R.P., et al.: Two Approaches to Integrating UML and Performance Models. In: Proc. Third Int. Workshop on Software and Performance (WOSP02), Rome, ACM Press, New York (2002)

    Google Scholar 

  50. Howes, N.R.: Toward a Real-Time Ada Design Methodology. In: Proceedings Tri-Ada 90, Baltimore, MD (1990)

    Google Scholar 

  51. Hrischuk, C., Rolia, J.A., Woodside, C.M.: Automatic Generation of a Software Performance Model Using an Object-Oriented Prototype. In: Proceedings of the Third International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems, Durham, NC (1995)

    Google Scholar 

  52. Hrischuk, C.E., et al.: Trace-Based Load Characterization for Generating Performance Software Models. TSE 25(1), 122–135 (1999)

    Google Scholar 

  53. Hughes, P.: Towards a Common Process Model for Systems Development and Performance Engineering. In: Proc. Second Int. Workshop on Software and Performance (WOSP00), Ottawa, Canada, ACM Press, New York (2000)

    Google Scholar 

  54. HyPerformix, Inc.: http://www.hyperformix.com

  55. Jain, R.: Art of Computer Systems Performance Analysis. John Wiley, New York (1991)

    MATH  Google Scholar 

  56. Jalics, P.J.: Improving Performance The Easy Way. Datamation 23(4), 135–148 (1977)

    Google Scholar 

  57. Kant, E.: Efficiency in Program Synthesis. UMI Research Press, Ann Arbor (1981)

    Google Scholar 

  58. King, P., Pooley, R.: Derivation of Petri Net Performance Models from UML Specifications of Communications Software. In: Haverkort, B.R., Bohnenkamp, H.C., Smith, C.U. (eds.) TOOLS 2000. LNCS, vol. 1786, p. 262. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  59. Knuth, D.E.: An Empirical Study of FORTRAN Programs. Software Practice & Experience 1(2), 105–133 (1971)

    Article  MATH  Google Scholar 

  60. Knuth, D.E.: The Art of Computer Programming, vol. 1, 3rd edn. Addison-Wesley, Reading (1997)

    MATH  Google Scholar 

  61. Knuth, D.E.: The Art of Computer Programming, vol. 3: Sorting and Searching, 2nd edn. Addison-Wesley, Reading (1998)

    Google Scholar 

  62. Kopetz, H.: Design Principles of Fault Tolerant Real-Time Systems. In: Proceedings Hawaii International Conference on System Sciences, Honolulu, HI (1986)

    Google Scholar 

  63. L&S, Computer Technology, Inc., Performance Engineering Services Division, www.spe-ed.com

  64. Lampson, B.W.: Hints for Computer System Design. IEEE Software 2(1), 11–28 (1984)

    Article  Google Scholar 

  65. Larman, C., Guthrie, R.: Java 2 Performance and Idiom Guide. Prentice Hall PTR, Upper Saddle River (2000)

    Google Scholar 

  66. Lazowska, E.D., et al.: Quantitative System Performance: Computer System Analysis Using Queuing Network Models. Prentice-Hall, Inc., Englewod Cliffs (1984)

    Google Scholar 

  67. LeMer, E.: MEDOC: A Methodology for Designing and Evaluating Large-Scale Real-Time Systems. In: Proceedings National Computer Conference, Houston, TX (1982)

    Google Scholar 

  68. Levi, S., Agrawala, A.K.: Real-Time System Design. McGraw-Hill, New York (1990)

    Google Scholar 

  69. Lor, K., Berry, D.M.: Automatic Synthesis of SARA Design Models from System Requirements. IEEE Transactions on Software Engineering 17(12), 1229–1240 (1991)

    Article  Google Scholar 

  70. Martin, C.R.: An Integrated Software Performance Engineering Environment. Duke University (1988)

    Google Scholar 

  71. Menascé, D.A., Almeida, V.A.F.: Scaling for E-Business: Technologies, Models, Performance, and Capacity Planning. Prentice-Hall, Englewood Cliffs (2000)

    Google Scholar 

  72. Menascé, D.A., Almeida, V.A.F., Dowdy, L.W.: Capacity Planning and Performance Modeling. PTR Prentice Hall, Englewood Cliffs (1994)

    Google Scholar 

  73. Menascé, D.A., Gomaa, H.: On a Language Based Method for Software Performance Engineering of Client/Server Systems. In: Workshop on Software and Performance, Santa Fe, NM, ACM Press, New York (1998)

    Google Scholar 

  74. Nichols, K.M.: Performance Tools. IEEE Software 7(3), 21–30 (1990)

    Article  MathSciNet  Google Scholar 

  75. Nichols, K.M., Oman, P.: Special Issue in High Performance. IEEE Software 8(5) (1991)

    Google Scholar 

  76. OMG, UML Profile for Schedulability, Performance and Time, formal/03-09-01, OMG Full Specification (2003)

    Google Scholar 

  77. Opdahl, A.: A CASE Tool for Performance Engineering During Software Design. In: Proceedings Fifth Nordic Workshop on Programming Environmental Research, Tampere, Finland (1992)

    Google Scholar 

  78. Opdahl, A., Sølvberg, A.: Conceptual Integration of Information System and Performance Modeling. In: Proceedings Working Conference on Information System Concepts: Improving the Understanding (1992)

    Google Scholar 

  79. Paterok, M., Heller, R., DeMeer, H.: Performance Evaluation of an SDL Run Time System - A Case Study. In: Proceedings 5th International Conference on Modeling Techniques and Tools for Computer Performance Evaluation, Torino, Italy (1991)

    Google Scholar 

  80. Petriu, D., Woodside, C.M.: Software Performance Models from System Scenarios in Use Case Maps. In: Proceedings 12th Int. Conf. Modeling Tools and Techniques, London (2002)

    Google Scholar 

  81. Pooley, R.: The Integrated Modeling Support Environment. In: Proceedings 5th International Conference on Modeling Techniques and Tools for Computer Performance Evaluation, Torino, Italy (1991)

    Google Scholar 

  82. QEST, Quantitative Evaluation of Systems. 2004++, www.qest.org

  83. Qin, B.: A Model to Predict the Average Response Time of User Programs. Performance Evaluation 10, 93–101 (1989)

    Article  Google Scholar 

  84. QSP, Quantitative System Performance, in 7516 34th Ave N., A.M.a.A.P. QSP, Editor: Seattle, WA 98117-4723.

    Google Scholar 

  85. Riddle, W.E., et al.: Behavior Modeling During Software Design. IEEE Transactions on Software Engineering 4 (1978)

    Google Scholar 

  86. Rolia, J.A.: Predicting the Performance of Software Systems. University of Toronto (1992)

    Google Scholar 

  87. Rolia, J.A., Sevcik, K.C.: The Method of Layers. IEEE Trans. on Software Engineering 21(8), 689–700 (1995)

    Article  Google Scholar 

  88. Rolia, J.A., Vetland, V.: Correlating Resource Demand Information with ARM Data for Application Services. In: Int. Workshop on Software and Performance, Santa Fe, NM, ACM Press, New York (1998)

    Google Scholar 

  89. Rosselló, J., et al.: A Web Service for Solving Queueing Network Models Using PMIF. In: Proc. Workshop on Software and Performance, Palma de Mallorca, ACM Press, New York (2005)

    Google Scholar 

  90. Sahner, R.A., Trivedi, K.S.: Performance and Reliability Analysis Using Directed Acyclic Graphs. IEEE Transactions on Software Engineering 13(10), 1105–1114 (1987)

    Article  Google Scholar 

  91. Sanguinetti, J.W.: A Formal Technique for Analyzing the Performance of Complex Systems. In: Proceedings Performance Evaluation Users Group 14, Boston, MA (1978)

    Google Scholar 

  92. Schmietendorf, A., Scholz, A., Rautenstrauch, C.: Evaluating the Performance Engineering Process. In: Proc. Workshop on Software and Performance (WOSP2000), Ottawa, Canada (2000)

    Google Scholar 

  93. Schneider, T.: Performance Management of SAP \(^{\hbox{\rm\textregistered}}\) Solutions. In: Dumke, R.R., Rautenstrauch, C., Schmietendorf, A., Scholz, A. (eds.) WOSP 2000 and GWPESD 2000. LNCS, vol. 2047, p. 333. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  94. Sevcik, K.C., Smith, C.U., Williams, L.G.: Performance Prediction Techniques Applied to Electronic Commerce Systems. In: Kou, W., Yesha, Y. (eds.) Electronic Commerce Technology Trends: Challenges and Opportunities, IBM Press (2000)

    Google Scholar 

  95. Sheikh, F., Woodside, C.M.: Layered Analytic Performance Modelling of a Distributed Database System. In: ICDCS (1997)

    Google Scholar 

  96. Sholl, H., Kim, S.: An Approach to Performance Modeling as an Aid in Structuring Real-time, Distributed System Software. In: Proceedings Hawaii International Conference on System Sciences, Honolulu, HI (1986)

    Google Scholar 

  97. Sholl, H.A., Booth, T.L.: Software Performance Modeling Using Computation Structures. IEEE Transactions on Software Engineering 1(4) (1975)

    Google Scholar 

  98. Smith, C.U.: The Prediction and Evaluation of the Performance of Software from Extended Design Specifications. University of Texas (1980)

    Google Scholar 

  99. Smith, C.U.: Software Performance Engineering. In: Proceedings Computer Measurement Group Conference XII (1981)

    Google Scholar 

  100. Smith, C.U.: A Methodology for Predicting the Memory Management Overhead of New Software Systems. In: Proceedings Hawaii International Conference on System Sciences, Honolulu, HI (1982)

    Google Scholar 

  101. Smith, C.U.: Special Issue on Software Performance Engineering. Computer Measurement Group Transactions (1985)

    Google Scholar 

  102. Smith, C.U.: Independent General Principles for Constructing Responsive Software Systems. ACM Transactions on Computer Systems 4(1), 1–31 (1986)

    Article  Google Scholar 

  103. Smith, C.U.: Applying Synthesis Principles to Create Responsive Software Systems. IEEE Transactions on Software Engineering 14(10), 1394–1408 (1988)

    Article  Google Scholar 

  104. Smith, C.U.: Who Uses SPE? Computer Measurement Group Transactions, 69–75 (1988)

    Google Scholar 

  105. Smith, C.U.: Performance Engineering of Software Systems. Addison-Wesley, Reading (1990)

    Google Scholar 

  106. Smith, C.U., Browne, J.C.: Performance Specifications and Analysis of Software Designs. In: Proceedings ACM Sigmetrics Conference on Simulation Measurement and Modeling of Computer Systems, Boulder, CO (1979)

    Google Scholar 

  107. Smith, C.U., Browne, J.C.: Aspects of Software Design Analysis: Concurrency and Blocking. In: Proceedings ACM Sigmetrics Conference on Simulation Measurement and Modeling of Computer Systems (1980)

    Google Scholar 

  108. Smith, C.U., Browne, J.C.: Performance Engineering of Software Systems: A Case Study. In: Proceedings National Computer Conference, Houston, TX (1982)

    Google Scholar 

  109. Smith, C.U., et al.: From UML models to software performance results: An SPE process based on XML interchange formats. In: Proc. 5th Int. Workshop on Software and Performance, Palma, Illes Balears, Spain, ACM Press, New York (2005)

    Google Scholar 

  110. Smith, C.U., Lladó, C.M.: Performance Model Interchange Format (PMIF 2.0): XML Definition and Implementation. In: Proc. 1st Int. Conf. on Quantitative Evaluation of Systems (QEST), Enschede, NL, IEEE Computer Society Press, Los Alamitos (2004)

    Google Scholar 

  111. Smith, C.U., Loendorf, D.D.: Performance Analysis of Software for an MIMD Computer. In: Proceedings ACM Sigmetrics Conference on Measurement and Modeling of Computer Systems, Seattle, WA (1982)

    Google Scholar 

  112. Smith, C.U., Williams, L.G.: Software Performance Engineering: A Case Study with Design Comparisons. IEEE Transactions on Software Engineering 19(7), 720–741 (1993)

    Article  Google Scholar 

  113. Smith, C.U., Williams, L.G.: A Performance Model Interchange Format. In: Bause, F., Beilner, H. (eds.) Performance Tools and Model Interchange Formats, pp. 67–85. Universität Dortmund, Informatik IV, Dortmund, Germany (1995)

    Google Scholar 

  114. Smith, C.U., Williams, L.G.: Performance Engineering of Object-Oriented Systems with SPEED. In: Marie, R., Plateau, B., Calzarossa, M.C., Rubino, G.J. (eds.) TOOLS 1997. LNCS, vol. 1245, pp. 135–154. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  115. Smith, C.U., Williams, L.G.: Performance Engineering Evaluation of CORBA-based Distributed Systems with SPEED. In: Puigjaner, R., Savino, N.N., Serra, B. (eds.) TOOLS 1998. LNCS, vol. 1469, p. 321. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  116. Smith, C.U., Williams, L.G.: Performance Engineering Models of CORBA-based Distributed Object Systems. In: Proc. Computer Measurement Group, Anaheim (1998)

    Google Scholar 

  117. Smith, C.U., Williams, L.G.: Performance Models of Distributed System Architectures. In: Proc. Computer Measurement Group, Anaheim (1998)

    Google Scholar 

  118. Smith, C.U., Williams, L.G.: A Performance Model Interchange Format. Journal of Systems and Software 49(1) (1999)

    Google Scholar 

  119. Smith, C.U., Williams, L.G.: Software Performance Antipatterns. In: Workshop on Software and Performance, Ottawa, Canada, ACM Press, New York (2000)

    Google Scholar 

  120. Smith, C.U., Williams, L.G.: SPE Models for Web Applications. In: Proc. Computer Measurement Group, Orlando (2000)

    Google Scholar 

  121. Smith, C.U., Williams, L.G.: New Software Performance Antipatterns: More Ways to Shoot Yourself in the Foot. In: Proc. CMG, Reno, NV (2002)

    Google Scholar 

  122. Smith, C.U., Williams, L.G.: Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software. Addison-Wesley, Reading (2002)

    Google Scholar 

  123. Smith, C.U., Williams, L.G.: Best Practices for Software Performance Engineering. In: Proc. CMG, Dallas, TX (2003)

    Google Scholar 

  124. Smith, C.U., Williams, L.G.: More New Software Performance Antipatterns: Even More Ways to Shoot Yourself in the Foot. In: Proc. CMG, Dallas, TX (2003)

    Google Scholar 

  125. Smith, C.U., Wong, B.: SPE Evaluation of a Client/Server Application. In: Proc. Computer Measurement Group, Orlando, FL (1994)

    Google Scholar 

  126. Smith, C.U., Woodside, C.M.: Performance Validation at Early Stages of Software Development. In: Gelenbe, E. (ed.) System Performance Evaluation: Methodologies and Applications, CRC Press, Boca Raton (1999)

    Google Scholar 

  127. SPEED, http://www.spe-ed.com

  128. Steppler, M.: Performance Analysis of Communication Systems Formally Specified in SDL. In: Proc. 1st Int. Workshop on Software and Performance (WOSP98), Santa Fe, NM (1998)

    Google Scholar 

  129. Trivedi, K.S.: Probability and Statistics With Reliability, Queueing, and Computer Science Applications. Prentice-Hall, Englewood Cliffs (1982)

    Google Scholar 

  130. Vetland, V.: Measurement-Based Composite Computational Work Modelling of Software. University of Trondheim (1993)

    Google Scholar 

  131. Vetland, V., Hughes, P., Solvberg, A.: A Composite Modelling Approach to Software Performance Measurement. In: Proc. ACM Sigmetrics, Santa Clara, CA (1993)

    Google Scholar 

  132. Williams, L.G., Smith, C.U.: Information Requirements for Software Performance Engineering. In: Beilner, H., Bause, F. (eds.) MMB 1995 and TOOLS 1995. LNCS, vol. 977, pp. 86–101. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  133. Williams, L.G., Smith, C.U.: PASASM: A Method for the Performance Assessment of Software Architectures. In: Proc. 3rd Int. Workshop on Software and Performance, Rome, IT, ACM Press, New York (2002)

    Google Scholar 

  134. Williams, L.G., Smith, C.U.: Making the Business Case for Software Performance Engineering. In: Proc. CMG, Dallas, TX (2003)

    Google Scholar 

  135. Woodside, C.M.: Throughput Calculation for Basic Stochastic Rendezvous Networks. Carleton University, Ottawa, Canada (1986)

    Google Scholar 

  136. Woodside, C.M.: Throughput Calculation for Basic Stochastic Rendezvous Networks. Performance Evaluation 9 (1989)

    Google Scholar 

  137. Woodside, C.M., et al.: The CAEDE Performance Analysis Tool. Ada Letters XI(3) (1991)

    Google Scholar 

  138. Woodside, C.M., et al.: A Wideband Approach to Integrating Performance Prediction into a Software Design Environment. In: Proc. First Int. Workshop on Software and Performance (WOSP98), Santa Fe, NM (1998)

    Google Scholar 

  139. Woodside, C.M., et al.: The Stochastic Rendezvous Network Model for Performance of Synchronous Client-Server-like Distributed Software. IEEE Trans. Computers 44(1), 20–34 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  140. WOSP, Workshop on Software and Performance. ACM Press (1998-2007)

    Google Scholar 

  141. Wu, X., Woodside, C.M.: Performance Modeling from Software Components. In: Proc. Workshop on Software and Performance, Redwood Shores, CA, ACM Press, New York (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Marco Bernardo Jane Hillston

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this chapter

Cite this chapter

Smith, C.U. (2007). Introduction to Software Performance Engineering: Origins and Outstanding Problems. In: Bernardo, M., Hillston, J. (eds) Formal Methods for Performance Evaluation. SFM 2007. Lecture Notes in Computer Science, vol 4486. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72522-0_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-72522-0_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-72482-7

  • Online ISBN: 978-3-540-72522-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics