이 주제는 **AA를 ‘계속 붙잡아 둘 것인가, 언제 놔줘야 하는가’**라는
SI 현실의 갈등을 정리하는 글이라서, 단계별로 아주 명확하게 선을 그어줘야 한다.
“AA가 SI 프로젝트에서 언제까지 개입해야 하나?”
— 착수·중간·종료 단계별 AA 역할 정리
이 질문에 대한 틀린 답부터 말해보자.
- ❌ “AA는 프로젝트 끝날 때까지 있어야 한다”
- ❌ “초기 설계만 하고 빠지면 된다”
둘 다 틀렸다.
정답은 이거다.
AA는 ‘결정이 필요한 시점까지만’ 개입해야 한다.
그 이후는 SA와 개발팀의 영역이다.
그래서 AA의 개입 시점은
프로젝트 단계로 나눠서 봐야 한다.
1️⃣ 착수 단계: AA가 가장 강하게 개입해야 하는 시점 (필수)
⏱ 시점
- 사업 착수 직후
- 요구사항 정의/분석 단계
- 설계가 아직 종이에 있을 때
🎯 이 단계의 핵심 질문
“이 프로젝트에서
나중에 되돌릴 수 없는 결정은 무엇인가?”
이 질문에 답하는 게 AA의 1차 임무다.
✅ 이때 AA가 반드시 해야 할 일
① 구조적 원칙 확정
- 상태 기반 vs 이벤트 기반
- 마감/정산의 정의
- 재고·매출의 진실 원본
- 수정/재처리 허용 범위
👉 이건 이 시점 아니면 못 정한다.
② 서비스/모듈 경계 확정
- 판매 vs 재고
- 정산 vs 리포트
- 온라인 vs 배치
- 프론트 vs 백엔드
👉 이 경계가 흐릿하면
중반 이후 구조는 무조건 무너진다.
③ DB “금지선” 설정
- INSERT ONLY 테이블
- 직접 UPDATE 금지 영역
- 트리거 금지 정책
👉 이게 없으면
후반에 운영이 DB를 만지기 시작한다.
📌 이 단계의 산출물
- 아키텍처 원칙 문서
- 경계 다이어그램
- 금지/허용 규칙
👉 SI에서 말하는 ‘AA 역할의 70%’는 여기서 끝난다.
2️⃣ 중간 단계: “판정자”로 제한적 개입 (선택적·간헐적)
⏱ 시점
- 상세 설계
- 본격 개발 진행
- 기능 구현이 쌓이기 시작할 때
이 단계에서 AA가 계속 붙어 있으면 문제가 생긴다.
“왜 아직도 설계 얘기해요?”
“이건 SA가 결정할 문제 아닌가요?”
그래서 역할을 바꿔야 한다.
✅ 이 단계에서 AA의 역할은 딱 이것뿐이다
👉 “이 결정이 초기 원칙을 깨는가?” 판정
개발 중에 반드시 이런 질문이 나온다.
- “이건 그냥 상태로 처리하면 안 될까요?”
- “트리거 하나 쓰면 훨씬 쉬운데요?”
- “이번 기능만 예외로 하면 안 되나요?”
AA는 여기서:
- 구현 방법 ❌
- 코드 리뷰 ❌
대신,
“이건 우리가 합의한 구조 원칙을 깨는가?”
→ YES / NO 판정만 한다.
📌 이 단계의 AA 개입 방식
- 정기 회의 ❌
- 상주 ❌
- 이슈 발생 시 호출 ⭕
- 설계 변경 요청 시 검토 ⭕
AA는 설계의 법원이지
현장의 관리자가 아니다.
3️⃣ 종료 단계: “운영 가능성” 최종 검증 (필수, 짧게)
⏱ 시점
- 개발 막바지
- 통합 테스트
- 운영 이관 직전
여기서 AA가 다시 한 번 등장한다.
하지만 목적은 단 하나다.
“이 구조로
운영팀이 실제로 일할 수 있는가?”
✅ 종료 단계에서 AA가 보는 것
① 숫자 사고 시나리오
- 재고 안 맞으면 어디서 확인?
- 마감 후 수정은 어떻게?
- 과거 데이터 재정산 가능?
② 금지선이 실제로 지켜졌는가
- 트리거 슬그머니 들어갔나?
- 상태 플래그로 우회했나?
- 원본 테이블 직접 수정 가능한가?
③ 운영 언어로 설명 가능한가
- 이벤트 = 원장
- 재정산 = 다시 계산
- 보정 = 이벤트 추가
📌 이 단계의 산출물
- 운영 시나리오 검증 결과
- 위험 요소 리스트
- “이 구조로 운영 가능/불가” 판단
👉 이걸 끝으로 AA의 공식 역할은 종료다.
4️⃣ AA가 “끝까지 붙어 있으면” 생기는 문제
이건 정말 중요하다.
❌ AA가 계속 개입하면
- SA 권한 약화
- 개발자 판단력 저하
- 모든 결정이 AA에게 몰림
- 일정 지연
AA는 구조를 만드는 사람이지,
프로젝트를 끌고 가는 사람이 아니다.
5️⃣ SI에서 가장 이상적인 AA 개입 곡선
정리하면 이렇다.
개입 강도
▲
│ ██████████ ← 착수 (최대)
│ ███ ← 중간 (판정자)
│ ███████ ← 종료 (운영 검증)
│
└─────────────────▶ 시간
6️⃣ 한 문장으로 최종 정리
AA는
‘결정이 필요한 순간에 가장 강하게 개입하고,
결정이 끝나면 가장 빨리 빠져야 하는 역할’이다.
이 기준을 지키면:
- SA와 충돌하지 않고
- 개발팀이 자율적으로 움직이고
- 구조는 끝까지 유지된다
'Architecture > AA기본설계요소' 카테고리의 다른 글
| 분리 트랜잭션 + 보상이란 (0) | 2026.01.07 |
|---|---|
| AA 핵심 설계 프레임 요약 (판정용) (0) | 2026.01.07 |
| AA 문서에 반드시 있어야 하는 그림 3장 (0) | 2026.01.07 |
| AA와 SA의 경계 (0) | 2026.01.07 |
| AA 설계단계에서 실제 작업 (1) | 2026.01.07 |
댓글