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

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

동적 이벤트 처리 기반의 RFID 시스템을 위한 애스펙트 모듈 설계 (Aspect module design for dynamic event based RFID system)

  • 박세승;황희정;최진탁
    • Journal of the Korean Society for Industrial and Applied Mathematics
    • /
    • 제10권2호
    • /
    • pp.11-25
    • /
    • 2006
  • 현재 RFID 미들웨어의 표준은 RFID 표준을 주도하고 있는 EPCglobal의 ALE(Application Level Event) 이며 시스템 인프라스트럭처에 독립적으로 운영 될 수 있도록 최소한의 인터페이스와 확장점 만을 제시하고 있다. 그러나 확장점을 통한 기능의 확장에 대한 부분은 표준화 되어 있지 않으며 운영중에 있는 시스템에 적용하기 위해서는 새로운 코드를 추가 하거나 변경해야 하는 문제점이 있다. 본 논문에서는 이러한 문제점 해결을 위해 AOP(Aspect Oriented Programming) 기법을 도입한 동적 ALE 미들웨어 프레임워크를 제시하고 이를 구현하기 위한 애스펙트를 설계했다. 설계된 미들웨어 프레임워크 및 애스펙트는 동적인 기능의 확장을 제공해 기존 ALE 기반 미들웨어의 기능확장에 따르는 유지보수의 어려움을 해결하고 표준화된 방법으로 새로운 기능을 추가할 수 있다.

  • PDF

관점지향 프로그래밍을 이용한 후크 기반의 임베디드 소프트웨어 테스팅 (Hook-based Embedded Software Testing by using Aspect-Oriented Programming(AOP))

  • 마영철;최윤희;최은만
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.318-321
    • /
    • 2010
  • 임베디드 소프트웨어를 테스트하고 디버깅하려면 기능 분석, 프로세스 추적, 메모리 디버깅 등 다양한 기술들이 존재한다. 하지만 테스터가 임베디드 시스템 내부의 컴포넌트들의 사이에 결함을 발견하고 그 위치를 찾아야 하는 경우, 디버깅 기술과 도구만으로는 한계가 있다. 만약 테스터가 테스트 도구를 이용할 경우 이런 단점을 보완할 수 있지만 다양한 임베디드 시스템 환경에서는 테스트 환경만을 구축하는 데도 많은 노력과 시간이 소요된다. 따라서 이러한 문제 해결하기 위하여 본 논문에서는 관점 지향 프로그래밍(Aspect-Oriented Programming)을 사용한 후크(Hook) 개념을 적용하여 새로운 테스팅 아키텍처를 제안한다.

관점지향 기법의 상황인지를 지원하는 BPEL 워크플로우 시스템 (A Context-aware BPEL Workflow System using Aspect-Oriented Programming)

  • 김민석;곽동규;최종선;최재영
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.207-210
    • /
    • 2011
  • 표준 워크플로우 언어로 가장 인지도가 높은 BPEL은 분기를 통한 플로우선택에 있어 상황정보를 기술하기 어려워 유비쿼터스 컴퓨팅 환경에 적용하기 어렵다. 이를 위해 본 논문에서는 모듈간 낮은 결합도를 보장하는 관점지향 프로그래밍 (AOP: Aspect-Oriented Programming) 기법을 사용하여 기존 BPEL 워크플로우 시스템에 상황인지 기능을 추가한 시스템을 제안한다. 제안하는 상황인지 워크플로우 시스템은 AOP 기법을 사용하여 BPEL 워크플로우에 상황에 따른 서비스를 제공하기 위한 Context 정보를 삽입하는 방식으로 개발함으로써, 기존 BPEL 문서를 수정할 필요 없이 상황인지 기능을 적용한 워크플로우의 생성이 가능하다. 본 논문에서는 시나리오 기반의 실험을 통하여 제안한 시스템을 입증한다.

