• 제목/요약/키워드: Slicing Program

검색결과 42건 처리시간 0.02초

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

  • 박순형;정은이;박만곤
    • 한국정보처리학회논문지
    • /
    • 제7권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

소프트웨어의 유지보수를 위한 PSDG기반 의미분할모형의 설계 (A design of the PSDG based semantic slicing model for software maintenance)

  • 여호영;이기오;류성열
    • 한국정보처리학회논문지
    • /
    • 제5권8호
    • /
    • pp.2041-2049
    • /
    • 1998
  • 소프트웨어의 품질을 향상시키며, 기존코드의 결함식별을 용이하게 하는 방법으로 프로그램의 후상태 종속성 분석을 통한 프로그램 ?살 및 유지보수지원 기법을 제안한다. 결함을 식별하고 분석하기에 이해도가 중요시 되는 교정유지보수를 위해서, 기존 코드의 분석 및 세그먼트화를 후상태 종속성모형(PSDG)을 이용하여 정적분할과 동적분할 및 의미분할의 장점을 살린 코드분할로 수행한다. 분할의 원리는 기존코드의 상태 종속성을 추적하여 그래프로 모형화한 후, 조각화(Clustering)와 강조분할(Highlighting)을 통해서 프로그램을 분할한다. PSDG 모형화의 결과로 비효율적인 프로그램 결함코드(Deadcode)의 식별 및 제거가 가능하며, 관련 프로그램 문장들을 일반화할 수 있고, 상태전이도 모형과의 확장연계로 분석 및 설계의 문서로 이용될 수 있다.

  • PDF

오퍼레이셔널 의미에 기반한 일차 함수형 언어의 정적 분할 (Static Slicing of First-Order Functional Language based on Operational Semantics)

  • 안준선;한태숙
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제27권8호
    • /
    • pp.877-885
    • /
    • 2000
  • 정적 분할이란 가능한 모든 입력값을 고려할 때 프로그램 내의 한 지점에서 계산되는 값에 영향을 줄 수 있는 프로그램 부분들의 집합을 말한다. 본 논문에서는 일차 함수형 언어의 오퍼레이셔널 의미 정의에 기반하여 정적 분할을 정형적으로 정의하고 요약 해석을 통한 정적 분할의 분석 방법을 제시 하였으며, 제시된 분석 방법이 건전함을 증명하였다.

  • PDF

C 프로그램의 의존성 그래프 생성 (Dependence Graph Creation of C Program)

  • 김용호;신승철
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 가을 학술발표논문집 Vol.32 No.2 (2)
    • /
    • pp.961-963
    • /
    • 2005
  • 의존성 그래프는 컴파일러 최적화 분야에서 도입되어 유용하게 사용되고 있으며 프로그램 자르기(program slicing) 분야 등 활용가치를 높여가고 있는 프로그램 표현 방식이다. 우리는 실제적인 C 프로그램의 의존성 그래프를 생성하는 시스템을 구현하였으며 본 논문에서는 의존성 그래프의 개념과 구현과정을 설명한다.

  • PDF

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

  • 김운용;정계동;최영근
    • 한국정보처리학회논문지
    • /
    • 제6권6호
    • /
    • pp.1542-1555
    • /
    • 1999
  • 본 논문에서는 C++ 클래스 계층구조(상속관계를 가진 클래스들의 모음)를 대상으로 객체 지향 언어의 특성인 단일/다중 상속, 정적/동적 바인딩, 함수중복/함수재정의(Overloading & Overriding), 순수가상/가상함수, 생성자 문제를 고려하여 멤버데이터와 멤버함수를 최적화 할 수 있는 알고리즘을 제안한다. 프로그램 계층 구조와 그 계층 구조를 사용하는 프로그램은 일반적으로 클래스 계층 구조의 부분적인 기능만을 사용하기 때문에 많은 구성요소를 포함하는 클래스들에서 불필요한 기능을 제거하는 것이 필요하게 되었다. 지금까지 연구되어 왔던 고전적인 슬라이싱이나 다른 변형된 슬라이싱은 출력데이터를 선택하고 그와 관련된 프로그램 문장을 포함하는데 초점을 맞추고 있다. 그 대상은 대부분 구조적 프로그램 언어로 이루어졌으며 이러한 슬라이싱은 주로 오류 검출, 소프트웨어의 유지보수, 유연한 테스팅을 위한 주제로 연구가 되어 왔다. 본 논문에서는 그 대상 범위를 객체 지향 언어로 확장시키고, 분석단계에서 테이블 구성형태를 링크형태로 구성함으로써 보다 정보관리의 효율을 높일 수 있고, 이 테이블을 이용한 최적화 시스템 구현을 통해 필요한 알고리즘을 제시하였다. 이러한 과정을 통해 불필요한 멤버데이터, 멤버함수, 클래스 상속관계를 제거함으로 프로그램 코드의 간소화, 시스템 성능의 향상을 가져올 수 있다.

  • PDF

자료 흐름 분석 기법을 이용한 효율적인 프로그램 통합에 관한 연구 (A Study on the Efficient Program Integration using Data Flow Analysis Method)

  • 박순형
    • 한국IT서비스학회:학술대회논문집
    • /
    • 한국IT서비스학회 2008년도 추계학술대회
    • /
    • pp.337-340
    • /
    • 2008
  • To take the re-use of software, we need to study the efficient integration method of source programs. When the source programs are merged, it is required the steps of verification for any non-interference on non-identical parts of them. The traditional techniques of the program integration verify non-interference of source programs through the simple comparison of statements of source programs. We propose the efficient integration method using data flow analysis in the programs. A study comparing test results from the traditional method and the proposed method has found that the proposed method is more efficient than the traditional method.

  • PDF

