• 제목/요약/키워드: 관점지향 프로그래밍

검색결과 35건 처리시간 0.034초

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)를 이용하여 크로스사이트요청 변조 공격을 탐지하고 방어하는 접근방법을 제시한다.

결합정보 매트릭스를 활용한 애스펙트 결합식 추출 기법 (An Extracting Technique of Join Expressions of Aspects Using The Join Information Matrix)

  • 최윤석;정기원
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2008년도 추계학술발표대회
    • /
    • pp.488-491
    • /
    • 2008
  • 관점지향 프로그래밍은 횡단관심사를 애스펙트로 모듈화 하여 시스템의 개발 용이성, 재사용성 그리고 확장성을 향상시킨다. 이에 관점지향 프로그래밍 적용을 위한 다양한 연구가 진행되고 있으나 애스펙트를 효율적으로 개발하는 기법 관련 연구가 보다 필요한 상황이다. 본 논문에서는 애스펙트의 교차점을 구성하는 핵심요소인 결합식 추출을 위한 기법을 제안한다. 제안한 기법은 결합정보 매트릭스 작성, 결합식 작성, 그리고 결합식 정제 및 확인으로 구성한 워크플로우를 수행하여 결합정보 매트릭스와 패키지 트리를 작성하고, 결합점명 패턴의 공통성을 분석하여 애스펙트 교차점의 결합식을 추출한다. 추출한 결합식은 결합점의 패키지명, 클래스명, 그리고 메소드명 패턴의 공통성을 반영하며, 기법의 산출물은 애스펙트 결합에 대한 정확한 정보를 제공한다.

탑재소프트웨어 프로그래밍 언어 비교 - C vs. ADA

  • 박수현;구철회;강수연;이상곤
    • 한국우주과학회:학술대회논문집(한국우주과학회보)
    • /
    • 한국우주과학회 2009년도 한국우주과학회보 제18권2호
    • /
    • pp.46.2-46.2
    • /
    • 2009
  • 탑재소프트웨어는 위성의 자세, 전력, 열 제어를 담당하는 소프트웨어로서 위성의 탑재컴퓨터 상에서 실행된다. 탑재소프트웨어는 추력기, 배터리, 온도조절장치와 같은 위성의 하드웨어 장치를 자치적으로 관리한다. 지상에서 위성을 운영할 수 있도록 탑재소프트웨어는 지상으로부터 명령을 받아서 처리하고, 위성의 텔레메트리 데이터를 지상으로 전송한다. 위성의 탑재소프트웨어를 프로그래밍하기 위하여 C 언어와 ADA 언어가 주로 사용된다. 이 논문에서는 소프트웨어 디자인과 하위레벨 프로그래밍 관점에서 C 언어와 ADA 언어를 비교 분석한다. 프로그래밍언어는 소프트웨어 디자인과 불가분의 관계에 있다. 이 논문은 프로그래밍언어와 함께 다목적실용위성과 통신해양기상위성의 소프트웨어 디자인을 소개한다. 다목적실용위성의 탑재소프트웨어는 절차 지향언어인 C로 작성되었으며, 함수 호출을 기반으로 설계되었다. 통신해양기상위성의 경우, 객체지향언어인 ADA로 작성되었으며, HOOD(Hierarchical Object-Oriented Design) 기법에 따라 모델링되었다. 탑재소프트웨어 프로그래밍언어는 위성의 탑재 하드웨어와 직접적으로 상호작용하도록 요구된다. 이 논문은 C와 ADA 언어가 메모리주소 및 로우 스토리지를 다루는 방법을 보여준다.

  • PDF

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

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

임베디드 시스템 소프트웨어 개발을 위한 관점지향프로그래밍 방식의 예외원인분석 (Analyzing Exceptions for Embedded System Software Development using Aspect Oriented Programming)

  • 주재호;김태형
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제15권5호
    • /
    • pp.355-359
    • /
    • 2009
  • 소프트웨어에서 예외가 발생할 때 원인분석을 해야 할 때가 있다. 이를 위해서 문제상황을 반복 재현하면서 관찰하게 되는데, 이 때 문제가 발생하는 양상이 규칙적이지 않다면 원인을 분석하는 것이 쉽지 않다. 특히 임베디드 시스템 혹은 이동통신단말기의 경우처럼 개발용 컴퓨터와 개발목적 장치가 분리된 경우에는 원인분석을 위한 시간과 노력이 배가되므로 개발자 부담을 가중시켜서 개발생산성을 극도로 악화시키는 요인이 된다. 본 논문에서는 임베디드 시스템과 이동통신단말기 디버그 중 예외 발생경로를 쉽게 확인할 수 있도록, 관점지향프로그래밍(Aspect Oriented Programming) 방식의 예외원인 분석 방법을 제안한다. 원인이 모호하고 발생빈도가 불규칙적인 예외발생 원인을 규명하기 위해서 예외발생 당시의 함수호출 경로를 추적해야 하므로 소모적인 시간과 노력을 필요로 하는데, 제안하는 방식은 예외 발생시 함수호출 경로를 로그 메모리 형태로 즉시 제공해 줌으로써 기존의 디버깅 방법에서 획득할 수 없는 개발자 편의성을 획기적으로 증대시킨다.

