• Title/Summary/Keyword: Aspect-Oriented Programming(AOP)

Search Result 36, Processing Time 0.023 seconds

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

  • Heo Seung-Hyun;Choi Eun-Man
    • The KIPS Transactions:PartD
    • /
    • v.13D no.4 s.107
    • /
    • pp.593-602
    • /
    • 2006
  • Software development methodology has been developed for satisfying goals of improvement in productivity and reduction in time-to-market through the reuse of software assets. The current methods that implement software product-line, one of software development methodologies, interfere massively with the core assets, which require high cost in assembly level reducing the effectiveness. In this paper, we introduce Aspect-Oriented Programming (AOP) as a method for improving assembly process in software product-line. The method that assembles core assets and variabilities is described by grammar elements such as Join point, pointcut and advice without code-change. We analyze requirements of a mini-system as an example adapting AOP and design using UML. Our study implements the variabilities, which are from design stage, using an Aspect-Oriented Programming Language, AspectJ and prove usability and practicality by implementing the proposed idea using an Aspect-Oriented Programming Language, AspectJ.

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

  • Sun, Soo-Rim;Lee, Keum-Suck
    • Journal of the Korea Society of Computer and Information
    • /
    • v.14 no.2
    • /
    • pp.119-128
    • /
    • 2009
  • As use of web applications and web-based information systems increases, so web application attacks are increasing. Recently, XSRF(Gross Site Request Forgery) attacks among a variety of web attacks become important because victim's damage caused by such attacks can be severe. But adding security functions for preventing XSRF attacks to existing developed and running software systems could affect move dangerous and expensive to companies and organizations. We suggest effectively adding these security functions to legacy systems, could separate concerns using advantage of the modularity offered by AOP(Aspect-Oriented Programming) methodology. In this paper, we have presented approach for detecting and preventing XSRF in JEE systems using aspect of AOP.

Graphical Aspect-Oriented Programming Framework for Modularizing Real-Time Operating Systems (실시간 운영체제의 모듈화를 위한 그래픽 기반 AOP 프레임워크)

  • 박지용;김세화;홍성수
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10a
    • /
    • pp.307-309
    • /
    • 2003
  • 본 논문에서는 실시간 운영체제(RTOS)를 모듈화 하기 위하여 그래픽 기반의 Aspect-Oriented Programming (AOP) 프레임워크를 제시한다. 기존의 컴포넌트, 객체 지향 방법론, 그리고 최근의 AOP들은 RTOS와 같이 많은 기능들이 복잡하게 연관된 소프트웨어를 모듈화 하는 데는 적합하지 않았다. 본 논문의 새로운 AOP 프레임워크는 다음과 같은 특징을 가지고 있다. 첫째, 클래스나 메소드의 단위를 넘어서서 구현되는 기능들이 어떻게 aspect로 모듈화 되는지를 시각적으로 보여준다. 또한 기존의 AOP와 같이 여러 aspect들을 이리저리 옮겨 다닐 필요 없이 한 곳에서 코드가 어떤 순서로 수행될 지 알 수 있도록 해 준다. 둘째, 코드를 삽입할 위치를 지정하는 단위를 메소드 단위보다 더 세밀하게 하여 메소드의 수행 중간에 특정 aspect를 위한 코드를 삽입할 수 있도록 하였다. 그래서 하나의 메소드에 여러 aspect가 복잡하게 관여하는 경우가 많은 RTOS를 디자인 할 때 특히 유리하다.

  • PDF

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

  • Lim, Eun-Cheon;Sim, Chun-Bo
    • Journal of the Korea Society of Computer and Information
    • /
    • v.14 no.9
    • /
    • pp.1-10
    • /
    • 2009
  • The field of the web service orchestration introduced to generate a valuable service by reusing single services. Recently, it suggests rule-based searching and composition by the AI (Artificial Intelligence) instead of simple searching or orchestration based on the IOPE(Input, Output, Precondition, Effect) to implement the Semantic web as the web service of the next generation. It introduce a AOP programming paradigm from existing object-oriented programming paradigm for more efficient modularization of software. In this paper, we design a dynamic web service orchestration and invocation scheme applying Aspect-Oriented Programming (AOP) and Reflection for Semantic web. The proposed scheme makes use of the Reflection technique to gather dynamically meta data and generates byte code by AOP to compose dynamically web services. As well as, our scheme shows how to execute composed web services through dynamic proxy objects generated by the Reflection. For performance evaluation of the proposed scheme, we experiment on search performance of composed web services with respect to business logic layer and user view layer.

