• Title/Summary/Keyword: Dynamic Program Slicing

Search Result 13, Processing Time 0.02 seconds

Efficient Dynamic Object-Oriented Program Slicing

  • Park, Soon-Hyung;Park, Man-Gon
    • Journal of Korea Multimedia Society
    • /
    • v.6 no.4
    • /
    • pp.736-745
    • /
    • 2003
  • Traditional slicing techniques make slices through dependence graphs. They also improve the accuracy of slices. However, traditional slicing techniques require many vertices and edges in order to express a data communication link because they are based on static slicing techniques. Therefore the graph becomes very complicated, and size of the slices is larger. We propose the representation of a dynamic object-oriented program dependence graph so as to process the slicing of object-oriented programs that is composed of related programs in order to process certain jobs. We also propose an efficient slicing algorithm using the relations of relative tables in order to compute dynamic slices of object-oriented programs. Consequently, the efficiency of the proposed efficient dynamic object-oriented program dependence graph technique is also compared with the dependence graph techniques discussed previously As a result, this is certifying that an efficient dynamic object-oriented program dependence graph is more efficient in comparison with the traditional object-oriented dependence graphs and dynamic object-oriented program dependence graph.

  • PDF

Efficient Dynamic Slicing of Object-Oriented Program

  • Park, Soon-Hyung
    • Proceedings of the Korea Society for Industrial Systems Conference
    • /
    • 2008.10b
    • /
    • pp.651-655
    • /
    • 2008
  • Traditional slicing techniques make slices through dependence graphs. They also improve the accuracy of slices. However, traditional slicing techniques require many vertices and edges in order to express a data communication links. Therefore the graph becomes complicated, and size of the slices is larger. We propose the representation of a dynamic object-oriented program dependence graph so as to process the slicing of object-oriented programs that is composed of related programs in order to process certain jobs. The efficiency of the proposed efficient dynamic object-oriented program dependence graph technique is also compared with the dependence graph techniques discussed previously. As a result, this is certifying that an efficient dynamic object-oriented program dependence graph is more efficient in comparison with the traditional dynamic object-oriented program dependence graph.

  • PDF

On the Efficiency Comparison of Dynamic Program Slicing Algorithm using Multiple Criteria Variables (다중 기준변수를 사용한 동적 프로그램 슬라이싱 알고리즘의 효율성 비교)

  • Park, Sun-Hyeong;Park, Man-Gon
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.9
    • /
    • pp.2384-2392
    • /
    • 1999
  • Software engineers are used to analyse the error behavior of computer programs using test cases which are collected for the testing phase when software errors are detected. In actual software testing and debugging, it is important to adopt dynamic slicing technique which is concerned on all the statements to be affected by the variables of current inputs and to use technique of its implementations. The traditional dynamic slicing has focused on the single slicing criterion algorithm. It has been thought that it is needed to develope and implement algorithm for used multiple criteria variables program slicing, which finds every slicing criterion variable where it is used multiple criteria variables. In this paper, we propose an efficient algorithm to make dynamic program slices when it has used multiple criteria variables. The results of the implementation are presented by the making table on execution history and the dynamic dependence graph. Also we can find that the proposed dynamic program slicing approach using multiple criteria variables is more efficient than the traditional single case algorithm on the practical testing environment.

  • PDF

Dynamic Slicing using Dynamic System Dependence Graph (동적 시스템 종속 그래프를 사용한 동적 슬라이싱)

  • 박순형;박만곤
    • Journal of Korea Multimedia Society
    • /
    • v.5 no.3
    • /
    • pp.331-341
    • /
    • 2002
  • Traditional slicing techniques make slices through dependence graph and improve the accuracy of slices. However, traditional slicing techniques require many vertices and edges in order to express a data communication link because they are based on static slicing techniques. Therefore the graph becomes very complicated. We propose the representation of a dynamic system dependence graph so as to process the slicing of a software system that is composed of related programs in order to process certain jobs. We also propose programs on efficient slicing algorithm using relations of relative tables in order to compute dynamic slices of a software system. Using a marking table from results of the proposed algorithm can make dynamic system dependence graph for dynamic slice generation. Tracing this graph can generate final slices. We have illustrated our example with C program environment. Consequently, the efficiency of the proposed dynamic system dependence graph technique is also compared with the dependence graph techniques discussed previously. As the results, this is certifying that the dynamic system dependence graph is more efficient in comparison with system dependence graph.

  • PDF

An Efficient Program Slicing Algorithm using Dynamic Control Information (동적 제어 정보를 이용한 효율적인 프로그램 슬라이싱 알고리즘)

  • 박순형;정은이;박만곤
    • Journal of Korea Multimedia Society
    • /
    • v.3 no.1
    • /
    • pp.92-100
    • /
    • 2000
  • For the operation of the practical software systems, the development of new software, extension and modification phases of current software are successively needed through the new requirements added and their errors debugging detected. We need to understand current program exactly during a working serial jobs. When we'd like to extract the statements which influence the variable of specific statement of program, we generally analyze the program behavior through execution trace of program for the input values. It is important to compute dynamic program slice related to all statements that actually affect the value of a variable occurrence for a given program input and to develop techniques of its implementation. But traditional dynamic slicing techniques are inconvenient to make program execution history at the beginning implementation. In this paper, we propose a new improved algorithm which can produce program slice by use of dynamic control information and program slicing techniques except execution history file. Also we can find that the proposed program slicing approach is more efficient than the traditional program slicing algorithm on the practical testing environment.

  • PDF

