Skip to main content
Log in

A UML-based quantitative framework for early prediction of resource usage and load in distributed real-time systems

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

This paper presents a quantitative framework for early prediction of resource usage and load in distributed real-time systems (DRTS). The prediction is based on an analysis of UML 2.0 sequence diagrams, augmented with timing information, to extract timed-control flow information. It is aimed at improving the early predictability of a DRTS by offering a systematic approach to predict, at the design phase, system behavior in each time instant during its execution. Since behavioral models such as sequence diagrams are available in early design phases of the software life cycle, the framework enables resource analysis at a stage when design decisions are still easy to change. Though we provide a general framework, we use network traffic as an example resource type to illustrate how the approach is applied. We also indicate how usage and load analysis of other types of resources (e.g., CPU and memory) can be performed in a similar fashion. A case study illustrates the feasibility of the approach.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Abbreviations

ASA:

Automatic system agent

CCFG:

Concurrent control flow graph

CCFP:

Concurrent control flow path

CFP:

Control flow path

DTCCFP:

Distributed timed concurrent control flow path

LFQ:

Load forecasting query

MBLF:

Model-based load forecasting

MBPA:

Model-based predictability analysis

MBRUA:

Model-based resource usage analysis

NDD:

Network deployment diagram

PA:

Predictability analysis

DRTS:

Distributed real-time system

RUA:

Resource usage analysis

RUD:

Resource usage definition

RUM:

Resource usage measure

RUQ:

Resource usage query

SCAPS:

SCAda-based power system

SD:

Sequence diagram

SDS:

Sequence diagrams schedule

TC:

Tele-control unit

TCCFP:

Timed concurrent control flow path

UML-SPT:

UML profile for schedulability performance, and time

