비즈니스 규칙 개발을 위한 디버그 방법

  • 항상 소스 데이터 및 예상 결과를 알고 있는 작은 데이터 세트에서 비즈니스 규칙을 단위 테스트하여 계산을 수동으로 수행할 수 있습니다.
  • Calculation Manager에서 비즈니스 규칙을 실행하고 로그 메시지를 검토합니다. 규칙이 완료되면 새 탭에 로그 메시지가 표시되며 로그 메시지를 익스포트하거나 저장할 수 있습니다. 로그 파일을 분석하면 계산에 시간이 걸리는 위치를 확인하는 데 도움이 됩니다.
  • Calculation Manager에서 규칙 세트의 각 규칙을 개별적으로 실행하고 로그 메시지를 검토합니다.
  • 디버그 모드에서 Calculation Manager를 사용하여 개발 중에 규칙을 디버깅합니다.
  • 비즈니스 규칙에서 CALCPARALLEL 또는 FIXPARALLEL를 사용하는 경우, 특히 할당 함수(@ALLOCATE 또는 @MDALLOCATE) 중 하나를 사용할 때는 병렬 계산을 제거하여 규칙 실행 여부와 성능 개선 여부를 테스트하십시오.
  • 모든 필요한 데이터(예: 할당 합계)가 있으며 계산이 수행되기 전에 필요에 따라 미리 계산되어 있는지 확인합니다.
  • 긴 스크립트의 경우 디버깅을 맨위에서 시작하여 아래로 진행합니다. 스크립트 시작 부분에 이슈가 있으면 이후 추가로 이슈가 생성될 수 있습니다. 한 섹션씩 디버깅하여 모든 데이터가 제대로 생성되는지 확인합니다. 스크립트의 나중 섹션이 이전 섹션을 덮어쓰지 않는지 확인합니다.

    스크립트를 디버깅할 때 각 계산 단계 내의 구문 길이를 고려하십시오. 계산이 실패한 부분을 잘 모르는 경우 맨아래부터 한 번에 하나씩 섹션을 주석 처리하고 계산이 실행되어 올바른 결과가 나올 때까지 계산을 다시 실행합니다. 이때 계산의 맨위부터 한 번에 하나씩 섹션에서 주석을 제거하여 작업을 진행하면서 각 변경사항을 테스트합니다.

  • 디버그 모드를 사용하여 스크립트의 각 섹션이 필요한 경우 순차적으로 계산되는지 확인합니다.
  • 모든 블록이 성공적으로 생성되는지 확인하려면 수동으로 데이터를 지우고 재로드합니다. 블록 생성을 충분히 테스트하지 않으므로 명확한 스크립트를 사용하지 마십시오.
  • 항상 스크립트를 다시 실행하여 테스트함으로써 구문이 입력 데이터와 채워진 데이터에 대해 올바른 결과를 생성하는지 확인합니다.
  • 항상 두 개 이상의 데이터 세트가 있는 데이터 결과를 모두 테스트합니다. 개발 시점에는 항상 입력 데이터를 특정 값에서 다른 값으로, #missing으로, #missing에서 특정 값으로, 다른 값으로 변경하여 테스트합니다. 각 변경에 대해 규칙을 다시 실행하고 결과를 검증합니다.
  • 사용자 입력이 데이터 세트를 변경할 수 있는 경우(예: 할당을 위해) #missing에서 특정 값으로 그리고 특정 값에서 #missing으로 변경되는 데이터를 테스트합니다. 이렇게 하면 다시 실행 중에 필요한 경우 이전에 계산된 결과가 제거됩니다. 예를 들어 첫번째 실행에서는 제품 A, B 및 C에 대한 데이터를 입력하고 두번째 실행에서는 제품 B, C 및 D(A는 아님)에 대한 데이터를 입력하는 경우 두번째 실행 전 값을 #missing으로 변경하면 두번째 실행에서 제품 A에 대한 할당 결과가 제대로 제거됩니다.