• 제목/요약/키워드: software metric

검색결과 173건 처리시간 0.021초

자바 프로그램의 복잡도 측정을 위한 척도 $\pi_{java}$의 설계 (Design of the Metrics Suite $\pi_{java}$for Java Program Complexity)

  • Eun-Mi Kim
    • 한국컴퓨터산업학회논문지
    • /
    • 제2권3호
    • /
    • pp.407-416
    • /
    • 2001
  • 본 논문에서는 C++ 프로그램을 측정하기 위하여 제안된 척도 $\pi_{java}$ c++/를 기반으로 Java 프로그램 복잡도를 측정하기 위한 척도 $\pi_{java}$ Java/을 제안한다. C++를 측정하기 위해 많은 척도들이 제안되어 왔으나 이들은 Java 프로그램만이 가지는 특성들을 고려하지 않았기 때문에 C++ 프로그램과 다른 성질을 가지고 있는 Java프로그램에 이들을 그대로 적용하는 것은 어렵다. 따라서, 본 논문에서는C++와 Java 언어의 공통점과 차이점을 분석한 결과와 본 연구팀이 C++ 프로그램의 복잡도를 측정하기 위해 제안했던 척도 $\pi_{java}$ c++/을 바탕으로 Java 프로그램의 복잡도를 측정하기 위한 새로운 척도 $\prod$$_{Java}$을 제안한다. 마지막으로 제안한 척도를 Weyuker의 성질에 적용하여 분석하며, 기존의 척도들과도 비교한다.

  • PDF

해안가 야간경관조명의 빛공해 평가 - 부산시를 중심으로 - (Light Pollution of Outdoor Lighting in Coastal Area - Focused on Busan City -)

  • 공효주;김정태
    • 조명전기설비학회논문지
    • /
    • 제24권6호
    • /
    • pp.18-26
    • /
    • 2010
  • 도시공간의 안정과 쾌적함을 위하여 옥외조명은 우리 사회에서 필수적인 부분이 되었다. 그러나 옥외조명을 잘못 설치할 경우 조명에너지의 낭비뿐만 아니라 건축물 야간경관 훼손을 야기시킨다. 최근 야간 경관조명의 중요성이 부각되면서 지자체마다 야간경관 이미지 구축에 집중을 하고 있다. 그 중 해안가 주변의 옥외조명은 지역 내에 특화된 관광 상권을 구성하며 생동감 있는 도시 이미지를 부여하고 도시경쟁력을 강화 시킬 수 있다. 본 연구는 우리나라의 대표적 항구 도시인 부산의 해안가의 야간경관조명의 빛공해를 평가하는데 그 목적이 있다. 디지털 광학 계측기인 Radiant Imaging ProMetric-1400으로 광안리 해수욕장, 마린시티, 그리고 해운대 해수욕장 주변의 옥외조명을 측정하였다. 모든 옥외조명의 휘도는 국제조명위원회 권고기준과 비교했을 때 약 2~20배 정도 높게 나타났다. 주상복합 상부조명 및 해안에 면한 상가 저층부는 색채 및 휘도의 제한이 필요한 것으로 사료된다.

객체지향 모델로부터 정적 메트릭을 이용하여 컴포넌트 기반 시스템으로 변환하는 기법 (A Transforming Technique toward Component-based System from Object-oriented Model Using Static Metrics)

  • 이은주;신우창;이병정;우치수
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제31권6호
    • /
    • pp.728-740
    • /
    • 2004
  • 점차적으로 소프트웨어의 복잡도는 높아지고 그 생명주기는 짧아지므로, 기존의 검증된 소프트웨어 요소를 재사용 하는 것이 필요하다. 그러나 기존의 객체 지향 기술은 광범위한 재사용을 유도하지 못 하였다. 컴포넌트는 객체보다 규모가 크고 특정 도메인에 적합한 특성을 가지므로, 시스템 구조화, 설명 및 개발에 있어 더 나은 수단을 제공해 준다. 또한 그 규모나 재사용성에 있어 새로운 개발환경인 분산 시스템에 더 적합하다. 본 논문에서는 객체지향 시스템을 컴포넌트 기반 시스템으로 변환하는 프로세스를 제안하였다. 해당 프로세스는 두 단계로 나뉜다. 우선, 클래스들 간의 합성 및 상속 관계를 이용하여 기본 컴포넌트를 생성한다. 그 후 기본 컴포넌트와 컴포넌트화 되지 않은 클래스들에 대해 본 논문에서 제안된 정적 메트릭과 가이드라인을 이용하여 정제하여 컴포넌트 기란 시스템으로 변환한다.

