• 제목/요약/키워드: 소프트웨어 클러스터링

검색결과 148건 처리시간 0.029초

분기점 기반 트리 분석을 통한 소프트웨어 클러스터링 결과 비교 (Comparison of Software Clustering using Split Based Tree Analysis)

  • 엄재철;이찬근
    • 소프트웨어공학소사이어티 논문지
    • /
    • 제25권3호
    • /
    • pp.59-62
    • /
    • 2012
  • 본 연구에서는 소프트웨어 아키텍처 복원을 위한 계층적 클러스터링(Clustering) 결과를 정량적으로 평가 할 수 있는 비교 메트릭(Metric)을 제시한다. 소프트웨어 클러스터링의 정량적 평가는 소프트웨어의 구조적 변화에 대한 이해를 돕는 척도를 제시하는 연구이다. 이를 위해 생물정보학에서 상호유전 형질 분석에 사용하는 분기점(Split) 개념을 소프트웨어 아키텍처 분석에 적용한다.

  • PDF

커뮤니티 검출기법을 이용한 소프트웨어 아키텍쳐 모듈 뷰 복원 (Recovering Module View of Software Architecture using Community Detection Algorithm)

  • 김정민;이찬근
    • 소프트웨어공학소사이어티 논문지
    • /
    • 제25권4호
    • /
    • pp.69-74
    • /
    • 2012
  • 본 논문은 소프트웨어 클러스터링 기법과 커뮤니티 검출 기법의 비교를 통하여 아키텍쳐 모듈 복원 프로세스에 커뮤니티 검출 알고리즘의 적용가능성을 제시한다. 또한, 대표적인 클러스터링 알고리즘과 커뮤니티 검출 알고리즘의 값과 나눠진 모듈간의 상관관계와 차이점을 분석한다. 이를 통하여 커뮤니티 검출 알고리즘이 소프트웨어 아키텍쳐 모듈 뷰 복원에 활용되어질 수 있다는 몇 가지 근거를 제시하였고, 기존의 클러스터링 결과와 커뮤니티 알고리즘의 결과치를 비교함으로써, 서로의 결과 데이터가 어떠한 연관성을 가지는지 제시하였다.

  • PDF

병렬 내장형 소프트웨어 개발환경을 위한 데이터 플로우 블록 클러스터링 (Dataflow Block Clustering for Parallel Embedded Software Development Environment)

  • 조용우;권성남;하순회
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2008년도 한국컴퓨터종합학술대회논문집 Vol.35 No.1 (B)
    • /
    • pp.337-341
    • /
    • 2008
  • 갈수록 복잡해지는 내장형 시스템을 개발함에 있어서 소프트웨어 개발의 중요성은 날로 커지고 있다. 기존 연구에서 소프트웨어 개발 효율을 높이기 위해 소프트웨어의 재사용 가능성을 높이고 병렬성 명세를 용이하게 하고자 중간단계코드(CIC)를 정의하였다. 이 중간단계 코드는 각 태스크의 순수 알고리즘을 기술하는 C형태의 태스크 코드와 그 외의 정보를 포함하는 XML형태의 아키텍쳐 정보 파일로 구성된다. 이 CIC는 사용자가 직접 기술할 수 있고 각종 모델로부터 자동 생성할 수도 있다. 이 논문에서는 후자에 초점을 두고 데이터 플로우 모델에 사용된 블록들을 클러스터링하여 태스크 코드를 생성하는 기법을 제안하였다. 이것을 위해 블록 클러스터링 알고리즘은 주어진 클러스터의 크기로 블록이 묶일 때까지 블록의 수행시간 정보를 고려하여 함수 병렬성을 최대한 보존하며 블록들을 묶어나간다. H.263 코덱 예제를 이용한 실험을 통해 제안하는 방법이 다양한 클러스터의 크기 조건에 대해서 다양한 클러스터링 결과를 제공함을 보였다.

  • PDF

최적합 객체 선정을 위한 선 클러스터링 알고리즘 (Pre-Clustering Algorithm for Selecting Optimal Objects)

  • 장주현;노희영
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 한국컴퓨터종합학술대회 논문집 Vol.32 No.1 (B)
    • /
    • pp.901-903
    • /
    • 2005
  • 본 논문에서는 절차 중심 소프트웨어를 객체 지향 소프트웨어로 재/역공학기 위한 다단계 절차 중 객체 추출 단계에서 선 클러스터링을 통해 불필요한 정제 결합단계를 축소하고, 영역 전문가의 선택으로 영역모델링에 가장 가까운 객체 후보군을 제시하는 알고리즘을 제안하고자 한다. 기존의 연구에서는 영역 모델링과 다중 객체 후보군과의 유사도를 측정하여 영역 전문가에게 최적합 후보를 선택할 수 있는 측정 결과를 제시하였다. 하지만 영역 전문가가 제시하는 영역 모델링이 존재한다면 정제 결합단계이전에 최대한의 선 클러스터링을 통해서 영역 모델링과 가장 유사한 통합 객체를 제시할 수 있고, 정제 결합 단계를 선 클러스터링을 통해서 축소할 수 있으며 이를 통해서 객체 후보군과 영역모델링의 유사도를 향상 시키며 클러스터링에 따른 시간과 공간을 절약할 수 있다. 따라서 본 논문에서는 영역 모델링과 사용자의 함수, 전역변수의 선택을 통해 영역 모델링에 가장 유사한 객체 후보군을 찾는 선 클러스터링 알고리즘 제안 하고자 한다.

  • PDF