관점 지향 프로그래밍을 이용한 컴포넌트의 테스트 프로시저 모듈화 방안 (Modularization of Test Procedures using Aspect-Oriented Programming)

  • 허승현;최은만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2006년도 한국컴퓨터종합학술대회 논문집 Vol.33 No.1 (C)
    • /
    • pp.241-243
    • /
    • 2006
  • 소프트웨어의 재사용으로 인한 생산성 향상을 기대하면서, 컴포넌트 기반 개발(Component Based Development)에 관련한 연구가 지속적으로 이루어지고 있으며, 그 중 컴포넌트의 테스트 연구는 컴포넌트를 배포하고, 재사용하기 위해 검증하는데 기여하며 발전해 왔다. BIT(Built-In Test)와 컴포넌트 테스트를 위한 래퍼 클래스에 관한 연구가 대표적이다. 본 논문에서는 테스트 모듈의 산재를 방지하고, 유지보수성과 추적성 개선을 위해 테스트 프로세저를 모듈화하는 방안을 연구하였으며, 이를 위해 관점 지향 프로그래밍 개념을 도입하였다.

  • PDF

객체지향 환경과 EDP 감사기법의 응용

  • 조기작
    • 한국정보시스템학회:학술대회논문집
    • /
    • 한국정보시스템학회 1997년도 추계학술대회논문집 기업경쟁력 향상을 위한 정보통신 기술의 활용
    • /
    • pp.451-460
    • /
    • 1997
  • RDB나 기존의 ISAM 파일이 검색과 저장의 효율성이 높을지라도 다양한 형태의 자료 저장 능력과 프로그래밍의 효율성 부족에 대한 대안으로 객체지향 프로그래밍과 객체 지향 DB의 활용이 확대되고 있는데 1996년, 미국의 경우 활용기업의 비율이 15%정도에 이르며 증가추세에 있는 것으로 나타났다. 본 연구는 OOP, OODB를 EDP 감사의 관점에서 연구하는 것으로 전통적 EDP 감사도구와 기법을 객체지향모형에 적용가능한지와 적용시에 예상되는 문제점을 검토하려는 것이다. 주요한 EDP 감사도구와 기법중 입출력에 초점을 두 는 Test Data, Integrated Test Data/Facility에는 적용이 비교적 쉽지만 처리과정에 초점을 두는 Embeded Audit Module, GAS 등에는 구현을 위한 메소드의 수정이나 설치상의 문제 가 큰 것으로 보인다. 그러므로 GAS를 구현할 때 감사모듈을 설치하는 절충법이 필요한 것 으로 보인다.

  • 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를 이용하여 중심 기능과 결합한다. 이 실험을 통하여 효율적인 프로덕트 라인의 구현을 보이고, 유용성과 실용성을 입증한다.

특성 지향의 제품계열공학을 위한 애스팩트 구현 패턴 (Aspectual Implementation Patterns for Feature-Oriented Product Line Engineering)

  • 이관우
    • 정보처리학회논문지D
    • /
    • 제16D권1호
    • /
    • pp.93-104
    • /
    • 2009
  • 특성 지향 제품계열공학은 특성 관점에서 제품계열의 핵심자산을 개발하고 이를 활용하여 제품을 개발하는 접근방법으로서, 이를 위한 첫번째 단계는 하나의 특성을 하나의 모듈화된 단위로 구현하는 것이다. 관점 지향 프로그래밍은 특성 구현의 모듈화를 향상시키기 위한 효과적인 메커니즘을 제공한다. 하지만, 특성이 일반적으로 서로 독립적이지 않기 때문에 어떤 특성 구현 모듈의 변화는 다른 특성 구현 모듈에 변화를 일으키거나 원하지 않는 부작용을 야기시킬 수도 있다. 뿐만 아니라, 하나의 특성이 제품에 결합되는 시점이 컴파일 시점에서부터 로드 시점, 실행 시점에 이르기까지 다양할 수 있으므로, 특성이 언제 제품에 결합하느냐에 따라 다르게 구현되어야 할지도 모른다. 따라서, 본 논문에서는 각 특성 구현 모듈이 다른 모듈과 독립적이 되도록 하기 위해서, 특성 구현 모듈로부터 특성 의존성 및 특성 결합 시점을 효과적으로 분리시킬 수 있는 애스팩트 패턴을 제안한다. 이러한 패턴들은 특성 구현 모듈이 특성의 선택에 따라서 다른 모듈에 영향을 주지 않고 유연하게 합성될 수 있도록 한다. 이와 같은 접근 방법을 예시하고 평가하기 위해 공학용 계산기 제품계열을 사용한다.