이력 데이터 선정
고시원 관리 프로그램에서 모든 변동 사항을 이력으로 남기기보다는 실제 운영에 반복적으로 확인되거나 분쟁 및 정산 근거로 활용될 수 있는 데이터만 이력으로 관리할 필요가 있다고 판단하였다.
이에 따라 이력 데이터는 다음 기준으로 선별하였다.
- 금전 정산과 직접 연결되는가
- 입실자 또는 방의 상태 변화 추적에 필요한가
- 추후 조회 빈도가 높은가
- 운영 판단이나 책임 확인의 근거가 되는가
- 단순 일회성 정보인지, 지속적으로 누적 관리가 필요한 정보인지
이력 데이터 선별 필요성
사장님과 원장님의 요구사항을 검토한 결과, 고시원 운영 과정에서 발생하는 모든 데이터를 동일하게 이력으로 관리할 필요는 없다고 판단하였다.
고시원 운영에는 입실, 퇴실, 월세 납부, 보증금 차감, 방 이동, 공과금 정산, 유지보수 등 다양한 데이터가 발생하지만, 이들 모두를 이력화하면 오히려 관리 포인트가 많아지고 실제로 자주 조회하지 않는 정보까지 계속 입력해야 하는 문제가 생길 수 있다.
따라서 단순히 발생 가능한 모든 데이터를 저장하는 방식이 아니라, 운영상 의미가 크고 추후 확인 근거로 자주 활용되는 정보만 이력 데이터로 선별하는 방향이 적절하다고 보았다.
이력 데이터 선별 과정
초기에는 입실/퇴실과 관련하여 발생하는 다양한 변동 사항을 모두 이력 후보로 보았다.
예를 들어 보증금, 월세 납부, 공과금 정산, 입실 예정 정보, 방 이동, 시설 수리 내역 등을 모두 이력 항목으로 둘 수 있다고 생각하였다.
그러나 각 항목을 운영 목적 중심으로 생각한 결과, 다음과 같은 차이를 확인하였다.
- 금전 정산과 직접 연결되거나, 추후 반환 및 미납 확인이 필요한 데이터는 이력 관리 필요성이 높았다.
- 방의 사용 변화나 유지보수처럼, 특정 시점 이후 다시 확인할 가능성이 높은 데이터도 이력으로 남길 필요가 있었다.
- 반면, 일시적으로만 의미가 있고 장기 조회 가능성이 낮은 정보는 별도 이력으로 두지 않아도 된다고 판단하였다.
이 기준에 따라 최종적으로 보증금, 월세 납부, 방 단위 사용 이력, 유지보수 이력은 관리 대상에 포함하고, 한전 승계 이력과 예정 입실 이력은 별도 이력 관리 대상에서 제외하는 방향으로 정리하였다
이력 데이터 선정 결과
포함한 이력 데이터
- 보증금 이력은 차감, 반환, 잔액 변화 등 금전 정산의 근거가 되므로 필수 이력으로 보았다.
- 월세 납부 이력은 월별 납부 여부와 미납 여부를 확인하는 핵심 데이터이므로 포함하였다.
- 각 방에서의 이력은 특정 방의 사용 내역과 입실자 변동을 추적하는 데 필요하므로 포함하였다.
- 유지보수 이력은 시설 손상, 수리 내역, 반복 보수 여부 등을 확인하기 위해 필요하다고 판단하였다.
제외한 이력 데이터
- 한전 승계 이력은 특정 시점의 정산 로직에서 사용되는 보조 정보 성격이 강하고, 장기적으로 별도 조회할 필요성이 상대적으로 낮다고 보아 제외하였다.
- 예정 입실 이력은 실제 입실 전 단계의 임시 정보이며 변경 가능성이 높아, 별도의 이력보다 현재 예약 또는 예정 상태로 관리하는 편이 적절하다고 판단하였다.
정리
결과적으로 이력 데이터는 “발생 가능한 모든 데이터”가 아니라, 운영자가 나중에 다시 확인해야 할 가능성이 높고 정산 및 관리 근거가 되는 데이터 중심으로 선별하는 것이 적절하다고 판단하였다. 이에 보증금 이력, 월세 납부 이력, 각 방의 사용 이력, 유지보수 이력을 우선 관리 대상으로 정의하였다.
DB 설계

방
- 우선 방에 대한 값이 필요하기에 다음과 같이 설정했다.

방 유지보수 관리
- rooms의 테이블을 가져와서 FK로 넣어주고 각 방에 대해 어떤 유지보수 비용이 들었는지 체크해서 값을 넣어준다.

방에 대한 이력 테이블
- 이 테이블에서 과거 및 현재 테이블 역할을 다한다.
- 현재 기준으로 살고 있는 사용자도 들어갈 수 있으며, 과거에 살았던 사람들까지 다 볼 수가 있다.

보증금 관리
- tenant_history를 FK로 가져온다.
- deposit 보증금 테이블을 만들고 보증금에서 차감 되는 내역은 deposit_deductions에서 진행하는 걸로 하였다.
- 보증금 테이블에 입력을 한 후 관리자가 금액을 입력하면 보증금 차감 내역 테이블에 들어가는 형태이다.

월세 납부 내역 관리
- tenant_history를 FK로 가져온다.
- 그래서 각 방마다 웝세 납부 이력을 넣어준다.

'외주 > 고시원 외주 개발 일지' 카테고리의 다른 글
| [외주] 현금 승계 PDF로 만들기 - 4/8 (0) | 2026.04.14 |
|---|---|
| [외주] 클라이언트 앞에서 PT를 진행하다! - 4/8 (0) | 2026.04.13 |
| [외주] 기획적으로 풀기 어려운 요구사항 정리 및 기능별 화면명세서 - 4/3 작성 - 3 (2) | 2026.04.03 |
| [외주] 4/1의 미팅 후 변경(4/3 작성 - 2) (0) | 2026.04.03 |
| [외주] 업데이트 후 미팅 - 4/1(수) (0) | 2026.04.03 |