• Title/Summary/Keyword: Program Dependence Graph

Search Result 21, Processing Time 0.023 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

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

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

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

A Object-oriented Program Dependency Graph for Object-oriented Program Representation (객체지향 프로그램 표현을 위한 객체지향 프로그램 종속성 그래프)

  • Ryu, Hee-Yeol;Park, Joong-Yang;Park, Jae-Heung
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.10
    • /
    • pp.2567-2574
    • /
    • 1998
  • Many software engineering tools and techniques rely on fraphic representations of software, such as control flow graphs, program dependene graphs, or system dependence graphs. Existing graphic representations for object-oriented programs are compkicated, reduplicated. We thus propose a new graphic representation for object-oriented programs. Object-oriented Program Dependency Graph (OPDG). An OPDG consists of class dependence graph, class hierarchy graph and procedure dependence graph. Other features of OPDG are (1) the representation is compact; (2) the representation is easy to extend for the incremental development of a program; and (3) the repreesentation can be extended to provide dynamic information.

  • PDF

A Representation for Multithreaded Data-parallel Programs : PCFG(Parallel Control Flow Graph) (다중스레드 데이타 병렬 프로그램의 표현 : PCFG(Parallel Control Flow Graph))

  • 김정환
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.29 no.12
    • /
    • pp.655-664
    • /
    • 2002
  • In many data-parallel applications massive parallelism can be easily extracted through data distribution. But it often causes very long communication latency. This paper shows that task parallelism, which is extracted from data-parallel programs, can be exploited to hide such communication latency Unlike the most previous researches over exploitation of task parallelism which has not been considered together with data parallelism, this paper describes exploitation of task parallelism in the context of data parallelism. PCFG(Parallel Control Flow Graph) is proposed to represent a multithreaded program consisting of a few task threads each of which can include a few data-parallel loops. It is also described how a PCFG is constructed from a source data-parallel program through HDG(Hierarchical Dependence Graph) and how the multithreaded program can be constructed from the PCFG.

A Study on Visibility Graph Generating Model of Ada Program (Ada 프로그램의 Visibility Graph 생성모델에 관한 연구)

  • Jeong Jung-Yeong;Kim Hui-Ju;Yun Chang-Seop
    • Journal of the military operations research society of Korea
    • /
    • v.16 no.2
    • /
    • pp.56-74
    • /
    • 1990
  • Programming-in-the-Large refers to software development environment and includes the organization and representation of a system structure, module decomposition, component dependence analysis, seperate compilation, subsystem and composition identification. The most intricate problem in this environment is the mastery of the structural complexity of large software systems. Ada programming language is tailored to the needs for building of large, integrated software systems from many program units. The visibility graph generating model presented in this paper transforms Ada source program into a visibility graph with nodes for program units and edges for visibility relations among program units. The system description in terms of program units and their visibility relations produced by this model can be utilized for some apects of Programming-in-the-Large environment and also assists designeers, programmers, integrators and maintainers in defining, understanding and exploring the structure of evolving software systems. The model designed and implemented in Ada programming language runs on PCs and will remain useful both in practice and as experimental tool.

  • PDF

Software Similarity Measurement based on Dependency Graph using Harmony Search

  • Yun, Ho Yeong;Joe, Yong Joon;Jung, Byung Ok;Shin, Dong myung;Bahng, Hyo Keun
    • Journal of the Korea Society of Computer and Information
    • /
    • v.21 no.12
    • /
    • pp.1-10
    • /
    • 2016
  • In this paper, we attempt to prevent certain cases by tracing a history and making genogram about open source software and its modification using similarity of source code. There are many areas which use open source software actively and widely, and open source software contributes their development. However, there are many unconscious cases like ignoring license or intellectual properties infringe which can lead litigation. To prevent such situation, we analyze source code similarity using program dependence graph which resembles subgraph isomorphism problem, a typical NP-complete problem. To solve subgraph isomorphism problem, we utilized harmony search of metaheuristic algorithm and compared its result with a genetic algorithm. For the future works, we represent open source software as program dependence graph and analyze their similarity.

The class testing based on a dependence graph (종속성 그래프 기반 클래스 테스팅)

  • Im, Dong-Ju;Bae, Sang-Hyun
    • Journal of Internet Computing and Services
    • /
    • v.1 no.1
    • /
    • pp.105-113
    • /
    • 2000
  • The representation of a procedural program cannot be applied directly to object oriented program representation consisting of class, object, inheritance, and dynamic binding. Furthermore, preexisting program dependence represented the dependence among statements, but not among variables. That is, it could not solve the problem of which variables make an effect on given variables. Consequently, this study presents the method dependence model representing implementation level information including the dependence among variables in an object oriented program. I also propose implementation-based class testing technique based on the test adequacy criterion of an object-oriented program. Considering inter-data member dependences and a set of axioms for test data adequacy, it generates sequences of methods as test cases which satisfy a flow graph-based testing criterion. For a derived class testing, it considers inheritance relationship and the resuability of the testing information for its parent classes which verified the reduction of test cost through the experiment.

  • PDF