Performance Validation of Mobile Software Architectures

  • Vincenzo Grassi
  • Vittorio Cortellessa
  • Raffaela Mirandola
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2459)


Design paradigms based on the idea of code mobility have been recently introduced, where components of an application may (autonomously or upon request) move to different locations, during the application execution. Besides, software technologies are readily available (e.g. Javabased), that provide tools to implement these paradigms. Based on mobile code paradigms and technologies, different but functionally equivalent software architectures can be defined and it is widely recognized that, in general, the adoption of a particular architecture can have a large impact on quality attributes such as modifiability, reusability, reliability, and performance. Hence, validation against specific attributes is necessary and claims for a careful planning of this activity. Within this framework, the goal of this tutorial is twofold: to provide a general methodology for the validation of software architectures, where the focus is on the transition from the modeling of software architectures to the validation of non-functional requirements; to substantiate this general methodology into the specific case of software architectures exploiting mobile code.


Unify Modeling Language Mobile Agent Software Architecture Markov Decision Process Process Algebra 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    S. Alhir, “The true value of the Unified Modeling Language”, Distributed Computing, 29–31, July 1998.Google Scholar
  2. 2.
    M. Baldi, G.P. Picco “Evaluating the tradeoffs of mobile code design paradigms in network management applications” in Proc. 20th Int. Conf. on Software Engineering (ICSE 98), (R. Kemmerer and K. Futatsugi eds.), Kyoto, Japan, Apr. 1998.Google Scholar
  3. 3.
    S. Balsamo, M. Simeoni “Deriving Performance Models from Software Architecture Specifications” Res. Rep. CS-2001-04, Dip. di Informatica, Università di Venezia, Feb. 2001; ESM 2001, SCS, European Simulation Muticonference 2001, Prague, 6–9 June 2001.Google Scholar
  4. 4.
    M. Barbeau “Transfer of mobile agents using multicast: why and how to do it on wireless mobile networks” Tech. Rep. TR-00-05, School of Computer Science, Carleton University, July 2000.Google Scholar
  5. 5.
    L. Bass, P. Clements, R. Kazman, Software Architectures in Practice, Addison-Wesley, New York, NY, 1998.Google Scholar
  6. 6.
    G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User Guide, Addison Wesley, New York, 1999.CrossRefGoogle Scholar
  7. 7.
    L. Cardelli, A.D. Gordon “Mobile ambients” Foundations of Software Science and Computational Structures (M. Nivat ed.), LNCS 1378, Springer-Verlag, 1998, pp. 140–155CrossRefGoogle Scholar
  8. 8.
    N. Carriero, D. Gelernter “Linda in context” Communications of the ACM, vol. 32, no.4, 1989, pp. 444–458.CrossRefGoogle Scholar
  9. 9.
    T.-H. Chia, S. Kannapan “Strategically mobile agents” in Proc. 1st Int. Conf. on Mobile Agents (MA’ 97), Springer-Verlag, 1997.Google Scholar
  10. 10.
    V. Cortellessa, R. Mirandola “PRIMA-UML: a performance validation incremental methodology on early UML diagrams” Science of Computer Programming, Elsevier Science, vol 44, n.1, pp 101–129, July 2002.zbMATHCrossRefGoogle Scholar
  11. 11.
    R. De Nicola, G. Ferrari, R. Pugliese, B. Venneri “KLAIM: a kernel language for agents interaction and mobility” IEEE Trans. on Software Engineering, vol. 24, no. 5, May 1998, pp. 315–330CrossRefGoogle Scholar
  12. 12.
    G. Ferrari, C. Montangero, L. Semini, S. Semprini “Mobile agents coordination in Mobadtl” Proc. of 4th Int. Conf. on Coordination Models and Languages (COORDINATION’00), (A. Porto and G.-C. Roman eds.), Springer-Verlag, Limassol, Cyprus, Sept. 2000.Google Scholar
  13. 13.
    A. Fuggetta, G.P. Picco, G. Vigna “Understanding code mobility” IEEE Trans. on Software Engineering, vol. 24, no. 5, May 1998, pp. 342–361.CrossRefGoogle Scholar
  14. 14.
    N. Gotz, U. Herzog, M. Rettelbach “Multiprocessor system design: the integration of functional specification and performance analysis using stochastic process algebras” in Performance Evaluation of Computer and Communication Systems (L. Donatiello and R. Nelson eds.), LNCS 729, Springer-Verlag, 1993.Google Scholar
  15. 15.
    V. Grassi, R. Mirandola, “Modeling and performance analysis of mobile software architectures in a UML framework” in ≪UML2001≫ Conference Proceedings, LNCS 2185, Springer Verlag, October 2001.Google Scholar
  16. 16.
    V. Grassi, R. Mirandola, “PRIMAmob-UML: a Methodology for Performance analysis of Mobile Software Architecture”, in WOSP 2002, Third International Conference on Software and Performance, ACM, July 2002.Google Scholar
  17. 17.
    R. Gray, D. Kotz, G. Cybenko, D. Rus “Mobile agents: motivations and state-of-the-art systems” in Handbook of Agent Technology, AAAI/MIT Press, 2001.Google Scholar
  18. 18.
    H. Hermanns, U. Herzog, J.-P. Katoen “Process algebras for performance evaluation”, Theoretical Computer Science, vol. 274, no. 1–2, 2002, pp. 43–87.zbMATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    I. Jacobson, G. Booch, J. Rumbaugh, The Unified Software Development Process, Addison-Wesley Object Technology Series, 1999.Google Scholar
  20. 20.
    R. Jain, Art of Computer Systems Performance Analysis, Wiley, New York, 1990.Google Scholar
  21. 21.
    T. Kawamura, S. Joseph, A. Ohsuga, S. Honiden “Quantitative evaluation of pairwise interactions between agents” in Joint Symp. on Agent Systems and Applications and Symp. on Mobile Agents (ASA/MA 2000), Springer LNCS 1882, pp. 192–205, 2000.Google Scholar
  22. 22.
    D. Kotz, G. Jiang, R. Gray, G. Cybenko, R.A. Peterson “Performance analysis of mobile agents for filtering data streams on wireless networks” in 3rd ACM Workshop on Modeling, Analysis and Simulation of Wireless and Mobile Systems (MSWiM 2000), Aug. 2000.Google Scholar
  23. 23.
    R. Milner, Communication and Concurrency, Prentice Hall, 1989.Google Scholar
  24. 24.
    R. Milner, Communicating and Mobile Systems: the-calculus, Cambridge Univ. Press, 1999.Google Scholar
  25. 25.
    C. Nottegar, C. Priami, P. Degano “Performance evaluation of mobile processes via abstract machines” IEEE Trans. on Software Engineering, vol. 27, no. 10, Oct. 2001, pp. 867–889CrossRefGoogle Scholar
  26. 26.
    G.P. Picco, G.-C. Roman, P.J. McCann “Reasoning about code mobility in Mobile UNITY” ACM Transactions on Software Engineering and Methodology, vol. 10, no. 3, July 2001, pp. 338–395.CrossRefGoogle Scholar
  27. 27.
    A. Puliafito, S. Riccobene, M. Scarpa “An analytical comparison of the client-server, remote evaluation and mobile agent paradigms” in 1st Int. Symp. on Agent Systems and Applications and 3rd Int. Symp. on Mobile Agents (ASA/MA 99), Oct. 1999.Google Scholar
  28. 28.
    M.L. Puterman, Markov Decison Processes, J. Wiley and Sons, 1994.Google Scholar
  29. 29.
    K. Rothermel, F. Hohl, N. Radouniklis “Mobile agent systems: what is missing?” in Distributed Applications and Interoperable Systems (DAIS 1997), 1997.Google Scholar
  30. 30.
    D. Sangiorgi “Expressing mobility in process algebras: first-order and higher-order paradigms” PhD thesis, Univ. of Edinburgh, 1992.Google Scholar
  31. 31.
    B. Selic, “Response to the omg rfp for schedulability, performance and time”, OMG document number ad/2001-06-14, June 2001.Google Scholar
  32. 32.
    C. Smith, Performance Engineering of Software Systems, Addison-Wesley, Reading, MA, 1990.Google Scholar
  33. 33.
    C. Smith, L. Williams, Performance solutions: A Practical Guide to Creating Responsive, Scalable Software, Addison Wesley, 2002.Google Scholar
  34. 34.
    J.W. Stamos, D.K. Gifford “Implementing remote evaluation” IEEE Trans. on Software Engineering, vol. 16, no. 7, July 1990, pp. 710–722.CrossRefGoogle Scholar
  35. 35.
    M. Strasser, M. Schwehm “A performance model for mobile agent systems” in Int. Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 97), vol. II, (H.R. Arabnia ed.), Las Vegas 1997, pp. 1132–1140.Google Scholar
  36. 36.
    Sun Microsystems “The Java language”, White Paper, 1994.Google Scholar
  37. 37.
    Sun Microsystems “The Java servlet API”, White Paper, 1997.Google Scholar
  38. 38.
    M. Wermelinger, J.L. Fiadeiro “Connectors for mobile programs” IEEE Trans. on Software Engineering, vol. 24, no. 5, May 1998, pp. 331–341.CrossRefGoogle Scholar
  39. 39.
    WOSP 2000, Proc. of the 2nd Int. Workshop on Software and Performance, ACM, 2000.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Vincenzo Grassi
    • 1
  • Vittorio Cortellessa
    • 2
  • Raffaela Mirandola
    • 1
  1. 1.Dipartimento di Informatica, Sistemi e ProduzioneUniversità di Roma “Tor Vergata”Italy
  2. 2.Dipartimento di InformaticaUniversità de L’AquilaItaly

Personalised recommendations