• Title/Summary/Keyword: 메소드 수

Search Result 240, Processing Time 0.034 seconds

A Study of Estimation for Web Software Size (웹 소프트웨어 규모 예측에 관한 연구)

  • KIM JeeHyun;YOO HaeYoung
    • The KIPS Transactions:PartD
    • /
    • v.12D no.3 s.99
    • /
    • pp.409-416
    • /
    • 2005
  • Even though development paradigm of software has been changing very fast at the beginning of 21st Centuries, there are just few studies of quality and estimation metrics appropriate for Web environment. So in this study after analyzing the correlation between the size of the final code and property of objects, three industrial real world projects written in ASP have been used for deriving programs with high possibilities of faults. And then the size of programs was analyzed to correlate with the number of classes or the number of methods through linear regression. Among the web software with the complex architecture or server, client and un, type or form file written in Javascript for client has the high correlation and the number of methods is well correlated with the size of final code.

The Design of Array Geometry in 2-D Multiple Baseline Direction Finding (2차원 멀티베이스라인 방향탐지 배열 구조 설계)

  • Park, Cheol-Sun;Kim, Dae-Young
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.31 no.10A
    • /
    • pp.988-995
    • /
    • 2006
  • In this Paper, we Present a nonharmonic may geometry design method using Euclidan minimum distance function in difference Phase spaces for 2-D (azimuth/elevation) multiple baseline antenna may which has a way to reduce the number of sensor antennas while maintaining accurate DOA estimate. The major advantages of our approach is that even the shortest interelement spacing can be larger than half-wavelength and is not limit13d to linear and it can be applied successfully to any array configuration. In multiple signals impinging situation, the performance simulation results of superresolution algorithms shows the effectiveness of the proposed method. Also the 2-D asymmetric may using the Proposed method is designed and the Performance of the manufactured away through the experimental test is verified.

Transformation of Constraint-based Analyses for Efficient Analysis of Java Programs (Java 프로그램의 효율적인 분석을 위한 집합-기반 분석의 변환)

  • Jo, Jang-Wu;Chang, Byeong-Mo
    • Journal of KIISE:Software and Applications
    • /
    • v.29 no.7
    • /
    • pp.510-520
    • /
    • 2002
  • This paper proposes a transformation-based approach to design constraint-based analyses for Java at a coarser granularity. In this approach, we design a less or equally precise but more efficient version of an original analysis by transforming the original construction rules into new ones. As applications of this rule transformation, we provide two instances of analysis design by rule-transformation. The first one designs a sparse version of class analysis for Java and the second one deals with a sparse exception analysis for Java. Both are designed based on method-level, and the sparse exception analysis is shown to give the same information for every method as the original analysis.

Java Applet Security by Bytecode Modification (바이트코드 수정을 통한 자바 애플릿보안)

  • 박상길;노봉남
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04a
    • /
    • pp.166-168
    • /
    • 2000
  • 자바가상기계(JVM : Java Virtual Machine)는 실행전에 바이트코드를 확인하는 바이트코드 검증기와 실행환경에서 점검하는 바이트코드 인터프리터를 포함한다. 자바 애플릿은 서비스 거부 공격이나, 사용자를 속이기 위한 조작한 링크 정보를 상태바에 보인다거나, 전자메일을 위조하여 보내는 등의 사용자에 유해한 행위를 할 수 있다. 웹브라우저를 통해 유해한 행동을 하는 클래스에 대해 사전에 바이트코드 수정을 통하여 안전한 클래스로 대체한다. 바이트코드 수정에는 클래스 수준 수정과 메소드 수준 수정이 있다. 클래스 수준 수정은 자바의 상속성을 이용하고. final 클래스나 인터페이스처럼 상속되지 않는 클래스는 메소드 수준에서 바이트 코드 수정을 한다. 메소드 수준 수정은 바이트코드 명령과 Constant Pool을 수정한다. 바이트 코드 수정을 적용하면 웹서버, 클라이언트, 브라우저에 대해 어떠한 별도의 작업도 필요없이 프락시 서버에서 유해클래스를 Safe 클래스로 수정한 후 브라우저에 보인다.

  • PDF

