schema-version: 1 project-profile: primary: project-template secondary: - backend-service audiences: primary: - 신규 Spring Boot 서비스의 기준 구조를 정하는 백엔드·플랫폼 개발자 secondary: - 아키텍처 규칙과 검증 체계를 평가하는 테크 리드 reader-outcomes: - 템플릿이 제공하는 강제 규칙과 도입자가 결정할 영역을 구분한다. - 로컬 부트스트랩을 실행하고 성공 조건과 정리 방법을 확인한다. - 도메인·유스케이스·어댑터·조립 코드를 올바른 모듈에 배치한다. - 샘플 제거 및 전체 품질 계약을 재현 가능한 명령으로 검증한다. project-story: value-proposition: 문서로만 권고하는 구조가 아니라 Gradle과 ArchUnit 규칙으로 의존 방향을 지속적으로 검증하는 Spring Boot 템플릿이다. problem: 서비스 초기 구조는 빠르게 복사할 수 있어도 경계가 빌드에 강제되지 않으면 기능 추가 과정에서 쉽게 무너진다. target-reader: 신규 Java 백엔드의 구조와 검증 기준을 함께 도입하려는 개발자 notable-traits: - text: Java 21과 Spring Boot 4.0.0을 사용하는 19개 모듈 구성이다. fact-ids: [F-STACK-001, F-MODULES-001] - text: 모듈 의존 방향과 application 코드 경계를 실행 가능한 빌드·ArchUnit 규칙으로 검증한다. fact-ids: [F-DEPENDENCY-POLICY-001, F-CODE-BOUNDARY-001] - text: 로컬 부트스트랩은 컴파일부터 PostgreSQL·앱 시작과 HTTP 상태 확인까지 하나의 계약으로 묶는다. fact-ids: [F-BOOTSTRAP-001, F-HEALTH-001] - text: sample-portfolio를 테스트 fixture로 격리하고 샘플 없는 핵심 테스트 경로를 제공한다. fact-ids: [F-SAMPLE-001] maturity: 자동화된 구조·실행·검증 계약을 갖춘 참조 템플릿 limitations: - 제공되는 adapter 가운데 실제 서비스가 채택할 범위는 도입자가 결정해야 한다. - 로컬 실행 토폴로지는 Docker와 PostgreSQL을 전제로 한다. - 조직별 보안·성능·가용성 요구사항은 템플릿의 내부 검증과 별도로 평가해야 한다. narrative-variant: architecture-template reader-journey: - reader-question: 이 템플릿은 무엇이며 어떤 문제를 해결하는가? section-id: overview - reader-question: 일반적인 시작점과 비교해 무엇이 강제되는가? section-id: project-value - reader-question: 모듈은 어떤 방향으로 의존하고 코드는 어디에 놓는가? section-id: architecture - reader-question: 가장 짧은 로컬 실행 경로와 성공 신호는 무엇인가? section-id: quick-start - reader-question: 샘플을 실제 도메인으로 바꾸는 순서는 무엇인가? section-id: adoption - reader-question: 구조와 전체 품질 계약을 어떻게 다시 검증하는가? section-id: verification - reader-question: 세부 설정과 운영 계약은 어디에서 확인하는가? section-id: documentation