AI는 익명화된 엑셀 템플릿 위에서 프로그램의 껍데기를 만드는 일을 돕고, 실제 업무 데이터베이스는 완성된 HTML에 사용자의 컴퓨터에서 로컬로 불러옵니다.
첫 번째 글에서는 데이터를 안전하게 준비하는 문제를 어떻게 풀었는지 보여드렸습니다. 로컬에서 동작하는 마스킹 도구를 만들고, 업무 데이터베이스의 구조는 유지하면서 실제 개인정보는 외부 AI 환경으로 넘기지 않는 익명화 엑셀 템플릿을 얻는 방법을 익혔습니다.
다음 질문은 거의 곧바로 떠오릅니다. 이 템플릿으로 그다음에 무엇을 해야 할까요?
우리의 과제는 단순히 그래프 몇 개를 만드는 것이 아니었습니다. 캐스케이드 커뮤니케이션과 안전위원회를 준비할 때 쓸 수 있는 실무형 분석 도구가 필요했습니다. 데이터 범위를 바꾸고, 전체 지표에서 부서·구역·개별 기록까지 파고들며, 병목을 확인하고, 경영진과의 대화 자료를 빠르게 준비할 수 있어야 했습니다.
이때 1단계의 핵심 조건은 그대로 유지됩니다. 외부 개발 단계에서 회사의 실제 업무 데이터베이스는 AI로 넘기지 않습니다.

우리 원천 데이터는 이미 오래전부터 디지털로 생성됩니다. 행동기반 안전대화(BSD)와 중대위험 관리(CRC)는 관리자와 담당자가 사내 모바일 앱 CoLab으로 수행합니다. 즉 문제는 데이터의 부재가 아니라 그다음 단계, 즉 방대한 기록을 얼마나 빨리 이해 가능한 경영 분석으로 바꾸느냐였습니다.
사내 시스템은 관찰을 수행하고 항목을 입력하고 내보내기를 만들 수 있게 해 줍니다. 그러나 깊이 있는 분석 기능 개발에는 별도의 IT 작업이 필요합니다. 인력과 기한, 예산이 제한적이면 그런 요청은 꽤 오래 기다려야 합니다.
Superset 기반의 초기 온라인 대시보드는 기본적인 수량 파악은 해 줍니다. 실무에는 그것만으로 부족합니다. 관리자가 점검 500건, 이탈 70건이라는 수치를 보면 다음 질문은 언제나 같습니다. 정확히 어디에서, 왜 발생했고, 그 뒤에 어떤 구체적인 기록이 있는가.
그래서 우리는 독립형 HTML 대시보드를 사내 IT 시스템의 대체물이 아니라 빠른 중간 도구로 봅니다. 짧은 시간에 분석을 실무에서 검증하고, 어떤 지표가 실제로 필요한지, 어디에서 원자료까지 파고들어야 하는지 파악한 뒤에야 산업용 구현을 위한 더 정확한 요구사항을 정리할 수 있습니다.
AI와 일할 때 가장 흔한 실수 중 하나는 곧바로 «대시보드를 만들어 줘»라고 요청하는 것입니다. 보기 좋은 화면은 금방 얻지만, 나중에 실제로 쓸 수 있다는 보장은 전혀 없습니다.
그래서 AI에 보낸 첫 요청은 달랐습니다. 익명화 엑셀 템플릿을 올리고, 아직 아무것도 프로그래밍하지 말고 파일 구조부터 분석해 달라고 했습니다. 어떤 시트·열·자료형이 있는지, 어떤 항목이 서로 연결되는지, 무엇을 필터로 쓸 수 있는지, 어떤 지표를 계산할 수 있는지, 원본 구조에 어떤 오류가 있을 수 있는지를 말이죠.
이렇게 하면 AI는 먼저 프로그래머가 아니라 데이터 분석가로 일합니다.
예를 들어 행동기반 안전대화에서는 날짜, 회사, 공장, 구역, 관찰자, 근로자, 행동 유형, 공정, 설명, 결과가 중요합니다. 실제 성명 대신 AI는 «직원_00001»을 볼 수도 있습니다. 대시보드 로직을 만드는 데 실제 성명은 필요하지 않습니다.
Prompt 1 — 익명화 데이터베이스 구조 분석: 글 끝의 부록을 참고하세요.

