QUICK REVIEW
[논문 리뷰] Identifying KDM Model of JSP Pages
Anas Shatnawi, Hafedh Mili|arXiv (Cornell University)|2017. 01. 01.
Scientific Computing and Data Management참고 문헌 2인용 수 2
한 줄 요약
이 논문은 JSP 페이지의 KDM 모델을 생성하기 위해 두 단계의 접근 방식을 제안한다. 첫 번째 단계로 Jasper를 사용하여 JSP를 자바 서블릿으로 번역하고, 두 번째 단계로 번역 과정에서 포착되지 않은 JSP 태그의 종속성을 보완한다. 이 방법은 JSP 기반 JEE 애플리케이션을 소프트웨어 분석 및 유지보수를 위해 구조화된 KDM 모델로 완전한 역설계를 가능하게 한다.
ABSTRACT
In this report, we propose our approach that identifies a KDM model of JSP pages. Our approach is based on two main steps. The first one aims to reduce the problem space by translating JSP pages into Java Servlets where we can use existing tools to identify a KDM model. The second step aims to complete the resulting KDM model by identifying dependencies of JSP tags that are not codified by the translation step.
연구 동기 및 목표
- 스크립팅 언어인 JSP로 구현된 JEE 기술에 대한 기존 KDM 모델 지원의 부족을 해결하기 위해.
- JSP 기반 JEE 애플리케이션을 소프트웨어 분석을 위해 구조화된 KDM 모델로 역설계할 수 있도록 하기 위해.
- JSP-to-Java 번역 과정에서 포착되지 않은 JSP 태그의 종속성을 식별하고 표현하기 위해.
- 기존 KDM 추출 도구(예: MoDisco)를 중간 서블릿 번역을 통해 JSP 페이지를 지원하도록 확장하기 위해.
- 향후 JSF와 같은 다른 서버 페이지 기술에 대한 KDM 모델링의 기초를 제공하기 위해.
제안 방법
- Jasper 도구를 사용하여 JSP 페이지를 표준 JSP 라이프사이클 매핑을 기반으로 등가의 자바 서블릿으로 번역한다.
- MoDisco 프레임워크를 사용하여 번역된 서블릿에서 초벌 KDM 모델을 추출한다.
- JSP 페이지 및 구성 파일(예: web.xml, @WebServlet 애너테이션)을 분석하여 URL과 서버 페이지 매핑을 식별한다.
- SAX2 기반 XML 파싱을 사용하여 URL에서 해당 서블릿 페이지로의 매핑을 위한 조회 테이블을 구축한다.
- JSP 태그 종속성(예: <jsp:include>, <jsp:forward>)을 식별하고, 번역된 자바 코드에 포함되지 않은 대상 페이지 참조를 추출한다.
- JSP 페이지를 나타내는 ClassUnit 인스턴스 간의 메서드 호출 관계를 삽입하여 初기 KDM 모델을 수정한다.
실험 결과
연구 질문
- RQ1기존 KDM 추출 도구에서 네이티브로 지원되지 않는 JSP 페이지에 대해 KDM 모델을 자동으로 생성하는 방법은 무엇인가?
- RQ2JSP 태그(예: <jsp:include>, <jsp:forward>)가 JSP-to-Java 번역 과정에서 포착되지 않는 핵심 종속성은 무엇인가?
- RQ3web.xml과 @WebServlet 애너테이션에서 URL과 서버 페이지 간의 매핑을 체계적으로 추출하여 종속성 모델링을 지원하는 방법은 무엇인가?
- RQ4기존 KDM 추출 도구(예: MoDisco)가 중간 서블릿 번역을 통해 JSP 역설계에 얼마나 효과적으로 활용될 수 있는가?
- RQ5번역된 자바 코드에 표현되지 않은 크로스-JSP 종속성을 포함하도록 결과 KDM 모델을 어떻게 확장할 수 있는가?
주요 결과
- JSP를 자바 서블릿으로 번역함으로써 기존 MoDisco 기반 KDM 추출 도구를 활용할 수 있도록 하여 JSP 페이지의 KDM 모델 생성에 성공적으로 기여하였다.
- <jsp:include> 및 <jsp:forward>와 같은 JSP 태그는 번역된 자바 코드에 표현되지 않는 종속성을 도입하며, 이를 명시적으로 포착해야 한다.
- web.xml과 @WebServlet 애너테이션의 사용은 URL과 서버 페이지 간의 정확한 매핑을 가능하게 하며, 이는 종속성 재구성에 필수적이다.
- SAX2 API를 기반으로 한 커스터마이징된 파서는 web.xml에서 URL-페이지 매핑을 효과적으로 추출하여 자동 종속성 모델링을 지원한다.
- JSP 페이지의 ClassUnit 인스턴스 간에 메서드 호출 관계를 삽입함으로써 KDM 모델을 성공적으로 확장하여 런타임 종속성을 표현하였다.
- 이 방법은 JSP 기반 JEE 애플리케이션의 구조적 요소와 크로스-페이지 종속성을 모두 모델링하는 데 있어 타당성과 완전성을 입증하였다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.