Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2009.16-D.4.527

An Automatic Construction Approach of State Diagram from Class Operations with Pre/Post Conditions  

Lee, Kwang-Min ((주)사이버맵월드부설연구소)
Bae, Jung-Ho (부산대학교 컴퓨터공학과)
Chae, Heung-Seok (부산대학교 컴퓨터공학과)
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.
Keywords
Object-Oriented Programming; Pre/Post Condition; State Diagram;
Citations & Related Records
연도 인용수 순위
  • Reference
1 J. Warmer and A. Kleppe. The Object Constraint Language: Getting Your Models Ready for MDA. Addison-Wesley Professional, 2nd edition, 2003
2 M. Karaorman and P. Abercrombie. jContractor: Introducing design-by-contract to java using reflective bytecode instrumentation. Formal Methods in System Design, 27(3):275-312, 2005   DOI
3 J. Newmarch. Adding contracts to java. In TOOLS (27), pp. 2-7, 1988   DOI
4 P. Guerreiro. Simple support for design by contract in c++. In TOOLS (39), pp.24-34, 2001   DOI
5 R. Plosch and J. Pichler. Contracts: From analysis to c++ implementation. In TOOLS (30), pp.248-257, 1999   DOI
6 S. Uchitel and J. Kramer. A workbench for synthesising behaviour models from scenarios. In ICSE, pp.188-197, 2001   DOI
7 T. S. Chow. Testing software design modeled by finite-state machines. IEEE Trans. Software Eng., 4(3):178-187, 1978   DOI   ScienceOn
8 Y. Kim, H. Hong, D. Bae, and S. Cha. Test cases generation from uml state diagrams   DOI   ScienceOn
9 L. C. Briand, Y. Labiche, and Y. Wang. Using simulation to empirically investigate test coverage criteria based on statechart. In ICSE, pp.86-95, 2004
10 J. van Katwijk, H. Toetenel, A.-E.-K. Sahraoui, E. Anderson, and J. Zalewski. Specification and verification of a safety shell with statecharts and extended timed graphs. In SAFECOMP, pp.37-52, 2000   DOI
11 H. Liang, J. Dingel, and Z. Diskin. A comparative survey of scenario-based to state-based model synthesis approaches. In SCESM, pp.5-12, 2006   DOI
12 R. Kramer. iContract - the java(tm) design by contract(tm) tool. In TOOLS (26), pp.295-307, 1988   DOI
13 S. H. Edwards, M. Sitaraman, B. W. Weide, and J. E. Hollingsworth. Contract-checking wrappers for c++ classes. IEEE Trans. Software Eng., 30(11):794-810, 2004   DOI   ScienceOn
14 Stump, A., Barrett, C.W., Dill., D.L.: CVC: a cooperating validity checker. In Proc. of CAV'02. Vol.2404 of LNCS. 2002   DOI   ScienceOn
15 E. Makinen and T. Systa. Mas - an interactive synthesizer to support behavioral modeling in uml. In ICSE, pp.15-24, 2001   DOI
16 M. Mukund, K. N. Kumar, and M. A. Sohoni. Synthesizing distributed finite-state systems from mscs. In CONCUR, pp. 521-535, 2000   DOI   ScienceOn
17 B. Meyer. Applying 'Design by Contract', In Computer, 25 (10):40-51, 1992   DOI   ScienceOn
18 J. C. Corbett, M. B. Dwyer, J. Hatcliff, S. Laubach, C. S. Pasareanu, Robby, and H. Zheng. Bandera: extracting finitestate models from java source code. In ICSE, pp.439-448, 2000   DOI
19 J. Dick and A. Faivre. Automating the generation and sequencing of test cases from model-based specifications. In FME, pp.268-284, 1993   DOI   ScienceOn
20 L. C. Briand, M. D. Penta, and Y. Labiche. Assessing and improving state-based class testing: A series of experiments. IEEE Trans. Software Eng., 30(11):770-793, 2004   DOI   ScienceOn
21 OMG. UML 2.1 Superstructure specification. 'http://www.uml.org'
22 A. David, M. O. M?ller, and W. Yi. Formal verification of uml statecharts with real-time extensions. In FASE, pp.218-232, 2002   DOI   ScienceOn
23 P. Chevalley and P. Thevenod-Fosse. Automated generation of statistical test cases from uml state diagrams. In COMPSAC, pp.205-214, 2001
24 H. S. Hong, Y. G. Kim, S. D. Cha, D. -H. Bae, and H. Ural. A test sequence selection method for statecharts. Softw. Test., Verif. Reliab., 10(4):203-227, 2000   DOI   ScienceOn
25 G. Antoniol, L. C. Briand, M. D. Penta, and Y. Labiche. A case study using the round-trip strategy for state-based class testing. In ISSRE, pp.269-279, 2003   DOI
26 K. C. Kang and K.-I. Ko. Formalization and verification of safety properties of statechart specifications. In APSEC, pp.16-27, 1996   DOI
27 G. Pinter and I. Majzik. Runtime verification of statechart implementations. In WADS, pp.148-172, 2004   DOI   ScienceOn
28 H. J. Kohler, U. Nickel, J. Niere, and A. Zondorf. Integrating UML diagrams for production control systems. In ICSE '00: Proceedings of the 22nd international conference on Software engineeering, pp.241-251, New York, NY, USA, 2000. ACM Press   DOI
29 I. Niaz and J. Tanaka. Code generation from UML statecharts. In SEA '03: Proceedings of international conference on Software Engineering and Applications, 2003
30 R. Knor, G. Trausmuth, and J. Weidl. Reengineering c/c++ source code by transforming state machines. In ESPRIT ARES Workshop, pp.97-105, 1998   DOI   ScienceOn
31 E. Koutsofios and S. C. North. Drawing graphs with dot. AT&T Bell Laboratories, Murray Hill, NJ
32 N. Pywes and P. Rehmet. Recovery of software design, statemachines, and specifications from source code. In ICECCS, pp.279-288, 1996   DOI
33 C. Nebut, F. Fleurey, Y. L. Traon, and J.-M. Jezequel. Automatic test generation: A use case driven approach. IEEE Trans. Software Eng., 32(3):140-155, 2006   DOI   ScienceOn
34 M. Riebisch, I. Philippow, and M. Gotze. UML-based statistical test case generation. In NetObject-Days, pp.394-411, 2002
35 JML. The Java Modeling Language. 'http://www.eecs.ucf.edu/~leavens/JML/'
36 J.Whittle and J. Schumann. Generating statechart designs from scenarios. In ICSE, pp.314-323, 2000   DOI
37 J. Whittle, R. Kwan, and J. Saboo. From scenarios to code: An air traffic control case study. Software and System Modeling, 4(1):71-93, 2005   DOI
38 McCabe, T. A Complexity Measure. IEEE Trans. Software Eng., 2(4):308-320, 1976   DOI
39 Cruz-Lemus, J. A., Genero, M. Olivas, J. A., Romero, F.P. Piattini, M. Predicting UML statechart diagrams understandability using fuzzy logic-based techniques. Proceedings of the Sixteenth International Conference on Software Engineering & Knowledge Engineering SEKE 2004, pp.238-245, 2004