소프트웨어 개발비 기능점수(FP) 산정서

PRISM 현장 안전관리시스템 (TBM 기반 AI 안전관리 모바일 앱 + 백엔드)
산정 기준: 「SW사업 대가산정 가이드」(한국소프트웨어산업협회 공표, 2024 개정판 · 2025~2026년 적용 단가) — 간이법(평균 복잡도)
산정 근거: 운영 중인 실제 소스코드 실측 (백엔드 API 110개 · 앱 화면 40개 · DB 테이블 20개, 기준: 2026-09-13 운영 코드)
산정일: 2026년 9월 13일 (개정 6판 — 현재 운영 코드로 재실측: 마법사 이어하기·구두 위험·산재 공지·증빙 콜라주·체크리스트 커스터마이징 등 반영, 498.7→554.6 FP)

산정 결과 요약

본 시스템과 동일 기능·품질의 소프트웨어를 공공기관이 신규 발주할 경우의 적정 개발대가다. 실측으로 확정된 현재 기준(개정 6판)을 제시한다.

초판 (2026-07-31)
356.5 FP · 75개 기능
4.03 억 원
현재 실측 (2026-09-13)
554.6 FP · 119개 기능
5.82 억 원 (VAT 별도)

※ 초기 로드맵으로 예정했던 위험성평가·체크리스트·계획도 기능이 실제 구현되어 이번 실측에 포함됐다. 한전 사내 시스템 연계·공공 보안요건이 더해지면 총사업비는 5~8억 원 수준(8장).

1. 산정 개요

목적. 본 시스템과 동일한 기능·품질의 소프트웨어를 공공기관(한국전력공사 등)이 신규 발주할 경우의 적정 개발대가를 산정한다. 산정 결과는 발주 예정가격 산정, 시스템 대체비용(자산가치) 평가, 협상 기준가 근거로 사용할 수 있다.

방법. 「소프트웨어 진흥법」에 따라 한국소프트웨어산업협회(KOSA)가 공표하는 「SW사업 대가산정 가이드」의 기능점수 간이법을 적용했다. 간이법은 기능 유형별 평균 복잡도 가중치를 사용하며, 발주 단계 예가 산정에 통용되는 방식이다.

근거의 특수성. 통상의 산정이 요구사항 문서에서 기능을 추정하는 것과 달리, 본 산정은 이미 구축·운영 중인 시스템의 소스코드를 전수 실측해 기능 목록을 도출했다. 추정 오차가 개입할 여지가 작다.

개정 3~4판 변경 사항. 2판(2026-07-24, 커밋 919a208) 이후 사고사례 입력(사진 스캔→AI 민감정보 제거·구조화→전국 공유), 작업안전 체크리스트 이해퀴즈(무지성 체크 방지), 본부장·전력사업처장 전 사업소 조회(운영중·미가입 현황), 사업소 전출입(코드 변경으로 소속·직책 이동), 위험성평가 선별·유해위험요인 스캔 등이 추가되었다. 백엔드 라우트 69→92개로 증가(신규 트랜잭션 21개). 2판 대비 +87.8 FP(381.1→468.9). 2판에서 '예정(로드맵)'으로 추정했던 위험성평가·체크리스트·계획도가 실제 구현되어 실측에 편입됐다. 개정 4판(2026-07-31): 두 번째 시그니처 아찔순간(근접사고 음성보고 → AI 익명 구조화 → 조직 내 익명 교훈 공유)과 체크리스트 낭독 지적확인(항목을 소리내어 읽으면 STT로 자동 확인)이 추가되어 +29.8 FP(468.9→498.7, 107개 기능).
개정 6판 변경 사항 (2026-09-13 재실측). 개정 5판(9/4) 이후 운영 코드에 추가된 기능을 현재 소스로 재실측해 반영했다 — 마법사 교차기기 이어하기(작성 중 초안을 서버에 저장·복원·삭제), 현장 구두 위험요인 추가(음성으로 위험 항목 추가), 최근 산업재해 공지(관련 작업자 안내), 증빙자료 콜라주 일괄 생성, 작업안전 체크리스트 커스터마이징(저장·목록·삭제)과 공종별 맞춤 이해퀴즈 생성. 백엔드 라우트 92→110개(신규 트랜잭션 10개), TBM 작성 초안용 논리 데이터 1개 추가. +55.9 FP(498.7→554.6, 119개 기능). 500 FP를 넘어서며 규모 보정계수가 1.2800→1.2017로 조정되어, SW 개발비는 5.58억→약 5.82억(VAT 별도)이 되었다. (당시 개정 5판까지의 498.7 FP·5.58억은 아래 7·8장에 당시 기준으로 병기한다.)

