The Methodology for Performance Prediction in Architectural Design Stage of Software using Queuing Network Model

큐잉 네트웍 모델을 이용한 소프트웨어 아키텍처 설계 단계에서의 성능 예측 방법론

  • 윤현상 (성균관대학교 전자전기컴퓨터공학과) ;
  • 장수현 (성균관대학교 전자전기컴퓨터공학과) ;
  • 이은석 (성균관대학교 전자전기컴퓨터공학과)
  • Published : 2007.08.15

Abstract

It is important issue for software architects to estimate performance of software in the early phase of the development process due to the need to verify non-functional requirements and estimation of performance in various stages of architectural design. In order to analyze performance of software, there are many approaches to translate software architecture represented by Unified Modeling Language, into analytical models. However, in the development of agent-based systems, these approaches ignore or simplify the crucial details of the underlying performance of the agent platform. In this paper, we propose performance prediction methodology for agent based system using formal semantic descriptions, and then, we transform the descriptions into queuing network model which model reflects performance of hardware and software platform. We prove the accuracy of proposed methodology using prototype implementation. The accuracy is summarized at 80%.

소프트웨어의 개발 초기 단계에서 성능을 예측하는 기법은, 비 기능적 요구사항의 검증 및 소프트웨어의 성능을 향상시키기 위해 중요한 이슈가 되었다. 이를 위해 소프트웨어의 아키텍처를 수학적인 분석 모델로 변환시키는 기법들이 등장하게 되었다. 그러나 에이전트 기반 시스템을 개발하는 경우, 기존방법들은 에이전트 플랫폼의 성능을 정확하게 반영하지 못하기 때문에, 정확한 성능 예측 및 분석에 적용 할 수 없다. 본 논문에서는 정규화된 의미 기술언어를 이용하여 에이전트 기반 시스템 아키텍처의 성능을 예측하는 기법을 제안한다. 본 방식은 UML로 기술된 시스템의 아키텍처를 하드웨어 및 소프트웨어 플랫폼의 성능이 반영된 분석 모델로 변환시킨다. 성능 예측의 정확도를 평가하기 위해, 과거에 연구했던 전자상거래 시스템을 확장한 유비쿼터스 상거래 시스템 시나리오를 기반으로 프로토타입을 구현하여 성능을 측정하고 생성된 분석 모델로부터 측정된 성능 결과와 비교하였다. 그 결과 약 80%의 정확도를 보였다.

Keywords

References

  1. Simonetta Balsamo, Antinisca Di Marco, Paola Inverardi, Marta Simeonl, Model-Based Performance Prediction in Software Development: A Survey, IEEE TRANSACTION ON SFTWARE ENGINEERING, Vol.30, No.5, MAY (2004)
  2. G. Frank, A. Hubbard, S. Majumdar, D.C. Petrju, J. Rolla, and C.M. Woodside, A Toolset for Performance Engineering and Software Design of Client-Server Systems, Performance Evaluation, Vol.24, No.1-2, pp. 117-135, (1995) https://doi.org/10.1016/0166-5316(95)96869-T
  3. J.A. Rolia and K.C. sevcik, 'The Method of Layers,' IEEE TRANSACTION ON SFTWARE ENGINEERING, Vol.21, No.8, pp. 682-668, (1995) https://doi.org/10.1109/32.403792
  4. C.M. Woodside, C. Hrischuk, B. Selic, and S. Brayarov, 'Automated Performance Modeling of Software Generated by a Design Environment,' Performance Evaluation, Vol.45, pp. 107-123, (2001) https://doi.org/10.1016/S0166-5316(01)00033-5
  5. K.S. Trivedi, Probability and Statistics with Reliability, Queuing, and Compter Science Application, John Wiley and Sons, (2001)
  6. V. Cortellessa and R. Mirandola, 'Deriving a Queueing Network Based Performance Model from UML Diagrams,' ACM Proc. International Workshop Software and Performance, pp. 58-70, (2000)
  7. C.U. Smith and L.G. Williams, 'PASASM: A Method for the Performance Assessment of Software Architectures,' Proc. Third Int'l Workshop Software and Performance (WOSP'02) pp. 179-189
  8. OMG, UML Profile for Schedulability, Performance, and Time Specification, January (2005)
  9. Marco Scarpa, Antonio Puliafito, Massimo Villari, and Angelo Zaia 'A Modeling Technique for the Performance Analysis of Web Searching Applications,' IEEE Trans. Software Eng., Vol.16, No.11, pp. 1339-1356, November (2004)
  10. Eunseok Lee and Jionghua Jin, 'A Next Generation Intelligent Mobile Commerce System,' LNCS 3026, Springer-Verlag, pp. 320-331, Apr. (2004)