• 제목/요약/키워드: 횡단관심사

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

Aspect-Oriented 소프트웨어 개발을 위한 목표-시나리오 모델링 기반의 횡단관심사 식별 및 명세화 방법 (An Identification and Specification Method of Crosscutting Concerns based on Goal-Scenario Modeling for Aspect-Oriented Software Development)

  • 김선화;김민성;박수용
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제35권7호
    • /
    • pp.424-430
    • /
    • 2008
  • 관점지향 소프트웨어 개발방법론(Aspect-Oriented Software Development)에서 가장 중요한 고려사항중 하나는 요구사항 분석단계에서 횡단관심사(Crosscutting Concerns)를 식별하는 것이다. 이는 개발 초기단계에 횡단관심사를 식별함으로써 요구사항의 일관성(consistency)을 증진시켜 시스템의 유지보수를 쉽게 하고, 개발단계의 산출물들 사이의 추적성(traceability)을 제공하여 체계적인 변경관리를 지원할 수 있기 때문이다. 따라서 소프트웨어 개발 초기단계에 횡단관심사를 식별하고, 이를 독립적인 모듈로 구현하는 것을 지원하기 위해서는 다음과 같은 사항들을 고려해야 한다. 첫째, 복잡하게 분산되고 엉킨 요구사항의 관심사를 분리되어야 한다. 둘째, 횡단관심사가 시스템을 횡단하는 시점이 식별되어야 한다. 셋째, 횡단관심사를 구현한 모듈과 이것이 횡단하는 다른 모듈들 사이에 발생할 수 있는 요구사항 충돌을 통합 이전단계에 관리할 수 있는 방법이 지원되어야 한다. 이를 위해 본 논문에서는 목표와 시나리오 기반의 요구사항 분석 방법을 기반으로 횡단관심사를 식별하는 방법을 제안한다. 그리고 제안된 방법을 지능형 로봇 소프트웨어 개발 사례에 적용하여 그 유용성을 검증한다.

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

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

횡단관심사 추적을 위한 관점지향 슬라이싱 기법 (An Aspect-Oriented Slicing Technique Tracing Crosscutting Concern)

  • 박종각;박옥자;유철중
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제35권12호
    • /
    • pp.741-752
    • /
    • 2008
  • 관점지향 소프트웨어 개발방법(AOSD)은 시스템을 관심사별로 분류하고 횡단관심사를 식별하여 애스팩트 클래스로 구성함으로써 높은 유지보수성이 요구되는 사용자 중심의 시스템 설계를 위한 중요한 소프트웨어 개발방법으로 부각되고 있다. 그러나 기존의 관점지향 소프트웨어 개발방법에 대한 연구들은 횡단관심사의 식별과 명세에 대한 연구들과 애스팩트 클래스를 중심으로 하는 시스템 구현에 대한 연구들이 대부분이며, 식별된 횡단관심사의 추적 방법에 대한 연구들은 매우 미흡하였다. 따라서 본 연구에서는 AOSD를 기반으로 시스템 모델링 단계에서의 횡단관심사 추적을 위한 관점지향 슬라이싱 기법을 제안하였다. 유스 케이스들 간의 상호작용 분석을 통해 횡단관심사를 식별하여 명세한 후 식별된 횡단관심사 추적을 위한 슬라이싱 기법을 제시하였으며, 사례연구를 위해 학습관리시스템(LMS)에 이 기법을 적용하였다. LMS는 시스템 기능의 잦은 변경 및 확장 요구가 많은 사이버교육 시스템으로 이 시스템의 개발에 유지보수성을 높이는 AOSD를 적용하는 것은 매우 효과적인 방법이다. 그리고 마지막으로 기존 연구와의 비교분석 결과를 제시하였다.

AspectJ를 지원하는 AOP 개발 프레임워크 (The Aspect Development Architecture for AspectJ)

  • 박옥자;김정옥;김재웅;유철중;장옥배
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2006년도 한국컴퓨터종합학술대회 논문집 Vol.33 No.1 (C)
    • /
    • pp.226-228
    • /
    • 2006
  • 관심사 분리는 소프트웨어 공학에서 핵심 문제로 다루어왔다. 기존의 OOD나 CBD등은 관심사를 분리하여 모듈화함으로써 프로그램 개발 및 유지보수를 용이하도록 발전해왔다. 하지만, 에러 처리나 로깅과 같이 여러 모듈에 산재되어 실행되는 횡단 관심사는 기존의 방법으로 해결하기 어려웠다. AOP는 이와 같은 횡단 관심사를 처리하려는 데 목적을 두고 제안된 방법으로 기존의 OOD나 CBD의 단점을 보완하면서 병행적으로 발전해왔다[1]. AOP가 나타난 가장 큰 특징은 기존의 개발 방법론을 기반으로 핵심 관심사를 개발하고 해결하기 어려운 횡단 관심사는 AOP로 개발하려는데 초기 목적을 두고 있다. 하지만, 대부분의 연구가 초기 요구사항 분석 단계에서 관심사를 명시하는데 초점을 두고 있을 뿐 구현 단계에서 효율적인 접근 방법은 아직 부족한 편이다. 본 논문에서는 Java와 AspectJ를 이용하여 구현한 간단한 사례 연구를 적용한 AOP 개발 프레임워크를 제안한다. AOP 개발 프레임워크에서는 관심사 분리, 구현, 평가의 세 단계를 기술한다. 이 중 구현단계에서는 핵심 관심사와 횡단 관심사 구현에 초점을 두고 AOP 기법에 쉽게 접근할 수 있는 방법을 기술하고 있다. 프레임워크는 프로그램 개발을 보다 용이하게 하고 확장 및 유지보수시 많은 시간을 단축시키려는데 있다.

  • PDF