AOP를 사용한 데이터베이스 트랜잭션 라우팅 알고리즘 (Database Transaction Routing Algorithm Using AOP)

  • 강현식;이석훈;백두권
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제3권11호
    • /
    • pp.471-478
    • /
    • 2014
  • 데이터베이스 복제(Replication)는 분산 데이터베이스 환경에서 신뢰성, 가용성, 과부하 방지 등을 위하여 이용되며, 마스터/슬레이브(Master/Slave), 멀티마스터(Multi-Master)와 같이 두 가지 모델이 존재한다. 멀티마스터 데이터베이스는 다중 데이터베이스에 삽입 및 갱신을 위한 동기화에 따른 복잡도 증가와 비용 증가와 같은 문제를 지닌다. 이러한 이유로 데이터의 삽입과 수정이 빈번히 일어나는 환경에는 마스터/슬레이브 모델을 이용한 데이터베이스 복제가 적합하다. 하지만 마스터/슬레이브 데이터베이스 역시 시스템에서 각 트랜잭션이 마스터로 접속해야 할지, 슬레이브로 접속해야 할지를 선택하기 위한 기준이 명확히 존재하지 않는 문제를 지닌다. 따라서 이 연구에서는 마스터/슬레이브 데이터베이스 모델에서 AOP(Aspect Oriented Programming) 기반의 데이터베이스 트랜잭션 라우팅 알고리즘을 제안한다. 이를 위하여 AOP에 기반하여 애플리케이션을 횡단 관심사로 분리하고 각 관심사들을 모듈화 하여 트랜잭션을 마스터 데이터베이스 및 슬레이브 데이터베이스로 라우팅한다. 이 논문은 시나리오 기반의 기능 통합 테스트를 통하여 제안 알고리즘의 안정성(Stability) 및 성능이 우수함을 평가한다.

동적 기능 추가를 위하여 관점지향 프로그래밍 기법을 이용한 BPEL 엔진의 설계와 구현 (Design and Implementation of a BPEL Engine for Dynamic Function using Aspect-Oriented Programming)

  • 곽동규;최재영
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제37권4호
    • /
    • pp.205-214
    • /
    • 2010
  • BPEL은 웹 서비스와 상호작용하는 워크플로우 언어의 표준으로서 다양한 응용에서 사용되고 있다. 하지만 특정 응용에서는 BPEL에 없는 추가적인 기능이 요구되어 적용하기 어렵다. 본 논문은 관점지향(aspect-oriented) 프로그래밍 기법을 이용하여 BPEL 엔진에 새로운 기능을 추가할 수 있는 시스템을 보인다. BPEL에 새로운 기능을 동적으로 추가하기 위해 새로운 기능을 기술할 수 있는 JWX 문서를 정의하고, 이를 BPEL에 적용하기 위한 관점지향 프로그래밍 기법의 시스템을 제안한다. JWX 문서는 BPEL 문서에 새로운 기능을 추가하기 위하여 자바 프로그램을 기술할 수 있는 XML 기반의 문서이다. 관점지향 프로그래밍 기법은 핵심적인 요구사항과 부가적인 요구사항 사이의 낮은 결합도를 보장하고 있으므로 기존의 프로그램을 수정하지 않고 기능을 추가할 수 있다. 또한 본 시스템은 B2J라는 BPEL 엔진을 관점지향 프로그래밍 기법을 통해 확장하여, 자바 프로그램과 JWX 문서의 새로운 기능 프로그램을 직조하고 실행시킨다. 이 방법을 이용하면, B2J가 제공하는 BPEL의 기능은 그대로 사용하면서 새로운 기능만 개발하여 적은 노력과 비용으로 기능이 추가된 BPEL 엔진을 개발할 수 있다. 본 시스템은 현재 BPEL이 제공하고 있지 않은 조건을 처리할 수 있는 규칙엔진을 BPEL에 추가하거나, 상황인지 환경에 사용할 수 있는 BPEL 워크플로우 시스템을 연구하는데 이용할 수 있다.