우아한 성능감퇴를 위한 임베디드 시스템의 유용도 설계 (Utility Design for Graceful Degradation in Embedded Systems)

  • 강민구;박기진
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제34권2호
    • /
    • pp.65-72
    • /
    • 2007
  • 임베디드 시스템의 신인도(Dependability)를 높이기 위해 기존 컴퓨터시스템에서 주로 사용되는 결함허용(Fault-tolerant) 기법을 그대로 적용시키는 것은 임베디드 시스템의 엄격한 비용 제약과 설치공간 부족 등을 고려할 때 적합하지 않다. 본 논문에서는 각 시스템 구성요소(Component)들의 여분(Redundancy)을 최소한도로 사용하는 임베디드 시스템에 적합한 소프트웨어 결함허용 기법을 제안한다. 이를 위하여 임베디드 시스템의 신인도를 반영하기 위한 기준인 유용도(Utility) 척도를 정의하고, 실제 시스템의 결함허용을 위해 각각의 시스템 구성요소들의 재구성(Reconfiguration) 조합에 대한 유용도 평가를 수행하였다. 이러한 유용도 평가는 일반적으로는 지수복잡성(Exponential Complexity)을 가지게 되나, 본 논문에서는 각각의 구성요소에 대한 소프트웨어 수준의 계층적 그룹화 개념을 이용하여 복잡도를 크게 감소시켰다. 이를 통해 임베디드 시스템의 일부 부품에 결함이 발생했을 시, 시스템의 고장(Failure)을 방지 할 수 있도록 전체 시스템 단계에서 가능한 최대 유용도를 제공하는 구성조합으로의 재구성 작업을 가능하게 하였다.

객체지향 메트릭 기반인 결함 예측 모형의 범용성에 관한 실험적 연구 (An Experimental Study of Generality of Software Defects Prediction Models based on Object Oriented Metrics)

  • 김태연;김윤규;채흥석
    • 정보처리학회논문지D
    • /
    • 제16D권3호
    • /
    • pp.407-416
    • /
    • 2009
  • 검증과 확인을 통한 소프트웨어의 효율적인 관리를 지원하기 위하여 많은 연구들이 개발 초기 단계에 예측하기 위한 목적으로 연구를 하고 있다. 기존의 많은 연구들이 결함을 예측하기 위한 모형들을 제시했지만 기존의 연구에서는 결함 예측 모형을 다른 시스템에 범용적으로 적용이 가능한지에 대한 충분한 연구가 없었다. 또한 대부분의 결함 예측 모형은 모형 개발 당시와 같은 동일 시스템에서 예측력을 평가하였다. 그러므로 본 연구에서는 결함 예측 모형이 개발 당시와 다른 시스템에 범용적으로 적용될 수 있는지에 관하여 실험하였다. 실험은 3개의 실험 대상 시스템에 3개의 결함 예측 모형을 적용하여 예측력을 평가하였다. 실험 결과에서는 모형의 범용성에 대하여 찾을 수 없었다. 이는 모형의 개발 당시 시스템의 메트릭 분포가 실험 대상 시스템과 다르기 때문으로 분석된다. 따라서 결함 예측 모형을 타 시스템에도 적용할 수 있도록 결함 예측 능력의 범용성을 높이기 위한 추후 연구가 필요함을 확인하였다.

Pest Prediction in Rice using IoT and Feed Forward Neural Network

  • Latif, Muhammad Salman;Kazmi, Rafaqat;Khan, Nadia;Majeed, Rizwan;Ikram, Sunnia;Ali-Shahid, Malik Muhammad
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제16권1호
    • /
    • pp.133-152
    • /
    • 2022
  • Rice is a fundamental staple food commodity all around the world. Globally, it is grown over 167 million hectares and occupies almost 1/5th of total cultivated land under cereals. With a total production of 782 million metric tons in 2018. In Pakistan, it is the 2nd largest crop being produced and 3rd largest food commodity after sugarcane and rice. The stem borers a type of pest in rice and other crops, Scirpophaga incertulas or the yellow stem borer is very serious pest and a major cause of yield loss, more than 90% damage is recorded in Pakistan on rice crop. Yellow stem borer population of rice could be stimulated with various environmental factors which includes relative humidity, light, and environmental temperature. Focus of this study is to find the environmental factors changes i.e., temperature, relative humidity and rainfall that can lead to cause outbreaks of yellow stem borers. this study helps to find out the hot spots of insect pest in rice field with a control of farmer's palm. Proposed system uses temperature, relative humidity, and rain sensor along with artificial neural network to predict yellow stem borer attack and generate warning to take necessary precautions. result shows 85.6% accuracy and accuracy gradually increased after repeating several training rounds. This system can be good IoT based solution for pest attack prediction which is cost effective and accurate.

