AI 코딩 도구로 화면을 만들고 기능을 연결한 뒤, Windows 설치 파일까지 생성했습니다. 개발자 PC에서는 문제없이 실행됩니다. 여기까지 오면 데스크톱 앱이 거의 완성됐다고 생각하기 쉽습니다.

그 파일을 고객에게 보내는 순간 상황이 달라집니다. Windows가 알 수 없는 게시자라고 경고하고, 관리자 권한이 없어 설치가 멈추거나, 사내 보안 정책이 실행을 차단합니다. macOS에서는 다운로드한 앱을 열 수 없다는 안내가 나올 수 있습니다.

이때 빠진 것은 기능이 아닙니다. 고객 PC까지 앱을 전달하고, 신뢰받게 만들고, 다음 버전으로 교체하는 배포 경로입니다.

설치 파일은 완성품이 아니라 첫 배포 후보입니다

Electron이나 Tauri를 사용하면 웹 기술로 만든 화면을 Windows와 macOS 앱으로 묶을 수 있습니다. AI 코딩 도구의 도움까지 받으면 첫 실행본을 만드는 시간은 더 짧아집니다.

하지만 .exe.dmg 파일이 생겼다는 사실은 앱을 묶는 데 성공했다는 뜻일 뿐입니다. 고객이 그 파일을 설치할 수 있는지, 운영체제가 배포 주체를 신뢰하는지, 문제가 생겼을 때 이전 버전으로 돌아갈 수 있는지는 아직 확인되지 않았습니다.

저는 데스크톱 앱의 완료 기준을 설치 파일을 만들었다에 두지 않습니다. 사용 이력이 없는 PC에서도 설치되고, 다음 버전으로 업데이트되며, 실패했을 때 복구할 수 있어야 제품에 가깝습니다.

고객 PC가 먼저 확인하는 것은 기능보다 배포 주체입니다

이 글에서 설명하는 Windows와 macOS 배포 정책은 2026년 8월 16일 기준입니다.

Windows Defender SmartScreen은 내려받은 파일의 평판과 게시자의 평판을 확인합니다. 서명되지 않은 앱은 새 버전을 배포할 때마다 파일 평판을 처음부터 다시 쌓아야 합니다. 기업 환경에서는 사용자가 경고를 무시하고 실행하는 선택 자체가 막혀 있을 수도 있습니다.[1]

코드 서명을 했다고 모든 경고가 즉시 사라지는 것도 아닙니다. 새 바이너리나 새 게시자는 평판이 쌓일 때까지 경고가 나타날 수 있습니다. 그래도 서명은 누가 배포했는지 보여주고, 같은 게시자라는 신뢰를 다음 버전으로 이어갈 수 있는 출발점입니다.[1][2]

macOS 앱을 App Store 밖에서 직접 배포할 때는 Developer ID로 서명하고 Apple의 공증 절차를 거쳐야 합니다. Apple은 가능하면 개발에 사용한 Mac이 아닌 별도 환경에서 실제 배포 파일을 시험하도록 권합니다.[3][4]

제가 견적을 검토한다면 인증서 구매비보다 먼저 명의와 인수인계 책임을 봅니다. 개발사 명의로만 서명하면 업체가 바뀐 뒤 같은 배포 주체로 업데이트하기 어려워질 수 있기 때문입니다.

그래서 코드 서명 포함이라고만 적으면 부족합니다. Windows 배포만 해도 Microsoft Store, 클라우드 기반 Artifact Signing, 전통적인 인증서 중 무엇을 선택하느냐에 따라 비용과 발급 조건, 빌드 자동화 방식이 달라집니다. 이 선택까지 정해야 실제 견적이 나옵니다.[1]

자동 업데이트에는 파일보다 많은 것이 필요합니다

업데이트 기능을 켠다고 새 버전이 저절로 고객 PC에 도착하지는 않습니다.

Electron이든 Tauri든 새 버전은 설치 파일 하나만 올려서 보낼 수 없습니다. 앱이 읽을 버전 정보와 다운로드 위치를 함께 관리해야 하고, Tauri는 플랫폼별 서명값도 요구합니다. 공개 저장소를 쓰지 않는 Electron 사내 앱이라면 별도의 업데이트 서버가 필요할 수도 있습니다.[5][6]

견적서에 자동 업데이트 지원이라고만 적혀 있다면, 저는 포함된 것으로 보지 않습니다. 업데이트 파일을 어디에 둘지, 누가 버전 정보와 서명을 게시할지, 저장소 비용과 장애 대응은 누가 맡을지가 빠져 있기 때문입니다.

기술보다 먼저 결정할 운영 규칙도 있습니다. 새 버전을 누가 승인할지, 일부 사용자에게 먼저 배포할지, 업데이트 도중 실패하면 어떤 버전으로 돌아갈지 정해야 합니다. 폐쇄망이라면 자동 업데이트보다 담당자가 검증한 설치 파일을 수동 배포하는 편이 나을 수 있습니다.

자동과 수동 중 어느 쪽이 더 좋은지는 조직마다 다릅니다. 문제는 선택하지 않은 상태입니다.

견적은 기능 개발과 배포 운영을 나누어 봐야 합니다

기능 목록만으로 데스크톱 앱 견적을 비교하면 배포 비용은 마지막에 드러납니다. 지원할 Windows와 macOS 버전, 관리자 권한 여부, 사내 백신과 프록시, 배포 채널, 코드 서명 명의, 업데이트 방식이 정해져야 실제 시험 범위를 계산할 수 있습니다.

발주자라면 검수 조건에 깨끗한 PC에서의 첫 설치를 넣는 편이 좋습니다. 고객사 내부에서만 사용하는 앱이라면 실제 보안 정책이 적용된 PC에서도 확인해야 합니다. 개발자 PC에서 실행되는 것은 개발 확인이고, 고객 환경에서 설치되는 것이 납품 확인입니다.

개발사도 설치와 업데이트를 부가 서비스처럼 뒤로 미루면 안 됩니다. 기능 개발비와 별도로 최초 배포 환경 구성, 서명과 공증, 업데이트 저장소, 장애 로그 수집, 이전 버전 복구의 범위와 책임을 제시해야 합니다.

다음 버전을 배포할 수 있어야 제품입니다

제가 확인하고 싶은 완료 장면은 1.0 설치 파일이 한 번 실행되는 순간이 아닙니다. 새로운 PC에 1.0을 설치하고, 1.0.1로 업데이트한 뒤, 문제가 생기면 정해진 방법으로 복구하는 과정입니다.

AI는 첫 실행본을 만드는 시간을 줄여줍니다. 그 다음부터는 누가 어떤 이름으로 배포하고, 고객 PC에 어떻게 전달하며, 다음 버전을 어떻게 책임질지 결정해야 합니다. 데스크톱 앱 견적에서 놓치기 쉬운 비용도 바로 이 구간에 있습니다.

출처