DOI QR코드

DOI QR Code

Scenario-Based Implementation Synthesis for Real-Time Object-Oriented Models

실시간 객체 지향 모델을 위한 시나리오 기반 구현 합성

  • 김세화 (서울대학교 전기컴퓨터공학부) ;
  • 박지용 (서울대학교 전기컴퓨터공학부) ;
  • 홍성수 (서울대학교 전기컴퓨터공학부)
  • Published : 2005.12.01

Abstract

The demands of increasingly complicated software have led to the proliferation of object-oriented design methodologies in embedded systems. To execute a system designed with objects in target hardware, a task set should be derived from the objects, representing how many tasks reside in the system and which task processes which event arriving at an object. The derived task set greatly influences the responsiveness of the system. Nevertheless, it is very difficult to derive an optimal task set due to the discrepancy between objects and tasks. Therefore, the common method currently used by developers is to repetitively try various task sets. This paper proposes Scenario-based Implementation Synthesis Architecture (SISA) to solve this problem. SISA encompasses a method for deriving a task set from a system designed with objects as well as its supporting development tools and run-time system architecture. A system designed with SISA not only consists of the smallest possible number of tasks, but also guarantees that the response time for each event in the system is minimized. We have fully implemented SISA by extending the ResoRT development tool and applied it to an existing industrial PBX system. The experimental results show that maximum response times were reduced $30.3\%$ on average compared to when the task set was derived by the best known existing methods.

내간형 시스템이 제공하는 기능이 다양해지고 그 구조가 복잡해짐에 따라, 이들 시스템을 설계하는 데에 객체 지향 설계 방법론이 널리 사용되고 있다. 객체로 설계된 시스템을 대상 하드웨어에서 수행시키기 위해서는 객체들로부터 태스크 집합을 유도해야 하는데, 여기에 몇 개의 태스크가 존재하며 각 태스크가 어떤 객체들로 도착한 어떤 이벤트를 처리하느냐에 따라 시스템의 응답성이 크게 좌우된다. 그럼에도 불구하고 객체와 태스크의 상이함 때문에 최적의 태스크 집합을 유도하는 것은 매우 어려운 일이며, 그로 인해 지금까지는 여러 태스크 집합을 반복적으로 시도해 보는 것이 보편적인 방법이었다. 본 논문에서는 이 문제를 해결하는 Scenario-based Implementation Synthesis Architecture(SISA)를 제안한다. SISA는 객체로 설계된 시스템에서 태스크 집합을 유도하는 방법, 그리고 이를 지원하는 개발 도구와 런타임 시스템 아키텍처를 총칭한다. 이를 이용하여 개발된 시스템은 가능한 적은 개수의 태스크들로 이루어져 있으면서도 시스템의 각 이벤트에 대한 응답 시간이 최소임이 보장된다. 우리는 UML 2.0을 모델링 언어로 사용하는 개발도구인 ResoRT를 확장하여 SISA를 구현했으며, 기 개발된 산업용 PBX(사설교환기) 시스템에 이를 적용했다 이 시스템의 성능 평가 결과, 지금까지 알려진 최선의 태스크 유도 방식을 이용하여 개발되었을 때에 비해 ,시스템의 최대 응답 시간이 평균 $30.3\%$ 단축된다는 것을 확인할 수 있었다.

Keywords

