/
Main Entities (korean)

Main Entities (korean)

Main Analysis Entities

EntityDescriptionEtc.
AnalysisConfig

a static analysis plug-in can use this object to analyze a source file.

this object transfer to a static analysis plug-in with full information.

 
AnalysisResult

a static analysis plug-in should fill(not create) the fields of this object as a result of analysis.

this object will be used by the dexter-execute project(EndOfAnalysisHandler).

 
Defect

a Defect object indicate one defect.

a defect object can have more than one Occurence object(s) as a List

a static analysis plug-in should create a Defect or Defects List

 
Occurence

a Occurence has a exact position information of a Defect.

a static analysis plug-in should create a Occurence or Occurence List

 
PreOccurence

sometimes, it is hard to create a Defect and a Occurence objects separately.

in this case, you can create PreOccurence object, then create a Defect and a Occurence objects
from the PreOccurence object.

 
IAnalysisEntityFactory

the dexter-execute project use a concreate class of this interface

to create an AnalysisConfig and an AnalysisResult objects.

You don't need to use this interface if you are concerns only a static analysis plug-in

 

Defect State

Defect Severity

심각도
코드
설명
사례
CriticalCRI
  • 시스템을 중지시킬 수 있는 결함
  • 런타임에 주로 발생하는 결함

Memory Leak

Array Index

MajorMAJ
  • 단위 모듈의 기능은 작동하지 않지만 전체 시스템 작동에는 영향을 주지 않는 결함
  • 런타임 이외에 발생하는 모든 결함
중복된 Branch 구문
MinorMIN
  • 결함이지만 즉시 수정할 필요가 없는 결함
Type 변환
Clean Rule CodeCRC
  • 결함은 아님
  • 클린 코드 관점에서 수정이 필요한 코딩 가이드
  • 개발자의 개발 습관 개선을 통한 실수를 방지할 수 있는 코딩 가이드

Explicit 키워드 사용

중첩 If 구문

Etc.ETC
  • 오탐율이 높아서(50% 이상) 개발자의 수동 체크가 필요한 알람
  • 문맥이나 도메인에 따라서 결함일수도 아닐수도 있는 경우
  • 개발자의 체크를 유도하지만 반드시 수정할 필요는 없는 경우

null 역참조

오픈소스 라이선스 체크

Related content