관광지 추천을 위한 클러스터링 최적화 군집수 결정 (Clustering Optimization Cluster Count Determination for Tourist Destination Recommendation)

  • 여해진;조인휘
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2023년도 추계학술발표대회
    • /
    • pp.371-373
    • /
    • 2023
  • factor 들이 많은 데이터의 군집화는 어려움을 요한다. K-means 클러스터링을 사용하여 군집화를 할 때, 각 데이터들이 가진 factor 의 개수가 상이한 경우 비슷한 성향을 가진 데이터임에도 불구하고 클러스터링이 적합하게 되지 않는 현상이 발생한다. 이러한 문제점을 해결하기 위해 최적의 군집화 개수를 결정하는 실루엣 기반 방법을 제안하고 제안기법의 성능을 평가한다.

모듈의 의존관계와 저자 엔트로피를 이용한 소프트웨어 모듈-뷰 복원 (Recovery of Software Module-View using Dependency and Author Entropy of Modules)

  • 김정민;이찬근;이기성
    • 정보과학회 논문지
    • /
    • 제44권3호
    • /
    • pp.275-286
    • /
    • 2017
  • 본 연구에서 우리는 모듈의 의존관계와 저자 엔트로피(Author Entropy) 정보를 이용하여 소프트웨어 모듈-뷰를 복원하는 새로운 소프트웨어 클러스터링 기법을 제안한다. 해당 기법은 우선 구조적 및 논리적 의존관계 정보를 기준으로 소프트웨어 모듈을 클러스터링한 후, 모듈 별 저자 엔트로피를 이용하여 일부 선택된 모듈을 클러스터 결과로부터 이전한다. 제안된 기법의 평가를 위해 참(ground-truth) 모듈-뷰가 알려진 오픈소스 프로젝트들에 적용하여 MoJoFM 값을 구하였다. 이와 함께 기존에 연구된 모듈-뷰 복원 기법들의 MoJoFM값과 비교하여, 제안된 기법이 소프트웨어 모듈-뷰 복원에 보다 효과적임을 보였다.

웹기반 정보시스템의 내부시스템 재구성을 위한 폼 클러스터링 방법론 (Form Clustering Methodology for Internal System Reengineering of Web-Cased Information System)

  • 최상수;박현우;이강수
    • 한국멀티미디어학회:학술대회논문집
    • /
    • 한국멀티미디어학회 2002년도 추계학술발표논문집
    • /
    • pp.703-706
    • /
    • 2002
  • 최근 대부분의 정보시스템은 웹기반 정보시스템으로 이주하고 있으며 이의 개발과 유지보수시에 "웹 위기" 현상이 발생하고 있다. 이를 해결하기 위한 웹엔지니어링 기술 중 웹기반 정보시스템의 내부시스템을 재구성하기 위한 방법이 필요하다. 따라서 본 논문에서는 웹기반 정보시스템의 내부시스템을 재구성하기 위한 폼 클러스터링 방법을 제시한다. 폼 클러스터링 방법은 기존의 소프트웨어 분할 및 태스크 클러스터링 기술의 개념을 적용하여 웹 기능구조를 실제 하드웨어에 할당하기 위한 최적의 응답시간 성능을 갖는 웹 소프트웨어 구조를 생성하는 방법이다. 본 논문에서 제시하는 폼 클러스터링 방법은 웹기반 정보시스템의 내부시스템을 신규개발 및 유지보수시에 적용할 수 있다. 적용할 수 있다.

  • PDF