References

  1. Tsai J.J.P., Bi Y., Yang S.J.H., Smith R.A.W.: Distributed Real-time Systems: Monitoring, Visualization, Debugging, and Analysis. Wiley, London (1996)

    MATH  Google Scholar 

  2. Feiler, P., Lewis, B., Vestal, S.: Improving Predictability in Embedded Real-time Systems. Technical Report CMU/SEI-2000-SR-011, Carnegie Mellon Software Engineering Institute (2000)

  3. Buttazzo G., Lipari G., Abeni L., Caccamo M.: Soft Real-Time Systems: Predictability vs. Efficiency. Springer, Heidelberg (2005)

    MATH  Google Scholar 

  4. Yau, S.S., Zhou, X.: Schedulability in Model-based Software Development for Distributed Real-Time Systems. In: Proc. of Int. Workshop on Object-Oriented Real-Time Dependable Systems, pp. 45–52 (2002)

  5. Igarashi, A., Kobayashi, N.: Resource Usage Analysis. In: Proc. of Symposium on Principles of Programming Languages, pp. 331–342 (2002)

  6. Marriott, K., Stuckey, P.J., Sulzmann, M.: Resource Usage Verification. In: Proc. of Asian Symposium on Programming Languages and Systems, pp. 212–229, (2003)

  7. Cachera, D., Jensen, T., Pichardie, D., Schneider, G.: Certified Memory Usage Analysis. In: Proc. of Formal Methods Conf., pp. 91–106, (2005)

  8. Dinda, P., O’Hallaron, D.: An Extensible Toolkit for Resource Prediction In Distributed Systems, Technical Report CMU- CS-99-138, School of Computer Science, Carnegie Mellon University (1999)

  9. Dinda, P.A., O’Hallaron, D.R.: An Evaluation of Linear Models for Host Load Prediction. In: Proc. of Int. Symp. on High Performance Distributed Computing, pp. 87–96 (1999)

  10. Andreolini, M., Casolari, S.: Load Prediction Models in Web-based Systems. In: Proc. of Int. Conf. on Performance Evaluation Methodolgies and Tools, pp. 27–36 (2006)

  11. Menascé D.A., Almeida V.A.F.: Capacity Planning for Web Services: Metrics, Models, and Methods. Prentice Hall, Englewood Cliffs (2001)

    Google Scholar 

  12. Jones C.: Software change management. IEEE Comput 29(2), 80–82 (1996)

    Google Scholar 

  13. Smith C.U., Williams L.G.: Software performance engineering. In: Marciniak, J.J.(eds) Encyclopedia of Software Engineering, 2nd edn, Wiley, London (2002)

    Google Scholar 

  14. Object Management Group (OMG) UML 2.1.1 Superstructure Specification (2007)

  15. Bernardi, S., Donatelli, S., Merseguer, J.: From UML sequence diagrams and statecharts to analysable petri-net models. In: Proc. of Int. Workshop on Software and Performance, pp. 35–45 (2002)

  16. Pasaje, J.L.M., Harbour, M.G., Drake, J.M.: MAST real-time view: a graphic UML tool for modeling object-oriented real-time systems. In: Proc. of Real-Time Systems Symposium, pp. 245–256 (2001)

  17. Balsamo S., DiMarco A., Inverardi P., Simeoni M.: Model-based performance prediction in software development. IEEE Trans. Softw. Eng. 30(5), 295–310 (2004)

    Article  Google Scholar 

  18. Cortellessa V., D’Ambrogio A., Iazeolla G.: Automatic derivation of software performance models from CASE documents. Perform. Eval. 45(2–3), 81–105 (2001)

    Article  MATH  Google Scholar 

  19. Mirandola, R., Cortellessa, V.: UML based performance modeling of distributed systems. In: Proc. of the Unified Modeling Language (UML) Conference, pp. 178–193 (2000)

  20. Smith C.U., Williams L.G.: Performance Solutions. Addison-Wesley, Reading (2002)

    Google Scholar 

  21. Object Management Group (OMG) UML 2.0 Superstructure Specification (2005)

  22. Object Management Group (OMG) UML Profile for Schedulability, Performance, and Time (v1.1) (2005)

  23. Garousi, V., Briand, L., Labiche, Y.: Control flow analysis of UML 2.0 sequence diagrams. In: Proc. of the European Conf. on Model Driven Architecture-Foundations and Applications, LNCS 3748, pp. 160–174 (2005)

  24. Paltor, I.P., Lilius, J.: Digital sound recorder: a case study on designing embedded systems using the UML notation, Turku Centre for Computer Science, Finland TUCS Technical Report No. 234 (1999)

  25. Douglass B.: Doing Hard Time, Developing Real-Time Systems with UML Objects, Frameworks, and Patterns. Addison-Wesley, Reading (1999)

    Google Scholar 

  26. Herzberg, D.: UML-RT as a candidate for modeling embedded real-time systems in the telecommunication domain. In: Proc. of Int. Conf. on the Unified Modeling Language, pp. 331–338 (1999)

  27. Kabous, L., Neber, W.: Modeling hard real time systems with UML: the OOHARTS approach. In: Proc. of Int. Conf. on the Unified Modeling Language, pp. 339–355 (1999)

  28. Lanusse, A., Gerard, S., Terrier, F.: Real-rime modeling with UML: the ACCORD approach. In: Proc. of Int. Conf. on the Unified Modeling Language, pp. 319–335 (1998)

  29. Object Management Group (OMG) UML Profile for Modeling and Analysis of Real-time and Embedded Systems (MARTE), Version 1.0 (Finalization Underway). http://www.omg.org/cgi-bin/doc?ptc/2007-08-04 (2007)

  30. Hakansson, J., Mokrushin, L., Pettersson, P., Yi, W.: An analysis tool for UML models with SPT annotations. In: Int. Workshop on Specification and Validation of UML Models for Real-Time and Embedded Systems (2004)

  31. Woodside, C.M., Petriu, D.C.: Capabilities of the UML profile for schedulability performance and time (SPT). In: Workshop on the Usage of the UML profile for Scheduling, Performance and Time (2004)

  32. Petriu, D.C.: Performance analysis based on the UML SPT profile. Tutorial given at Int. Conf. on Quantitative Evaluation of Systems (2004)

  33. Douglass, B.P.: Rhapsody 5.0: Breakthroughs in Software and Systems Engineering, I-Logix Corp. whitepaper (2003)

  34. Bruegge B., Dutoit A.H.: Object-Oriented Software Engineering: Using UML, Patterns, and Java, 2nd edn. Prentice Hall, Englewood Cliffs (2003)

    Google Scholar 

  35. Haugen, Ø.: From MSC-2000 to UML 2.0—the future of sequence diagrams. In: Proc. of Int. System Design Languages (SDL) Forum, pp. 38–51 (2001)

  36. Ben-Abdallah, H., Leue, S.: Timing constraints in message sequence chart specifications. In: Proc. of Int. Conf. on Formal Description Techniques for Distributed Systems and Communication Protocols, pp. 91–106 (1997)

  37. Damm W., Harel D.: LSCs: Breathing life into message sequence charts. Formal Methods Syst. Des. 19(1), 45–80 (2001)

    Article  MATH  Google Scholar 

  38. Tindell K., Clark J.: Holistic schedulability analysis for distributed hard real-time systems 40(2–3), 117–134 (1994)

    Google Scholar 

  39. Puschner, P.P., Nossal, R.: Testing the results of static worst-case execution-time analysis. In: Proc. of IEEE Real-Time Systems Symp., pp. 134–143 (1998)

  40. Thane, H.: Monitoring, Testing and Debugging of Distributed Real-Time Systems, PhD Thesis, Royal Institute of Technology (2000)

  41. Gomaa H.: Designing Concurrent, Distributed, and Real-Time Applications with UML. Addison-Wesley, Reading (2000)

    Google Scholar 

  42. Garousi, V.: Traffic-aware stress testing of distributed real-time systems based on UML models in the presence of time uncertainty. In: Proc. IEEE Int. Conf. on Software Testing, Verification and Validation (to appear) (2008)

  43. Object Management Group (OMG) OCL 2.0 Specification (2005)

  44. Muchnick S.: Advanced Compiler Design and Implementation, First ed. Morgan Kaufmann, Los Altos (1997)

    Google Scholar 

  45. Garousi, V., Briand, L., Labiche, Y.: Control Flow Analysis of UML 2.0 Sequence Diagrams, Technical Report SCE-05-09, Carleton University, http://squall.sce.carleton.ca/pubs/tech_report/TR_SCE-05-09.pdf (2005)

  46. Byhlin, S., Ermedahl, A., Gustafsson, J., Lisper, B.: Applying static WCET analysis to automotive communication software. In: Proc. of Euromicro Conf. on Real-Time Systems, pp. 249–258 (2005)

  47. Honeywell Inc., MetaH Product Information, http://www.htc.honeywell.com/metah (1998)

  48. Garousi, V., Briand, L., Labiche, Y.: A Quantitative Framework for Predicting Resource Usage and Load in Distributed Real-Time Systems based on UML Models, Technical Report SCE-06-05, Carleton University (2006)

  49. Garousi, V.: Traffic-aware Stress Testing of Distributed Systems based on UML Models using Genetic Algorithms, PhD Thesis, Carleton University (2006)

  50. Avritzer A., Ros J.P., Weyuker E.J.: Estimating the CPU utilization of a rule-based system. ACM SIGSOFT Softw. Eng. Notes 29(1), 1–12 (2004)

    Article  Google Scholar 

  51. Wang Y.F., Hsu M.H., Chuang Y.L.: Predicting CPU Utilization by Fuzzy Stochastic Prediction. Comput. Inform. 20(1), 67–76 (2001)

    MATH  Google Scholar 

  52. Garousi, V., Briand, L., Labiche, Y.: Traffic-aware stress testing of distributed systems based on UML models. In: Proceedings of International Conference on Software Engineering, pp. 391–400 (2006)

  53. Ganesh A., O’Connell N., Wischik D.: Big Queues. Springer, Heidelberg (2004)

    MATH  Google Scholar 

  54. Rak, J.: Priority-enabled optimization of resource utilization in fault-tolerant optical transport networks. In: Proc. of Int. Conf. on High Performance Computing and Communications, pp. 863–873 (2006)

  55. Daneels, A., Salter, W.: What is SCADA? In: Proc. of Int. Conf. on Accelerator and Large Experimental Physics Control Systems, Trieste, pp. 339–343 (1999)

  56. Garousi, V., Briand, L., Labiche, Y.: Traffic-aware Stress Testing of Distributed Systems based on UML Models, Technical Report SCE-05-13, Carleton University (2005)

  57. Nico Cuppen Software, Network Traffic Monitor, http://www.nicocuppen.com (2005)

  58. Caceres R., Duffield N., Feldmann A.: Measurement and analysis of IP network usage and behaviour. IEEE Commun. Mag. 38(5), 144–151 (2000)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vahid Garousi.

Additional information

Communicated by Dr. Sebastien Gerard.

The initial work of this paper started when V. Garousi was a Ph.D. student at the Software Quality Engineering Laboratory at Carleton University.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Garousi, V., Briand, L.C. & Labiche, Y. A UML-based quantitative framework for early prediction of resource usage and load in distributed real-time systems. Softw Syst Model 8, 275–302 (2009). https://doi.org/10.1007/s10270-008-0099-7

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-008-0099-7

Keywords

Navigation