• 제목/요약/키워드: Complexity metrics

검색결과 112건 처리시간 0.028초

유사도 기반의 웹 어플리케이션 구조 복잡도 (A Structural Complexity Metric for Web Application based on Similarity)

  • 정우성;이은주
    • 한국컴퓨터정보학회논문지
    • /
    • 제15권8호
    • /
    • pp.117-126
    • /
    • 2010
  • 소프트웨어 복잡도는 대상 시스템의 유지보수성을 평가하는 주요한 메트릭인데 기존의 웹 어플리케이션 기반 복잡도는 대부분 단순히 개수 기반으로 정의되어 실제 개발자나 유지보수자의 관점에서 느끼는 이해도를 반영하기 어렵다. 이를 보완하기 위하여 정보이론의 엔트로피를 이용하여 복잡도를 정의할 수 있으나, 개별 페이지의 정보량을 동일하게 취급하고 있다. 본 논문에서는 웹 어플리케이션의 구조 복잡도를 유사도 및 정보이론에 기반하여 제안하였다. 즉, 엔트로피에 기반하되, 기존의 유사도를 이용하여 타 페이지들과 유사성이 높은 페이지의 내부 정보량은 그렇지 않은 페이지보다 낮도록 정의하여 이러한 단점을 보완하였다. 또한 관점에 따라 각기 다른 유사도를 적용할 수 있도록 함으로써 복잡도를 여러 관점에서 측정할 수 있도록 하였다. 이후 복잡도 속성을 이용하여 이론적으로 검증하였고, 사례 연구를 통하여 본 기법의 유용성을 보였다.

기계학습과 품질 메트릭을 활용한 객체간 링크결합강도 분류에 관한 연구 (Classifying a Strength of Dependency between classes by using Software Metrics and Machine Learning in Object-Oriented System)

  • 정성균;안재균;여윤구;박상현
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제2권10호
    • /
    • pp.651-660
    • /
    • 2013
  • 객체지향 설계는 상속 및 은닉과 같은 개념이 도입되어 소프트웨어 개발 생산성 및 품질 향상을 가져다 주었다. 하지만 소프트웨어의 크기가 커지게 되면 이를 구성하는 객체의 수가 증가하고 이에 비례하여 상속 또는 호출과 같은 객체간 결합관계가 증가한다. 또한 이러한 객체간 결합관계는 객체지향 소프트웨어의 복잡도와 밀접한 관계를 갖고 있는데 다수의 결합관계는 소프트웨어의 복잡도를 높이어 결국에는 소프트웨어 품질저하로 이어지게 된다. 그래서 소프트웨어 개발 분야에서는 컴포넌트 기반의 설계와 같은 방법을 통하여 객체간 결합관계를 명확히 함으로써 소프트웨어의 품질을 높이려는 노력이 진행되고 있다. 또한 객체 품질 메트릭을 정의, 산출하여 소프트웨어의 품질을 측정하고 이를 활용하여 높은 품질의 소프트웨어가 될 수 있는 방법들을 찾는 연구가 함께 진행되고 있다. 이러한 연구의 일환으로 본 연구는 컴포넌트와 같은 시스템 분해 관점에서 객체 상호간 결합링크 속성의 분석을 통하여 서브시스템 분해를 위한 기초자료를 구축하고자 한다. 이전까지의 연구들이 개별객체를 평가하고 수치화하여 이를 누적하는 방식이었다면 이번 연구는 소프트웨어 복잡도와 밀접한 관계가 있는 객체간 상호간의 링크결합관계를 분석 대상으로 선정하고 객체간 링크의 속성분석 및 결합강도 예측에 기계학습을 활용한 새로운 관점에서의 소프트웨어 분석 방법을 제안한다.

대형 소프트웨어 시스템의 결함경향성 예측을 위한 혼성 메트릭 모델 (Hybrid metrics model to predict fault-proneness of large software systems)

  • 홍의석
    • 컴퓨터교육학회논문지
    • /
    • 제8권5호
    • /
    • pp.129-137
    • /
    • 2005
  • 설계 명세를 이용하여 결함경향성이 많은 부분을 예측하는 위험도 예측 모델은 대형 통신 시스템 같이 결과 산물이 매우 큰 시스템의 개발비용을 낮추는데 중요한 역할을 하고 있다. 복잡도 메트릭에 기반한 많은 위험도 예측 모델들이 제안되었지만 그들 대부분은 모델 훈련을 위한 훈련 데이터 집합을 필요로 하고, 설계 개체들을 위험 그룹과 비위험 그룹으로 나누는 기능만 지닌 분류 모델들이었다. 본 논문에서는 두가지 형태의 검증된 혼성 메트릭들을 사용하는 새로운 예측 모델 HMM을 제안한다. HMM의 장점은 설계 개체의 위험도를 정량화함으로써 모델 훈련을 위한 훈련 데이터 집합이 필요 없다는 것과 개체 간에 위험도 비교가 가능하다는 것이다. HMM의 유용성을 보이기 위해 여러 내부 특성들과 예측 정확도 비교를 통해 잘 알려진 예측 모델인 역전파 신경망 모델(BPM)과 HMM을 비교하였다.

  • PDF