훅과 Decorator 패턴을 이용한 Aspect 동적 위버 아키텍처 설계 (Aspect Dynamic Weaver Architecture Design using Hook and Decorator Pattern)

  • 김진향;송영재
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 한국컴퓨터종합학술대회 논문집 Vol.32 No.1 (B)
    • /
    • pp.400-402
    • /
    • 2005
  • 동적 Aspect 프로그래밍(Aspect-Oriented Programming : AOP)은 로깅과 같은 비 기능적인 부분을 모듈화할 수 있도록 해주는 새로운 프로그래밍 기법이다. AOP는 절러 클래스에 영향을 미치는 행위들을 재사용 가능하도록 Aspect로 캡슐화 시켜준다. 기존의 Aspect 위버(weaver)에서는 Aspect를 위빙 할 경우, 새로운 서비스나 메소드를 추가하고자 한다면 서브클래스를 별도로 상속을 해주어야하며, 이로 인해 코드의 라인수가 증가되며, 수행 시간도 느려지게 된다. 이러한 문제점을 해결하기 위하여 동적 Aspect 위버 상에 Decorator 패턴을 적용하여 별도의 서브클래스를 상속하지 않고, 필요한 메소드만을 추가하여 위빙시키고, Aspect의 join point에 훅(hook)을 첨가하여 불필요한 메소드의 실행을 제거해준다. 이로 인해 수행속도와 재사용성을 증가시킬 수 있게 된다.

  • PDF

A Reusable SQL Injection Detection Method for Java Web Applications

  • He, Chengwan;He, Yue
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제14권6호
    • /
    • pp.2576-2590
    • /
    • 2020
  • The fundamental reason why most SQL injection detection methods are difficult to use in practice is the low reusability of the implementation code. This paper presents a reusable SQL injection detection method for Java Web applications based on AOP (Aspect-Oriented Programming) and dynamic taint analysis, which encapsulates the dynamic taint analysis processes into different aspects and establishes aspect library to realize the large-grained reuse of the code for detecting SQL injection attacks. A metamodel of aspect library is proposed, and a management tool for the aspect library is implemented. Experiments show that this method can effectively detect 7 known types of SQL injection attack such as tautologies, logically incorrect queries, union query, piggy-backed queries, stored procedures, inference query, alternate encodings and so on, and support the large-grained reuse of the code for detecting SQL injection attacks.

AOP를 위한 동적 결합 메커니즘 (Dynamic Weaving Mechanism for Aspect-Oriented Programming)

  • 김태웅;김경민;김태공
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2006년도 한국컴퓨터종합학술대회 논문집 Vol.33 No.1 (C)
    • /
    • pp.223-225
    • /
    • 2006
  • 영역지향 프로그래밍(Aspect-Oriented Programming)은 소프트웨어의 성능을 향상시키고 유지보수에 많은 이점을 가지는 새로운 프로그래밍 방법론이다. 하지만 영역지향 프로그래밍 방법으로 소프트웨어를 개발하기 위해서는 Aspect를 지원하는 새로운 영역지향 프로그래밍 언어를 사용하거나 레거시 시스템에 Aspect를 적용할 경우에 소스코드의 재 컴파일등과 같은 문제점을 가지고 있다. 이에 본 논문에서는 레거시 시스템에 Aspect를 동적으로 결합할 수 있는 동적결합 메커니즘을 제안한다. 이를 위하여 Aspect의 행위와 결합 정보를 가지는 Connector를 생성하고, 생성된 Connector는 코어클래스의 위임자로서 역할을 수행하게 되는 동적결합 가능하게 하는 메커니즘을 제안한다.

  • PDF

Knowledge-Based AOP Framework for Business Rule Aspects in Business Process

  • Park, Chan-Kyu;Choi, Ho-Jin;Lee, Dan-Hyung;Kang, Sung-Won;Cho, Hyun-Kyu;Sohn, Joo-Chan
    • ETRI Journal
    • /
    • 제29권4호
    • /
    • pp.477-488
    • /
    • 2007
  • In recent years, numerous studies have identified and explored issues related to web-service-oriented business process specifications, such as business process execution language (BPEL). In particular, business rules are an important cross-cutting concern that should be distinguished from business process instances. In this paper, we present a rule-based aspect oriented programming (AOP) framework where business rule aspects contained in business processes can be effectively separated and executed. This is achieved by using a mechanism of the business rule itself at the business rule engine instead of using existing programming language-based AOP technologies. Through some illustrative examples, this work also introduces a method by which business rule aspects, separated through an external rule engine, can be represented and evaluated. We also demonstrate how they can be dynamically woven and executed by providing an implementation example which uses two open-source-based products, the Mandarax rules engine and Bexee BPEL engine.

  • PDF