• 제목/요약/키워드: Aspect Oriented Programming

검색결과 55건 처리시간 0.029초

Aspect-Oriented Programming을 이용한 Source Code 분석 시스템 설계 (A Design of Source Code Analysis System Using Aspect Oriented Programming)

  • 최민용;양해술
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2002년도 추계학술발표논문집 (하)
    • /
    • pp.2107-2110
    • /
    • 2002
  • 소프트웨어를 설계, 구현하는데 있어서의 어려움이란 주변 환경이나 제반 기술 등과 같은 어려움도 있겠지만 실제 프로그래머가 작성하는 소스코드의 복잡성도 그 원인중의 하나라 할 수 있다. 이와 같은 문제의 해결을 위해서는 소스코드의 접근이나 이의 테스트를 위한 결합 등의 유연성이 높은 소프트웨어 기술이 필요한 실정이다. 이에 따라 AOP(Aspect-Oriented Programming) 기술을 이용하여 소스코드 자체의 접근 및 그의 처리를 용이하게 하여 복잡한 시스템의 개발이나 기존 시스템의 관리에 있어 효율을 높이고자 한다.

  • PDF

AOP를 적용한 프로덕트 라인 가변기능의 구현 (Implementation of Software Product-Line Variabiliy Applying Aspect-Oriented Programming)

  • 허승현;최은만
    • 정보처리학회논문지D
    • /
    • 제13D권4호
    • /
    • pp.593-602
    • /
    • 2006
  • 소프트웨어 개발 방법론은 자원의 재사용을 통하여 생산성을 향상시키고, 제품을 만들어 시장에 배포하기까지 소요되는 시간인 time-to-market을 감소시킬 목적으로 발전되어왔다. 이러한 방법 중의 하나인 프로덕트 라인을 구현하는 기존의 방법은 중심 자원에 대한 간섭이 심하여 가변적 기능과의 조합 절차에서 많은 비용을 요구하므로 기대만큼의 효과를 얻기 힘든 상황이다. 본 논문에서는 소프트웨어 프로덕트 라인의 조합 프로세스를 개선한 방법으로 관점 지향 프로그래밍(Aspect-Oriented Programming)을 도입한다. AOP의 문법 요소인 결합점(join point) 과 교차점(pointcut), 충고(advice)를 이용하여 중심 자원과 가변적 기능을 코드 변경 없이 조합하는 방법을 소개하고, 간단한 시스템을 사례로 들어 관점 지향 개념을 적용하여 요구를 분석 하고 UML로 설계한다. 설계 단계에서 도출된 가변 기능은 구현 단계에서 관점 지향 언어인 AspectJ를 이용하여 중심 기능과 결합한다. 이 실험을 통하여 효율적인 프로덕트 라인의 구현을 보이고, 유용성과 실용성을 입증한다.

관점지향 프로그램 기반의 동적 소프트웨어 컴포넌트 조합 패턴 (Dynamic Software Component Composition Based On Aspect-Oriented Programming)

  • 배성문;박철순;박춘호
    • 산업경영시스템학회지
    • /
    • 제31권4호
    • /
    • pp.100-105
    • /
    • 2008
  • Cost reduction, time to market, and quality improvement of software product are critical issues to the software companies which try to survive in recent competitive market environments. Software Product Line Engineering (SPLE) is one of the approaches to address these issues. The goal of software product line is to maximize the software reuse and achieve the best productivity with the minimum cost. In software product line, software components are classified into the common and variable modules for composition work. In this paper, we proposed a dynamic composition process based on aspect-oriented programming methodology in which software requirements are classified into the core-concerns and cross-cutting concerns, and then assembled into the final software product. It enables developers to concentrate on the core logics of given problem, not the side-issues of software product such as transactions and logging. We also proposed useful composition patterns based on aspect oriented programming paradigm. Finally, we implemented a prototype of the proposed process using Java and Aspect to show the proposed approach's feasibility. The scenario of the prototype is based on the embedded analysis software of telecommunication devices.

AOSD기반에서 Aspect의 동적결합을 위한 Connector (Connector for Dynamic Composition of Aspects Based on AOSD)

  • 김태웅;김태공
    • 정보처리학회논문지D
    • /
    • 제13D권2호
    • /
    • pp.251-258
    • /
    • 2006
  • 영역지향 소프트웨어 개발 방법론(Aspect-Oriented Software Development)은 소프트웨어의 성능을 향상시키고 유지보수에 많은 이점을 가지는 새로운 소프트웨어 개발 방법론이다. 또한 기존의 프로그래밍 언어가 제공하지 못하는 보안이나 결함 내성과 같은 부가기능에 대해 모듈화하는 방법을 제공하고 있다. 하지만 AOSD기반으로 소프트웨어를 개발하기 위해서는 Aspect를 지원하는 새로운 영역지향 프로그래밍 언어를 사용하거나 레거시 시스템에 Aspect를 적용할 경우에 소스코드의 재 컴파일등과 같은 문제점을 가지고 있다. 이에 본 논문에서는 레거시 시스템에 Aspect를 동적으로 결합할 수 있는 Connector를 제안하고 설계한다. 이를 위하여 Core와 Aspect가 가지는 오퍼레이션에 대한 정보와 XML로 기술된 pointcut정보를 이용한다. 또한 사례연구를 통하여 제안된 Connector를 사용하기 위해 새로운 영역지향 컴파일러가 필요 없고, 레거시 시스템의 수정도 발생하지 않음을 보여 그 유효성을 검증한다.