대상 시스템 실측 규모

항목실측값비고
백엔드 API110개FastAPI 라우트 전수 — 비(非)기능 7개 제외 후 103개를 논리 트랜잭션으로 산정(제외: 루트·헬스체크, 지도 JS키 발급, 지도 페이지 서빙, 개인정보처리방침·계정삭제 안내 HTML 2개, 구버전 PDF 1개)
모바일 앱 화면40개React Native(Expo), 공사업체·한전 2개 모듈 (한전 전용 화면 15개 이상 포함, 아찔순간 화면 포함)
DB 테이블20개SQLite (운영 전환 시 RDBMS 동일 구조), 사고사례·전자서명·아찔순간(near_miss·신원분리) 테이블 포함
사용자 역할10종공사 3종(대표자·시공관리책임자·작업자) + 한전 7종(본부장·지사장·사업소장·배전운영차장·본부 안전·사업소 안전·작업자) — 코드 역할 enum 기준
AI 기능6종TBM 위험분석 · 개인 안전분석 · 대표자/책임자 인사이트 · 작업통보서 OCR · 아찔순간 음성 구조화
외부 연계5개기상청, 카카오(주소), Anthropic(AI), Google(음성 인식·합성), SendGrid(메일)

2. 데이터 기능 (ILF · EIF)

내부논리파일(ILF)은 시스템이 생성·수정·관리하는 논리 데이터 그룹, 외부연계파일(EIF)은 외부에서 유지되고 본 시스템은 참조만 하는 데이터 그룹이다. 물리 테이블이 아닌 논리 그룹 기준으로 통합 계상했다(보수적).

#데이터 기능명설명유형가중치FP
D1사용자계정·역할(10종)·기능자격·소속 (users)ILF7.57.5
D2회사·사업소조직, 6자리 가입코드, org_type, 무사고일수 등 설정 (companies, company_settings)ILF7.57.5
D3TBM 기록8단계 결과, 증빙사진 3종 경로, AI 분석 결과, 중지·재시작·종료 이력, 참여자 (tbm_records)ILF7.57.5
D4작업 세션작업 시작·종료 시각, 누적 작업시간 (work_sessions)ILF7.57.5
D5작업자 컨디션일일 수면시간·몸상태 (worker_conditions)ILF7.57.5
D6안전점검한전 안전점검 등록·시정 상태 (safety_inspections)ILF7.57.5
D7AI 인사이트 이력작업자·대표자·책임자별 AI 분석 이력 3종 (insight_logs 계열)ILF7.57.5
D8현장방문 기록대표자 현장방문 (owner_visits)ILF7.57.5
D9전일 작업계획익일 작업 사전 등록 (tomorrow_plans)ILF7.57.5
D14전자서명 신규문서 범용 서명(doc_type/doc_id) — 손글씨 서명·본인확인 셀피·서명 시각·GPS 위치·문서 해시 (signatures). 회의록·체크리스트·계획도 공통 재사용ILF7.57.5
D15아찔순간 신규근접사고 보고 본문 + 신원 분리 저장(1개월 후 자동삭제, 본체에 보고자 식별정보 없음) (near_miss · near_miss_reporter)ILF7.57.5
D16TBM 작성 초안 신규마법사 작성 중 임시 저장분 — 교차기기 이어하기용 서버 초안(완료 시 정리) (tbm_drafts)ILF7.57.5
D10사고사례 DB배전공사 실사고 사례 386건 — 읽기전용 참조 (accident_cases)EIF5.45.4
D11사고보고 자료산업재해 발생보고·도해 이미지 — 읽기전용 참조 (accident_reports·images)EIF5.45.4
D12기상 데이터기상청 단기예보·실황 (외부 유지)EIF5.45.4
D13주소·좌표카카오 로컬 API 역지오코딩 (외부 유지)EIF5.45.4
데이터 기능 소계 — ILF 12개 (90.0) + EIF 4개 (21.6)111.6

3. 트랜잭션 기능 (EI · EO · EQ)