관점 지향 개발 방법론에서 횡단 관심사 구현 명세 기법 (On Specification of Crosscutting Concerns in AOSD)

  • 박옥자;박종각;최유순;유철중;장옥배
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2006년도 가을 학술발표논문집 Vol.33 No.2 (C)
    • /
    • pp.453-457
    • /
    • 2006
  • 프로그램 구현 방법에 편중되어온 기존의 AOSD 방법론이 최근에는 전체 개발 라이프사이클에서 초기 요구사항의 중요성이 강조되면서 요구사항 모델링, 분석, 설계분야에서 많은 연구가 진행되고 있다. 하지만, 요구사항 분석에서 추출된 관심사를 설계하여 구현 단계로 변환하는 과정에서 아직까지 상세화된 프로세스가 부족하다. 본 논문에서는 횡단 관심사 구현 명세 기법을 제시한다. 이 기법은 추출된 관심사를 구현 코드로 변환하기 위한 4단계의 프로세스로 구성되어 있다. 상세화된 명세 기법과 가이드라인은 AOSD에서 해결하기 어려운 설계에서 구현간의 갭을 줄여줌으로써 이해 및 유지보수성을 높여준다.

  • PDF

애스펙트와 목표의 결합정보 중심 애스펙트 명세 기법 (A Specification Technique for Aspects Focusing on Join Information Between Aspects and Targets)

  • 최윤석;정기원
    • 정보처리학회논문지D
    • /
    • 제15D권5호
    • /
    • pp.669-680
    • /
    • 2008
  • 로깅이나 보안 등과 같은 횡단관심사를 효과적으로 모듈화하고 적용하는 관점지향 프로그래밍에 대한 다양한 연구가 진행되고 있다. 그러나 횡단관심사를 모듈화 한 애스펙트의 정보 및 애스펙트와 목표의 결합 정보를 명세하는 기법에 대한 연구가 필요한 상황이다. 본 논문에서는 애스펙트와 목표 모듈의 결합 관계를 명확히 하는 애스펙트 명세 기법을 제안한다. 제안한 기법은 애스펙트 명세, 우선순위 결정, 결합정보 명세, 그리고 교차점 명세 단계를 수행하여 애스펙트 정보를 명세한다. 애스펙트와 목표 모듈 사이의 결합 관계를 표현하는 결합정보 매트릭스를 기술하며, 결합점의 공통성을 분석하여 교차점 명세서를 기술한다. 제안한 명세기법은 애스펙트 및 애스펙트와 목표 모듈의 결합에 대한 구체적인 정보를 제공하며, 이를 통해 애스펙트 구현에 필요한 상세한 정보를 사용할 수 있다.

관점지향 프로그래밍 기법을 이용한 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 기반의 트랜잭션 라우팅 알고리즘 (AOP-based Transaction Routing Algorithm)

  • 강현식;이석훈;백두권
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2014년도 춘계학술발표대회
    • /
    • pp.704-707
    • /
    • 2014
  • 데이터베이스 복제(Replication)는 데이터의 저장과 백업하는 방법과 관련이 있는 데이터를 호스트 컴퓨터에서 다른 컴퓨터로 복사하는 것이다. 데이터베이스 복제의 종류로는 마스터/슬레이브(Master/Slave), 멀티마스터(Multi-Master)형태가 존재한다. 멀티마스터 데이터베이스는 상당한 비용증가와 복잡도 때문에 어떤 상황에서는 실용적이지 않다. 그러한 이유로 마스터/슬레이브 데이터베이스를 많이 사용한다. 마스터/슬레이브 데이터베이스에서 마스터 데이터베이스는 데이터베이스의 변경을 담당하고 그 결과는 슬레이브로 복제된다. 슬레이브 데이터베이스에서는 읽기 전용 질의만 처리하는 것을 목적으로 한다. 데이터베이스 트랜잭션 처리는 대표적인 횡단 관심사이다. 연구는 마스터/슬레이브 데이터베이스의 트랜잭션을 AOP 를 사용하여 횡단 관심사로 분리하고, 마스터/슬레이브 데이터베이스를 라우팅하는 알고리즘을 제안한다.

관점지향 프로그래밍을 적용한 실행시간 누설전력 관리 모델 설계 (Design of a management model for runtime leakage power using Aspect-Oriented Programming)

  • 김영민;이찬근
    • 소프트웨어공학소사이어티 논문지
    • /
    • 제24권1호
    • /
    • pp.27-33
    • /
    • 2011
  • 최근 임베디드 시스템이 발전함에 따라서 저 전력에 대한 요구가 중요한 관심사가 되었다. 하지만 전력 관리 코드가 핵심 관심사 코드와 횡단 결합되어 있기 때문에 가독성과 유지보수성을 저하시키는 원인이 된다. 본 연구에서는 실행시간 동안 발생하는 누설전력을 감소시키기 위한 디바이스 사용에 집중한 전력관리 모델을 제시하고, 이러한 전력관리 모델에 관점지향 프로그래밍을 적용하여 전력관리 코드를 핵심관심사 코드와 분리한다. 마지막으로 제시한 전력관리 모델을 이론적인 방법과 실험적인 방법으로 평가한다.

  • PDF