이벤트 상관 기반의 네트워크 관리 시스템을 위한 복합 이벤트 모델의 설계 (The Design of an Extended Complex Event Model for the Event Correlation Based Network Management Systems)

  • 이기성;이창하;이찬근
    • 한국정보과학회논문지:정보통신
    • /
    • 제37권1호
    • /
    • pp.8-15
    • /
    • 2010
  • 본 연구에서 우리는 복합 이벤트(complex event)와 관점지향 프로그래밍(aspect-oriented programming)을 함께 고려하여 확장된 복합 이벤트 모델을 제시한다. 우리는 이 두 모델의 통합을 통해 이벤트 상관 기반의 네트워크 관리 시스템에 적합한 진보된 이벤트 명세 방법을 제안한다. 구체적으로, 계층적 이벤트 구조를 지원하도록 모델을 확장하고 관점지향 프로그래밍의 교차점(point cut)을 이벤트로 인식하도록 한다. 또한 이벤트 명세를 인스턴스(instance) 단위로 할 수 있도록 이벤트 연산자를 제공하고 시간적 관계를 원활하게 표현할 수 있도록 한다. 마지막으로 다른 이벤트 모델과의 비교를 통해 본 이벤트 모델의 장점을 제시한다.

관점지향 프로그래밍 및 리플렉션 기반의 동적 웹 서비스 조합 및 실행 기법 (A Dynamic Web Service Orchestration and Invocation Scheme based on Aspect-Oriented Programming and Reflection)

  • 임은천;심춘보
    • 한국컴퓨터정보학회논문지
    • /
    • 제14권9호
    • /
    • pp.1-10
    • /
    • 2009
  • 웹 서비스 조합 분야는 단일 서비스를 재사용하여 가치 있는 서비스를 생성하기 위해 등장했으며, 최근에는 차세대 웹 서비스인 시멘틱 웹을 구현하기 위해 IOPE를 기반으로 단순 검색 및 조합 대신에 규칙이나 AI를 통한 검색 및 조합 방법이 제안되고 있다. 또한 보다 효율적인 모듈화를 위해 기존의 객체지향 프로그래밍 방식보다는 관점지향 프로그래밍 방식이 도입되고 있다. 본 논문에서는 시멘틱 웹을 위해 관점지향 프로그래밍(Aspect-Oriented Programming, AOP) 및 리플렉션(Reflection)을 적용한 동적 웹 서비스 조합 및 실행 기법을 설계한다. 제안하는 기법은 웹 서비스의 메타 데이터를 동적으로 획득하기 위해 리플렉션 기법을 사용하고 아울러 동적으로 웹 서비스를 조합하기 위해 AOP 기반 접근방식을 통해 바이트 코드를 생성한다. 또한 리플렉션을 이용한 동적 프록시 객체를 통해 조합된 웹 서비스를 실행하는 방식을 제안한다. 제안하는 기법의 성능 평가를 위해 비즈니스 로직 계층과 사용자 뷰 계층 측면에서 조합된 웹 서비스를 검색하는 것에 대한 실험을 수행한다.

AOP를 이용한 웹 애플리케이션의 보안성 강화 방안 (A Method for Security Strengthening of Web Application using AOP)

  • 선수림;이금석
    • 한국컴퓨터정보학회논문지
    • /
    • 제14권2호
    • /
    • pp.119-128
    • /
    • 2009
  • 웹 애플리케이션과 웹 기반 정보 시스템의 이용이 증가하면서 웹 애플리케이션 공격도 증가하고 있다. 다양한 웹 공격 중에 사용자에게 큰 손해를 입힐 수 있는 공격으로 최근에 크로스사이트 요청 변조(Cross Site Request Forgery, XSRF) 공격이 대두되고 있다. 하지만 기존에 개발되어 운영되고 있는 애플리케이션에 이런 공격을 막기 위해 보안 기능을 추가하는 것은 기업이나 조직에 많은 비용과 위험을 초래할 수 있다. 이러한 보안 기능을 레거시(legacy) 시스템에 효과적으로 적용하기 위해 관점 지향 프로그래밍(Aspect-Oriented Programming, AOP)에서 제공하는 모듈화의 장점을 이용하여 관심사(concern)를 분리한다. 본 논문에서는 JEE(Java Enterprise Edition) 환경의 시스템에서 관점 지향프로그래밍의 애스펙트(aspect)를 이용하여 크로스사이트요청 변조 공격을 탐지하고 방어하는 접근방법을 제시한다.

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.