백엔드 라우트 110개에서 기능점수 대상이 아닌 7개를 제외한 103개를 논리 트랜잭션으로 분류했다(각 라우트를 1개 트랜잭션으로 셌으며, 라우트를 임의로 병합하지 않았다). 제외 대상은 인프라 2개(/·/health), 지도 JS키 발급 1개, 지도 페이지 서빙 1개, HTML 안내 페이지 2개(/privacy·/delete-account), 신버전으로 대체된 구버전 PDF 1개다. 외부입력(EI)은 데이터·상태를 변경하는 처리, 외부출력(EO)은 계산·가공·파생 정보를 만들어 내보내는 처리, 외부조회(EQ)는 저장 정보의 단순 조회다.

3-1. 외부입력 (EI) — 36개 × 4.0 = 144.0 FP

#기능명API
EI1TBM 작성 초안 저장POST /tbm/draft
EI2TBM 작성 초안 삭제DELETE /tbm/draft
EI3TBM 완료 저장POST /tbm/complete
EI4작업 종료POST /tbm/{id}/end
EI5작업 중지POST /tbm/{id}/stop
EI6작업 재시작POST /tbm/{id}/restart
EI7작업 취소POST /tbm/{id}/cancel
EI8TBM 기록 삭제DELETE /tbm/{id}
EI9작업 세션 시작POST /work/start
EI10작업 세션 종료POST /work/end
EI11대표자·팀장 가입POST /auth/register/owner
EI12직원 가입POST /auth/register/employee
EI13직원 추가POST /company/add-employee
EI14사업소 전출입POST /company/transfer
EI15유해위험요인 저장POST /kepco/hazard/save
EI16유해위험요인 삭제POST /kepco/hazard/delete
EI17유해위험요인 일괄 저장POST /kepco/hazard/save-bulk
EI18체크리스트 커스터마이징 저장POST /kepco/checklist/save
EI19체크리스트 항목 삭제POST /kepco/checklist/delete
EI20사고사례 등록POST /accident/save
EI21등록 사고 삭제DELETE /accident/user-case/{id}
EI22아찔순간 저장(익명)POST /nearmiss
EI23체크리스트 낭독 폴백 계측POST /kepco/checklist/voice-fallback
EI24컨디션 입력POST /worker/condition
EI25전일 작업계획 등록POST /workplan/tomorrow
EI26전일 작업계획 삭제DELETE /workplan/tomorrow/{id}
EI27현장방문 기록POST /workplan/visit-record
EI28전일 작업계획 수정PUT /workplan/tomorrow/{id}
EI29프로필 수정PUT /user/profile
EI30안전 사진 업로드POST /safety/photo/upload
EI31참석자 전자서명 저장POST /signature/upload
EI32전자서명 요청 열기POST /signature/open
EI33무사고 일수 설정POST /company/no-accident-days
EI34안전점검 등록POST /inspection
EI35안전점검 수정PUT /inspection/{id}
EI36안전점검 삭제DELETE /inspection/{id}

3-2. 외부출력 (EO) — 29개 × 5.2 = 150.8 FP

#기능명API
EO1위험도(URI) 산정POST /uri/v3
EO2TBM 통계GET /tbm/stats
EO3개인 작업 통계GET /work/stats/{id}
EO4안전점수 추이GET /score/recent
EO5날씨 예보·경보 판정GET /weather/forecast
EO6위험요인 사진 스캔(AI)POST /kepco/hazard/scan
EO7위험요인 일괄 스캔(AI)POST /kepco/hazard/scan-bulk
EO8공종별 맞춤 이해퀴즈 생성(AI)POST /kepco/checklist/quiz-for
EO9대표자·팀장 대시보드GET /company/dashboard
EO10사고보고서 스캔·구조화(AI)POST /accident/scan
EO11AI 분석 읽어주기(TTS)POST /tts
EO12현장 구두 위험요인 추가(STT)POST /tbm/risk/voice-add
EO13아찔순간 음성 보고(STT·AI 익명 구조화)POST /nearmiss/voice
EO14체크리스트 낭독 확인(STT)POST /kepco/checklist/voice-check
EO15증빙 이메일 발송POST /evidence/email/{id}
EO16작업통보서 AI 인식POST /workplan/analyze
EO17개인 통계 리포트GET /stats/insight
EO18팀원 안전현황GET /company/worker-safety
EO19TBM AI 위험분석POST /ai/risk-insight
EO20대표자 AI 인사이트POST /ai/owner-insight
EO21책임자 AI 인사이트POST /ai/supervisor-insight
EO22개인 AI 안전분석POST /ai/worker-risk
EO23사고 위험점수GET /accident/risk-score
EO24사고 예측GET /accident/predict
EO25위험카드 공유POST /share/risk-card
EO26특정시각 날씨GET /weather/at
EO27TBM 증빙 PDFGET /evidence/pdf2/{id}
EO28증빙자료 콜라주 일괄 생성GET /kepco/evidence-collage/{id}
EO29증빙 PDF 일괄 생성GET /evidence/pdf-batch

