• 제목/요약/키워드: AOP (Aspect-Oriented Programming)

검색결과 36건 처리시간 0.025초

프로그램 개발 및 유지보수를 지원하는 횡단관심사 명세 기법 (Specification of Crosscutting Concerns to Support Program Development and Maintenance)

  • 박옥자;유철중;장옥배
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제34권9호
    • /
    • pp.773-784
    • /
    • 2007
  • 관점지향 프로그래밍은 기존의 소프트웨어 개발 방법론으로 해결하기 어려운 횡단관심사를 모듈화 하는데 목적을 두고 있다. 초기 관점지향 프로그래밍은 프로그램 개발 단계에 초점을 맞추어 발전하다가 최근에는 요구사항 분석 및 설계부터 코드 구현 단계까지 전체 프로세스에 관점지향 프로그래밍 방법론을 적용하고자 많은 연구가 이루어지고 있다. 하지만, 관점지향 프로그래밍에서 필요한 교차점, 결합점, 충고 정의를 위한 표준화된 지침 및 명세가 없어 프로그램 개발 및 유지보수를 어렵게 하고 있다. 본 논문에서는 이와 같은 문제점을 해결하기 위하여 관점지향 프로그래밍 개발 및 유지보수를 지원하는 횡단관심사 명세 기법을 제시한다. 관심사 명시, 관심사 설계, 그리고 코드 구현 세 단계로 이루어지는 명세 단계는 요구사항 분석 단계에서 얻어지는 횡단관심사 정보를 코드로 개발할 수 있도록 단계별 지침을 제공한다. 명세 과정의 각 단계에서는 전체 횡단 관심사 목록, 횡단관심사 명세서, 애스펙트 클래스 참조 테이블, 핵심 클래스 참조 테이블을 구축하여 코드 개발 및 유지보수시 프로세스간의 추적 자료로 사용된다. 본 논문의 명세 기법은 관점지향 프로그래밍에서 해결하기 어려운 구현의 문제점, 프로그램 이해의 어려움, 재사용의 문제점을 해결함으로써 시스템 개발을 지원한다.

Aspect Weaving 유효성 검증을 해결하기 위한 Trace Mechanism에 관한 연구 (A Trace Mechanism to Demonstrate the Verify of Aspect Weaving)

  • 김진향;송영재
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2008년도 추계학술발표대회
    • /
    • pp.563-565
    • /
    • 2008
  • AOP(Aspect-Oriented Programming)는 어플리케이션을 다양한 관점으로 분해하여 객체지향에서 추구하는 모듈화를 더욱 잘 지원하도록 하는 프로그래밍 기법이다. AOP의 단점은 거의 모두가 실행 전에 메소드를 차단하도록 구성되어 있다. 그리고 클래스와 Aspect의 위빙시 join point의 유효성 결함이 많이 발생한다. 따라서 본 논문에서는 trace mechanism을 이용하여 유효성 결함을 감소시키며, 클래스와 Aspcet간의 메소드 호출 관계를 명백히하기 위해 참조테이블을 생성하였다. Weaver에 의해 위빙된 후 생성된 XML코드와 저장소에 저장된 참조테이블 정보는 개발자가 원하는 요구사항에 맞게 적당한 컴포넌트에 배치되도록 Validation Agent를 사용하였다.

관점지향 프로그래밍 기법을 이용한 BPEL 기능 추가를 위한 XAS4B 엔진 설계 (A Design of XAS4B for Adding Function in BPEL using Aspect-Oriented Programming)

  • 곽동규;최재영
    • 전기전자학회논문지
    • /
    • 제17권4호
    • /
    • pp.525-530
    • /
    • 2013
  • 워크플로우의 표준인 BPEL은 프로그래밍 언어에 대한 이해도가 낮은 도메인 전문가도 손쉽게 비즈니스 흐름을 작성할 수 있다. 하지만 특정 도메인에서는 BPEL 문법에 없는 새로운 기능이 요구된다. BPEL 엔진이 새로운 기능을 처리하기 위해서는 새로운 BPEL 엔진을 개발하거나 기존의 BPEL 엔진에 기능을 추가해야 하는데 이는 비용이 많이 필요하다. 본 논문에서는 XML 스키마를 확장하여 XAS4B 문서를 제안하고 관점지향 프로그래밍 기법을 이용하여 BPEL 엔진에 새로운 기능을 추가하는 방법을 보인다. 관점지향 프로그래밍 기법은 직조를 이용하여 핵심관심사의 수정없이 횡단관심사를 추가할 수 있다. 본 연구에서는 기존의 BPEL 엔진으로 B2J (BPEL to JAVA)를 사용하는데 이 엔진은 BPEL 문서를 JAVA 프로그램으로 변환하고 이를 실행한다. 본 시스템은 B2J 엔진이 생성한 JAVA 프로그램을 핵심관심사로 새로운 기능을 처리하는 프로그램을 횡단관심사로 두 프로그램을 직조하여 BPEL 흐름에 새로운 기능의 흐름을 추가한다. 제안하는 방법은 BPEL의 새로운 기능을 추상적으로 제공하여 한 번 개발된 새로운 기능을 도메인 전문가가 재사용하기 손쉽다.

