• Title/Summary/Keyword: Code Refactoring

Search Result 36, Processing Time 0.02 seconds

System Optimization Technique using Crosscutting Concern (크로스커팅 개념을 이용한 시스템 최적화 기법)

  • Lee, Seunghyung;Yoo, Hyun
    • Journal of Digital Convergence
    • /
    • v.15 no.3
    • /
    • pp.181-186
    • /
    • 2017
  • The system optimization is a technique that changes the structure of the program in order to extract the duplicated modules without changing the source code, reuse of the extracted module. Structure-oriented development and object-oriented development are efficient at crosscutting concern modular, however can't be modular of crosscutting concept. To apply the crosscutting concept in an existing system, there is a need to a extracting technique for distributed system optimization module within the system. This paper proposes a method for extracting the redundant modules in the completed system. The proposed method extracts elements that overlap over a source code analysis to analyze the data dependency and control dependency. The extracted redundant element is used to program dependency analysis for the system optimization. Duplicated dependency analysis result is converted into a control flow graph, it is possible to produce a minimum crosscutting module. The element extracted by dependency analysis proposes a system optimization method which minimizes the duplicated code within system by setting the crosscutting concern module.

A Study on the Development of Framework Using Component Based Methodology (컴포넌트기반 방법론을 사용한 프레임워크 개발에 관한 연구)

  • Kim, Haeng-Gon;Han, Eun-Ju
    • The Transactions of the Korea Information Processing Society
    • /
    • v.7 no.3
    • /
    • pp.842-851
    • /
    • 2000
  • Developers can reuse not only class code but also wide range of knowledge on domain by reusing framework. Existing Object-Oriented Methodology and Catalysis Methodology were presented when redefining component in the course of redesigning framework. However, existing methodologies have weakness that entire process is waterfall mode or design of interface lays too much stress on implementation stage. So, this thesis will present Component-Oriented Methodology for the reuse of framework, and construct the environment for framework and domain development. That is, domain is analyzed by input of domain knowledge on real world to create software based on component, and hotspot is identified through analyzed information, and refactoring by putting additional information on users and developers. After that, I will create domain framework and application framework depending on domain. In this Component-Oriented Methodology, information is searched, understood and extracted or composite through component library storage internally. Then this information is classified into the information on component, and used as additional information in redesigning. With this, developer can obtain reusability, easiness and portability by constructing infrastructure environment that allows to register, update and delete component through Component Management System(CMS) under he development environment which can be easily applied to his own application using framework component, in this thesis, CoRBA(Common Object Request Broker Architecture) environment.

  • PDF

An Open API Proxy Server System for Widget Services (위젯 서비스를 위한 오픈 API 프록시 서버 시스템)

  • Ahn, Byung-Hyun;Lee, Hyuk-Joon;Choi, Yong-Hoon;Chung, Young-Uk
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.16 no.9
    • /
    • pp.918-926
    • /
    • 2010
  • A widget is a small application running by the users' favorite services, so they are provided with web contents without explicitly visiting the web site. Although widgets can be easily implemented with Open APIs, only a few web sites provide them because of refactoring the structures of web resource to supply Open APIs to the widget developers. This paper presents an Open API Proxy Server System for widget services. The system consists of two components: an Open API Source Code Generator and an Open API Proxy Server. The Open API Source Code Generator provides a Graphical User Interface (GUI) for users to generate the Open APIs of user's choice and sends the Open API source code generation request to the Open API Proxy Server. The Open API Proxy Server using the HTML Table Processing Library receives the HTML web page from web site and extracts useful information from the target HTML table. The proxy server converts the extracted data into the corresponding XML document which becomes available through the Open API. We verify the operation of the proposed system through experiments with the HTML tables in the example web sites.

A Logical Coupling Measurement Method Based on Transaction Time, Size and Expertise of Developer (트랜잭션의 시점, 크기 및 개발자의 숙련도를 고려한 논리적커플링 측정기법)

  • Shim, Bin-Gu;Kim, Jin-Tae;Park, Soo-Yong
    • Journal of KIISE:Software and Applications
    • /
    • v.36 no.11
    • /
    • pp.891-900
    • /
    • 2009
  • The priority of software maintenance researches has been increasing, since the lengths of software lifecycle are more increasing. Measuring couplings among software entities provides a good quantitative source for analyzing source code and point out candidate refactoring positions. Logical-coupling measures how strongly two software entities are related with each other from the evolutionary point of view. The researches on logical-coupling have been focusing on improving the correctness and explaining more aspects that are hiding by measuring logical-coupling among finer-grained entities. However, existing researches on logical-coupling fails to consider characteristics of developers and projects reflected in transactions. The research proposes a logical-coupling measurement method based on transaction time, size and expertise of developer to improve the correctness by considering characteristics of developers and projects reflected in transactions. The method has been validated by applying it to three open-source projects.

Aspect Mining Process Design Using Abstract Syntax Tree (추상구문트리를 이용한 어스팩트 마이닝 프로세스 설계)

  • Lee, Seung-Hyung;Song, Young-Jae
    • The Journal of the Korea Contents Association
    • /
    • v.11 no.5
    • /
    • pp.75-83
    • /
    • 2011
  • Aspect-oriented programming is the paradigm which extracts crosscutting concern from a system and solves scattering of a function and confusion of a code through software modularization. Existing aspect developing method has a difficult to extract a target area, so it is not easy to apply aspect mining. In an aspect minning, it is necessary a technique that convert existing program refactoring elements to crosscutting area. In the paper, it is suggested an aspect mining technique for extracting crosscutting concern in a system. Using abstract syntax structure specification, extract functional duplicated relation elements. Through Apriori algorithm, it is possible to create a duplicated syntax tree and automatic creation and optimization of a duplicated source module, target of crosscutting area. As a result of applying module of Berkeley Yacc(berbose.c) to mining process, it is confirmed that the length and volume of program has been decreased of 9.47% compared with original module, and it has been decreased of 4.92% in length and 5.11% in volume compared with CCFinder.

Framework Construction with Multimedia Component Management System on CORBA (CORBA 환경에서 멀티미디어 컴퍼넌트 관리 시스템을 통한 프레임워크 구축)

  • 김행곤
    • Journal of Korea Multimedia Society
    • /
    • v.2 no.2
    • /
    • pp.217-229
    • /
    • 1999
  • Framework is the set of interrelated classes, constructing reusable design in specific domain or set of abstracted classes, and defines common architecture among applications included in domain. Developers can reuse not only class code but also wide range of knowledge on domain by reusing framework. In this papers, we present COM(Component-Oriented Methodology) for the reuse of framework, and develop construction environment for framework and domain development. That is, domain is analyzed by input of domain knowledge on real world to create software based on component, and hotspot is identified through analyzed information, and redesigned(refactoring) by putting additional information on users and developers. After that, I will create domain framework and application framework depending on domain. In this Component-oriented methodology, information is searched, understood and extracted or composite through component-pattern library storage internally. Then this information is classified into the information on component and pattern respectively, and used as additional information in redesigning. With this, developer can obtain reusability, easiness and portability by constructing infrastructure environment that allow to register, update and delete component through Component Pattern Management System(CPMS) under the development environment which can be easily applied to his own application using multimedia component, in this thesis, CORBA(Common Object Request Broker Architecture) environment.

  • PDF