(Service Modularization for the Code Visualization) 코드 가시화를 위한 서비스 모듈화 (Service Modularization for the Code Visualization) 2017. 04. 29. 홍익대학교 소프트웨어공학 연구실 이진협 지도교수 : 김영철 안녕하십니까 코드 가시화의 서비스 모듈화를 발표할 홍익대학교 소프트웨어공학 연구실 이진협 입니다.
목차 1 연구 동기 2 기존 연구 3 자동화 서비스의 모듈화 4 도구 설치 및 가시화 사례 5 결론 및 향후 연구 먼저 목차 입니다. 연구 배경, 기존 연구, 자동화 서비스의 모듈화, 도구 설치 및 가시화, 결론 및 향후 연구 순으로 발표하겠습니다. 4 도구 설치 및 가시화 사례 5 결론 및 향후 연구
연구 동기 연구 배경입니다.
연구 동기 소프트웨어 고품질화 서비스 모듈화 코드 가시화 개발자/프로그래머에게 코드 내부의 복잡도를 제시 개발자 스스로 나쁜 코딩 습관이나 복잡도를 해소하려는 동기 부여 서비스 모듈화 가시화 도구 구축이 쉽지 않음 기능적 관점, 품질 지표 가시화 서비스 2015년 IDC에 따르면 세계 SW 테스트 서비스 시장 규모는 2015년을 기준으로 193억 달러 우리 돈으로 23조 2천억 원이며, 연평균 15% 성장률을 보인다고 했습니다. 소프트웨어 테스팅 시장이 계속해서 성장함과 동시에 대규모 소프트웨어 개발 또한 많아지고 있습니다. 소프트웨어의 규모가 커짐에 따라 코드의 복잡도가 높아지고, 이는 소프트웨어 제품의 안정성과 고품질화를 어렵게 합니다. 그래서 소프트웨어의 품질 지표 중 결합도와 응집도 등을 이용해 복잡도 파악하고 소스코드를 개선할 수 있도록 소스코드 가시화를 연구하고 있습니다.
기존 연구 기존 연구 입니다.
기존 연구 Source Navigator Xcode Parser 기존 Visualization의 구성도 소스코드 분석 도구 특징 Source Navigator 오픈소스인 코드 분석도구이다. C, C++, Java 등 다양한 코드 분석을 지원한다. 코드 입력, 결과로 바이너리 파일 생성, DBdump로 데이터베이스화 한다. XcodeParser 홍익대학교 소프트웨어공학 연구실에서 자체 제작한 도구로 C, C++, Java 코드를 분석하여 ASTM(Abstract Syntax Tree Metamodel) 파일로 만들어준다. ASTParser 오픈소스인 코드 분석도구이다. Java로 짜인 소스코드만을 타겟으로 한다. JDT 라이브러리에 있는 API로, AST(Abstract Syntax Tree) 형태로 만들어준다. JavaParser 오픈소스인 코드 분석도구이다. JDT ASTParser를 기반으로 하여, 마찬가지로 Java 코드만을 대상으로하며, AST 형태로 만들어준다. 기존 연구 기존 Visualization의 구성도 < 정적분석 도구 > Source Navigator Source Navigator DB GraphViz Graph Source Code Xcode Parser 기존 visualization을 나타낸 구성도 입니다. 구성도 설명하기 전에 소스코드 분석 도구들의 종류들에 대해 간단히 설명 드리겠습니다. 이제 구성도를 다시 보면, 소스네비게이터를 이용한 방법과 엑스코드파서를 이용한 방법이 있습니다. 소스네비게이터를 사용한 것을 살펴보면 먼저 소스코드를 소스네비게이터에 입력하여 나온 결과물을 데이터베이스에 저장합니다. 저장된 데이터를 가시화 코드로 변환하여 그래프비즈에 입력하여 가시화 그래프를 생성합니다. 그리고 마찬가지 방법으로 아래의 엑스코드파서를 이용하여 가시화 그래프를 생성합니다. 이렇게 두 가지 방법을 살펴보면 파서 부분을 제외하고는 모두 공통되는 것이 대부분입니다. 따라서 파서 부분을 모듈화 하고 나머지 부분들은 동일하게 사용하여 하나의 모듈화된 비쥬얼라이제이션을 구현하였습니다. Xcode Parser DB GraphViz Graph Source Code
기존 연구 Source Navigator Xcode Parser 기존 Visualization의 구성도 < 정적분석 도구 > Source Navigator Parser Source Navigator DB GraphViz Graph Source Code Xcode Parser 기존 visualization을 나타낸 구성도 입니다. 구성도 설명하기 전에 소스코드 분석 도구들의 종류들에 대해 간단히 설명 드리겠습니다. 이제 구성도를 다시 보면, 소스네비게이터를 이용한 방법과 엑스코드파서를 이용한 방법이 있습니다. 소스네비게이터를 사용한 것을 살펴보면 먼저 소스코드를 소스네비게이터에 입력하여 나온 결과물을 데이터베이스에 저장합니다. 저장된 데이터를 가시화 코드로 변환하여 그래프비즈에 입력하여 가시화 그래프를 생성합니다. 그리고 마찬가지 방법으로 아래의 엑스코드파서를 이용하여 가시화 그래프를 생성합니다. 이렇게 두 가지 방법을 살펴보면 파서 부분을 제외하고는 모두 공통되는 것이 대부분입니다. 따라서 파서 부분을 모듈화 하고 나머지 부분들은 동일하게 사용하여 하나의 모듈화된 비쥬얼라이제이션을 구현하였습니다. Xcode Parser DB GraphViz Graph Source Code
기존 연구 Source Navigator Xcode Parser 기존 Visualization의 구성도 < 정적분석 도구 > Modularized Visualization Source Navigator Parser DB GraphViz Source Code Source Navigator DB GraphViz Graph Graph Xcode Parser 기존 visualization을 나타낸 구성도 입니다. 구성도 설명하기 전에 소스코드 분석 도구들의 종류들에 대해 간단히 설명 드리겠습니다. 이제 구성도를 다시 보면, 소스네비게이터를 이용한 방법과 엑스코드파서를 이용한 방법이 있습니다. 소스네비게이터를 사용한 것을 살펴보면 먼저 소스코드를 소스네비게이터에 입력하여 나온 결과물을 데이터베이스에 저장합니다. 저장된 데이터를 가시화 코드로 변환하여 그래프비즈에 입력하여 가시화 그래프를 생성합니다. 그리고 마찬가지 방법으로 아래의 엑스코드파서를 이용하여 가시화 그래프를 생성합니다. 이렇게 두 가지 방법을 살펴보면 파서 부분을 제외하고는 모두 공통되는 것이 대부분입니다. 따라서 파서 부분을 모듈화 하고 나머지 부분들은 동일하게 사용하여 하나의 모듈화된 비쥬얼라이제이션을 구현하였습니다. Source Code Xcode Parser DB GraphViz
Eclipse에 SoftwareVisualization Project Import 기존 연구 기존 서비스 Install Installer 실행 Source Navigator 설치 GraphViz 설치 Eclipse 설치 필요시 Java 설치 기존 서비스 수행 절차 기존에는 파서 중에 소스네비게이터만 자동 설치 패키지에 포함 됐었습니다. 그리고 프로그램 설치과정에 불필요한 부분이 있었고, 서비스 수행 시에는 이클립스를 구동하여 외부 프로젝트를 임포트 시키는 번거로움과 소스코드 상에서 타겟소스 경로, 소스네비게이터 경로 등을 개발자가 수정해줘야하는 번거로움이 있었습니다. 또한 이클립스가 없는 환경에서는 따로 설치가 필요했습니다. Eclipse에 SoftwareVisualization Project Import 소스코드 상에서 경로들 수정 Eclipse Run 결과물 저장
모듈화된 자동화 서비스 자동화 서비스의 모듈화 입니다.
모듈화된 자동화 서비스 모듈화 파서 품질지표 Source Navigator XcodeParser JavaParser . . . : 관리에 용이하도록 기능 단위로 분할하는 것 파서 품질지표 Source Navigator XcodeParser JavaParser . . . 먼저 모듈화란 관리에 용이하도록 기능 단위로 분할하는 것을 의미합니다. 이 서비스에서는 파서들과 데이터베이스에 있는 정보로 품질지표에 따라 가시화 코드를 생성하는 부분들을 모듈화 하였습니다. 파서와 품질지표를 모듈화 함에 따라 개발자가 지정하는 파서를 이용해 원하는 품질지표 그래프를 생성할 수 있습니다. 또한 새로운 파서 또는 새로운 품질지표가 생기면 기능을 추가 하기도 쉬워집니다. Coupling Cohesion Coupling &Cohesion ClassDiagram . . .
모듈화된 자동화 서비스 모듈화 파서 품질지표 Source Navigator XcodeParser JavaParser . . . : 관리에 용이하도록 기능 단위로 분할하는 것 파서 품질지표 Source Navigator XcodeParser JavaParser . . . 먼저 모듈화란 관리에 용이하도록 기능 단위로 분할하는 것을 의미합니다. 이 서비스에서는 파서들과 데이터베이스에 있는 정보로 품질지표에 따라 가시화 코드를 생성하는 부분들을 모듈화 하였습니다. 파서와 품질지표를 모듈화 함에 따라 개발자가 지정하는 파서를 이용해 원하는 품질지표 그래프를 생성할 수 있습니다. 또한 새로운 파서 또는 새로운 품질지표가 생기면 기능을 추가 하기도 쉬워집니다. Coupling Cohesion Coupling &Cohesion ClassDiagram . . .
Visualization _Installer.exe 모듈화된 자동화 서비스(구축 관점) Installer 생성 중 사용된 도구들 ToolChain (Java) ToolChain.jar ToolChain.exe SourceNavi + SNCommandLine SourceNavi.zip Visualization _Installer.exe 모듈화된 자동화 서비스의 구성도 및 installer 구성 방법입니다. 툴체인.exe는 소스네비게이터, 엑스코드파서, 그래프비즈를 이어주는 자바로 짜여진 툴체인을 이클립스로 java archive 형태로 추출한 것을 Jsmooth를 이용해 실행파일화 한 것입니다. 소스네비.zip은 파서 중에 하나인 소스네비게이터 오픈소스를 C++코드로 실행하는 SNCommandLine 파일을 함께 압축한 파일입니다. 엑스코드파서.jar 사용하기 쉽게 jar 파일화 해놓은 파서 입니다. 툴체인과 소스네비, 엑스코드파서, 그래프비즈를 NSIS를 이용해서 Visualization Installer를 생성 했습니다. 만약 새로운 파서나 가시화 지표를 추가한다면, 파서 모듈과 툴체인 실행파일 부분만 내용을 추가해서 설치해주면 즉시 사용할 수 있습니다. XcodeParser.jar GraphViz.exe
Visualization _Installer.exe 모듈화된 자동화 서비스 Eclipse(Jar) : Java Archive 확장자로 자바 클래스 파일과 연관 메타데이터 , 리소스를 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 패키지 파일 포맷 Installer 생성 중 사용된 도구들 ToolChain (Java) ToolChain.jar ToolChain.exe SourceNavi + SNCommandLine SourceNavi.zip Visualization _Installer.exe 모듈화된 자동화 서비스의 구성도 및 installer 구성 방법입니다. 툴체인.exe는 소스네비게이터, 엑스코드파서, 그래프비즈를 이어주는 자바로 짜여진 툴체인을 이클립스로 java archive 형태로 추출한 것을 Jsmooth를 이용해 실행파일화 한 것입니다. 소스네비.zip은 파서 중에 하나인 소스네비게이터 오픈소스를 C++코드로 실행하는 SNCommandLine 파일을 함께 압축한 파일입니다. 엑스코드파서.jar 사용하기 쉽게 jar 파일화 해놓은 파서 입니다. 툴체인과 소스네비, 엑스코드파서, 그래프비즈를 NSIS를 이용해서 Visualization Installer를 생성 했습니다. 만약 새로운 파서나 가시화 지표를 추가한다면, 파서 모듈과 툴체인 실행파일 부분만 내용을 추가해서 설치해주면 즉시 사용할 수 있습니다. XcodeParser.jar GraphViz.exe
Visualization _Installer.exe 모듈화된 자동화 서비스 JSmooth : Java JAR 파일을 EXE 파일에 래핑하기위한 도구로, 설치된 JVM을 직접 찾을 수 있기 때문에, Java 배치를 더 유연하고 사용하기 쉽게 함 Installer 생성 중 사용된 도구들 ToolChain (Java) ToolChain.jar ToolChain.exe SourceNavi + SNCommandLine SourceNavi.zip Visualization _Installer.exe 모듈화된 자동화 서비스의 구성도 및 installer 구성 방법입니다. 툴체인.exe는 소스네비게이터, 엑스코드파서, 그래프비즈를 이어주는 자바로 짜여진 툴체인을 이클립스로 java archive 형태로 추출한 것을 Jsmooth를 이용해 실행파일화 한 것입니다. 소스네비.zip은 파서 중에 하나인 소스네비게이터 오픈소스를 C++코드로 실행하는 SNCommandLine 파일을 함께 압축한 파일입니다. 엑스코드파서.jar 사용하기 쉽게 jar 파일화 해놓은 파서 입니다. 툴체인과 소스네비, 엑스코드파서, 그래프비즈를 NSIS를 이용해서 Visualization Installer를 생성 했습니다. 만약 새로운 파서나 가시화 지표를 추가한다면, 파서 모듈과 툴체인 실행파일 부분만 내용을 추가해서 설치해주면 즉시 사용할 수 있습니다. XcodeParser.jar GraphViz.exe
Visualization _Installer.exe NSIS : Nullsoft Scriptable Install System (NSIS)는 스크립트 기반으로 동작하는 윈도우용 설치 프로그램으로 오픈소스이며, DLL, ActiveX 컨트롤, 바로 가기 파일, 레지스트리 키 등 많은 기능을 지원 HM NIS Edit : NSIS를 위한 오픈소스 스크립트 편집기로, 스크립트 작성 마법사를 지원하고, 자세한 설명이 되어있어 쉽게 스크립트를 작성 모듈화된 자동화 서비스 Installer 생성 중 사용된 도구들 ToolChain (Java) ToolChain.jar ToolChain.exe SourceNavi + SNCommandLine SourceNavi.zip Visualization _Installer.exe 모듈화된 자동화 서비스의 구성도 및 installer 구성 방법입니다. 툴체인.exe는 소스네비게이터, 엑스코드파서, 그래프비즈를 이어주는 자바로 짜여진 툴체인을 이클립스로 java archive 형태로 추출한 것을 Jsmooth를 이용해 실행파일화 한 것입니다. 소스네비.zip은 파서 중에 하나인 소스네비게이터 오픈소스를 C++코드로 실행하는 SNCommandLine 파일을 함께 압축한 파일입니다. 엑스코드파서.jar 사용하기 쉽게 jar 파일화 해놓은 파서 입니다. 툴체인과 소스네비, 엑스코드파서, 그래프비즈를 NSIS를 이용해서 Visualization Installer를 생성 했습니다. 만약 새로운 파서나 가시화 지표를 추가한다면, 파서 모듈과 툴체인 실행파일 부분만 내용을 추가해서 설치해주면 즉시 사용할 수 있습니다. XcodeParser.jar GraphViz.exe
모듈화된 자동화 서비스 Installer 생성 위한 NSIS용 스크립트 설치 파일 SourceNavigator GraphViz 가장 위에는 설치 파일에 대한 실행파일에 대한 설정부분이고, 두 번째 부분은 SetOutPath는 설치 파일을 실행 시켰을 시 소스네비게이터를 어느 위치에 설치를 하는가 경로를 설정하는 부분입니다. 그리고 SetOverwrite는 해당 프로그램이 이미 설치되어있는지 여부를 확인하여 이미 설치가 되어있으면 덮어쓸 것 인지 확인하는 부분입니다. ExecWait은 다운로드한 파일을 바로 실행하여 전체 프로그램 설치 과정 중에 같이 설치하도록 하는 명령어 입니다. 마지막으로 CreateShorCut은 가시화 프로그램 실행 파일을 바탕화면에 바로가기로 생성하는 부분입니다. 이 모든 섹션들은 설치과정 중에 수행할 것인지를 체크하여 실행 여부를 결정할 수 있습니다. XcodeParser ToolChain
모듈화된 자동화 서비스 ( 품질지표 서비스 ) DB 저장 GraphViz 선택된Parser 테이블 생성 소스코드 경로 결과출력 경로 파일이름 DB 저장 선택된Parser Source Navigator Xcode Parser Coupling Cohesion & Class Diagram 모듈화된 자동화 서비스 절차를 순차적으로 나타낸 그림입니다. 먼저 가시화 프로그램을 실행 시키고 입력화면에 분석할 소스코드가 있는 위치 경로를 선택합니다. 그리고 결과물을 출력할 경로를 선택하고, 출력할 결과물의 이름을 입력합니다. 다음으로 첫번째 빨간 박스에 있는 파서 중 사용하고자 하는 파서를 선택하면 해당 파서로 가시화할 수 있는 지표들만 활성화됩니다. 그렇게 두번째 빨간 박스에 있는 지표들 중 가시화할 지표를 선택한 후 실행 버튼을 누르면 테이블이 생성되고, 선택된 파서로 분석한 정보를 DB에 저장합니다. DB에 저장된 정보를 가지고 선택했던 지표를 표현할 수 있는 가시화 코드를 생성합니다. 마지막으로 가시화 코드를 GraphViz에 입력하여 다음과 같은 최종 결과물인 소스코드 가시화 그래프를 생성합니다. 정보 추출 및 선택된 지표의 그래프로 코드화 GraphViz
Software Visualization Import 기존 도구와 모듈화된 자동화 서비스 비교 설치 과정 비교 실행 과정 비교 Installer 실행 SourceNavi 설치 GraphViz 설치 Eclipse 설치 필요 시 Java 설치 기존 Installer 실행 Parser 설치 GraphViz 설치 ToolChain 설치 필요 시 Java 설치 개선 기존 도구와 모듈화된 자동화 서비스를 비교해보면 아래 그림과 같습니다. 우선 설치과정에서는 Doxygen는 사용하지 않아 빼고, Eclipse를 굳이 설치하지 않아도 되도록 Toolchain을 실행파일을 설치합니다. 실행 과정 비교에서는 기존 방법에서는 이클립스에서 프로젝트를 임포트 시키고, 프로젝트 내에 경로부분에 대한 소스코드를 사용자 상황에 맞게 수정하고, 메인에서 어떤 가시화 지표를 사용할지 수정 후 실행합니다. 반면 개선된 방법에서는 툴체인을 실행시키고 경로 선택하고, 프로젝트 이름 입력 후 파서와 지표 선택하고 실행 시키면 선택한 가시화 그래프가 생성됩니다. Software Visualization Import Eclipse Run 중간 결과물 저장 지정한 경로에 최종 결과물 출력 기존 ToolChain 실행 지정한 경로에 중간 결과물, 최종 결과물 저장 개선
도구 설치 및 가시화 사례 도구 설치 및 가시화 사례 입니다.
도구 설치 및 가시화 사례 이번에는 개발자가 작성한 자바 소스코드를 가시화하기까지의 과정을 살펴 보겠습니다. 먼저 Visualization_setup 파일을 실행 시킵니다. 한번도 설치해본 적 없는 pc를 사용한다는 가정 하에 별도의 설정 없이 다음 또는 설치 버튼만 클릭해주면 바로 가시화 도구가 설치됩니다.
도구 설치 및 가시화 사례 가시화 도구에서 타겟 소스 경로, 출력파일 경로, 프로젝트 이름을 지정한 뒤 파서를 선택하고, 품질 지표를 선택한 뒤 실행 버튼을 클릭합니다. 이 사례에서는 파서를 XcodeParser로, 품질 지표는 결합도와 응집도를 한번에 나타내는 그래프로 선택하였습니다.
도구 설치 및 가시화 사례 가시화 도구에서 타겟 소스 경로, 출력파일 경로, 프로젝트 이름을 지정한 뒤 파서를 선택하고, 품질 지표를 선택한 뒤 실행 버튼을 클릭합니다. 이 사례에서는 파서를 XcodeParser로, 품질 지표는 결합도와 응집도를 한번에 나타내는 그래프로 선택하였습니다.
도구 설치 및 가시화 사례 가시화 도구에서 타겟 소스 경로, 출력파일 경로, 프로젝트 이름을 지정한 뒤 파서를 선택하고, 품질 지표를 선택한 뒤 실행 버튼을 클릭합니다. 이 사례에서는 파서를 XcodeParser로, 품질 지표는 결합도와 응집도를 한번에 나타내는 그래프로 선택하였습니다.
도구 설치 및 가시화 사례 가시화 도구에서 타겟 소스 경로, 출력파일 경로, 프로젝트 이름을 지정한 뒤 파서를 선택하고, 품질 지표를 선택한 뒤 실행 버튼을 클릭합니다. 이 사례에서는 파서를 XcodeParser로, 품질 지표는 결합도와 응집도를 한번에 나타내는 그래프로 선택하였습니다.
도구 설치 및 가시화 사례 클래스 다이어그램 (클래스 이름) (속성, 메소드) 가시화 도구에서 타겟 소스 경로, 출력파일 경로, 프로젝트 이름을 지정한 뒤 파서를 선택하고, 품질 지표를 선택한 뒤 실행 버튼을 클릭합니다. 이 사례에서는 파서를 XcodeParser로, 품질 지표는 결합도와 응집도를 한번에 나타내는 그래프로 선택하였습니다.
도구 설치 및 가시화 사례 결합도 : 모듈 간의 상호 의존 정도 가시화 도구에서 타겟 소스 경로, 출력파일 경로, 프로젝트 이름을 지정한 뒤 파서를 선택하고, 품질 지표를 선택한 뒤 실행 버튼을 클릭합니다. 이 사례에서는 파서를 XcodeParser로, 품질 지표는 결합도와 응집도를 한번에 나타내는 그래프로 선택하였습니다.
도구 설치 및 가시화 사례 응집도 : 모듈 내의 기능적 관련 정도 가시화 도구에서 타겟 소스 경로, 출력파일 경로, 프로젝트 이름을 지정한 뒤 파서를 선택하고, 품질 지표를 선택한 뒤 실행 버튼을 클릭합니다. 이 사례에서는 파서를 XcodeParser로, 품질 지표는 결합도와 응집도를 한번에 나타내는 그래프로 선택하였습니다.
도구 설치 및 가시화 사례 D : Data S : Stamp C : Control E : External M : Common 가중치&결합도 D : Data S : Stamp C : Control E : External M : Common N : Content 낮음 높음 그 결과로 그림과 같이 결합도와 응집도를 동시에 나타낸 가시화 그래프가 나타납니다. 위 그림을 간단히 설명 드리자면 각각의 네모 박스가 클래스이고, 클래스 내에 있는 라인들이 각각 메소드를 의미합니다. 메소드 뒤에 있는 괄호안에 나타난 수치 즉, 노란색 동그라미 안의 수치는 메소드의 응집도를 의미합니다. 또한 클래스끼리 연결된 화살표에 나타난 괄호 안의 수치 즉, 빨간 동그라미 안의 수치는 클래스간의 결합도를 의미합니다.
중간, 최종 결과물 GraphViz 입력코드 (지표를 활용한) GraphViz 결과 그래프 가시화를 위해 생성된 중간 결과물들 즉, 소스네비게이터에 대한 결과물, 엑스코드파서에 대한 결과물, 가시화 코드 그리고 최종 결과물인 가시화 그래프가 이 폴더 저 폴더에 흩어져 있으면 매번 찾기 번거롭고, 관리하기 어렵습니다. 때문에 사용자가 지정했던 결과물 출력 경로에 output 디렉토리를 생성하여 실행 중에 생성되는 모든 결과물들을 저장하여 관리에 용이하도록 하였습니다. XCodeParser 결과물
결론 및 향후 연구 결론 및 향후 연구 입니다.
결론 및 향후 연구 기존 가시화 서비스가 수작업이라면, 서비스 모듈화는 가시화 서비스 자동화 사용자가 별도의 기능 설명 문서 없이도 가시화 서비스를 설치하고 입력, 실행을 쉽게 직관적으로 수행 가시화 과정에 생성되는 모든 결과물들을 하나의 디렉터리에 저장하여, 결과물 확인 및 관리에 용이 현재 모듈화된 서비스 자동화 툴은 선택할 수 있는 품질 지표가 적고, 파서의 종류도 두 가지, 차후 다른 파서와 품질 지표를 추가하여 더 다양한 소스코드 가시화를 할 수 있도록 할 예정 기존 가시화 서비스에서 불필요한 것은 줄이고 보완하여, 가시화 서비스를 자동화하였습니다. 사용자가 별도의 기능 설명 문서 없이도 가시화 서비스를 설치하고 입력, 실행을 쉽게 직관적으로 수행할 수 있습니다. 가시화 과정에 생성되는 모든 결과물들을 하나의 디렉터리에 저장하여, 결과물 확인 및 관리에 용이합니다. 현재 모듈화된 서비스 자동화 툴은 기존에 연구된 여러 지표를 사용한 가시화 방법들 중 일부만을 사용, 또한 파서의 종류도 두 가지 뿐이므로 차후 다른 파서와 품질 지표를 추가하여 더 다양한 소스코드 가시화를 할 수 있도록 할 예정입니다.
Q&A