AOP 기술을 이용한 DEVS 기반 시뮬레이터의 적응성 향상 기법 (Improving Adaptability of the DEVS Based Simulator with AOP)

  • 김철호
    • 한국군사과학기술학회지
    • /
    • 제10권3호
    • /
    • pp.90-99
    • /
    • 2007
  • The DEVS formalism has the well-defined relationship between its model and simulator. However, it does not define the connection between its model and experimental frame needed when a simulator's implemented with it. So, in most DEVS based simulators, the modules of the two parts are tangled, so that changing and reusing them is not easy. This paper proposes a method to improve the changeability of the experimental frame and the reusability of the model by modularizing the two parts using the AOP technology. I applied the new method to a real project, and the result shows that it improves the two qualities effectively than before.

The Design of an Extended Complex Event Model based on Event Correlation using Aspect Oriented Programming

  • Kum, Deuk-Kyu
    • 한국컴퓨터정보학회논문지
    • /
    • 제22권10호
    • /
    • pp.109-119
    • /
    • 2017
  • In recent through development of IOT owing to that mass stream data is being generated in variety of application complex event processing technology is being watched with keen interest as a technology to analyze this kind of real-time continuous data. However, the existing study related with complex event processing only comes to an end at simple event processing based on low-level event or comes to an end at service defect discovery with providing limited operator and so on. Accordingly, there would be limitation to provide useful analysis information. In this paper in consideration of complex event along with aspect-oriented programming an extended complex event model is provided, which is possible to provide more valuable and useful information. Specifically, we extend the model to support hierarchical event structures and let the model recognize point-cuts of aspect-oriented programming as events. We provide the event operators designed to specify the events on instances and handle temporal relations of the instances. It is presented that syntax and semantics of constructs in our event processing language including various and progressive event operators, complex event pattern, etc. In addition, an event context mechanism is proposed to analyze more delicate events. Finally, through application studies application possibility of this study would be shown and merits of this event model would be present through comparison with other event model.

A Log Management Service Model based on AOP for Efficient Development of Android Applications

  • Choi, Yun-seok
    • 한국컴퓨터정보학회논문지
    • /
    • 제21권3호
    • /
    • pp.39-45
    • /
    • 2016
  • In this paper, we propose a log management service model for efficient developments of android applications. The proposed model consists of two major parts which are the log collector and the log manager service. The log collector can capture the log information of a target application without modifications, because the collector is composed by aspect-oriented programming. The collected logs are transformed to chunk of data, and the chunk of data is sent to the log management service. The log management service is an android service component and an independent application in another process. So, the log management service can reduce the workload of logging in the target application. Through a case study, we show that the proposed log management service model can reduce the log processing time compared to other models without modifications of a target application.

SorMob: AOP 기반의 연산 오프로딩 프레임워크 (SorMob: Computation Offloading Framework based on AOP)

  • 조영필;조두산;백윤흥
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제2권5호
    • /
    • pp.203-208
    • /
    • 2013
  • 스마트폰이 널리 사용됨에 따라 이에 탑재되는 어플리케이션이 점차 고도화 되고 있다. 일면 하드웨어의 성능이 소프트웨어의 요구사항을 능가한 모습도 보이는 Personal Computer와는 달리 스마트폰의 경우 보다 얇은 것을 추구하는 디자인적 한계점과 여타 하드웨어에 비해 더딘 발전 속도를 보이는 배터리에 의해 저전력을 추구해야 한다는 한계점으로 인해 하드웨어의 성능이 소프트웨어의 요구사항을 충족시키지 못하는 모습이다. 이를 보완하기 위한 대표적인 기술로 연산 오프로딩이 각광받고 있다. 하지만, 확실히 성능 및 전력 소모에 있어서 이점을 가져다준다는 연구에도 불구하고 오프로딩은 현재 널리 사용되는 기술이 아니다. 이는 기존 오프로딩 프레임워크는 어플리케이션 개발자가 사용하기에 난해한 점이 있기 때문이다. 따라서 본 연구는 어플리케이션 개발자 친화적인 오프로딩 프레임워크인 SorMob을 소개한다. SorMob은 안드로이드 상에서 동작하며, Aspect Oriented Programming 개념을 차용하여 개발자 친화적인 환경을 구축할 수 있었으며 실험을 통해 기존의 오프로딩 프레임워크에 뒤떨어지지 않는 성능을 가지고 있음을 확인할 수 있었다.