건축물 3D 프린팅 설계지원도구 개발에 대한 연구 (A Study on Development of Design Support Tool for Building 3D Printing)

  • 박형진;서명배;주기범
    • 한국산학기술학회논문지
    • /
    • 제20권12호
    • /
    • pp.182-189
    • /
    • 2019
  • 3D 프린팅 기술은 공급자 중심의 대량 생산에서 수요자 중심의 다양한 디자인을 만족하게 하는 패러다임의 변화를 가져오고 있다. 건축분야 3D 프린팅 기술은 모듈러 건축과 더불어 기존의 습식공법을 대체할 수 있는 새로운 시공방법으로 기대되고 있다. 최근 북미, 유럽, 아시아 등 다수의 국가에서 모르타르 계열의 재료를 활용한 3D 프린팅 건축물 구축 사례가 경쟁적으로 발표되고 있다. 3D 프린팅 기술의 핵심은 3D 프린팅 장비, 재료, 3D 모델링 및 슬라이싱 기능이다. 건축분야에서는 기존 제조업에서 상용화된 슬라이싱 기능을 보완하여 사용하고 있다. 본 연구에서는 건축분야의 3D 모델링을 3D 프린팅 장비로 출력하기위해 슬라이싱 기능이 포함된 설계지원도구를 개발한다. 기존 제조업 분야에서 3D 모델링 이후 출력까지의 과정을 분석하고, 특히 기존에 상용화된 슬라이싱 프로그램들의 기능을 분석한다. 또한 기존 사례 및 전문가 검토, 관련 문헌 등을 분석하여 건축분야에 필요한 슬라이싱 기능 7가지를 도출하였다. 도출된 기능들은 슬라이싱 기능에서 보다 확장하여 설계지원도구라고 명명하였다. 향후 도출된 기능들에 대한 상세한 알고리즘 및 프로세스의 개발이 필요하다.

복잡한 자료 구조를 지니는 프로그램에 대한 슬라이싱 (Program Slicing in the Presence of Complicated Data Structure)

  • 류호연;강원임;박재홍
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.557-559
    • /
    • 1999
  • 프로그램 슬라이싱은 프로그램의 특정 문장에서 변수에 영향을 주는 문장들을 분해하는 방법으로 디버깅, 최적화, 프로그램 유지보수, 테스팅, 재사용 부품 추출 그리고 프로그램 이해를 포함하는 여러 응용 분야들에서 그 유용성을 확인할 수 있다. 본 논문은 포인터 변수와 포인터 변수에 의해 참조되는 동적 객체, 구조체, 배열을 포함하는 프로그램에 대한 정확한 슬라이스 생성에 관한 연구이다. 포인터 변수와 같은 복잡한 구조를 가지는 프로그램에서 포인터 변수나 포인터 변수가 참조하는 객체의 상태를 파악하기 위해서 객체 참조상태 그래프를 제시한다.

  • PDF

다기능 파노라마 방사선촬영장치를 이용한 하악해면골질의 평가 (Assessment of Cancellous Bone of Mandible by Multifunctional Panoramic X-Ray Machine)

  • 고재경;김재덕
    • Imaging Science in Dentistry
    • /
    • 제30권1호
    • /
    • pp.16-22
    • /
    • 2000
  • Purpose : To evaluate the bone densities measured on copper-equivalent image of cross sectional view of mandibular edentulous premolar area obtained by multifuctional panoramic x-ray machine, PM 2002 CC with transversal slicing system. Materials and Methods: Panoramic cross sectional views with 8 mm focal layer of aluminum step and blocks, of hydroxyapatite (RA) step, 6 HA blocks and copper step wedge having 0.03 mm thickness of each step, and of 3 bone blocks cutted by 8 mm thickness mesiodistally and a dry mandible with copper step wedge were taken by using transversal slicing system in PM 2002 Cc. All reference-equivalent images were made and analyzed by NIH image program. Results: The average copper-equivalent value of cancellous bone of bone blocks on the panoramic cross sectional view was 0.026 ± 0.020 mm Cu. The calculated average bone density was 0.38g/cm². There was no significant difference (P>0.1) between the bone densities on intraoral digital view and on the panoramic digital cross sectional view. Conclusion: The copper-equivalent image of panoramic digital cross sectional view obtained by PM 2002 CC with very thin copper step wedge was supposed to be useful to measure the bone density of cancellous bone of mandible at the premolar edentulous area.

  • PDF

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

  • 김영선;김홍진;손용식
    • 한국컴퓨터정보학회논문지
    • /
    • 제3권1호
    • /
    • pp.63-80
    • /
    • 1998
  • 객체 지향 소프트웨어 개발에서 재사용은 소프트웨어 품질 향상과 소프트웨어 개발자의 생산성 향상을 위하여 연구되고 있다. 그러나 설계 단계에서 부적절한 작성과 유지보수시의 잘못된 변화로 인하여 클래스를 재사용 하는데 문제점이 존재한다. 본 논문에서 제안하는 방법은 C++. 프로그램 의존도 그래프를 이용하여 클래스의 의미론적인 결합 도를 분석하고, 결합 도에 따라 클래스를 분해하여 클래스의 품질 재평가와 확장성을 지원하도록 하는 방법이다. 따라서 본 논문에서 제안하는 방안은 개발자가 객체 지향 프로그램을 개발시에 원하는 부품만을 선택하여 재사용 시스템 구축을 용이하게 하였다.

  • PDF