A Systematic Literature Survey of Software Metrics, Code Smells and Refactoring Techniques

  • Agnihotri, Mansi;Chug, Anuradha
    • Journal of Information Processing Systems
    • /
    • 제16권4호
    • /
    • pp.915-934
    • /
    • 2020
  • Software refactoring is a process to restructure an existing software code while keeping its external behavior the same. Currently, various refactoring techniques are being used to develop more readable and less complex codes by improving the non-functional attributes of software. Refactoring can further improve code maintainability by applying various techniques to the source code, which in turn preserves the behavior of code. Refactoring facilitates bug removal and extends the capabilities of the program. In this paper, an exhaustive review is conducted regarding bad smells present in source code, applications of specific refactoring methods to remove that bad smell and its effect on software quality. A total of 68 studies belonging to 32 journals, 31 conferences, and 5 other sources that were published between the years 2001 and 2019 were shortlisted. The studies were analyzed based on of bad smells identified, refactoring techniques used, and their effects on software metrics. We found that "long method", "feature envy", and "data class" bad smells were identified or corrected in the majority of studies. "Feature envy" smell was detected in 36.66% of the total shortlisted studies. Extract class refactoring approach was used in 38.77% of the total studies, followed by the move method and extract method techniques that were used in 34.69% and 30.61% of the total studies, respectively. The effects of refactoring on complexity and coupling metrics of software were also analyzed in the majority of studies, i.e., 29 studies each. Interestingly, the majority of selected studies (41%) used large open source datasets written in Java language instead of proprietary software. At the end, this study provides future guidelines for conducting research in the field of code refactoring.

A Comparison of the Rudin-Osher-Fatemi Total Variation model and the Nonlocal Means Algorithm

  • ;최흥국
    • 한국멀티미디어학회:학술대회논문집
    • /
    • 한국멀티미디어학회 2012년도 춘계학술발표대회논문집
    • /
    • pp.6-9
    • /
    • 2012
  • In this study, we compare two image denoising methods which are the Rudin-Osher-Fatemi total variation (TV) model and the nonlocal means (NLM) algorithm on medical images. To evaluate those methods, we used two well known measuring metrics. The methods are tested with a CT image, one X-Ray image, and three MRI images. Experimental result shows that the NML algorithm can give better results than the ROF TV model, but computational complexity is high.

  • PDF

웹 애플리케이션을 위한 복잡도 척도 (Complexity Metrics for Web Application)

  • 이기열;이병정;이숙희;우치수
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 가을 학술발표논문집 Vol.27 No.2 (1)
    • /
    • pp.421-423
    • /
    • 2000
  • 인터넷의 빠른 성장에 힘입어 웹 환경이 급속하게 성장하고 있다. 웹 환경은 TCP/IP 와 HTTP 프로토콜을 이용한 분산 시스템 환경이고 클라이언트 서버 환경이다. 따라서 웹 환경에서 작동하는 웹 애플리케이션은 기존의 애플리케이션과는 다른 특징을 가진다. 현재 웹 애플리케이션의 개발이 많이 이루어지고 있다. 이에 웹 애플리케이션을 설계하고 개발하며 유지 보수하는 작업이 매우 중요해지고 있다. 그러나 최근의 웹 애플리케이션의 개발을 다양한 기술의 등장으로 인해 설계 및 유지 보수에 대한 충분한 고려 없이 빨리 개발되어 왔다. 이에 따라 웹 애플리케이션의 유지 보수가 어려워지게 되었다. 본 논문에서는 웹 애플리케이션을 정의하고 이의 복잡도 척도를 제안한다.

  • PDF

Reduced-State MLSD Based on Volterra Kernels for Square-Law Detected Multipath Channels

  • Ha, Young-Sun;Chung, Won-Zoo
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제5권12호
    • /
    • pp.2315-2325
    • /
    • 2011
  • We propose a novel reduced-state maximum-likelihood sequence detection (MLSD) structure using the Viterbi algorithm based on the second-order Volterra kernel modeling nonlinear distortion due to square law detection of multipath channels commonly occurring in chromatic dispersion (CD) or polarization mode dispersion (PMD) in optical communication systems. While all existing MLSD methods for square-law detection receivers are based on direct computation of branch metrics, the proposed algorithm provides an efficient and structured way to implement reduced-state MLSD with almost the same complexity of a MLSD for linear channels. As a result, the proposed algorithm reduces the number of parameters to be estimated and the complexity of computation.

