• Title/Summary/Keyword: Object-Oriented Program Slicing

Search Result 8, Processing Time 0.017 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

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

A Study on Program Slicing of Object-Oriented Programs (객체지향 프로그램의 슬라이싱에 관한 연구)

  • 김희천
    • Journal of the Korea Computer Industry Society
    • /
    • v.2 no.9
    • /
    • pp.1199-1208
    • /
    • 2001
  • Program slicing is a program decomposition technique to improve the effectiveness of program testing and maintenance. In this paper I propose a method for slicing object-oriented programs and show its correctness. Also, I propose the class interface slicing technique which can eliminate irrelevant data members, subobjects, and methods from the class declaration parts of the given program. And I show its correctness. Finally, I propose the class hierarchy slicing technique which can compute the declarative parts affecting or affected by the given data member. These techniques may be used for information analysis in some area such as class testing.

  • PDF

Class Slicing Method using Program Dependency Graph in C++ (C++에서 프로그램 의존도 그래프를 이용한 클래스 분해 방법)

  • 김영선;김홍진;손용식
    • Journal of the Korea Society of Computer and Information
    • /
    • v.3 no.1
    • /
    • pp.63-80
    • /
    • 1998
  • In object-oriented software development, reuse has been studied for the enhancement of software quality and software developer's productivity. But improper modeling in design phase and uncontrolled change during maintenance activities have a problem to reuse a class. In this paper we analyze a semantic cohesion of classes using C++ Program dependency graph, and slice a class with cohesion, so that this method supports the re-estimate of class quality and the extensibility of class. Therefore this proposed method in this paper increases the easibility of the restructuring in the reusable systems, when the developer selects a requested component for a object-oriented program development.

  • PDF

A Study on the Optimization of C++ Program Using the Class Hierarchies Slicing (클래스 계층구조 슬라이싱을 이용한 C++프로그램 최적화에 관한 연구)

  • Kim, Un-Yong;Jeong, Gye-Dong;Choe, Yeong-Geun
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.6
    • /
    • pp.1542-1555
    • /
    • 1999
  • This paper proposes an algorithm for class hierarchies which can optimize member data and member function. This algorithm considers single/multiple inheritance, static/dynamic binding, overloading/overriding, pure virtual/virtual function, and constructor on the hierarchy of C++ class. We need to eliminate unused function that possesses many component element, because the program uses a limited of function in class hierarchies. Previous works on slicing mainly focused on selecting output data and including the related program statement. It was consists of structured programming language and also centralized on error detection, maintenance, and flexible testing. In this paper, we extend to the object-oriented language, makes a linked-table for objects to raise the efficiency of information management, and proposes necessary algorithm for optimizing system Through this process, we can obtain the simplification of program code and the progress of system performance by eliminating unused member data and member function.

  • PDF

A study on the Enhanced System Dependence Graph for slicing of object-oriented Program (객체지향 프로그램 슬라이싱을 위한 개선된 시스템 종속성 그래프에 대한 연구)

  • 류희열;김은정
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.10d
    • /
    • pp.115-117
    • /
    • 2002
  • 객체지향 프로그램 슬라이싱을 위한 Loren D Larsen and Marry Jean Harrold가 제안하는 방법은 절차적 프로그램 슬라이싱을 위한 시스템 종속성 그래프 표현방법에 객체지향 패러다임을 표현할 수 있도록 확장하며 2단계 마킹 알고리즘을 적용하여 슬라이스를 계산한다. 시스템 종속성 그래프를 이용한 슬라이싱 방법은 클래스 멤버 변수와 전역변수 및 인스턴스 변수에 대하여 각 메소드 호출 및 진입정점에 actual_in, actual_out, formal_in, formal_out 정점들이 추가되어 복잡도가 증가한다. 본 논문에서는 이들 변수를 클래스 정점의 멤버간선으로 연결하여 각 메소드의 문장에서 사용하면 진출간선 정의하면 진입간선으로 연결하여 정점과 간선들의 개수를 최소화할 수 있도록 시스템 종속성 그래프를 개선하였다. 제안하는 시스템 종속성 그래프는 그래프 복잡도의 최소화와 2단계 알고리즘에 의한 정확한 슬라이스 계산이 장점이다. C++ 예제 프로그램을 적용하여 그래프 복잡도의 감소와 정확한 슬라이스 계산을 기존의 방법과 비교하여 개선됨을 확인하였다.

  • PDF

A Study on the Object-Oriented Program Slicing using Module Class Dependency Graph (모듈 클래스 종속 그래프를 이용한 객체지향 프로그램 슬라이싱에 관한 연구)

  • Kim, Un-Yong;Jeong, Gye-Dong;Choe, Yeong-Geun
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.7
    • /
    • pp.1805-1816
    • /
    • 1999
  • This paper presents the Module Class Dependency Graph for expressing the dependency relations between classes effectively. The object-oriented language is developed independently at design time, and consists of relationship between classes. Therefore we need to consider these characteristics of independence, and to express effectively the relation of classes which is existed in class hierarchy. In the System Dependence Graph and Class Dependence Graph, the relationship of classes is not expressed. To express the class relationship, we propose the Module Class Dependence Graph, and we verify the effectiveness of this method applying to object constructor, inheritance relationship and dynamic binding. Also, we presents the expressing method of parameter to identify the member data of classes. Using this Module Class Dependency Graph, we can analyze the relationship of module class correctly at design time. This method can be applied to reverse engineering, testing, visualization and other various fields to analyze system.

  • PDF