AOP를 이용한 이동 에이전트의 투명한 이주 기법 설계 (Transparent Migration Scheme of Mobile Agent by using AOP)

  • 임원택;김구수;엄영익
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2006년도 추계학술발표대회
    • /
    • pp.551-554
    • /
    • 2006
  • Java 기반의 이동 에이전트 시스템은 에이전트의 실행 상태를 이주시킬 수 없는 문제점을 가지고 있다. 이러한 문제점을 해결하기 위해 JVM을 수정하거나 이주에 필요한 소스 코드, 혹은 바이트 코드를 삽입하는 메커니즘을 이용한 이동 에이전트 시스템들이 연구되었다. 하지만 이러한 시스템들은 이식성이 떨어지거나 에이전트의 이주부분을 프로그래밍 할 수 없는 단점이 존재한다. 또한 이러한 시스템들은 플랫폼의 요청에 의한 에이전트 이주 기법인 forced migration을 지원하지 않는다. 본 논문에서는 AOP(Aspect Oriented Programming)를 이용한 에이전트의 투명한 이주 기법을 제안한다. 제안 기법에서는 에이전트를 비즈니스 로직, 이동성 코드, 상태 저장 코드로 나누어 개발하고, 이를 직조하여 이동 에이전트를 개발한다. 제안 기법을 사용하면 에이전트 개발자는 이동 에이전트의 비즈니스 로직 개발에 집중할 수 있고 에이전트의 이주 부분을 프로그래밍 함으로써, 유연한 에이전트의 이주 정책을 수립할 수 있다.

  • PDF

AOP를 이용한 모바일 소프트웨어의 변환과 적응 방안 (Translation and Adaptation Technique for Mobile Software Using AOP)

  • 이선미;서광익;최은만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2010년도 한국컴퓨터종합학술대회논문집 Vol.37 No.1(B)
    • /
    • pp.59-63
    • /
    • 2010
  • 소프트웨어가 실행되는 인프라와 물리적인 환경이 바뀜에 따라 변경이 필요한 경우가 갈수록 많아지고 있다. 특히 사용자 인터페이스 방식이나 플랫폼이 바뀌는 모바일 소프트웨어의 경우 설계 과정에 쉽게 전환할 수 있는 융통성을 고려하지 않기 때문에 레거시 프로그램을 새로운 환경에 맞게 변환하거나 동적으로 적응시키기 위한 기술이 필요하다. 본 논문에서는 분리된 관심사를 정의할 수 있는 AOP(Aspect-Oriented Programming) 기술을 이용하여 새로운 사용자 인터페이스 방식이나 새로운 플랫폼에 적응시키는 방안을 제안한다. 이 방법으로 적응이 어려운 레거시 시스템을 동적으로 적응시킬 수도 있으며 재사용할 수도 있다.

  • PDF

AOP를 이용한 재공학에서의 핫 스팟 탐색과 응용 (Method and Application of Searching Hot Spot For Reengineering Software Using AOP)

  • 이의성;최은만
    • 정보처리학회논문지D
    • /
    • 제16D권1호
    • /
    • pp.83-92
    • /
    • 2009
  • 현실 세계의 복잡한 비즈니스 로직들이 프로그램 내부에 투영되면서 시스템의 복잡도는 갈수록 높아지고 있다. 이러한 높은 복잡도를 가지는 프로그램도 그 생명주기 동안 재공학을 거쳐야 하는 것은 필연적일 것이다. 다양한 목적으로 가해지는 재공학 작업에서 그 작업의 대상이 되는 핫 스팟 예측은 매우 중요하다. 일반적으로 레거시 시스템의 재공학 작업은 UML과 코드 분석을 기반으로 예측한다. 또한 그 예측 단위는 클래스 혹은 유닛(함수) 단위가 된다. 그러나 함수 내부의 코드의 량이 갈수록 커져가고 있고 더 미세한 핫 스팟을 찾기 위하여 클래스 단위의 탐색보다 더 미세한 부분의 탐색이 필요하다. 본 논문에서는 AOP를 이용한 문장 단위의 핫 스팟 검출 기법을 제안한다. 기존의 기법에서 요구하던 핫 스팟 검출을 위한 UML과 코드 분석, 또한 이 둘 사이의 일치성과 관계없이 동적으로 AOP를 이용하여 레거시 시스템의 실행 정보를 기록하는 동적 이벤트 로그 데이터를 생성한다. 이를 바탕으로 핫 스팟을 예측하고 슬라이싱하는 방법을 제안하였다.