다음 단계는 예쁜 시각화 묶음이 아니라, 대시보드가 답해야 할 경영상의 질문을 정하는 일입니다.
행동대화에서는 추이, 확인된 행동의 구성, 부서, 공정, 이탈의 반복, 관찰자의 활동, 그리고 전체 수치에서 개별 기록으로 이동할 수 있는지가 중요합니다.
그래서 로직은 위에서 아래로 짭니다. 회사 → 공장 → 구역 → 행동 유형 → 공정 → 개별 기록. 막대나 그래프 조각을 누르면 선택 범위가 바뀌고, 해당 지표를 구성한 기록만 볼 수 있습니다.
여기에 근로자 또는 익명 식별자 검색, 확인된 이탈 이력, 부서와 BSD 수행자 순위, 현재 선택 결과의 엑셀 내보내기를 더합니다.
여기서는 간단한 원칙을 씁니다. 그래프를 봤는데 어떤 경영 판단을 돕는지 알기 어렵다면, 그 그래프는 대시보드에 필요하지 않을 가능성이 큽니다.
Prompt 2와 Prompt 5 — HSE 대시보드 구조와 대화형 상세보기: 글 끝의 부록을 참고하세요.






이어서 한 걸음 더 나아갔습니다. 시간을 아끼고 별도 도구를 만들지 않기 위해, 같은 대시보드에 근태표를 붙였습니다.
개발에는 먼저 익명화된 근태표 템플릿을, 이후에는 로컬에서 실제 근태표를 사용했습니다. 덕분에 수행한 BSD 건수뿐 아니라 정해진 권장 빈도의 준수 여부까지 볼 수 있게 되었습니다.
요컨대 실제 근무한 교대 수와 실제로 이루어진 안전대화 건수를 맞춰 본 것입니다. 그 결과 요구 빈도가 지켜지는 곳과 지연이 생기는 곳이 드러났습니다.
이 접근은 공장장과 구역장에게 특히 유용합니다. 대시보드는 전체 업무량이 아니라 요구사항의 실제 이행 정도를, 부서·직종·개별 근로자까지 파고들어 보여 줍니다.
이 확장에는 새로운 원리가 필요하지 않았습니다. 이미 만든 로직을 발전시키고 데이터 한 묶음을 더 연결했을 뿐입니다.
Prompt 6 — 실제 근무 교대를 반영한 BSD 분석: 글 끝의 부록을 참고하세요.
같은 로직이 CRC에도 적용됩니다. 원본 내보내기에서 CRC를 몇 건 수행했고 그중 몇 건에 이탈이 있었는지 알 수 있습니다. 그러나 총량만으로는 핵심 질문에 답할 수 없습니다. 각 교대에서 요구사항이 실제로 얼마나 지켜지는가 하는 질문입니다.
이를 위해 같은 기간의 CRC 데이터와 실제 근태표를 대시보드에 로컬로 불러옵니다. 대조하면 누가 실제로 교대 근무를 했고, CRC를 몇 건 수행해야 했으며, 실제로 몇 건을 수행했는지 알 수 있습니다.
결과로 얻는 것은 건수만이 아니라 이행률, 부족분, 미이행자 명단이며, 확장된 데이터가 있다면 구역·공장·공정·이탈 원인과의 연결까지 포함됩니다.
이때 모든 그래프는 계속 클릭할 수 있습니다. 전체 지표에서 더 깊이 들어가 부서, 구역, 직종, 마지막으로 특정 근로자 카드나 특정 기록까지 도달할 수 있습니다.
이 글에서는 내용이 무거워지지 않도록 CRC 화면 캡처는 싣지 않았습니다. 기술적으로는 BSD와 동일한 원리를 씁니다.
Prompt 7 — CRC와 실제 근태표: 이행률 계산과 근로자까지의 상세보기: 글 끝의 부록을 참고하세요.
데이터 구조와 분석 로직이 분명해지면 바로 바이브 코딩으로 넘어갈 수 있습니다.
이제 과제는 꽤 구체적으로 표현됩니다. 일반 브라우저에서 열리고 KPI, 필터, 대화형 그래프, 원본 기록 표를 갖추며 별도 소프트웨어 설치 없이 동작하는 단일 독립형 HTML 파일을 만드는 것입니다.
이 단계에서도 프로그램 내부에서는 익명화된 데이터만 사용합니다.
첫 버전이 최종 버전인 경우는 거의 없습니다. 회사를 골라도 공장 목록은 전체 그대로이고, 그래프를 눌러도 기록까지 내려가지 않으며, 새 기능을 넣으면 다른 시각화 하나가 제대로 동작하지 않습니다. 개발에서 흔한 일입니다.
애플리케이션 전체를 다시 쓰는 대신 과제를 콕 집어 제시합니다. «필터를 연동되게 해 줘», «클릭 시 상세보기를 추가해 줘», «6번 그래프만 고치고 나머지 로직은 건드리지 마».
바로 여기서 바이브 코딩은 프로그래머가 아닌 실무 전문가에게 특히 유용합니다. 함수를 어떻게 작성할지가 아니라, 프로그램이 사용자에게 어떻게 동작해야 하는지를 정확히 설명해야 합니다.
Prompt 3, Prompt 5, Prompt 8 — 첫 HTML 작성, 상세보기, 결함 수정: 글 끝의 부록을 참고하세요.
인터페이스와 로직이 익명화 템플릿에서 검증되면 최종본에서 시연용 데이터를 제거합니다. HTML은 프로그램의 껍데기로 남습니다.
여기에 엑셀 불러오기 버튼을 추가합니다. 사용자는 사내 컴퓨터에서 완성된 HTML을 열고 현재 업무 데이터베이스를 선택하며, 그다음 브라우저가 파일을 읽어 로컬 세션 안에서 지표를 계산합니다.
즉 최종 구도는 단순합니다. 완성된 HTML과 업무용 엑셀이 같은 컴퓨터에 있고, 업무 데이터는 로컬에서 프로그램으로 들어가며 외부 AI 환경으로는 더 이상 전달되지 않습니다.
공개한 화면 캡처에서는 실제 성명을 가렸습니다. 이는 중요합니다. 글이 보여 줄 것은 동작 원리이지 개인정보가 아닙니다.
Prompt 4 — 업무용 엑셀 데이터베이스의 로컬 불러오기: 글 끝의 부록을 참고하세요.

