내일배움캠프

[본캠프] 데이터기반 QA/QC 부트캠프 46일차

min0jun 2026. 7. 27. 18:22

Tableau 개인 과제 - 제조 공정 KPI 대시보드 구현

1. 오늘의 학습 목표

오늘은 Tableau 개인 과제를 진행하며 제조 공정 KPI를 계산하고 대시보드를 구현하는 과정을 실습했다. 단순히 차트를 만드는 것에 그치지 않고 LOD 표현식과 집계 함수, 계산 필드를 활용하여 실제 제조 현장에서 사용할 수 있는 KPI를 직접 구현해 보았다. 또한 간트 차트 제작 과정에서 발생한 오류를 해결하고, 대시보드의 가독성을 높이기 위한 서식 설정까지 함께 학습했다. 

Tableau_작업_정리.txt


2. 오늘 학습한 내용

KPI 계산 필드 만들기

이번 과제에서는 제조 공정을 분석하기 위한 다양한 KPI를 직접 계산했다.

가장 먼저 목표 초과 수량을 계산했다. 단순히 생산 수량에서 목표 수량을 빼는 방식이 아니라 LOD(Level of Detail) 표현식을 이용해 부품별 기준값을 먼저 계산한 뒤 초과 수량을 구하는 방식으로 구현했다.

이 과정에서 가장 많이 발생했던 오류는 집계(Aggregate)와 비집계(Non-Aggregate)를 함께 사용할 때 발생하는 오류였다.

처음에는 계산식 안에서 집계 함수와 일반 필드를 함께 사용해 오류가 발생했지만, LOD 내부와 외부에서 사용하는 집계 방식을 동일하게 맞추면서 문제를 해결할 수 있었다.

이번 실습을 통해 Tableau에서는 계산식 자체보다 집계 기준을 일관성 있게 유지하는 것이 매우 중요하다는 점을 배울 수 있었다. 

Tableau_작업_정리.txt


총수익, 변동비용, 공헌이익 계산

다음으로 제조 공정의 수익성을 확인하기 위한 KPI도 구현했다.

총수익은 생산 부품 수량과 부품당 단가를 곱한 값을 모두 합산하여 계산했다.

변동비용은 설계 비용, 운영 비용, 원재료 비용을 모두 더하여 계산했고, 이를 이용해 공헌이익도 함께 계산했다.

공헌이익은 단순히 수익에서 비용을 빼는 것이 아니라 생산 부품 수량으로 나누어 부품당 수익성을 확인할 수 있도록 계산했다.

이번 과제를 진행하면서 계산 필드 하나를 만들더라도 어떤 값을 기준으로 계산해야 하는지 먼저 정의하는 과정이 중요하다는 점을 느낄 수 있었다. 

Tableau_작업_정리.txt


업무 효율성 계산

업무 효율성을 계산하기 위해서는 먼저 장비별 하루 총 업무 시간을 계산해야 했다.

이를 위해 FIXED LOD 표현식을 활용하여 장비번호별 가장 빠른 작업 시작 시간과 가장 늦은 작업 종료 시간을 구한 뒤, 두 시간의 차이를 일일 총 업무 시간으로 계산했다.

이후 생산 시간을 일일 총 업무 시간으로 나누어 업무 효율성을 계산했다.

처음에는 단순히 작업 시간을 모두 더하면 될 것이라고 생각했지만, 실제로는 장비별 작업 시작과 종료 시간을 기준으로 계산해야 정확한 업무 시간이 나온다는 점을 이해할 수 있었다. 

Tableau_작업_정리.txt


간트 차트 구현 과정

이번 과제에서 가장 오래 고민했던 부분은 간트 차트(Gantt Chart) 를 구현하는 과정이었다.

처음에는 작업 시간을 계산하기 위해 DATEDIFF() 함수를 사용했다.

DATEDIFF('minute', [작업 시작 시간], [작업 종료 시간])

계산식은 정상적으로 동작했지만 작업 시간을 크기(Size) 에 배치하면 원하는 간트 차트가 아니라 일반 막대그래프로 표시되는 문제가 발생했다.

처음에는 계산식이 잘못되었다고 생각해 여러 번 수정했지만, 원인은 계산식이 아니라 간트 차트에서 사용하는 데이터 형태에 있었다.

여러 방법을 시도한 끝에 작업 시간을 다음과 같이 시간 차이(Duration) 로 직접 계산하도록 변경했다.

([작업 종료 시간] - [작업 시작 시간])

이후 차트 설정을 다음과 같이 변경했다.

  • 열 : 작업 시작 시간(정확한 날짜, 연속형)
  • 행 : 장비번호, 부품명
  • 마크 : Gantt Bar
  • 크기 : 작업 시간
  • 레이블 : 작업 시간

설정을 변경하자 원하는 형태의 간트 차트가 정상적으로 완성되었다.

이번 실습을 통해 Tableau에서는 같은 값을 계산하더라도 어떤 데이터 타입으로 반환되는지가 차트 결과에 큰 영향을 준다는 점을 직접 경험할 수 있었다. 

Tableau_작업_정리.txt


시간 축과 서식 수정

간트 차트를 완성한 뒤에는 시간 축도 함께 수정했다.

처음에는 시간 축이 세부 단위까지 모두 표시되어 화면이 복잡하게 보였다.

이를 해결하기 위해 축 서식을 변경하여 1시간 단위로 표시하도록 수정했다. 시간만 깔끔하게 표시되면서 차트의 가독성이 훨씬 좋아졌다.

또한 대시보드 전체 글꼴도 통합 문서의 글꼴 설정에서 한 번에 변경하여 시각적인 일관성을 맞췄다.

마지막으로 대시보드 크기에 맞춰 전체 보기(Fit Entire View)너비 맞춤(Fit Width) 기능도 적용했다.

차트의 내용이 동일하더라도 서식을 어떻게 설정하느냐에 따라 사용자가 데이터를 읽는 속도가 크게 달라질 수 있다는 점을 다시 한 번 느낄 수 있었다. 

Tableau_작업_정리.txt


3. 나의 간단 소감

오늘은 Tableau에서 KPI 계산과 대시보드 제작을 진행하면서 계산식보다 데이터를 어떻게 집계하고 어떤 형태로 시각화할 것인지가 더 중요하다는 점을 배울 수 있었다. 특히 간트 차트를 구현하는 과정에서는 계산식이 맞는데도 원하는 결과가 나오지 않아 여러 방법을 시도했는데, 데이터 타입과 차트 설정을 함께 수정하니 문제를 해결할 수 있었다. 또한 LOD 표현식을 활용하면서 집계와 비집계의 차이를 조금 더 이해할 수 있었고, 실제 제조 공정 데이터를 분석할 때도 이러한 계산 방식이 많이 활용될 것이라는 생각이 들었다. 앞으로는 계산식을 외우기보다 왜 이런 계산을 하는지, 어떤 차트에 어떤 데이터 형태가 적합한지를 함께 이해하면서 실습을 이어가야겠다는 목표가 생겼다.