A Study on the Improved Dynamic Object-Oriented Program Slicing (개선된 동적 객체지향 프로그램 슬라이싱에 관한 연구)

  • Park Soon-Hyung;Park Man-Gon
    • Journal of Korea Multimedia Society
    • /
    • v.7 no.10
    • /
    • pp.1485-1495
    • /
    • 2004
  • We propose the representation of a improved dynamic object-oriented program dependence graph so as to process the slicing of object-oriented programs that is composed of related programs in order to process certain jobs. We also propose an efficient slicing algorithm using the relations of relative tables in order to compute dynamic slices of object-oriented programs. We programmed the algorithm by using fortran and Visual C++. The procedure that computes the dynamic object-oriented program slices using the improved dynamic object-oriented program dependence graph(IDOPDC) is divided into four steps. Consequently, the efficiency of the proposed improved dynamic object-oriented program dependence graph(IDOPDG) technique is also compared with the dependence graph techniques discussed previously. As a result, this certifies that an improved dynamic object-oriented program dependence graph is more efficient in comparison with the traditional dynamic object-oriented program dependence graph(DOPDG).

  • PDF

Dynamic Slicing Algorithms for Understanding of C Programs (C 프로그램의 이해를 지원하는 동적 조각화 알고리즘)

  • Kim, Tae-Hee;Kang, Moon-Seol
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.9 no.1
    • /
    • pp.172-180
    • /
    • 2005
  • Dynamic slicing method decomposes a program into slices and supports to be understood programs easily by software developer or maintainer. In this paper, we propose dynamic slicing algorithm to reduce time to decompose a program. We produce reference-variable set used in right and modify-variable set used in left on the basis of the assignment operator of all sentences and extract Inter-Variable Relationship(VV) for all variables of variable declaration. Proposed algorithm extracts dynamic slices by using them and execution trace of program. In conclusion, proposed algorithm improved the performance by reducing the time to extract dynamic slices by decreasing average comparison count of sentence when the number of criterion variables is three or more.

Program Slicing for Binary code Deobfuscation (역난독화를 위한 바이너리 프로그램 슬라이싱)

  • Mok, Seong-Kyun;Jeon, Hyeon-gu;Cho, Eun-Sun
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.27 no.1
    • /
    • pp.59-66
    • /
    • 2017
  • Hackers have obfuscated their malware to avoid being analyzed. Recently, obfuscation tools translate original codes into bytecodes to use virtualized-obfuscation, so that bytecodes are executed by virtual machines. In such cases, malware analysts fail to know about the malware before execution of the codes. We found that program slicing is one of promising program analysis techniques to solve this problem. The main concepts of program slice include slicing criteria given by analysts and sliced statements according to the slicing criteria. This paper proposes a deobfuscation method based on program slicing technique.

On the Efficiency Comparison of Dynamic Program Slicing Algorithm for Software Testing (소프트웨어 테스팅을 위한 동적 프로그램 슬라이싱 알고리즘의 효율성 비교)

  • Park, Soon-Hyung;Park, Man-Gon
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.9
    • /
    • pp.2323-2333
    • /
    • 1998
  • Software engineers generally analyze the program behavior under the test case that revealed the error, not under any teneric est case. In this paper we discuss the dynamic slice consisting of all statements that actually affect the value of a variable occurrence for a given program input. We propose an efficient algorithm to make dynamic program slices. The eficiency of this algorithm is evaluated on some developed program. results are shown by a marking table of execution history. Dynamic Dependence Graph, and Reduced Dynamic Dependence Graph, Consequently, the efficiency of the proosed algorithm is also presented by the compariso with algorithm that was announced previously.

  • PDF

An Algorithm for Integrating Versions of Programs using Dynamic Slicing (동적 슬라이싱 기법을 이용한 프로그램 버전들의 통합 알고리즘)

  • Park, Sun-Hyeong;Jeong, Eun-Lee;Park, Man-Gon
    • The Transactions of the Korea Information Processing Society
    • /
    • v.7 no.3
    • /
    • pp.831-841
    • /
    • 2000
  • For the operation of the practical software systems, the development, extension and modification phases are successively needed through the new requirements added and their errors debugging detected. Therefore, if it is possible to integrated the reusable software components and to reorganize them into the new software systems, we can improve the productivity, quality, and cost-effectiveness for he development of software systems. For these reasons, it will be required to research and develop methodology and tools for programs integration which make some programs merged effectively. In the process of merging two versions of a program into one, we can consider that some parts of the two versions are equivalent under the non-interference between them. According to the previous studies the program selected to determine the criterion of non-interference between them. According to the previous studies the program selected to determine the criterion of non-interference was very large, so we have difficulty in integrating many programs practically. In this paper, we propose a new improved algorithm which can reduce the related program size of non-interference criterion yb use of dynamic slicing techniques for integration of two versions of a program, and prove the efficiency of the proposed algorithm by showing some examples.

  • PDF