DOI QR코드

DOI QR Code

A Strategy for Validation in Preliminary Design Stage using The Simulation of Model Behavior

모델 행동 양식의 시뮬레이션을 이용한 초기 디자인 검증 방법

  • 신승훈 (아주대학교 정보통신공학과) ;
  • 박승규 (아주대학교 정보 및 컴퓨터공학부) ;
  • 최경희 (아주대학교 정보 및 컴퓨터공학부)
  • Received : 2009.12.21
  • Accepted : 2010.03.08
  • Published : 2010.03.31

Abstract

Most part of errors in software development process are included during the stage of requirements definition and design. And correction or elimination of errors from those stages requires much more efforts and costs than those from the later part of software development process. However, despite of the importance of the validation of requirement definition and design stages, several kinds of problem have made it hard to be done successfully. Therefore, in this paper, we introduce a novel validation process for the preliminary design stage. The validation process is based on simulations of model and it can be used to validate requirements and model simultaneously. Models in the validation process will take only the behavior of software and be built on Ptolemy framework. The usability of our validation process is confirmed with a case study over DNS system environment. And the result of simulation shows well-known errors or vulnerabilities can be found with simulations of model which has the behavior of software. This means our validation process can be used as a process to validate requirements and models during the early stage of software development process.

소프트웨어 개발 프로세스에서 발생되는 오류의 대부분은 요구사항 정의와 디자인 단계에서 비롯된다. 또한 이들 단계에서 포함된 오류의 수정 및 제거는 이후 단계에서 포함된 오류의 수정에 비해 훨씬 많은 노력과 비용을 요구한다. 하지만 요구사항과 디자인된 모델의 검증은 매우 중요한 작업임에도 불구하고 다양한 문제점들로 인해 성공적으로 수행되고 있지 못하다. 따라서 본 논문에서는 초기 디자인 단계에서 요구사항 및 모델의 검증 작업을 동시에 수행할 수 있는 모델의 시뮬레이션을 통한 검증 절차를 제안한다. 이 때 작성되는 모델은 Ptolemy 상에 소프트웨어의 행동 양식을 바탕으로 작성된다. 제안된 방법을 DNS 시스템 환경에 적용하여 사용 가능성을 확인하였으며, 시뮬레이션 결과에 따르면 행동 양식을 반영한 모델의 시뮬레이션을 통해 기존에 알려진 시스템의 내재된 오류 혹은 취약성을 발견 가능함이 확인되었다. 이는 제안된 방법이 소프트웨어 개발 프로세스 초기에서 요구사항과 모델을 검증하는 절차로 이용될 수 있음을 의미한다.

Keywords

References

  1. Brooks, C., Lee, E.A., Liu, X., Neuendorffer, S., Zhao, Y., and Zheng, H., Heterogeneous Concurrent Modeling and Design in Java, vol. 1-3, UCB/EECS-2008-28, 29, 37, EECS Dept. UC Berkeley, 2008.
  2. Cruickshank, K. J., Michael, J. B., and Shing, M., "A Validation Metrics Framework for Safety-Critical Software- Intensive Systems," Proc. of the 2009 IEEE International Conference on System of Systems Engineering, NM, USA, pp. 1-8, 2009.
  3. Glinz, M., Berner, S., and Joos, S., "Object oriented modeling with ADORA." Information Systems, vol. 27, Issue 6, pp. 425-444, 2002. https://doi.org/10.1016/S0306-4379(02)00015-7
  4. Householder, A and King, B, Securing an Internet Name Server, $CERT^{{\circledR}}$Coordination Center, 2002.
  5. IEEE, Glossary of software engineering terminology, IEEE Std. 610.12-1990, IEEE, pp. 80, 1990.
  6. IEEE, Guide for developing system requirements specifications, IEEE Std. 1233-1998, IEEE, 1998.
  7. IEEE, Software verification and validation, IEEE Std. 1012-2004, pp. 5-11, 2004.
  8. Mogyorodi, G., "Requirement-based Testing: An Overview," Proc. of the 39th International Conference and Exhibition on Technology of Object-oriented Languages and Systems, CA, USA, pp. 286-295, 2001.
  9. Security Associates Institute, Attacking the DNS Protocol- Security Paper v2, SAI, 2003.
  10. Seybold, C. and Meier, S., "Simulation-based Validation and Defect Localization for Evolving, Semi-Formal Requirements Models," Proc. of the 12th Asia-Pacific Software Engineering Conference, Taipei, Taiwan, pp. 408-420, 2005.
  11. Tsai, W., Chen, Y., and Paul, R., "Specification-Based Verification and Validation of Web Services and Serviceoriented Operating Systems," Proc. of the 10th IEEE International Workshop on Object-oriented Real-Time Dependable Systems, AZ, USA, pp. 139-147, 2005.
  12. US-CERT, Multiple DNS implementations vulnerable to cache poisoning, Vulnerability Note VU#800113, United States Computer Emergency Readiness Team, 2008.