블로그
KomuraSoft LLC가 웹사이트 제작, SEO, Google 광고 운용, Windows 개발, 기존 자산 활용, 장애 조사에 관해 실무적으로 활용할 수 있는 관점을 발신합니다.
사이트 전체 AI 검색
검색어는 결과 생성을 위해 Cloudflare AI Search로 전송됩니다. 개인정보는 입력하지 마세요.
-
ADR(Architecture Decision Record) 입문 ── 소규모 개발에서 '왜 이런 설계로 했는가'를 남기는 최소한의 방법
코드는 '왜 그렇게 했는지'를 말하지 않습니다. ADR(Architecture Decision Record)로 설계 판단의 이유를 결정 하나당 Markdown 파일 하나로 남기는 방법을, 템플릿과 쓸지 말지의 판단표, 실제 예와 함께 해설합니다.
-
DLL・COM 인터페이스의 하위 호환성 ── 어떤 변경이 호출 측을 깨뜨리는지의 판단표
DLL이나 COM 컴포넌트의 어떤 변경이 호출 측을 깨뜨리는지. 바이너리 호환・소스 호환・동작 호환의 3계층을 정리하고, 변경 내용별 판단표, COM 인터페이스 불변의 철칙, semver 운용까지를 실무 가이드로 정리합니다.
-
업무 앱의 DB 스키마를 버전 관리한다 ── 「고객사마다 DB가 다르다」를 막는 마이그레이션 실무
고객사마다 흩어진 업무 앱의 DB 스키마를 버전 관리하는 실무 가이드. PRAGMA user_version과 전진 마이그레이션의 C# 구현, EF Core Migrations·DbUp·자체 구현 판단표, 2단계 릴리스까지 정리합니다.
-
WinForms / WPF 앱의 CI/CD 실전 ── GitHub Actions로 빌드부터 서명·배포까지 자동화하기
WinForms / WPF 앱의 CI/CD를 GitHub Actions로 구성하는 실무 가이드입니다. windows-latest에서 빌드+테스트를 돌리는 최소 YAML, 태그 기반 버전 부여, signtool 서명 연동, MSI/MSIX/ClickOnce/xcopy별 CI 통합 판...
-
생력화 투자 보조금으로 FAX 수주를 웹으로 전환할 수 있는가 ── 일반형으로 접근하는 수발주 시스템 투자
FAX 수주의 웹 전환·자동 가져오기는 중소기업 생력화 투자 보조금(일반형)의 검토 대상이 될 수 있습니다. 카탈로그 주문형과 일반형의 차이, 수발주 시스템이 생력화 투자에 해당하는 이유, 임금 인상 요건 등 주의점을 정리합니다.
-
테스트 없는 레거시 업무 앱을 안전하게 수정하기 ── 특성화 테스트와 리팩터링 실무
테스트가 없는 업무 앱을 안전하게 수정하려면, 현재 동작을 고정하는 특성화 테스트(골든 마스터 기법)의 절차, 이음매(seam)를 만드는 방법, 리팩터링과 기능 추가를 섞지 않는 운영 규칙을 C# 예제로 설명합니다.
-
「몇 초면 만족인가」를 빠뜨리지 않으려면 ── IPA 「비기능 요구 등급」으로 비기능 요구사항을 정리하기
「속도가 느리다」「장애 대응이 예상과 다르다」로 다투는 원인 대부분은 비기능 요구사항을 정하지 않은 데 있습니다. IPA 「비기능 요구 등급」의 6대 항목, 등급표와 모델 시스템 사용법, 현실적인 활용법을 발주 측이 이해하기 쉽게 설명합니다.
-
보조금을 쓰는 시스템 개발의 진행 방법 ── 교부 결정에서 역산하는 일정과 사업계획 작성 실무
보조금을 쓰는 시스템 개발은 일반 개발과 진행 방식이 달라집니다. 교부 결정일을 기점으로 한 역산 일정, 채택과 교부 결정의 차이, 정산 지급에 대비한 자금 운용, 사업계획서 작성의 역할 분담을 실무 관점에서 설명합니다.
-
수탁 개발의 사양서, Excel 그대로 둬도 될까 ── 납품물 형식을 고르는 법
수탁 개발에서 납품되는 사양서·설계서를 Excel 모눈종이 형태로 그대로 둬도 될까요. 검수·유지보수의 관점에서 Excel 사양서의 문제점을 정리하고, Word나 Markdown에서 생성하는 방식 등 납품물로 성립하는 형식 고르는 법을 설명합니다.
-
시스템 개발 외주에 보조금을 쓸 수 있는가 ── 목적별 제도 맵과 발주 전에 알아 둘 함정(2026년도판)
시스템 개발 외주에 보조금을 쓸 수 있을까요. 「IT 도입 보조금으로 오더메이드 개발」이 안 되는 이유, 모노즈쿠리 보조금 등 목적별 제도 맵, 교부 결정 전 발주 금지라는 함정까지 발주자 관점에서 정리합니다.
-
홈페이지 발주 담당자도 알아 두면 좋은 점 ── IPA 「안전한 웹사이트 만드는 법」을 체크리스트로 활용하기
회사 홈페이지의 보안은 무엇을 기준으로 확인해야 할까요. IPA 「안전한 웹사이트 만드는 법」이 다루는 11가지 취약점과 대책을, 발주 담당자와 운영 담당자도 이해할 수 있는 말로 설명하고, 발주·검수·운영에서의 활용법을 소개합니다.
-
자사 개발 Windows 앱이 바이러스로 오인되면 ── Microsoft Defender 오탐 대응과 성능 영향에 대처하는 법
자사 개발 Windows 앱이 Microsoft Defender에 오탐되었을 때의 정규 대응을 정리합니다. 현대 바이러스 백신의 동작 방식, Microsoft에 오탐을 신고하는 방법, 격리에서 복원하기, 제외 설정을 올바르게 넣는 방법과 그 위험까지 설명합니다.
-
슬립・최대 절전 모드・Modern Standby와 장시간 가동 앱 ── '한밤중에 멈춰 있었다'를 설계로 막는다
장시간 동작하는 Windows 앱이 '아침에 보니 멈춰 있었다'가 되는 원인을 S3 슬립/최대 절전 모드/Modern Standby의 차이에서 정리합니다. 슬립 중 타이머와 TCP 연결의 동작, SetThreadExecutionState로 억제하는 방법까지 설명합니다.
-
마이나보험증을 태그하면 무슨 일이 일어나는가 ── 온라인 자격확인과 레세콘 연계를 ORCA 소스코드로 읽다
마이나보험증을 태그한 뒤 보험 자격이 레세콘에 등록되기까지를, 온라인 자격확인의 전체 흐름과 ORCA(니치레세) 공개 소스로 해설합니다. 온자 관련 API 20개, tbl_onshi_* 테이블 13개, 2020~2026년 제도 대응 연표를 포함합니다.
-
위장 도급이 되지 않기 위한 준위임 계약의 올바른 업무 방식 ── 계약서의 이름이 아니라 「지휘명령」으로 정해진다
준위임 계약이라도 발주자가 수탁 측 엔지니어에게 직접 지휘명령을 하면 위장 도급입니다. 도급·준위임·파견의 차이, 37호 고시의 판단 기준, 개발 현장에서 흔히 있는 OK·NG의 경계선을 후생노동성의 1차 자료를 바탕으로 정리합니다.
-
중소기업의 보안 대책, 무엇부터 시작할까 ── IPA 「중소기업의 정보보안 대책 가이드라인」 제4.0판 활용법
중소기업 보안 대책은 무엇부터 시작해야 할까요. IPA 「중소기업의 정보보안 대책 가이드라인」 제4.0판을 바탕으로 정보보안 6개 조항, 5분이면 끝나는 자사 진단, SECURITY ACTION까지 단계적으로 설명합니다.
-
Windows on Arm에서 업무 앱은 동작하는가 ── x64 에뮬레이션(Prism)과 네이티브 DLL·COM의 현실
「Windows on Arm에서 업무 앱은 동작하는가」에 개발자와 사내 IT를 위해 답합니다. x64 에뮬레이션(Prism)의 구조, 드라이버처럼 동작하지 않는 계층, .NET의 AnyCPU와 P/Invoke 문제, Arm 대응 체크리스트까지 정리합니다.
-
닛레세 API의 전체 구조를 소스코드로 파악한다 ── ORCA의 공개 소스를 읽다(전 137개 엔드포인트 대응표 포함)
닛레세 API의 전체 구조를 ORCA(일본의사회 표준 레셉트 소프트웨어)의 공개 소스코드로 파악합니다. 전 137개 엔드포인트 대응표, patientgetv2를 끝까지 추적하는 예, 5.1 계열과의 버전 간 diff 실측, 문서화되지 않은 API의 사양 도출과 운영 설계까지 다룹니다.
-
소스 코드도 명세서도 없는 시스템을 인수인계받았다면 ── 멈추지 않고 운영·유지보수하기 위한 실무 절차
소스 코드도 명세서도 없는 업무 시스템의 운영·유지보수를 시작하는 실무 절차를 정리합니다. 가동 중인 환경의 보존과 백업, 실행 파일·DB 인벤토리, 동작을 바탕으로 한 명세 복원, 수명 연장·래핑·재구축 판단까지 설명합니다.
-
MAX_PATH와 Windows 경로·파일 이름의 함정 ── 260자 제한, 예약 이름, 끝의 점, 대소문자
「파일을 찾을 수 없습니다」의 단골 원인인 경로·파일 이름 제한을 정리합니다. MAX_PATH=260자의 구성, LongPathsEnabled로 긴 경로를 켜는 방법, CON 등의 예약 이름, 끝 점의 정규화, Path.Combine의 함정까지 설명합니다.
-
ORCA(니치레세)는 전자차트가 아니다 ── 엔지니어 관점에서 정리하는 레세콘과 의료 시스템 구성
ORCA(니치레세)는 전자차트가 아니라 레세콘입니다. 엔지니어 관점에서 의료기관의 시스템 구성, 레셉트 업무, COBOL 약 406만 행의 소스 내용, 니치레세API, WebORCA 전환의 요점을 공개 소스 실측으로 정리합니다.
-
수탁 개발·운영 유지보수 계약은 어떻게 맺어야 하는가 ── IPA 「모델 거래·계약서」에서 배우는 준위임과 도급의 구분
시스템 개발을 외부에 위탁할 때 계약은 어떻게 맺어야 할까요. IPA가 공개하는 「정보시스템·모델 거래·계약서」를 바탕으로, 다단계 계약의 관점, 준위임과 도급의 차이, 운영 유지보수 계약에서 정해 두어야 할 사항을 발주 측도 이해하기 쉽게 설명합니다.
-
네트워크 드라이브와 UNC 경로의 함정 ── 업무 앱에서 파일 서버(공유 폴더)를 다루는 실무
업무 앱에서 공유 폴더로 출력·감시할 때 자주 겪는 문제를 정리합니다. 드라이브 문자(Z:)가 서비스에서 보이지 않는 이유, 실행 계정별로 필요한 권한, 오류 1219, FileSystemWatcher 주의점까지 설명합니다.
-
디지털 인보이스란? ── '청구서 PDF를 메일로 보내는 것'과 무엇이 다른가
디지털 인보이스란, 청구 정보를 판매자의 시스템에서 구매자의 시스템으로 사람을 거치지 않고 직접 데이터 연계하는 구조입니다. PDF 청구서와의 차이, 인보이스 제도와의 관계, Peppol·JP PINT, 중소기업의 시작 방법을 해설합니다.
-
Windows 앱의 작업 트레이 상주와 토스트 알림 ── NotifyIcon의 함정과 AppNotification 고르는 법
업무용 Windows 앱의 작업 트레이 상주와 토스트 알림 구현을 정리합니다. NotifyIcon의 올바른 사용법, Explorer 재시작 시 재등록, 토스트 API 3종의 선정 판단표, 알림이 도착하지 않는 경우까지 설명합니다.
-
WordPress에서 Movable Type으로의 이전 ── '반대 방향'이기에 정리해 두어야 할 실무 절차
WordPress에서 Movable Type(MovableType.net)으로의 이전 절차를 실무 관점에서 해설합니다. 이전이 합리적인 경우, 게시물·이미지 임포트, URL 설계와 301 리다이렉트를 통한 SEO 이어받기까지 정리합니다.
-
VB6 앱은 언제까지 동작하는가 ── 런타임 지원 현황과 현실적인 .NET 이전 진행 방법
VB6 앱은 언제까지 동작할까요. 런타임은 Windows 11에서도 동작 대상이고 IDE는 지원이 종료된 현황을 정리하고, 전면 재작성·자동 변환·단계 이전의 판단표, 이전 전 자산 파악, VB6와 .NET의 비호환까지 정리합니다.
-
FAX 수주를 Web으로 옮기려면 ── 이중 운용 기간의 설계와 단계 이행의 실무
FAX 수주를 Web 수주나 CSV 가져오기로 이행하는 실무를 설명합니다. 한꺼번에 전면 Web화하기가 실패하기 쉬운 이유, FAX와 Web의 이중 운용 기간 설계, 상품·거래처 마스터 정비, CSV 가져오기라는 중간 형태, 거래처를 끌어들이는 방법을 단계 이행 절차로 정리합니다.
-
EDI란? 기업 간 수발주를 어떻게 편하게 만드는가 ── FAX·메일·수기 입력에서 데이터 연계로
EDI란, 발주서나 청구서 등의 거래 데이터를 기업 간 시스템에서 교환하는 구조입니다. FAX·메일과의 차이, 수기 입력이나 전사 실수를 줄이는 구조, 수주·재고·출하·청구를 연계하는 이점을 알기 쉽게 설명합니다.
-
업무 앱의 연호·공휴일·마감일 처리 ── 연호 변경에 강한 설계와 JapaneseCalendar·영업일 계산 실무
연호 표시, 공휴일을 제외한 영업일 계산, 마감일 처리처럼 일본 업무 앱에 특유한 날짜 처리를 정리합니다. JapaneseCalendar와 연호 변경에 강한 설계, 내각부 CSV로 공휴일 마스터를 운영하는 방법, AddMonths의 월말 조정 사양을 바탕으로 한 마감일 계산까지 설...