항만에서 최적 생산성 및 서비스 수준 관리를 위한 소프트웨어 개발 (Software Development for Optimal Productivity and Service Level Management in Ports)

  • 박상국
    • 한국항해항만학회지
    • /
    • 제41권3호
    • /
    • pp.137-148
    • /
    • 2017
  • 항만의 서비스 수준은 항만의 운영 및 관리 주체인 터미널운영사(TOC), 항만공사 및 정부의 입장에서 항만간 경쟁력의 기준이 되며, 항만의 이용 주체인 선사 및 화주의 입장에서는 어느 항만을 선택할 지를 결정하는 중요 지표로도 활용된다. 이러한 지표의 중요성을 고려하여 컨테이너 부두 및 벌크부두를 대상으로 중요 서비스 지표인 선석 점유율, 선박 대기율, 선석 처리량, 접안 척수, 평균 대기 척수, 평균 대기 시간과 같은 6개 지표를 객관적으로 정의하고 관리할 수 있는 소프트웨어를 개발하였다. 컨테이너 부두는 1개 선석부터 6개 선석까지와 벌크 부두는 1개 선석부터 4개 선석까지를 선택적으로 활용할 수 있도록 6개의 서비스 지표를 산정하여 예측이 가능토록 하였다. 이를 활용하면 선석점유율 대비 선박 대기율, 선석 처리량, 접안 척수, 평균 대기 척수, 평균 대기 시간을 예측할 수 있다. 추가하여 선박의 도착 패턴에 따라 선박 대기율과 항만의 생산성 지표인 연간 처리량도 어떻게 변화되는지를 예측할 수 있도록 하였다. 결과적으로, TOC 입장에서는 서비스 지표인 선박 대기율과 생산성 지표인 연간 처리량의 관계에서 최적의 운영 수준을 전략적으로 선택(Trade-off)할 수 있으므로 경쟁 항만에 대비하여 더 많은 선사 및 화주를 유치할 수 있으므로 터미널 수입도 극대화할 수 있다.

객체지향 분석 단계에서의 클래스 복잡도 측정 (Measurement of Classes Complexity in the Object-Oriented Analysis Phase)

  • 김유경;박재년
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제28권10호
    • /
    • pp.720-731
    • /
    • 2001
  • 구조적 개발 방법론에 적용하도록 만들어진 복잡도 척도들을 클래스의 상속성, 다형성, 메시지 전달 그리고 캡슐화와 같은 객체지향의 개념에 직접적으로 적용할 수 없다. 또한 기존의 객체지향 소프트웨어에 대한 척도의 연구는 프로그램의 복잡도나, 설계 단계의 척도가 대부분이었다. 실제로 분석단계 클래스의 복잡도를 낮춤으로서 시스템의 개발 노력이나 비용 및 유지보수 단계에서의 노력이 크게 줄어들게 되므로, 분석 클래스에 대한 복잡도를 측량하기 위한 척도가 필요하다. 본 논문에서는 객체지향 개발방법론인 RUP(Rational Unified Process)의 분석 단계에서 추출되는 분석 클래스에 대해서 복잡도를 측정할 수 있는 새로운 척도를 제안한다. 협력 복잡도CC(Collaboration Complexity)는 가능한 협력의 최대 수로서 클래스가 잠재적으로 얼마나 복잡할 수 있는지를 측정하기 위한 척도이며, 각 협력자들의 인터페이스를 이해하는 것과 관련된 총체적 어려움을 측정하는 인터페이스 복잡도 IC(Interface Complexity)를 정의하였다. 제안된 척도는 Weyuker의 9가지 공리적 성질에 대하여 이론적인 검증을 하였으며, 텍스트 마이닝 기법을 사용하여 사용자의 질문에 자동으로 응답하는 시스템의 분석 클래스에 대하여 제안된 척도를 적용하여 복잡도를 측정하였다. 제안된 CC와 IC의 값과 Chidamber와 Kemerer가 제안된 CBO와 WMC의 값을 비교해 본 결과, 제안된 복잡도 척도의 계산결과 값이 큰 클래스의 경우에는 설계 이후 단계에서도 역시 복잡도가 커지게 되는 것을 알 수 있었다. 이로써 소프트웨어개발 주기의 초기에 클래스에 대한 복잡도를 평가해 보고, 나머지 단계에 필요한 시간과 노력을 예측함으로써 보다 비용-효과적인 객체지향 소프트웨어를 개발할 수 있는 가능성이 높아질 것으로 기대된다.

  • PDF

