Abstract
We present and discuss a tool that can estimate the worst-case memory usage of interacting software components. The tool applies formal analysis based on Coloured Petri nets (CPN). For a given set of interaction scenarios, the tool calculates a state space of a CPN model and finds a path, which corresponds to a worst-case memory usage interleaving of the events in the scenarios. To hide the formal analysis from the users of the tool, IBM Rational Rose is used as front-end to specify scenarios as annotated UML sequence diagrams, and Microsoft Excel is used as back-end to present the analysis results.
Similar content being viewed by others
References
Astesiano, E., Reggio, G.: Towards a well-founded UML-based development method. In: Proceedings of 1st Software Engineering and Formal Methods Conference, pp. 102–115, Brisbane. IEEE, Los Alamitos (2003)
Bjørner, D., George, C.W., Haxthausen, A.E., Madsen, C.K., Holmslykke, S., Penicka, M.: “UML-ising” Formal techniques. In: Proceedings of Workshop on SoftSpez Final Report (at ETAPS 2004), vol. 3147 of LNCS, pp. 423–450, Barcelona (2004)
Clements P., Kazman R., Klein M. (2002). Evaluating Software Architecture: Methods and Case Studies. Addison-Wesley, Reading
Damm W., Harel D. (2001). LSCs: breathing life into message sequence charts. Formal Methods Syst. Des. 19:45–80
de Jonge, M., Muskens, J., Chaudron, M.: Scenario-based prediction of run-time resource consumption in component-based software systems. In: Proceedings of 6th ICSE Workshop on Component-Based Software Engineering: Automated Reasoning and Prediction, Portland, Oregon (2003)
Graaf B., Lormans M., Toetenel H. (2003). Embedded software engineering: the state of the practice. IEEE Softw. 20(6): 61–69
Harel D. (1987). Statecharts: A visual formalism for complex systems. Sci. Comput. Program. 8:231–274
Harel D., Marelly R. (2003). Come, Let’s Play: Scenario-based Programming Using LSCs and the Play-Engine. Springer, Berlin Heidelberg New York
Harrison R. (2003). Symbian OS C++ for Mobile Phones. Wiley, New York
Henderson-Sellers B. (2005). UML – the good, the bad or the ugly? Perspectives from a panel of experts. Int. J. Softw. Syst. Model. 4(1):4–13
Hoosier, M., Hatcliff, J., Robby, Dwyer, M.B.: A case study in domain-customized model checking for real-time component software. In: Proceedings of 1st International Symposium on Leveraging Applications of Formal Methods (ISoLA), pp. 261–268, Paphos (2004)
Jensen, K.: Coloured Petri nets – basic concepts, analysis methods and practical use. Volume 1, Basic concepts. Monographs in Theoretical Computer Science. An EATCS Series. Springer, Berlin Heidelberg New York (1992)
Kazman R., Carriere S., Woods S. (2000). Toward a discipline of scenario-based architectural engineering. Ann. Softw. Eng. 9:5–33
Kristensen L.M., Christensen S., Jensen K. (1998). The practitioner’s guide to coloured Petri nets. Int. J. Softw. Tools Technol. Transf. 2(2):98–132
Krüger, I.H.: Modeling and synthesis with MSC extensions for broadcasting, overlapping, preemptive, and triggered collaborations. In: Proceedings of 2nd International Workshop on Scenarios and State Machines (at ICSE’03), Portland (2003)
Lorentsen, L., Tuovinen, A.-P., Xu, J.: Modelling of features and feature interactions in nokia mobile phones using coloured Petri nets. In: Proceedings of 23rd Petri Nets Conference, vol. 2360 of LNCS, pp. 294–313, Adelaide Springer, Berlin Heidelberg New York (2002)
Milner R., Tofte M., Harper R., MacQueen D. (1997). The Definition of Standard ML. MIT Press, Cambridge
Neill C.J., Laplante P.A. (2003). Requirements engineering: the state of the practice. IEEE Softw. 20(6):40–45
Noble J., Weir C., Bibby D. (2000). Small Memory Software: Patterns for Systems with Limited Memory. Addison-Wesley, Reading
Paul, R.A., Tsai, W.T., Mikell, J.S.: Rapid simulation evaluation from scenario specifications for command and control systems. In: Proceedings of 2004 CCRT- Command and Control Research and Technology Symposium, San Diego (2004)
Reussner, R.H., Küster-Filipe, J., Poernomo, I.H., Shukla, S.: Report on the Workshop on Formal Foundations of Embedded Software and Component-based Software Architectures (FESCA). EASST Newsletter, June (2004). Vol. 8
Rumbaugh J., Jacobson I., Booch G. (1999). The Unified Modeling Language Reference Manual. Addison Wesley, Reading
Verhoef, M., Wandeler, E., Thiele, L., Lieverse, P.:P System architecture evaluation using modular performance analysis – a case study. In: Proceedings of 1st International Symposium on Leveraging Applications of Formal Methods (ISoLA), pp. 209–220, Paphos (2004)
Xu, J.: Evaluating and balancing reliability and performance properties of software architecture using formal modeling techniques. In: Proceedings of the 30th IEEE/NASA Software Engineering Workshop, Columbia, IEEE CS press (2006)
Xu J., Kuusela J. (1998). Analyzing the execution architecture of mobile phone software with coloured Petri nets. Int. J. Softw. Tools Technol. Transf. 2(2):133–143
CPN Tools. www.daimi.au.dk/CPNtools
IBM Rational Rose. www-136.ibm.com/developerworks/ rational/products/rose
1st International Symposium on Leveraging Applications of Formal Methods. sttt.cs.uni-dortmund.de/isola2004/ dflt_ns/index.html
Microsoft Office Online. office.microsoft.com
ITU-T (2001) Recommendation Z.120: Message Sequence Chart (MSC). Geneva. www.itu.int/ITU-T/studygroups/ com17/languages/Z.120_1199.pdf
3rd International Conference on Software Engineering and Formal Methods. sefm2005.uni-koblenz.de/
Sixth International Conference on Formal Engineering Methods. research.microsoft.com/conferences/icfem2004/
OMG’s UML Resource Page.www.uml.org
UML Profile for Schedulability, Performance, and Time Specification. www.omg.org/technology/documents/formal/schedulability
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Jørgensen, J.B., Christensen, S., Tuovinen, AP. et al. Tool Support for Estimating the Memory Usage of Mobile Phone Software. Int J Softw Tools Technol Transfer 8, 531–545 (2006). https://doi.org/10.1007/s10009-006-0012-z
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-006-0012-z