JRIPL

JRipples
JRIPL
개발자조나단 버크너, 조셉 부크타, 막심 페트렌코, 바클라브 라즐리히, 로렌티우 라두 반시우
안정된 릴리스
3.2.1 / 2010년 10월 7일, 11년 전(2010년 10월 7일)
기입처자바
운영 체제크로스 플랫폼
유형영향 분석 도구 변경
웹 사이트http://jripples.sourceforge.net/

JRiples는 Java 프로그래밍 언어를 위한 변경 영향 분석 도구입니다.개발자가 소프트웨어 변경의 영향을 계산하는 데 도움이 됩니다.오픈 소스 이클립스 플러그인입니다.이 도구는 관련 프로그램 분석뿐만 아니라 변경 전파 [1]단계를 구성합니다.

소프트웨어에 변경이 가해지면 소프트웨어 전체에 바람직하지 않거나 의도하지 않은 영향을 미치는 경우가 많습니다.변경 중에는 JRiples를 실행하여 개발자가 변경의 영향을 식별할 수 있도록 지원할 수 있습니다.이 도구는 프로그램을 분석하여 개발자의 주의가 필요한 클래스를 표시합니다.그런 다음 개발자는 표시된 각 클래스를 방문하여 충격에 리팩터링이 필요한지 여부를 결정합니다.이것에 의해, 개발자는 사소한 업무로부터 해방되기 때문에, 보다 효율적으로 작업할 수 있습니다.

역사

JRiples는 2005년부터 Maksym Petrenko에 의해 개발되었습니다.Petrenko는 미시간주 디트로이트에 있는 웨인 주립 대학 컴퓨터 과학부의 SERVICE 그룹의 멤버였습니다.그 연구와 실행은 그의 박사과정 동안 이루어졌다.Laurentiu Radu Vanciu가 관리하고 있습니다.

간단한 예

JRiples는 Eclipse 메뉴 도구 모음에 통합됩니다.분석을 시작하려면 사용자는 JRiples -> Start Analysis를 선택합니다.

Eclipse Menubar with JRipples installed
JRIples가 설치된 이클립스 메뉴바
JRipples project selection screen
JRiples 프로젝트 선택 화면

그러면 개발자가 프로젝트를 선택할 수 있는 팝업 창이 나타납니다.그런 다음 이 도구는 프로젝트를 분석하고 검사할 클래스가 포함된 메뉴를 표시합니다.분석 후 JRiples Hierarchical View가 나타납니다.이 예에서는 분석할 클래스 "Main"이 1개뿐이며, 이는 녹색으로 "next"로 표시됩니다.

JRipples window after initial search
초기 검색 후 JRiples 창

개발자가 기본 클래스를 방문한 후 녹색 "다음"을 마우스 오른쪽 버튼으로 클릭하면 세 가지 옵션이 표시됩니다.'위치', '전파' 및 '변경되지 않음'입니다.이 예에서는 변경이 다른 클래스로 전파된다고 가정합니다.

JRipples window Propagating example
JRiples 과부 전파 예시

오른쪽 클릭 메뉴에서 "전파 중"을 선택한 후, JRiples는 변경이 전파되었을 수 있는 4개의 클래스를 추가로 식별하여 "다음"으로 표시했다.그런 다음 개발자는 각 클래스를 방문하여 변경이 해당 클래스로 전파되었는지 여부를 확인합니다.변경 시 클래스를 수정할 필요가 없는 경우 클래스는 "변경되지 않음"으로 표시되고 개발자는 "다음"으로 표시된 다른 클래스로 넘어갑니다.

JRipples window Located example
JRiples 창 위치 예

표시된 모든 클래스를 반복하여 변경이 필요한지 확인한 후 개발자는 변경 요청을 가장 효과적으로 완료하기 위한 작업을 구성할 수 있습니다.

기타 기능

JRiples에는 개발자의 검색을 보다 직접적으로 하기 위한 두 가지 기능이 있습니다.LuceneGREP 분석이러한 도구를 사용하려면 개발자는 JRiples 계층 보기에서 마우스 오른쪽 버튼을 클릭하고 팝업 메뉴에서 두 도구 중 하나를 선택하면 됩니다.

GREP 도구는 일반적인 GREP 도구처럼 사용할 수 있지만 JRiples는 GREP로부터의 히트 수에 따라 각 클래스의 순위를 매깁니다.이 정보는 개발자에게 도움이 될 것입니다.개발자는 전략에 따라 가장 많거나 적은 히트부터 시작할 수 있습니다.

Lucene 도구는 더 지능적입니다.개발자가 Lucene 툴을 처음 사용할 때는 프로젝트의 인덱스를 작성해야 합니다.프로젝트의 규모가 클 경우 상당한 시간이 걸릴 수 있습니다.그러나 인덱싱 후에는 도구를 여러 번 사용할 수 있습니다.인덱싱 후 도구는 검색 팝업에 단어 또는 문자열이 입력되고 도구가 검색하는 것과 유사한 방식으로 작동합니다.그러나 이제 이 도구는 클래스에 검색 쿼리가 표시되는 횟수뿐만 아니라 검색 쿼리가 사용되는 방식을 기준으로 각 클래스의 순위를 매깁니다.우선 쿼리가 클래스에서 한 번만 사용되는 경우 쿼리가 [2]중요해야 한다고 가정합니다.그러나 다른 요인도 고려합니다.결과적으로 클래스는 개념을 포함할 가능성이 가장 높은 10진수 순위가 부여됩니다.

버그

버전 3.2.0에는 알려진 버그가 있으며 Web Developers용 Java EE에서 실행할 때 치명적인 오류가 발생합니다(빌드 ID: 20090920-1017).그러나 표준 Java Developers 버전과 많은 이전 버전의 Eclipse와 함께 작동합니다.

레퍼런스

  1. ^ JRiples: 증분 변경 시 프로그램 이해 도구 http://portal.acm.org/citation.cfm?id=1059334
  2. ^ 오티스 고스포드네티치, 에릭 해처, 루센 인 액션매닝 출판사, 2005. ISBN978-1-932394-28-3.

외부 링크