클래스 연산의 선행/후행 조건에 바탕을 둔 클래스의 상태 다이어그램 자동 구성 기법
An Automatic Construction Approach of State Diagram from Class Operations with Pre/Post Conditions
0
조회
0
다운로드
1
인용
0
참고문헌
키워드
초록
상태 다이어그램은 객체가 가질 수 있는 상태와 각 상태에서 수행 할 수 있는 전이를 사용하여 객체의 동적행위를 표현한다. 본 논문에서는 클래스 연산들의 선행/후행 조건들을 이용하여 상태다이어그램을 자동으로 생성하는 기법을 제안한다. 그리고 본 논문에서 제시한 기법을 구현하는 도구 SDAG(State Diagram Automatic Generation Tool)을 제작하였다. 추가적으로 생성된 상태 다이어그램의 복잡도를 감소시키기 위하여 연산의 종류를 고려한 상태 다이어그램 생성 방법과 생성된 다이어그램을 측정하는 방법을 제안하고 실험하였다.
Abstract
State diagrams describe the dynamic behavior of an individual object as a number of states and transitions between these states. In this paper, we propose an automated technique to the generation of a state diagram from class operations with pre/post conditions. And I also develop a supporting tool, SDAG (State Diagram Automatic Generation tool). Additionally, we propose a complexity metric and a state diagram generation approach concerning types of each operation for decreasing complexity of generated state diagram.
참고문헌 (39)
- T. S. Chow, "Testing software design modeled by finite-state machines", IEEE Trans. Software Eng., 4(3), pp.178~187 (1978)
- P. Chevalley, "Automated generation of statistical test cases from uml state diagrams", COMPSAC, pp.205~214 (2001)
- H. S. Hong, "A test sequence selection method for statecharts", Softw. Test., Verif. Reliab., 10(4), pp.203~227 (2000)
- Y. Kim, "Test cases generation from uml state diagrams", ~
- G. Antoniol, "A case study using the round-trip strategy for state-based class testing", ISSRE, pp.269~279 (2003)
- L. C. Briand, "Using simulation to empirically investigate test coverage criteria based on state- chart", ICSE, pp.86~95 (2004)
- L. C. Briand, "Assessing and improving state-based class testing: A series of experiments", IEEE Trans. Software Eng., 30(11), pp.770~793 (2004)
- A. David, "Formal verification of uml statecharts with real-time extensions", FASE, pp.218~232 (2002)
- J. van Katwijk, "Specification and verification of a safety shell with statecharts and extended timed graphs", SAFECOMP, pp.37~52 (2000)
- K. C. Kang, "Formalization and verification of safety properties of statechart specifications", APSEC, pp.16~27 (1996)
- G. Pint?r, "Runtime verification of statechart implementations", WADS, pp.148~172 (2004)
- H. J. K?hler, "Integrating UML diagrams for production control systems", ICSE ’00: Proceedings of the 22nd international conference on Software engineeering, pp.241~251 (2000), ACM Press
- I. Niaz, "Code generation from UML statecharts", SEA ’03: Proceedings of international conference on Software Engineering and Applications (2003)
- R. Knor, "Reengineering c", c++ source code by transforming state machines, 1998, 97~105
- J. C. Corbett, "Bandera: extracting finite- state models from java source code", ICSE, pp.439~448 (2000)
- N. Pywes, "Recovery of software design, state- machines, and specifications from source code", ICECCS, pp.279~288 (1996)
- C. Nebut, "Auto- matic test generation: A use case driven approach", IEEE Trans. Software Eng., 32(3), pp.140~155 (2006)
- J. Dick, "Automating the generation and sequencing of test cases from model-based specifications", FME, pp.268~284 (1993)
- M. Riebisch, "UML-based statistical test case generation", NetObject-Days, pp.394~411 (2002)
- B. Meyer, "Applying “Design by Contract”", In Computer, 25(10), pp.40~51 (1992)
- "UML 2.1 Superstructure specification"[URL]
- J. Warmer, "The Object Constraint Language: Getting Your Models Ready for MDA, 2nd edition" (2003), Addison-Wesley Professional
- R. Kramer, "iContract - the java(tm) design by contract(tm) tool", In TOOLS, (26), pp.295~307 (1988)
- M. Karaorman, "jContractor: Introducing design-by-contract to java using reflective bytecode instru- mentation", Formal Methods in System Design, 27(3), pp.275~312 (2005)
- J. Newmarch, "Adding contracts to java", In TOOLS, (27), pp.2~7 (1988)
- S. H. Edwards, "Contract-checking wrappers for c++ classes", IEEE Trans. Software Eng., 30(11), pp.794~810 (2004)
- P. Guerreiro, "Simple support for design by contract in c++", In TOOLS, (39), pp.24~34 (2001)
- R. Pl?sch, "Contracts: From analysis to c++ implementation", In TOOLS, (30), pp.248~257 (1999)
- McCabe, T. A, "Complexity Measure", IEEE Trans. Software Eng., 2(4), pp.308~320 (1976)
- Cruz-Lemus, J. A, "Predicting UML statechart diagrams understand- ability using fuzzy logic-based techniques", Proceedings of the Sixteenth International Conference on Software Engineering & Knowledge Engineering SEKE 2004, pp.238~245 (2004)
- Stump, A, "CVC: a cooperating validity checker", Proc. of CAV’02, 통권 : 2404 (2002), LNCS
- E. Koutsofios, "Drawing graphs with dot", AT&T Bell Laboratories
- "The Java Modeling Language"[URL]
- H. Liang, "A comparative survey of scenario-based to state-based model synthesis approaches", SCESM, pp.5~12 (2006)
- J.Whittle, "Generating statechart designs from scenarios", ICSE, pp.314~323 (2000)
- J. Whittle, "From scenarios to code: An air traffic control case study", Software and System Mo- deling, 4(1), pp.71~93 (2005)
- E. M?kinen, "Mas - an interactive synthesizer to support behavioral modeling in uml", ICSE, pp.15~24 (2001)
- S. Uchitel, "A workbench for synthesising behaviour models from scenarios", ICSE, pp.188~197 (2001)
- M. Mukund, "Synthesizing distributed finite-state systems from mscs", CONCUR, pp.521~535 (2000)