Regression Testing of Software Evolution by AOP (AOP를 이용하여 진화된 프로그램의 회귀테스트 기법)

  • Lee, Mi-Jin;Choi, Eun-Man
    • The KIPS Transactions:PartD
    • /
    • v.15D no.4
    • /
    • pp.495-504
    • /
    • 2008
  • Aspect Oriented Programming(AOP) is a relatively new programming paradigm and has properties that other programming paradigms don't have. This new programming paradigm provides new modularization of software systems by cross-cutting concerns. In this paper, we propose a regression test method for program evolution by AOP. By using JoinPoint, we can catch a pointcut-name which makes it possible to test the incorrect pointcut strength fault and the incorrect aspect precedence fault. Through extending proof rules to aspect, we can recognize failures to establish expected postconditions faults. We can also trace variables using set() and get() pointcut and test failures to preserve state invariant fault. Using control flow graph, we can test incorrect changes in control dependencies faults. In order to show the correctness of our proposed method, channel management system is implemented and tested by using proposed methods.

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

  • Choi, Min-Yong;Yang, Hae-Sool
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2002.11c
    • /
    • pp.2107-2110
    • /
    • 2002
  • 소프트웨어를 설계, 구현하는데 있어서의 어려움이란 주변 환경이나 제반 기술 등과 같은 어려움도 있겠지만 실제 프로그래머가 작성하는 소스코드의 복잡성도 그 원인중의 하나라 할 수 있다. 이와 같은 문제의 해결을 위해서는 소스코드의 접근이나 이의 테스트를 위한 결합 등의 유연성이 높은 소프트웨어 기술이 필요한 실정이다. 이에 따라 AOP(Aspect-Oriented Programming) 기술을 이용하여 소스코드 자체의 접근 및 그의 처리를 용이하게 하여 복잡한 시스템의 개발이나 기존 시스템의 관리에 있어 효율을 높이고자 한다.

  • PDF

Development of Secure Entrance System using AOP and Design Pattern (관점지향 소프트웨어 개발 방법론과 디자인 패턴을 적용한 출입 보안 시스템 개발)

  • Kim, Tae-Ho;Cheon, Hyeon-Jae;Lee, Hong-Chul
    • Journal of the Korea Academia-Industrial cooperation Society
    • /
    • v.11 no.3
    • /
    • pp.943-950
    • /
    • 2010
  • A secure entrance system is complicated because it should have various functions like monitoring, logging, tracing, authentication, authorization, staff locating, managing staff enter-and-leave, and gate control. In this paper, we built and applied a secure entrance system for a domestic nuclear plant using Aspect Oriented Programming(AOP) and design pattern. Using AOP has an advantage of clearly distinguishing the role for each functional module because building a system separated independently from the system's business logic and security logic is possible. It can manage system alternation flexibility by frequent change of external environment, building a more flexible system based on increased code reuse, efficient functioning is possible which is an original advantage of AOP. Using design pattern enables to design by structuring the complicated problems that arise in general software development. Therefore, the safety of the system can also be guaranteed.

A Relationship Management Service for Consistent References Between Domain Objects (도메인객체의 일관성 있는 참조를 위한 연관정보 관리 서비스)

  • Choi, Yun-Seok
    • Journal of Internet Computing and Services
    • /
    • v.8 no.4
    • /
    • pp.129-136
    • /
    • 2007
  • The domain model pattern which belongs to enterprise architecture patterns has reusability, scalability and maintainability. To use the domain model pattern, mapping with persistency layer, transaction management and various services are needed. This paper proposes that relationship management service to solve a consistency error which arises in case of removing domain objects. The proposed relationship management service monitors methods of domain objects and intercepts the flow of control to solve the reference errors. This service is implemented by using AOP(Aspect-Oriented Programming), so it can provide the service without modifications of domain objects and other services.

  • PDF

A SOA based Framework Using AOP for Reliable Service Applications (AOP를 이용한 신뢰성 있는 서비스 어플리케이션의 SOA 기반 프레임워크)

  • Kim, Eun-Sun;Lee, Jae-Jeong;Lee, Byung-Jeong
    • Journal of Information Technology Services
    • /
    • v.10 no.2
    • /
    • pp.223-234
    • /
    • 2011
  • Loosely coupled properties of SOA(Service Oriented Architecture) services do not guarantee that service applications always work properly. Service errors may also influence other services of SOA. These characteristics adversely affect software reliability. Therefore, it is a challenge to effectively manage system change and errors for operating services normally. In this study, we propose a SOA based framework using AOP(Aspect Oriented Programming) for reliable service applications. AOP provides a way to manipulate cross-cutting concerns such as logging, security and reliability and these concerns can be added to applications through weaving process. We define a service specification and an aspect specification for this framework. This framework also includes service provider, requester, repository, platform, manager, and aspect weaver to handle changes and exceptions of applications. Independent Exception Handler is stored to exhibited external Aspect Service Repository. When exception happened, Exception Handler is linked dynamically according to aspect rule that is defined in aspect specification and offer function that handle exception alternate suitable service in systematic error situation. By separating cross-cutting concerns independently, we expect that developer can concentrate on core service implementation and reusability, understanding, maintainability increase. Finally, we have implemented a prototype system to demonstrate the feasibility of our framework in case study.