This Article 
 Bibliographic References 
 Add to: 
A Three-View Model for Performance Engineering of Concurrent Software
September 1995 (vol. 21 no. 9)
pp. 754-767
This paper describes a multiview characterization of concurrent software and systems suitable for displaying and analyzing performance information. The views draw from well-known descriptions, and are compatible with established techniques and tools such as execution graphs, Petri Nets, StateCharts, structured design or object-oriented design, and various models for performance. The views are connected by means of a “Core model” and are used together to extract information relating to system integration, such as interprocess overheads, and the delay behavior of separate software components in complex systems. The integration of the views in the Core assists by converting results in one view (such as scheduling delay for resources) to parameters in another (such as delays along a path). The ultimate goal of the views is to support designers in making tradeoffs which involve performance, and to provide early assessment of the performance potential of software designs.

[1] R.J.A. Buhr,Practical Visual Techniques in System Design. Prentice Hall, 1990.
[2] E. Yourdon, Modern Structured Analysis, Prentice Hall, Englewood Cliffs, N.J., 1989.
[3] S. Shlaer and S.J. Mellor, Object Lifecycles: Modeling the World in States, Prentice Hall, Englewood Cliffs, N.J., 1992.
[4] V.R. Pratt, "Modeling Concurrency with Partial Orders," Int. J. Parallel Programming, Vol. 15, No. 1, 1986, pp. 33-71.
[5] C. Smith, Performance Engineering of Software Systems. Reading, Mass.: Addison Wesley, 1990.
[6] J.L. Peterson, Petri Net Theory and the Modeling of Systems.Englewood Cliffs, N.J.: Prentice Hall, 1981.
[7] CCITT Specification and Description Language (SDL). Recommendation A.100, Fascicle X.1-S.5, CCITT Blue Book, Int’l Telecommunications Union, Geneva, 1989.
[8] R. Milner, A Calculus of Communicating Systems. Berlin: Springer Verlag, vol. 92, 1980.
[9] C.A.R. Hoare, Communicating Sequential Processes, Prentice Hall, Englewood Cliffs, N.J., 1985.
[10] SES/Workbench Manual.Austin, Tex.: Scientific and Engineering Software, Inc., Feb. 1992.
[11] W. Chu,C-M Chi,, and K.K. Leung,“Task response time for real-timedistributed systems with resource contentions,” IEEE Trans. on Software Engineering, Oct. 1991.
[12] D. Peng and K. G. Shin,“Modeling of concurrent task execution in a distributed system for real-time control,”IEEE Trans. Comput., vol. C-36, pp. 500–516, Apr. 1987.
[13] A. Thomasian and P.F. Bay, "Analytic Queueing Network Models for Parallel Processing of Task Systems," IEEE Trans. Computers, vol. 35, no. 12, pp. 1,045-1,054, Dec. 1986.
[14] C.M. Woodside,E.M. Hagos,E. Neron,, and R.J.A. Buhr,., “CAEDE performance analysis tool,” Proc. First Int’l Symp. Environments and Tools for Ada (SETA1),Los Angeles, Calif., Apr. 1990.
[15] R.J.A. Buhr,G.M. Karam,C.M. Woodside,R. Casselman,R.G. Franks,H.J. Scott,, and D. Bailey,“TimeBench: A CAD tool for real-time system design,” Proc. Second Int’l Symp. Environments and Tools for Ada (SETA2),Washington, D.C., Jan. 1991.
[16] H. Beilner,J. Mater,, and N. Weissenberg,“Towards a performance modeling environment: News on HIT,” Modeling Techniques and Tools for Computer Performance Evaluation.New York: Plenum Press, pp. 57-75, 1989.
[17] V. Vetland,P. Hughes,, and A. Solvberg,“Improved parameter capture forsimulation based on composite work models of software,” Proc. Summer Computer Simulation Conf., July 1993.
[18] A.I. Wasserman,“Tool integration in software engineering environments,” Software Engineering Environments. Springer-Verlag, 1989.
[19] C.M. Woodside, “Throughput Calculation for Basic Stochastic Rendezvous Networks,” Performance Evaluation, vol. 9, pp. 143-160, 1989.
[20] P. Heidelberger and K.S. Trivedi,“Analytic queueing models for programswith internal concurrency,” IEEE Trans. on Computers, vol. 32, no. 1, pp. 73-82, Jan. 1983.
[21] R. Karp and R. Miller,“Properties of a model for parallel computations:Determinacy, termination, queueing,” SIAM J. of Applied Math., vol. 14, no. 6, pp. 1,390-1,411, Nov. 1966.
[22] D.J. Hatley and I.A. Pirbhai,Strategies for Real-Time System Specification, Dorset House, 1987.
[23] S.S. Yau and M.U. Caglayan,“Distributed software system designrepresentation using modified Petri Nets,” IEEE Trans. on Software Engineering, vol. 9, no. 6, Nov. 1983.
[24] Design/CPN Manual.Cambridge, Mass.: Meta Software Corporation, 1992.
[25] D. Harel, “Statecharts: A Visual Approach to Complex Systems,” Science of Computer Programming, Vol. 8, No. 3, pp. 231–274, 1987.
[26] O.S.I., “LOTOS: A formal description technique based on temporal orderingof observational behavior,” Int’l Organization for Standardization,Information Processing Systems, Open Systems Interconnection, vol. ISO8807, 1988.
[27] E.D. Lazowska, J. Zahorjan, G.S. Graham, and K.C. Sevcik, Quantitative System Performance, Prentice Hall, pp 64-66, 1984.
[28] R. Jain,The Art of Computer Systems Performance Analysis. John Wiley&Sons, 1991.
[29] QNAP2: Performance Evaluation of Queuing Systems, New User’s Guide. Greenbelt, Md.: Techno-Sciences, Inc., Feb. 1991.
[30] E.A. MacNair and C.H. Sauer,Elements of Practical Performance Modeling.Englewood Cliffs, N.J.: Prentice Hall, 1985.
[31] E. de Souza e Silva,S.S. Lavenberg,, and R.R. Muntz., “A perspective oniterative methods for the approximate analysis of closed queueingnetworks,” G. Iazeolla, P.J. Courtois, and A Hordijk, eds., Math. Computer Performance and Reliability.New York: Elsevier Science, 1984.
[32] C.M. Woodside,J.E. Neilson,D.C. Petriu,, and S. Majumdar,The Rendezvous Network Model for Performance Synchronous MultiTasking DistributedSoftware. SCE-89-8, Mar. 1989.
[33] C.M. Woodside and Y. Li,“Performance Petri net analysis of communications protocol software by delay-equivalent aggregation,” Fourth Int’l Workshop Petri Nets and Performance Models, pp. 64-73,Melbourne, Australia, Dec.2-5, 1991.
[34] I. Jacobson,M. Christerson,P. Jonsson,, and G. Overgaard,Object-OrientedSoftware Engineering: A Use Case Driven Approach. Addison-Wesley, 1992.
[35] G. Chiola, M. Ajmone Marsan, G. Balbo, and G. Conte, "Generalized Stochastic Petri Nets: A Definition at the Net Level and Its Implications," IEEE Trans. Software Eng., vol. 19, no. 2, pp. 89-107, Feb. 1993.
[36] M.A. Marsan,G. Balbo,G. Chiola,, and G. Conte,“Modeling software architecture of a prototype parallel machine,” Proc. 1987 SIGMETRICS Conf.,Banff, Alberta, Canada, May 1987.
[37] R.J.A. Buhr and R.S. Casselman,High-Level Design of Object-Oriented andReal-Time Systems: A Unified Approach with Use Case Maps. Prentice Hall, 1995.

Index Terms:
Software design, software performance engineering, software dynamics, paths in software.
C.m. Woodside, "A Three-View Model for Performance Engineering of Concurrent Software," IEEE Transactions on Software Engineering, vol. 21, no. 9, pp. 754-767, Sept. 1995, doi:10.1109/32.464545
Usage of this product signifies your acceptance of the Terms of Use.