3-3. 외부조회 (EQ) — 38개 × 3.9 = 148.2 FP

#기능명API
EQ1TBM 목록GET /tbm/list
EQ2TBM 작성 초안 조회GET /tbm/draft
EQ3오늘 TBM 결과GET /tbm/today-result
EQ4미종료 작업 조회GET /tbm/unfinished
EQ5TBM 상세GET /tbm/{id}
EQ6전일 작업 조회GET /work/yesterday/{id}
EQ7역지오코딩GET /geo/reverse
EQ8로그인POST /auth/login
EQ9내 정보 조회GET /auth/me
EQ10공종별 유해위험요인 조회GET /kepco/hazards/{code}
EQ11유해위험요인 목록GET /kepco/hazard-list
EQ12유해위험요인 이력GET /kepco/hazard-history/{code}
EQ13공종별 체크리스트 조회GET /kepco/checklist/{code}
EQ14체크리스트 목록GET /kepco/checklist-list
EQ15저장된 이해퀴즈 조회GET /kepco/checklist/quiz/{code}
EQ16체크리스트 항목별 사진 조회GET /kepco/checklist-photos/{id}
EQ17직원 목록GET /company/employees
EQ18내 조직코드 조회GET /company/my-code
EQ19사업소 목록 조회GET /company/offices
EQ20회사 TBM 기록GET /company/tbm-records
EQ21유사 사고 조회GET /accident/similar
EQ22사고 상세GET /accident/detail
EQ23사고 등록 권한·중복 확인GET /accident/can-edit
EQ24최근 산업재해 공지 조회GET /accident/recent-notice
EQ25내 등록 사고 목록GET /accident/user-cases
EQ26증빙 목록GET /evidence/list
EQ27내 아찔순간 조회GET /nearmiss/mine
EQ28아찔순간 익명 교훈 공유GET /nearmiss/lessons
EQ29명단 기준 컨디션 조회POST /worker/conditions/by-roster
EQ30오늘 컨디션 현황GET /worker/conditions/today
EQ31전일 작업계획 조회GET /workplan/tomorrow
EQ32현장방문 대상 확인GET /workplan/visit-check
EQ33프로필 조회GET /user/profile
EQ34AI 분석 이력GET /stats/insight/history
EQ35전자서명 조회·위변조 검증GET /signature/list
EQ36서명 대기 조회GET /signature/pending
EQ37최근 프로젝트GET /company/recent-projects
EQ38안전점검 조회GET /inspection

4. 기능점수 집계

기능 유형개수평균 가중치기능점수(FP)
내부논리파일 (ILF)127.590.0
외부연계파일 (EIF)45.421.6
외부입력 (EI)364.0144.0
외부출력 (EO)295.2150.8
외부조회 (EQ)383.9148.2
합계 (보정 전 기능점수)119554.6 FP

5. 보정계수 적용

보정계수적용값선정 근거
규모1.2017554.6FP(500 초과) — 규모 보정계수 = 0.4057×(ln FP − 7.1978)² + 0.8878 = 1.20165(정밀), 소수 넷째 자리 반올림 1.2017. 500FP 대입 시 약 1.27998이 되어 넷째 자리 반올림하면 규정값 1.2800과 이어진다. 규모가 커질수록 생산성 반영으로 계수가 낮아진다.
연계복잡성1.0000타기관(외부) 연계 5개: 기상청·카카오·Anthropic·Google(음성)·SendGrid → '3~5개' 등급
성능 요구수준1.0000아침 TBM 집중 시간대(피크타임) 응답성능 중요 → '피크타임 중요' 등급
운영환경 호환성1.0600iOS·Android 2개 플랫폼 지원 코드베이스(React Native 단일 코드) — 현재 Android(Play스토어) 배포·시범운영, iOS는 빌드 구성 완료·미출시 → '유사 환경' 등급
보안성 요구수준1.0600시큐어코딩, 암호화(JWT·HTTPS), 개인정보보호(건강 컨디션·본인확인 셀피·GPS), 전자서명 위변조 검증, 웹취약점 점검(rate-limit·CORS·권한 스코핑) → 상위 등급(보수적 1.06 유지)
보정계수 곱1.35021.2017 × 1.00 × 1.00 × 1.06 × 1.06 (표시 계수로 계산)