사람인식 및 클러스터링 기법을 이용한 군집분석 시스템 (Crowd Analysis System Using Human Recognition and Clustering Techniques)

  • 박태정;박지호;서보윤;신준하;최경환;유홍석
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2023년도 제68차 하계학술대회논문집 31권2호
    • /
    • pp.485-487
    • /
    • 2023
  • 최근 코로나 19 방역지침 해제로 인한 대면적인 활동이 많아지면서 사람에 대한 서비스 제공이 중요한 이슈가 되었다. 하지만 사람들이 밀집되어있는 곳에서는 서비스가 원할하게 이루어지지 않는 경우가 대부분이다. 본 논문에서는 객체인식 알고리즘 기술인 Yolo와 OpenCv를 통해 카메라로 영상 속의 사람들을 인식하여 군집화 기술인 K-means 클러스터링을 이용해서 사람에 대한 군집화를 진행후 우선순위를 선정하고 좌표를 지정하여서 로봇이 군집의 좌표로 이동하여서 사람들에게 직접 접근하여 서비스를 제공할 수 있도록 하였다.

  • PDF

픽셀간의 칼라공간에서의 거리와 이웃관계를 고려하는 클러스터링을 통한 칼라영상 분할 (Color Image Segmentation based on Clustering using Color Space Distance and Neighborhood Relation Among Pixels)

  • 이화정;김황수
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제27권10호
    • /
    • pp.1038-1045
    • /
    • 2000
  • 본 논문에서는 칼라공간상의 거리와 이웃정보를 이용한 클러스터링을 통한 칼라영상 분할 방법을 제안한다. 칼라영상의 한 픽셀은 칼라정보(R.G.B)와 위치정보(x.y)를 가진다. 대개의 칼라공간에서의 클러스터링방법은 픽셀을 (R,G,B)공간으로 변환후 (R,G,B)공간상의 분포만을 이용하지만 여기서는(R,G,B)와 (x.y)모두를 사용하여 클러스터링함으로 영상의 세그먼트들을 찾는다. 클러스터링 방법으로서 인력을 모방하는 중력 클러스터링(gravitational clustering)을 사용하였다. 이 방법은 클러스터의 중심값과 클러스터 수를 미리 정해주지 않아도 자동적으로 결정할 수 있는 장점이 있다. 중력 클러스터링에서 찾은 클러스터 수를 가지고 다른 클러스터링 방법(K-means)에 입력으로 주어 결과를 비교해 본다. 본 논문에서는 이웃관계를 따라 클러스터링하는 것이 정확한 경계선을 찾는데 효과적임을 보여준다.

  • PDF

제품군의 재사용 가능한 클론 코드의 메소드 경로 통일을 위한 코드 클러스터링 방법 (A Code Clustering Technique for Unifying Method Full Path of Reusable Cloned Code Sets of a Product Family)

  • 김태영;이지현;김은미
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제12권1호
    • /
    • pp.1-18
    • /
    • 2023
  • 유사한 소프트웨어는 기존 산출물을 복제하고 수정하는 클론-앤-오운(clone-and-own, CAO) 방법으로 개발되곤 한다. 그러나 클론-앤-오운 방법은 복제된 제품의 수가 늘면서 유지보수를 어렵게 만들기 때문에 나쁜 프랙티스로 간주된다. 소프트웨어 제품라인 공학은 체계적인 재사용을 통해 소프트웨어 제품군을 개발하는 방법으로 클론-앤-오운 방법의 문제를 해결할 수 있다. CAO 방식으로 개발되어 온 제품패밀리를 제품라인 공학으로 마이그레이션하는 작업은 여러 소프트웨어 제품에서 클로닝된 부분들을 찾아 통합하고 재사용 가능한 자산으로 구축하는 것으로부터 시작된다. 그러나 클로닝이 디렉토리부터 코드 라인까지 다양한 수준에서 발생하고 그 과정에서 이들의 구조에 변경이 일어날 수 있어 단순하게 클로닝을 찾아내는 것만으로는 고품질의 제품라인 코드베이스를 구축하기 어렵다. 성공적인 마이그레이션을 위해서는 소스 코드들 사이의 클로닝 관계를 찾는 것 이외에도 소스 코드들의 파일 경로와 클래스 이름, 메소드 시그니처 등의 동일성을 확보는 작업이 선행되어야 한다. 이에 본 연구는 CAO 기반으로 개발된 제품들로부터 마이그레이션 대상 제품들을 선정한 후 제품들에 흩어져 있는 유사 코드 집합을 검출하여 메소드 경로의 통일이 필요한 대상을 식별하는 클러스터링 방법을 제안한다. 제안 방법의 효과를 보이기 위해 CAO 방식으로 진화해온 ApoGames 제품군에 제안 방법을 적용하여 실험을 진행하였다. 그 결과, 전처리 없이 수행된 파일의 상대 경로 기반 클러스터링 방법의 평균 정밀도는 0.91이며 식별된 공통 클러스터의 개수는 0개인 반면에 이 논문에서 제안하는 전처리와 함께 수행된 메소드 시그니처 기반 클러스터링 방법의 평균 정밀도는 0.98로 개선되었으며 식별된 공통 클러스터는 최대 15개까지 증가하였다.