References

  1. R. Alur, G.J. Holzmann, and D. Peled, 'An Analyser for Message Sequence Charts,' Proceedings of Second Int'l Conf. Tools and Algorithms for the Construction and Analysis of Systems (TACAS '96), pp.35-48, 1996
  2. ARTiSAN Software Tools Incorporation. Real-Time Studio, http://www.artisansw.com
  3. M. Awad, J. Kuusela, and J. Ziegler, 'Object-Oriented Technology for Real-Time Systems: A Practical Approach Using OMT and Fusion,' Prentice Hall, 1996
  4. S. Balsamo, A. D. Marco, P. Inverardi, and M. Simeoni, 'Model-Based Performance Prediction in Software Development: A Survey,' IEEE Transactions on Software Engineering, pp.295-310, Vol.30, No.5, 2004 https://doi.org/10.1109/TSE.2004.9
  5. A. Burns and A. Wellings, 'Real-Time Systems: Specification, Verification, and Analysis,' chapter Advanced Fixed Priority Scheduling, pp.32-65, Prentice Hall, 1996
  6. J. M. Carroll, R. L. Mack, S. P. Robertson, and M. B. Rosson, 'Binding Objects to Scenarios of Use,' International Journal of Human-Computers. Stud., Vol.41, No.1/2, pp.243-276, 1994 https://doi.org/10.1006/ijhc.1994.1058
  7. J. M. Carroll, Ed., 'Scenario-Based Design: Envisioning Work and Technology in System Development,' John Wiley and Sons, 1995
  8. B. P. Douglass, 'Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks and Patterns,' Addison-Wesley, 1999
  9. B. P. Douglass, 'Real-Time UML: Developing Efficient Objects for Embedded Systems,' Addison-Wesley, 1999
  10. D. Galran, L. Cai, and R. L. Nord, 'A Transformational Approach to Generating Application Specific Environments', Proceedings of ACM SIGSOFT Symposium of Software Development Environment, pp.68-77, 1992 https://doi.org/10.1145/142868.142917
  11. D. Gac.drean and P. Freedman, 'Temporal Analysis and Object-Oriented Real-Time Software Development: A Case Study with ROOM/Objectime,' Proceedings of IEEE Real-Time Systems Symposium, pp.110-119, 1996 https://doi.org/10.1109/RTTAS.1996.509528
  12. H. Gomaa, 'Designing Concurrent, Distributed, and Real-Time Applications with UML,' Addison-Wesley Longman, 2000
  13. G. Gullekson and B. Selic, Design Patterns for Real-Time Software, Proceedings of Embedded Systems Conference West, 1996
  14. W. Ho, J. jezequel, A. Guennec, and F. Pennaneac'h, 'UMLAUT: An Extendible UML Transformation Framework,' Proceedings of Automated Software Engineering (ASE'99), pp.275-278, 1999 https://doi.org/10.1109/ASE.1999.802320
  15. IAR Systems Incorporation, visualSTATE, www.iar.com
  16. IBM Rational Software Corporation, 'Rational Rose Real Time User Guide: Revision 2001.03.00,' 2000
  17. I-Logix Incorporation. Rhapsody tools. http//www.ilogix.com
  18. Institute for Electrical and Electronic Engineers and The Open Group, Base Specifications Issue 6, IEEE Std. 1003.1 (POSDIX), 2004 Edition, System Interlaces volume, 2004
  19. H. Kaindl, 'A Design Process Based on a Model Combining Scenarios with Goals and Functions,' IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans, Vol.30, No.5, pp.537-551, 2000 https://doi.org/10.1109/3468.867861
  20. G. Karsai, J. Sztipanovits, and H. Franke, 'Towards Specification of Program Synthesis in Model-Integrated Computing,' Proceedings of IEEE ECBS Conference, pp. 226-233, 1998
  21. I. Kru' ger, R. Grosu, P. Scholz, and M. Broy, 'From MSCs to Statecharts,' Distributed and Parallel Embedded Systems, F.J. Rammig, ed., Kluwer Academic Publishers, pp.61-71, 1999
  22. A. Larnsweerde and L. Willemet, 'Inferring Declarative Requirements Specifications from Operational Scenarios,' IEEE Transactions on Software Engineering, Vol.24 , No.4, pp.1089-1114, 1998 https://doi.org/10.1109/32.738341
  23. D. Milicev, 'Automatic Model Transformations Using Extended UML Object Diagrams in Modeling Environments,' IEEE Transaction on Software Engineering, Vol.28, No.4, pp.413-431, 2002 https://doi.org/10.1109/TSE.2002.995438
  24. J. Mukerji and J. Miller, 'Model Driven Architecture (MDA) Guide Version 1.0.1' OMG Document Number: omg/200306-01, 2003
  25. Object Management Group, 'UML Profile for Schedulability, Performance, and Time,' OMG Document ptc/2003-09-01, http://www.omg.org/cgi-bin/doc?ptc/2002-09-03, 2003
  26. Object Management Group. Unified Modeling Language (UML), version 2.0 (under finalization), OMG Documentation, http://www.omg.org/technology/ documents/modeling_spec_catalog.htm#uml, 2003
  27. C. Potts, 'Using Schematic Scenarios to Understand User Needs,' Proceedings of Symposium on Designing Interactive Systems: Processes, Practices, Methods, and Techniques (DIS '95). MI: ACM, pp.247-256, August, 1995 https://doi.org/10.1145/225434.225462
  28. C. Rolland, C. Souveyet, and C. Ben Achour, 'Guiding Goal Modeling Using Scenarios,' IEEE Transactions on Software Engineering, Vol.24, pp.1055-1071, 1998 https://doi.org/10.1109/32.738339
  29. E. Rudolph, P. Graubmann, andJ. Grabowski, 'Tutorial on Message Sequence Charts '96,' Proceedings of IFIP TC6 WG6.1 Int'l Conf. Formal Description Techniques (FORTE '96), pp.1629-1641, 1996
  30. B. Selic, G. Gullekson, and P. T. Ward, 'Real-Time Object-Oriented Modeling,' John Wesley and Sons, 1994
  31. M. Saksena, P. Freeman, and P. Radziewicz, 'Guidelines for Automated Implementation of Executable Object Oriented Models for Real-Time Embedded Control Systems,' Proceedings of IEEE Real-Time Systems Symposium, pp.240-251, 1997 https://doi.org/10.1109/REAL.1997.641286
  32. M. Saksena, P. Karvelas, and Y. Wang. 'Automatic Synthesis of Multi-tasking Implementations from Real-Time Object-Oriented Models,' Proceedings of IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, pp.360-367, 2000 https://doi.org/10.1109/ISORC.2000.839552
  33. M. Saksena and P. Karvelas. 'Designing for Schedulability: Integrating Schedulability Analysis with Object-Oriented Design,' Proceedings of Euromicro Conference on Real-Time Systems, pp.101-108, 2000 https://doi.org/10.1109/EMRTS.2000.853997
  34. M. Saksena, A. Ptak, P. Freedman, and P. Rodziewicz. 'Schedulability Analysis for Automated Implementations of Real-Time Object-Oriented Models,' Proceedings of IEEE Real-Time Systems Symposium, pp.92-102, 1998 https://doi.org/10.1109/REAL.1998.739734
  35. C. Simonyi, 'Intentional Programming-Innovation in the Legacy Age,' International Federation for Information Processing Work Group 2.1, http://research.microsoft.com/ip, June, 1996
  36. Telelogic Corporation. TAU, http://www.telelogic.com
  37. P.P. Texel and C.B. Williams, 'Use Cases Combined with Booch, OMT, and UML' Prentice-Hall, 1997
  38. S. Uchitel, J. Kramer, and J. Magee, 'Synthesis of Behavioral Models from Scenarios,' IEEE Transactions on Software Engineering, Vol.29, No.2, pp.99-115, 2003 https://doi.org/10.1109/TSE.2003.1178048
  39. Y. Wang and M. Saksena, 'Scheduling Fixed Priority Tasks with Preemption Threshold,' Proceedings of IEEE Real-Time Computing Systems and Applications Symposium, pp. 328- 335, 1999 https://doi.org/10.1109/RTCSA.1999.811269
  40. K.Weidenhaupt, K. Pohl, M. Jarke, and P. Haumer, 'Scenarios in System Development: Current Practice,' IEEE Software, pp.33-45, 1998 https://doi.org/10.1109/52.663783
  41. J. Whittle and J. Schumann, 'Generating Statechart Designs from Scenarios,' Proceedings of International Conference on Software Engineering (lCSE '00), pp.314-323, 2000 https://doi.org/10.1109/ICSE.2000.870422
  42. J. Zalewski, Real-Time Software Architectures and Design Patterns: Fundamental Concepts and Their Consequences - 키note Address, Proceedings of 24th lFAC/IFIP Workshop on Real-Time Programming, 1999