6. 개발대가 산출

구분금액 (원)산출 근거
보정 전 개발원가335,967,806554.6 FP × 605,784원/FP (2025~2026년 적용 기능점수 단가)
보정 후 개발원가453,623,732보정 전 × 1.3502 (표시 계수 곱)
이윤113,405,933개발원가의 25% (가이드 상한)
직접경비15,000,000개발기간 클라우드 인프라, 상용 API 사용료(AI·지도·메일·음성), 시험 단말기, 스토어 등록 등
SW 개발비 합계 (VAT 별도)582,029,665약 5억 8,200만 원
(참고) VAT 포함640,232,632

기능점수 단가 605,784원은 2024 개정판에서 종전 553,114원 대비 9.52% 인상된 단가로, 2026년 현재까지 동일하게 적용된다(노임단가 인상은 반영됐으나 FP 단가는 605,784원 유지). 산정 시점 이후 KOSA가 새 단가를 공표하면 해당 단가로 치환해 재계산한다(FP 554.6는 불변).

7. 로드맵 실현 및 향후 예정 기능

초기 로드맵에서 '예정(약 +58.5 FP 추정)'으로 제시했던 위험성평가 선별·작업안전 체크리스트·작업계획도 디지털화는 이후 실제 구현되어, 관련 사고사례 입력·이해퀴즈·본부 조회·전출입 기능과 함께 현행 실측(1~6장)에 편입됐다(편입 당시 498.7 FP). 즉 종전 추정치는 확정 실측으로 대체됐다. 개정 5판(9/4) 이후 마법사 이어하기·구두 위험 추가·산재 공지·증빙 콜라주·체크리스트 커스터마이징·맞춤 퀴즈가 추가되어, 개정 6판(9/13) 재실측에서 +55.9 FP(→554.6 FP)로 반영됐다(6장 대가 갱신).

아직 산정에 반영하지 않은 향후 항목. 아래는 확정 로드맵이나 미구현이라 계상하지 않았다. 구현 시 FP·금액이 추가된다. 초기 추정('예정 포함 약 4.94억')은, 실제 구현 범위가 추정을 상회하여 실측 5.58억(개정 5판 당시·VAT 별도)으로 확정됐고, 개정 6판(9/13) 재실측에서 약 5.82억(VAT 별도)으로 갱신됐다(아찔순간·체크리스트 낭독·읽어주기 등 음성 기능 및 이후 추가 기능 반영).

8. 본 산정에 포함되지 않은 항목

한전 실발주 시 추가될 수 있는 비용. 현재 실측 약 5.82억(VAT 별도)을 하한으로, 아래 항목(사내연계·공공보안·감리·DB구축·유지관리)이 더해지면 약 8억 원 안팎까지 늘 수 있다. 상한 8억은 아래 항목의 개략 합산 추정이며 확정 견적이 아니다. 이는 본 산정서 범위(현 시스템과 동일 기능) 밖의 추가 요건이다.

9. 산정의 전제와 한계

근거 자료
· 한국소프트웨어산업협회(KOSA), 「SW사업 대가산정 가이드」 2024 개정판 · 2025년 개정판 — www.sw.or.kr 공표 자료
· 2025년 적용 기능점수 단가 605,784원 (종전 553,114원 대비 9.52% 인상) — CIO Korea 보도, 2025년 적용단가 정리
· 간이법 가중치·보정계수 표 — SW개발비 산출내역서 작성(간이법 FP산정)

PRISM 안전관리시스템 · 기능점수 산정서 개정 6판 · 2026년 9월 13일 작성 · 본 문서는 실측 기능 목록에 근거한 산정이며, 공식 발주에 사용할 경우 최신 공표 단가 확인을 권장한다.