기술 선택 · 요구사항
관리자페이지/권한 설계가 일정을 늘리는 이유
외주 개발에서 관리자 페이지와 권한 설계가 예상보다 복잡한 이유와, 일정 지연을 방지하는 방법을 설명합니다.
Freesi·
3줄 요약
- •관리자 페이지는 사용자 페이지보다 화면 수가 2~3배 많은 경우가 흔합니다.
- •권한 단계가 1개 늘어날 때마다 테스트 케이스가 기하급수적으로 늘어납니다.
- •초기 기획 시 권한 매트릭스를 만들어두면 일정 지연을 방지할 수 있습니다.
왜 관리자 페이지가 비싼가
클라이언트가 "관리자 페이지도 넣어주세요"라고 가볍게 요청하지만, 실제로는:
1. 화면 수 폭발
사용자 화면이 10개면, 관리자 화면은 20~30개가 되는 경우가 흔합니다. 회원 관리, 콘텐츠 관리, 주문 관리, 통계, 설정 등.
2. CRUD 전부 필요
사용자는 "조회"만 하지만, 관리자는 "생성/조회/수정/삭제 + 일괄 처리 + 엑셀 다운로드" 등이 필요합니다.
3. 검색·필터가 복잡
사용자 목록에서 "가입일/상태/등급/최근 접속" 등 다양한 조건으로 검색·필터·정렬이 필요합니다.
4. 통계·대시보드
실시간 현황, 일별/월별 통계, 차트 등은 단순해 보이지만 쿼리·집계 로직이 복잡합니다.
권한 설계의 함정
| 권한 단계 | 테스트 케이스 | 개발 공수(추가) |
|---|---|---|
| 2단계 (관리자/사용자) | 각 화면 × 2 | +30% |
| 3단계 (+매니저) | 각 화면 × 3 + 예외 처리 | +50% |
| 5단계+ (세분화) | 기하급수적 증가 | +80~120% |
권한이 세분화될수록:
메뉴 노출/비노출 제어
버튼별 활성/비활성 처리
데이터 범위 제한 (내 팀만 / 전체)
승인 워크플로우 (결재선)
이 모든 조합을 테스트해야 합니다.
권한 매트릭스 템플릿
기획 단계에서 아래와 같은 표를 만들어두면 범위가 명확해집니다.
| 기능 | 슈퍼관리자 | 관리자 | 매니저 | 일반 | 비회원 |
|---|---|---|---|---|---|
| 회원 목록 조회 | O | O | 팀만 | X | X |
| 회원 수정/삭제 | O | O | X | X | X |
| 콘텐츠 등록 | O | O | O | X | X |
| 콘텐츠 승인 | O | O | X | X | X |
| 통계 조회 | O | O | 팀만 | X | X |
| 시스템 설정 | O | X | X | X | X |
이 표를 기획 단계에서 완성해두면:
1. 견적이 정확해집니다
2. 개발 중 "이건 누가 볼 수 있어야 하죠?" 질문이 사라집니다
3. 테스트 범위가 명확해집니다
자주 묻는 질문
관리자 페이지 없이 시작해도 되나요?
MVP 단계에서는 최소한의 관리자 기능만 넣고, 복잡한 관리 기능은 2차 개발로 미루는 것을 추천합니다. 초기에는 DB 직접 접근이나 간단한 대시보드로 운영하는 경우도 많습니다.
권한을 나중에 추가할 수 있나요?
가능하지만, 초기 설계 시 권한 구조를 고려하지 않았다면 대규모 리팩토링이 필요할 수 있습니다. 최소한 "확장 가능한 권한 테이블 구조"는 처음부터 설계해두는 것이 좋습니다.