재사용 모듈 추출을 위한 오픈 소스 기반 소프트웨어 시스템 구축 (Constructing an Open Source Based Software System for Reusable Module Extraction)

  • 변은영;박보경;장우성;김영철;손현승
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제23권9호
    • /
    • pp.535-541
    • /
    • 2017
  • 소프트웨어 시장 규모가 확대되면서 다양한 요구사항을 만족시키는 대규모 소프트웨어가 개발되고 있다. 이로 인해 소프트웨어 복잡도가 증가하게 되고 품질 관리는 어려워졌다. 특히, 레거시 시스템의 개선 및 새로운 시스템 개발 환경에서 재사용은 중요하다. 이 논문에서는 품질을 인증 받은 모듈을 재사용하는 방법을 제안한다. 재사용 적용 레벨은 코드 영역(메소드, 클래스, 컴포넌트), 프로젝트 도메인, 비즈니스로 나누어진다. 이 논문에서는 소프트웨어 복잡성을 측정하는 결합도와 응집도 기반의 재사용 메트릭과 메소드와 클래스 레벨에 따라 "재사용에 적합한 모듈 덩어리"를 시각화하는 재사용 적합 모듈 추출 메카니즘을 제안한다. 레거시 프로젝트에 역공학 기법을 적용하여 어떤 모듈/객체/덩어리가 재사용할 수 있는 지를 식별하고 확장 시스템을 개발하거나 유사한 새로운 시스템을 개발하기 위해 재사용한다면 소프트웨어의 신뢰성을 보장하고 소프트웨어 개발 단계에서 필요한 시간과 비용을 절감시킬 수 있다.

경관메트릭스를 이용한 금호강 유역 산림경관의 시·공간적 변화탐지 (Spatio-temporal Change Detection of Forest Landscape in the Geumho River Watershed using Landscape Metrics)

  • 오정학;박경훈;정성관;이종원
    • 한국지리정보학회지
    • /
    • 제8권2호
    • /
    • pp.81-94
    • /
    • 2005
  • 본 연구의 목적은 각종 환경적 교란이 야기되고 있는 금호강 유역의 경관구조를 정량화, 모니터링하기 위한 경관메트릭스의 적용가능성을 평가하는데 있다. 경관메트릭스는 토지피복지도(1985년, 1999년)의 산림패취만을 대상으로 계산하였다. 최초 사용된 12개 메트릭스는 인자분석을 통해서 전체 변량의 91% 이상 설명하는 3개의 공통인자로 축소되었다. 또한, 다중회귀분석을 사용하여 토지개발이 산림경관구조의 변화에 미치는 영향을 규명하였다. 산림패치에서 도시지역과 농경지로의 전환은 파편화의 증가를 초래한 것으로 나타났다. 특히, 도시지역으로의 전환은 패치면적과 패치크기를 감소시키고, 패치밀도는 증가시켰다($R^2=0.696$, p<0.01). 패치크기의 이질성과 패치모양의 복잡성은 농경지로의 전환에 의해서 감소하였다($R^2=0.405$, p<0.01). 핵심구역과 가장자리의 밀도는 증가하는 경향을 보였으나, 산림의 도시지역과 농경지로의 전환과는 뚜렷한 상호관계를 가지지 않았다. 향후에는 경관구조와 특정한 환경적, 사회경제적 경관기능 사이의 상호관계성을 분석하는 연구가 필요할 것이다.

  • PDF

Performance Analysis of Entropy-based Multi-Robot Cooperative Systems in a MANET

  • Kim, Sang-Chul;Shin, Kee-Hyun;Woo, Chong-Woo;Eom, Yun-Shick;Lee, Jae-Min
    • International Journal of Control, Automation, and Systems
    • /
    • 제6권5호
    • /
    • pp.722-730
    • /
    • 2008
  • This paper proposes two novel algorithms enabling mobile robots to cooperate with each other in a reliability-based system and a time-critical system. In the reliability-based cooperative system, the concepts of a mobile ad hoc network (MANET) and an object entropy are adopted in order to coordinate a specific task. A logical robot group is created based on the exchange of request and reply messages in a robot communication group whose organization depends on transmission range. In the time-critical cooperative system, relational entropy is used to define the relationship between mobile robots. A group leader is selected based on optimizing power consumption. The proposed algorithm has been verified based on the computer-based simulation and soccer robot experiment. The performance metrics are defined. The metrics include the number of messages needed to make a logical robot group and to obtain the relationship of robots and the power consumption to select a group leader. They are verified by simulation and experiment.