사용자 기능에는 따로 신경을 써야 했습니다. 실무에서는 대시보드를 여는 것뿐 아니라 그 상태를 빠르게 관리하는 일이 중요합니다.
그래서 별도의 동작을 추가했습니다. 새 표 불러오기, 데이터 완전 삭제, 오프라인 사본 저장, 데이터를 지우지 않고 필터만 초기화하기입니다. 서로 다른 상황이므로 사용자가 한눈에 구분할 수 있어야 합니다.
또한 짧은 시연 영상을 녹화했습니다. 익명화 템플릿에서 대시보드가 어떻게 동작하는지, 전체 초기화를 어떻게 하는지, 이후 실제 데이터를 어떻게 불러오는지를 보여 줍니다. 이런 영상 부록은 어떤 글 설명보다 빠르게 의문을 해소해 줍니다.
영상 부록 1. 화면 녹화: 템플릿에서 업무 데이터베이스로 — 영상은 글 끝에 있습니다.
대시보드의 핵심 가치는 화면이 아니라 회의에서 드러납니다.
확보한 단면은 캐스케이드 커뮤니케이션과 산업안전보건위원회 준비에 쓰입니다. 부서 수준부터 매월 열리는 회사 중앙위원회까지 말입니다.
구역 수준에서는 구체적인 기록과 근로자가 보입니다. 공장 수준에서는 반복되는 문제가, 그 위에서는 부서 간 비교와 경영진의 관심이 필요한 구조적 영역이 보입니다.
그래서 위원회에 올라가는 것은 «이행률 82 %»라는 문장이 아니라 훨씬 구체적인 그림입니다. 어느 구역이 미달을 만들고, 어느 교대에서 요구사항이 지켜지지 않으며, 어떤 이탈 유형이 반복되고, 어떤 기록을 책임자와 함께 짚어야 하는지 말입니다.
대시보드는 어디를 봐야 하는지 알려 줍니다. 원인과 경영 판단은 여전히 사람이 정합니다.