Using PageRank Algorithm to Improve Coupling Metrics (페이지랭크 알고리즘을 이용한 결합도 척도의 개선)

  • Park, Cheol-Hyun;Ryu, Sung-Tae;Lee, Eun-Seok
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2011.04a
    • /
    • pp.1405-1408
    • /
    • 2011
  • 소프트웨어 품질 측정은 소프트웨어 공학의 필수적인 요소이다. 소프트웨어 품질 척도 중 하나인 결합도는 모듈간의 얼마나 강하게 연결되어있는지를 나타낸다. 결합도는 소프트웨어의 결함-경향성, 모듈화, 재사용성, 변경-경향성 등 다양한 목적으로 사용된다. 기존의 결합도 척도들은 메소드호출 횟수에 의해서 결정되는데, 이는 메소드의 가중치를 고려하지 않기 때문에 결합도를 정확히 측정 하지 못한다. 본 논문은 페이지랭크 알고리즘을 이용하여 메소드의 가중치를 측정하고, 이를 이용한 결합도 척도 개선 방법에 대해 제안한다. 본 논문의 유효성을 검증하기 위하여, 4 개의 오픈 소스 프로젝트를 대상으로 기존의 방법과 개선된 방법으로 결합도 척도 3 개를 측정하였다. 개선된 결합도 3 개는 유지보수의 척도로 사용되는 변경-경향성(Change-Proneness)과의 상관계수가 기존의 결합도 척도에 비하여 눈의 띄게 향상되었다. 따라서 개선된 결합도 척도는 소프트웨어 품질을 더 정확하게 측정할 수 있다.

API Similarity Comparison Tool Development for Detecting Theft of Android Application (안드로이드 앱 도용 탐지를 위한 API 유사도 비교 도구 구현)

  • Choi, Sung-Ha;Lee, Hyun-Young;Cho, Seung-Min;Park, Heewan
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2012.04a
    • /
    • pp.792-795
    • /
    • 2012
  • 최근 오픈 소스 커뮤니티가 활성화되고 수많은 오픈 소스들이 공개되고 있어서 많은 개발자들이 오픈 소스를 활용하고 있다. 그러나 오픈 소스도 정해진 라이선스 기반으로 공개되므로 오픈 소스를 사용할 때는 반드시 라이선스를 확인해야 한다. 본 논문에서는 안드로이드 앱의 라이선스 위반이나 코드 도용을 확인할 수 있는 방법으로서 안드로이드 앱 사이의 API 메소드 호출 유사도를 측정하는 방법을 제안한다. 원본 프로그램과 도용된 프로그램은 유사한 API 메소드를 사용할 것임을 예상할 수 있기 때문에 API 메소드 호출이 유사한 것을 확인하면 간접적으로 코드 도용을 확인할 수 있다. 본 논문에서 개발한 API 유사도 측정 도구는 안드로이드 앱의 소스 코드를 필요로 하지 않고, 안드로이드 달빅(Dalvik) 바이트 코드로부터 직접 API 호출 명령어를 분석하여 유사도를 측정한다는 특징이 있다. 본 논문에서 구현한 도구의 평가를 위해서 API 호출 유사도 비교 실험을 수행하였다. 그 결과, 실제로 API 호출 유사도가 높았던 두 앱이 서로 공통된 모듈을 포함하고 있음을 밝혀내었다. 그리고 선행 연구에서 제안했었던 안드로이드 달빅 코드 전체에 대한 유사도 비교 도구보다 비교 속도가 35% 정도 향상된 것을 확인하였다.