객체 지향 CASE 도구에 대한 재구조화 실험 (An Experiment in Refactoring an Object-Oriented CASE Tool)

  • 조장우;김태균
    • 한국정보처리학회논문지
    • /
    • 제6권4호
    • /
    • pp.932-940
    • /
    • 1999
  • 객체 지향 기법은 일반적으로 소프트웨어의 재사용성을 향상시킨다고 알려져 있다. 그러나 실제 객체 지향 소프트웨어를 재사용하기 위해서는 재구조화 과정이 필요하다는 사실이 점차 인식되고 있다. Refactoring은 객체 지향 소프트웨어의 재사용성과 유연성을 향상시키기 위하여 소프트웨어 시스템의 구조를 정제하는 과정이다. 본 논문에서는 이러한 Refactoring 기법을 기존에 구현된 바 있는 객체 지향 CASE(Computer Aided Software engineering) 도구인 OODesigner 버전 1.x에 적용한 연구 결과를 제시한다. 버전 1.x는 Rumbaugh의 OMT(Object Modeling Technique) 모델 중에서 객체 모델을 지원하며, 객체도표 작성, 클래스 자원에 대한 문서화, 자동적인 C++ 코드생성, 클래스 재사용을 위한 정보 저장소, C++코드의 역공학 기능들을 지원한다. 비로 버전 1.x가 요구되는 기능과 신뢰성에 문제가 없었으나 구조적인 관저에서 문제를 가지고 있었기 때문에 새로운 기능을 추가하고 유지 보수하는데 많은 어려움이 있었다. 그러므로 본 연구에서는 기존의 버전 1.x를 재구조화하여 보수 유지가 용이한 시스템 구조로 만들었다 본 논문에서는 재구조화의 필요성, 재구조화 과정, 재구조화 내용 그리고 재구조화 효과에 대해 기술하고, 기존의 OODesigner 버전 1.x 와 재구조화된 OODesigner 버전2.x를 소프트웨어 메트릭(metric)를 통해 비교 분석한 결과와 이 과정에서 얻은 경험들을 제시한다.

  • PDF

An Optimized Deployment Mechanism for Virtual Middleboxes in NFV- and SDN-Enabling Network

  • Xiong, Gang;Sun, Penghao;Hu, Yuxiang;Lan, Julong;Li, Kan
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제10권8호
    • /
    • pp.3474-3497
    • /
    • 2016
  • Network Function Virtualization (NFV) and Software Defined Networking (SDN) are recently considered as very promising drivers of the evolution of existing middlebox services, which play intrinsic and fundamental roles in today's networks. To address the virtual service deployment issues that caused by introducing NFV or SDN to networks, this paper proposes an optimal solution by combining quantum genetic algorithm with cooperative game theory. Specifically, we first state the concrete content of the service deployment problem and describe the system framework based on the architecture of SDN. Second, for the service location placement sub-problem, an integer linear programming model is built, which aims at minimizing the network transport delay by selecting suitable service locations, and then a heuristic solution is designed based on the improved quantum genetic algorithm. Third, for the service amount placement sub-problem, we apply the rigorous cooperative game-theoretic approach to build the mathematical model, and implement a distributed algorithm corresponding to Nash bargaining solution. Finally, experimental results show that our proposed method can calculate automatically the optimized placement locations, which reduces 30% of the average traffic delay compared to that of the random placement scheme. Meanwhile, the service amount placement approach can achieve the performance that the average metric values of satisfaction degree and fairness index reach above 90%. And evaluation results demonstrate that our proposed mechanism has a comprehensive advantage for network application.