우리에게 독립형 HTML 대시보드는 최종 목표가 아니며 사내 IT 아키텍처와 경쟁하지도 않습니다.
그 역할은 현장의 아이디어에서 동작하는 분석 시제품까지의 길을 빠르게 지나는 것입니다. 산업용 솔루션이 개발되는 동안에도 부서들은 이 도구로 분석할 수 있고, 담당자들은 어떤 지표가 실제로 필요한지에 대한 실무 피드백을 얻습니다.
시제품이 유용하다고 확인되면 그 로직은 IT 개발자에게 넘기기 훨씬 쉬워집니다. 이후 JavaScript나 Superset, 또는 자동 데이터 연동을 갖춘 다른 사내 환경에서 구현하면 됩니다.
달리 말해 바이브 코딩은 IT를 대체하지 않습니다. 큰 개발이 시작되기 전에 불확실성의 일부를 없애 줍니다. 어떤 필터가 필요한지, 상세보기는 어디까지 가야 하는지, 어떤 데이터를 연결해야 하는지, 사용자가 받아야 할 경영상의 결과가 무엇인지가 미리 분명해집니다.
결과적으로 익명화 엑셀 템플릿은 실제 업무 데이터베이스와 AI를 잇는 기술적 다리가 됩니다. AI는 데이터 구조를 보고 로직과 화면 설계를 돕고 코드를 쓰고 다듬습니다. 실제 데이터베이스는 완성된 HTML이 사용자의 컴퓨터에 놓인 뒤에야 도구에 나타납니다.
안전 담당자에게 이는 아이디어에서 동작하는 시제품까지의 거리를 눈에 띄게 줄여 줍니다.
가장 큰 장점은 AI가 그래프를 그릴 수 있다는 점이 아닙니다. 핵심은 현장의 질문을 훨씬 빠르게 분석 도구로 바꾸고, 병목을 보고, 실제로 조치가 필요한 곳으로 경영진의 시선을 돌릴 수 있다는 것입니다.
다음 글에서는 데이터 분석에서 다른 방향으로 넘어가려 합니다. AI가 평범한 조력자에서, 안전 미팅과 행동대화의 품질을 여러 독립 기준으로 평가하는 «두 번째 전문가»로 어떻게 바뀌어 갔는지 보여 드리겠습니다.
실무 원칙: 외부 AI 환경으로 넘어가는 것은 검증된 익명화 템플릿뿐입니다. 실제 업무용 엑셀 파일, 근태표, 개인정보는 완성된 HTML 껍데기 안에서 나중에 로컬로 연결합니다.
| 본문 섹션 | 프롬프트 |
|---|---|
| 1단계. 익명화 데이터베이스 분석 | Prompt 1 |
| BSD 구조와 경영상의 질문 | Prompt 2 |
| 첫 독립형 HTML 작성 | Prompt 3 |
| 템플릿 제거와 실제 데이터베이스의 로컬 불러오기 | Prompt 4 |
| 클릭, 필터, 기록까지의 상세보기 | Prompt 5 |
| BSD + 근태표: 정해진 권장 빈도 | Prompt 6 |
| CRC + 근태표: 수행의 규칙성과 이탈 | Prompt 7 |
| 결함 수정과 독립 동작 점검 | Prompt 8 |
업무용 HSE 데이터베이스의 익명화 엑셀 템플릿을 올립니다.
아직 아무것도 프로그래밍하지 마세요.
다음을 분석해 주세요.
1. 파일의 시트
2. 열 머리글
3. 자료형
4. 필수 항목과 선택 항목
5. 회사, 공장, 구역 등 계층 간의 연결
6. 필터에 적합한 항목
7. KPI, 순위, 시각화에 적합한 항목
8. 근로자의 안정적인 익명 식별자로 쓸 수 있는 항목
9. 원본 데이터의 잠재적 문제: 빈 값, 같은 부서의 표기 차이, 일자 형식 불일치, 중복, 문자와 숫자의 혼재, 모호한 열 이름
BSD 데이터베이스에 대해서는 다음 정보의 위치를 따로 찾아 주세요.
- 날짜와 시각
- 회사
- 공장
- 구역 / 내부 부서
- BSD 수행자
- 수행자의 직위
- 근로자 / 익명 식별자
- 안전 또는 불안전 행동의 유형
- 공정 / 작업 종류
- 관찰 내용
- 결과 또는 반응
분석 후에는
- 데이터 구조를 간단히 설명하고,
- 유지해야 할 항목 간 연결을 제안하고,
- 사용자 확인이 필요한 모호한 점을 나열하고,
- 확인을 받은 뒤에야 향후 대시보드의 구조를 제안해 주세요.
익명화된 값을 복원하려 하지 말고, 특정 근로자의 신원에 대해 결론을 내리지 마세요.확인된 익명화 엑셀 구조를 바탕으로, 행동기반 안전대화를 위한 독립형 HSE 대시보드 구조를 제안해 주세요.
핵심 원칙: 모든 시각화는 구체적인 경영상의 질문에 답해야 합니다. 장식용으로 그래프를 추가하지 마세요.
다음을 포함해 주세요.
1. BSD와 관찰 건수에 대한 핵심 KPI
2. 기간 필터
3. 회사 → 공장 → 구역 / 내부 부서의 연동 계층
4. BSD 수행자 필터
5. 수행자의 직위 필터
6. 월별 및/또는 일별 BSD 추이
7. 회사 간 비교
8. 부서 / 구역 상위 순위
9. BSD 수행자 상위 순위
10. 안전 행동과 불안전 행동의 구성
11. 불안전 관찰의 분류
12. 공정 / 작업 종류 분석
13. 불안전 행동이 여러 번 기록된 근로자 순위
14. 근로자 또는 익명 식별자 검색
15. 선택한 근로자의 BSD 이력
16. 같은 유형의 불안전 행동이 같은 근로자에게 다른 날짜, 다른 관리자, 다른 구역에서 반복되었는지 확인하는 기능
17. 현재 선택 결과의 엑셀 내보내기
각 시각화마다 다음을 따로 밝혀 주세요.
- 관리자의 어떤 질문에 답하는지
- 어떤 항목을 사용하는지
- 그래프 요소를 클릭하면 어디로 이어져야 하는지
먼저 구조를 말로 설명해 주세요. 아직 코드는 만들지 마세요.합의된 구조를 바탕으로 대화형 HSE 대시보드의 첫 독립형 버전을 만들어 주세요.
요구사항:
1. 결과물은 단일 HTML 파일입니다.
2. 추가 소프트웨어 설치 없이 일반 브라우저에서 열려야 합니다.
3. 개발 단계에서는 익명화된 시연 데이터만 사용합니다.
4. 합의된 KPI, 필터, 순위, 검색, 대화형 그래프, 원본 기록 표를 넣습니다.
5. 백엔드를 쓰지 않습니다.
6. 외부 API를 쓰지 않습니다.
7. CDN에서 라이브러리를 불러오지 않습니다.
8. 필요한 라이브러리는 모두 HTML 안에 있어야 합니다.
9. 인터넷을 끈 상태에서도 완전히 열리고 동작해야 합니다.
10. 텔레메트리, 방문 분석, 네트워크 요청을 넣지 않습니다.
11. 나중에 시연 데이터를 지우고 실제 엑셀을 로컬에서 연결할 수 있도록 코드를 구성합니다.
12. 기존 익명 식별자는 불필요하게 바꾸지 않습니다.
작성 후에는
- 구현한 기능을 나열하고,
- 첫 버전의 한계를 나열하고,
- 추가 개선 전에 수동으로 확인해야 할 기능을 알려 주세요.기존 독립형 HSE 대시보드를 개선해 주세요.
목표: 개발이 끝나면 시연 데이터는 HTML에서 제거되고, 실제 업무 데이터베이스는 사용자의 컴퓨터에서 로컬로만 연결되어야 합니다.
다음 기능을 추가해 주세요.
1. «새 표 불러오기»
- 사용자가 자신의 컴퓨터에서 엑셀 파일을 선택합니다
- 파일은 브라우저가 로컬에서만 읽습니다
- 데이터는 현재 세션 메모리로 올라갑니다
- KPI, 필터, 그래프, 순위, 표를 전부 다시 만듭니다
- 구조는 고정된 열 번호가 아니라 열 머리글로 판단합니다
- 필수 항목이 없으면 이해하기 쉬운 오류 메시지를 표시합니다
2. «필터 적용»
- 현재 선택 범위로 모든 시각화를 다시 계산합니다
3. «초기화»
- 선택된 필터만 비웁니다
- 불러온 전체 데이터베이스 표시로 되돌립니다
- 데이터 자체는 지우지 않습니다
4. «모든 데이터 완전 삭제»
- 불러온 업무 데이터를 애플리케이션의 현재 상태에서 완전히 제거합니다
- KPI, 그래프, 순위, 표, 성명 / 식별자, 필터 목록을 비웁니다
- HTML을 빈 프로그램 껍데기 상태로 되돌립니다
5. «선택한 데이터를 엑셀로 내보내기»
- 현재 필터링된 결과만 내보냅니다
6. «오프라인 사본 저장»
- 사용자의 명시적 동작이 있을 때만 저장합니다
- 현재 업무 데이터가 사본에 포함되면, 저장된 HTML에 업무 데이터가 들어 있어 기밀 파일로 보관해야 함을 경고합니다
- 저장 과정에서 어떤 정보도 네트워크로 보내지 않습니다
이후 데이터 추가 불러오기 기능을 넣는다면,
- 먼저 구조를 확인하고,
- 중복을 자동으로 만들지 말고,
- 몇 건이 추가되고 몇 건이 제외되는지 사용자에게 보여 주세요.
최종본에서는 시연 데이터를 완전히 삭제해 주세요.기존 HTML 대시보드를 전부 다시 쓰지 말고 개선해 주세요.
필요한 것:
1. 필터를 연동시키기
회사 → 공장 → 구역 / 내부 부서
2. 회사를 고르면 그 회사에 속한 공장만 남기기
3. 공장을 고르면 그 공장의 구역만 남기기
4. 선택한 기간, BSD 수행자와 그 직위를 반영하기
5. 주요 그래프와 순위를 클릭 가능하게 하기
6. 막대, 조각, 점, 순위 행, 근로자를 클릭하면 해당 선택 범위를 대시보드 전체에 적용하기
7. 선택한 지표를 구성한 원본 기록 보여 주기
8. 한 단계 위로 돌아가거나 현재 상세보기를 초기화하는 기능 추가하기
9. 근로자 / 익명 식별자 검색 추가하기
10. 선택한 근로자에 대해 선택 기간의 BSD 이력 보여 주기: 날짜, 부서, 수행자, 행동 유형, 공정, 원본 기록
11. 불안전 행동이 여러 번 기록된 근로자를 따로 보여 주기
12. 서로 다른 관리자나 담당자가, 서로 다른 구역에서 기록했더라도 같은 유형의 불안전 행동 반복을 볼 수 있게 하기
13. 현재 선택 결과를 엑셀로 내보내기
14. 이미 동작하는 기능은 불필요하게 바꾸지 않기
개선 후에는 회귀 점검을 해 주세요.
- 모든 필터
- 그래프 클릭
- 검색
- 상세보기
- 내보내기
- 전체 선택으로 복귀기존 대시보드에 실제 근무한 교대를 반영한 BSD 분석 모드를 추가해 주세요.
자료:
- Collab에서 내보낸 BSD 자료
- 같은 기간의 근무시간 근태표
개발 단계에서는 익명화된 근태표 템플릿만 사용하세요. 실제 근태표는 나중에 로컬에서만 연결합니다.
중요:
BSD 실시 기준을 스스로 정하지 마세요. 계산 전에 사용자가 정해진 권장 빈도를 입력해야 합니다. 예를 들어,
- 실제 근무한 N개 교대당 X건의 BSD
- 역년 / 보고 기간당 X건의 BSD
- 회사의 다른 규칙
로직:
1. 근태표로 실제 근무한 교대를 확정합니다.
2. 휴가, 병가, 기타 결근은 실제 근무한 교대로 세지 않습니다.
3. BSD 자료와 근태표를 근로자의 안정 식별자, 회사, 공장, 구역, 직종, 기간으로 대조합니다. 가능한 항목에 따라 진행합니다.
4. 서로 다른 부서의 동일한 성명 / 식별자와 직종을 섞지 않습니다.
5. 사용자가 정한 빈도를 근거로 실제 근무 시간에 대해 기대되는 BSD 건수를 계산합니다.
6. 다음을 보여 줍니다.
- 실제 근무한 교대
- 정해진 권장 빈도
- 실제 BSD 건수
- 권장 빈도와의 차이
- 이행률
- 지연이 있는 부서와 근로자
7. 상세보기를 추가합니다.
회사 → 공장 → 구역 → 직종 → 개별 근로자 → 그 근로자의 BSD 기록
8. 차이가 있는 근로자 / 부서 목록을 내보낼 수 있게 합니다.
근태표 구조나 빈도 규칙이 모호하면 먼저 의심되는 사례를 보여 주고 확인을 요청하세요. 확인 전에는 계산하지 마세요.대시보드에 중대위험 관리(CRC)를 분석하는 별도 모드를 추가해 주세요.
자료:
- Collab에서 내보낸 CRC 자료
- 같은 기간의 실제 근무시간 근태표
개발 단계에서는 익명화된 템플릿을 쓰세요. 실제 자료는 로컬에서만 연결합니다.
로직:
1. 근로자별 실제 근무한 교대를 확정합니다.
2. 휴가, 병가, 기타 결근은 근무 교대로 세지 않습니다.
3. CRC의 기준 / 요구 주기를 스스로 정하지 말고, 사용자에게 매개변수로 받으세요.
4. 특정 공정에서 «실제 근무한 교대당 CRC 1건»이라는 요구가 확인되었다면, 사용자의 확인 후에만 적용하세요.
5. CRC와 실제 근무한 교대를 안정 식별자, 회사, 공장, 구역, 직종, 날짜 및/또는 교대로 대조합니다.
6. 서로 다른 부서의 동일한 직종과 식별자를 섞지 않습니다.
7. 근로자마다 다음을 보여 줍니다.
- 실제 근무한 교대
- CRC 건수
- 정해진 규칙에 비추어 CRC가 빠진 교대 / 기간
- 차이
- 이행률
8. 상세보기를 추가합니다.
회사 → 공장 → 구역 → 직종 → 근로자 → 특정 교대 / 특정 CRC 기록
9. 차이가 있는 근로자나 교대 목록을 내보낼 수 있게 합니다.
10. CRC 자료에 확인된 위험요인, 중대위험, 이탈 설명, 원인이 있다면 다음도 보여 줍니다.
- 구역별 반복
- 공정별 반복
- 근로자별 반복
- 클릭 시 원본 기록
데이터 구조가 모호하면 먼저 대조 규칙과 의심되는 사례를 보여 주세요. 사용자의 확인 전에는 최종 계산을 하지 마세요.기존 독립형 HTML 대시보드를 점검해 주세요.
처음부터 애플리케이션 전체를 다시 쓰지 마세요.
최근 개선 후 오류가 생겼다면,
1. 구체적인 원인을 찾습니다.
2. 필요한 부분만 고칩니다.
3. 이미 동작하는 기능을 이유 없이 지우거나 다시 쓰지 않습니다.
4. 수정 후 회귀 점검을 합니다.
다음 시나리오는 반드시 확인해 주세요.
- 인터넷 없이 HTML 열기
- 익명화된 테스트 엑셀 불러오기
- 연동 필터
- 클릭과 상세보기
- 근로자 검색
- 선택 결과 내보내기
- 필터 초기화
- 데이터 완전 삭제
- 다른 표를 다시 불러오기
- 오프라인 사본 저장
기능 점검 후에는 독립 동작과 전송 / 저장 경로 가능성을 감사해 주세요.
- fetch
- XMLHttpRequest
- WebSocket
- EventSource
- sendBeacon
- 외부 script src
- CDN
- 외부 CSS와 글꼴
- API
- iframe
- Service Worker
- localStorage
- sessionStorage
- IndexedDB
- 쿠키
- 텔레메트리와 분석 도구
최종본은 다음을 충족해야 합니다.
- 인터넷을 끈 상태에서도 완전히 동작할 것
- 불러온 엑셀 파일의 내용을 네트워크로 보내지 않을 것
- 사용자의 명시적 동작 없이 업무 데이터를 몰래 저장하지 않을 것
- 완전 초기화 시 화면의 현재 상태에서 업무 데이터를 제거할 것
마지막으로 짧은 보고를 주세요.
1. 무엇을 점검했는지
2. 어떤 결함을 찾았는지
3. 무엇을 고쳤는지
4. 어떤 한계나 위험이 남아 있는지