Detection of Unknown Malicious Scripts Using Static Analysis (정적 분석을 이용한 알려지지 않은 악성 스크립트 감지)

  • Lee, Seong-Uck;Bae, Byung-Woo;Lee, Hyong-Joon;Cho, Eun-Sun;Hong, Man-Pyo
    • The KIPS Transactions:PartC
    • /
    • v.9C no.5
    • /
    • pp.765-774
    • /
    • 2002
  • Analyzing the code using static heuristics is a widely used technique for detecting unknown malicious codes. It decides the maliciousness of a code by searching for some fragments that had been frequently found in known malicious codes. However, in script codes, it tries to search for sequences of method calls, not code fragments, because finding such fragments is much difficult. This technique makes many false alarms because such method calls can be also used in normal scripts. Thus, static heuristics for scripts are used only to detect malicious behavior consisting of specific method calls which is seldom used in normal scripts. In this paper. we suggest a static analysis that can detect malicious behavior more accurately, by concerning not only the method calls but also parameters and return values. The result of experiments show that malicious behaviors, which were difficult to detect by previous works, due to high false positive, will be detected by our method.

A UML-based Component Interface Extraction Method (UML 기반의 컴포넌트 인터페이스 추출 기법)

  • 유영란;김수동
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1999.10a
    • /
    • pp.460-462
    • /
    • 1999
  • 소프트웨어의 경제성, 시장 경쟁력 확보를 위한 소프트웨어의 재사용은 소프트웨어 공학의 주요 이슈가 되고 있다. 그중 컴포넌트와 컴포넌트 기반의 소프트웨어 개발은 재사용성을 확보할 수 있는 가장 주목 받는 방안으로 제시되고 있으며 많은 기법이나 지침들이 제안되고 있다. 본 논문에서는 컴포넌트 개발에서 UML에 기반하여 컴포넌트의 인터페이스를 추출하는 기법을 제시하고자 한다. 분석 단계에서 컴포넌트의 식별이 이루어졌다고 가정하고 분석 단계에서 나온 산출물 중, Use Case 모델과 클래스 다이어그램을 이용하여 컴포넌트의 메소드들을 식별하고, 인터페이스로 정의한다. 그리고 사용자요구사항에 근거하여 Hot Spot을 식별한 후, 컴포넌트의 커스터마이즈를 위한 메소드와 인터페이스를 정의한다.

  • PDF

A obfuscating technique for Java program by distributing methods (메소드 분산을 통한 자바 프로그램 난독화 기법)

  • 최석우;박회완;한태숙
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10a
    • /
    • pp.238-240
    • /
    • 2003
  • 자바 프로그램은 자바 바이트코드로 컴파일되어 배포된다. 자바 바이트코드는 심볼릭 정보를 그대로 유지하고 있기 때문에 역컴파일(decompile) 도구에 의해서 쉽게 소스 파일이 노출될 수 있다는 취약성이 있다. 따라서 자바 역컴파일에 대한 위험을 방지 혹은 최소화 할 수 있는 방법에 대한 연구가 필요하다. 본 논문에서는 이러한 보안 취약성 및 문제점을 인식하고 거기에 대처할 수 있는 대응 기법에 대한 연구로서 메소드 분산을 이용한 프로그램 난독화 기법을 제시하려고 한다. 본 논문에 제안된 난독화 기법을 사용하면 역컴파일에 성공했다 하더라도 역컴파일된 소스 프로그램을 쉽게 이해하거나 재활용하기 어렵게 만들 수 있으며 다른 난독화 기법을 적용할 수 있는 범위를 넓혀 줄 수 있다.

  • PDF

Design and Implementation of a Language Supporting Compositional Approach to Multiparadigm Programming (결합 방식 멀티패러다임 프로그래밍을 지원하는 언어의 설계 및 구현)

  • Choi, Jong-Myung;Yoo, Chae-Woo
    • The KIPS Transactions:PartA
    • /
    • v.10A no.6
    • /
    • pp.605-614
    • /
    • 2003
  • In this paper we introduce a new style multiparadigm language named Argos which applies a compositional approach [20] to multiparadigm programming. Argos is a superset of the Java, and its grammar has an extension point which allows other languages to be used in Argos programs. Therefore, Argos can support object-oriented programming and multiparadigm programming by enabling each method in a class to be implemented with one of the Java, C, Prolog, Python, and XML languages. Since Argos allows the existing languages to be used, it has advantages such as easiness of learning and high reusability. The Argos compiler is implemented according to the delegating compiler object (DCO) model[28,29]. The compiler partitions a program Into several parts according to the languages used in methods and delivers the parts the languages' processors which compile the parts.