From 46b1034a6fad166c6db13055ea0e98a64f8cbe73 Mon Sep 17 00:00:00 2001 From: P82273983 Date: Fri, 20 Jun 2025 16:01:07 +0900 Subject: [PATCH] chg readme --- README.md | 337 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 326 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index fbf0256..c571a20 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,330 @@ -## ๐Ÿ“‚ ํ”„๋กœ์ ํŠธ ๊ฒฐ๊ณผ๋ฌผ +# ์š”์‹์—… ์†Œ์ƒ๊ณต์ธ์„ ์œ„ํ•œ AI ๋งˆ์ผ€ํŒ… ์†”๋ฃจ์…˜ (SmartKeting) -### ๐Ÿ“‹ ๋ฐœํ‘œ ์ž๋ฃŒ -* ๋ฐœํ‘œ ์ž๋ฃŒ : [{๋ฐœํ‘œ์ž๋ฃŒ ๋งํฌ}](https://gamma.app/docs/AI--2rd5s7od8hlkm6z) +## 1. ์†Œ๊ฐœ -### ๐ŸŽจ ์„ค๊ณ„ ๊ฒฐ๊ณผ -* ์„ค๊ณ„ ๊ฒฐ๊ณผ : {์„ค๊ณ„๊ฒฐ๊ณผ ๋งํฌ} +**SmartKeting**์€ ์š”์‹์—… ์†Œ์ƒ๊ณต์ธ์„ ์œ„ํ•œ AI ๊ธฐ๋ฐ˜ ๋งˆ์ผ€ํŒ… ์ž๋™ํ™” ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. ๋ณต์žกํ•œ ๋งˆ์ผ€ํŒ… ์—…๋ฌด๋ฅผ ์ž๋™ํ™”ํ•˜๊ณ , ๊ฐœ์ธํ™”๋œ AI ์ถ”์ฒœ์„ ํ†ตํ•ด ์†Œ์ƒ๊ณต์ธ์ด ์†์‰ฝ๊ฒŒ ํšจ๊ณผ์ ์ธ ๋งˆ์ผ€ํŒ…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. -### ๐Ÿ’ป Git Repository -* **ํ”„๋ก ํŠธ์—”๋“œ** : [{ํ”„๋ก ํŠธ์—”๋“œ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๋งํฌ}](https://gitea.cbiz.kubepia.net/shared-dg04-Won/smarketing-frontend.git) -* **๋ฐฑ์—”๋“œ** : [{๋ฐฑ์—”๋“œ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๋งํฌ}](https://gitea.cbiz.kubepia.net/shared-dg04-Won/smarketing-backend.git) -* **manifest** : [{manifest ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๋งํฌ}](https://gitea.cbiz.kubepia.net/shared-dg04-Won/smarketing-manifest.git) +### 1.1 ํ•ต์‹ฌ ๊ธฐ๋Šฅ +- **AI ์ฝ˜ํ…์ธ  ์ƒ์„ฑ**: Claude Sonnet 4๋ฅผ ํ™œ์šฉํ•œ SNS ๊ฒŒ์‹œ๋ฌผ, ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ, ํ™๋ณด ํฌ์Šคํ„ฐ ์ž๋™ ์ƒ์„ฑ +- **๋งค์žฅ ์šด์˜ ๊ด€๋ฆฌ**: ๋งค์žฅ ์ •๋ณด, ๋ฉ”๋‰ด ๊ด€๋ฆฌ ๋ฐ ๋งค์ถœ ๋ฐ์ดํ„ฐ ๋ถ„์„ +- **๊ฐœ์ธํ™” AI ์ถ”์ฒœ**: ๋งค์žฅ ํŠน์„ฑ๊ณผ ํ˜„ํ™ฉ์— ๋งž๋Š” ๋งž์ถคํ˜• ๋งˆ์ผ€ํŒ… ํŒ ์ œ๊ณต +- **๋‹ค์ฑ„๋„ ์ฝ˜ํ…์ธ  ๊ด€๋ฆฌ**: ์ธ์Šคํƒ€๊ทธ๋žจ, ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ ๋“ฑ ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ๋ณ„ ์ตœ์ ํ™”๋œ ์ฝ˜ํ…์ธ  ์ œ๊ณต -### ๐ŸŽฌ ์‹œ์—ฐ ๋™์˜์ƒ -* ์‹œ์—ฐ ๋™์˜์ƒ : {์‹œ์—ฐ ๋™์˜์ƒ ๋งํฌ} \ No newline at end of file +### 1.2 MVP ์‚ฐ์ถœ๋ฌผ +- **๋ฐœํ‘œ์ž๋ฃŒ**: https://gamma.app/docs/AI--2rd5s7od8hlkm6z?mode=doc +- **์„ค๊ณ„๊ฒฐ๊ณผ**: UML ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ ์„ค๊ณ„ ๋ฌธ์„œ +- **Git Repository**: + - ํ”„๋ก ํŠธ์—”๋“œ: https://github.com/won-ktds/smarketing-frontend.git + - ๋ฐฑ์—”๋“œ: https://github.com/won-ktds/smarketing-backend.git +- **์‹œ์—ฐ ๋™์˜์ƒ**: ์‹ค์ œ ์„œ๋น„์Šค ์‚ฌ์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค ๋ฐ๋ชจ + +## 2. ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜ + +### 2.1 ์ „์ฒด ๊ตฌ์กฐ +๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜ ๊ธฐ๋ฐ˜์˜ ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ์„ค๊ณ„๋˜์—ˆ์œผ๋ฉฐ, ํ”„๋ก ํŠธ์—”๋“œ์™€ 4๊ฐœ์˜ ํ•ต์‹ฌ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. + +**์•„ํ‚คํ…์ฒ˜ ํŠน์ง•:** +- **ํšŒ๋ณต์„ฑ ํŒจํ„ด**: Circuit Breaker, Retry ํŒจํ„ด์œผ๋กœ ์™ธ๋ถ€ API ํ˜ธ์ถœ ์•ˆ์ •์„ฑ ํ™•๋ณด +- **ํšจ์œจ์  ๋ถ„์‚ฐ์ฒ˜๋ฆฌ**: ๋น„๋™๊ธฐ ๋ฉ”์‹œ์ง•๊ณผ ํ ๊ธฐ๋ฐ˜ ๋ถ€ํ•˜ ๋ถ„์‚ฐ +- **์ฝ๊ธฐ ์ตœ์ ํ™”**: Cache-Aside, CQRS ํŒจํ„ด ์ ์šฉ +- **API Gateway**: ๋‹จ์ผ ์ง„์ž…์ ์„ ํ†ตํ•œ ํ†ตํ•ฉ ๊ด€๋ฆฌ + +### 2.2 ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ตฌ์„ฑ + +#### **์‚ฌ์šฉ์ž ๊ด€๋ฆฌ ์„œ๋น„์Šค (User Management)** +- **์•„ํ‚คํ…์ฒ˜**: Layered Architecture +- **์ฑ…์ž„**: ์‚ฌ์šฉ์ž ์ธ์ฆ, ๊ถŒํ•œ ๊ด€๋ฆฌ, JWT ํ† ํฐ ๊ด€๋ฆฌ +- **๊ธฐ์ˆ **: Spring Security ๊ธฐ๋ฐ˜ ์ธ์ฆ/์ธ๊ฐ€ + +#### **๋งค์žฅ ์šด์˜ ์„œ๋น„์Šค (Store Management)** +- **์•„ํ‚คํ…์ฒ˜**: Clean Architecture +- **์ฑ…์ž„**: ๋งค์žฅ ์ •๋ณด ๊ด€๋ฆฌ, ๋ฉ”๋‰ด ๊ด€๋ฆฌ, ๋งค์ถœ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋ฐ ๋ถ„์„ +- **์™ธ๋ถ€ ์—ฐ๋™**: POS ์‹œ์Šคํ…œ, ๋ฐฐ๋‹ฌ์•ฑ API ์—ฐ๋™ + +#### **์ฝ˜ํ…์ธ  ๊ด€๋ฆฌ ์„œ๋น„์Šค (Content Management)** +- **์•„ํ‚คํ…์ฒ˜**: Clean Architecture +- **์ฑ…์ž„**: ์ฝ˜ํ…์ธ  ์ƒ์„ฑ, ํŽธ์ง‘, ๊ด€๋ฆฌ, ๋‹ค์ฑ„๋„ ๋ฐœํ–‰ +- **์™ธ๋ถ€ ์—ฐ๋™**: Instagram API, ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ API + +#### **AI ์ถ”์ฒœ ์„œ๋น„์Šค (AI Recommendation)** +- **์•„ํ‚คํ…์ฒ˜**: Layered Architecture +- **์ฑ…์ž„**: ๊ฐœ์ธํ™” ๋งˆ์ผ€ํŒ… ํŒ ์ƒ์„ฑ, AI ๊ธฐ๋ฐ˜ ์ฝ˜ํ…์ธ  ์ถ”์ฒœ +- **์™ธ๋ถ€ ์—ฐ๋™**: Claude Sonnet 4 API, DALL-E 3 API + +### 2.3 ๊ธฐ์ˆ  ์Šคํƒ + +#### **ํ”„๋ก ํŠธ์—”๋“œ** +- **Framework**: Vue 3 + TypeScript +- **UI Library**: Vuetify 3 (Material Design) +- **์ƒํƒœ๊ด€๋ฆฌ**: Pinia +- **๋นŒ๋“œ๋„๊ตฌ**: Vite + +#### **๋ฐฑ์—”๋“œ** +- **Language**: Java 21 +- **Framework**: Spring Boot 3.4.0 +- **์•„ํ‚คํ…์ฒ˜**: ๋ฉ€ํ‹ฐ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ +- **๋นŒ๋“œ๋„๊ตฌ**: Gradle + +#### **AI ์„œ๋น„์Šค** +- **Language**: Python 3.11 +- **Framework**: FastAPI +- **AI API**: Claude Sonnet 4, DALL-E 3 + +#### **์ธํ”„๋ผ** +- **Container Platform**: Azure Kubernetes Service (AKS) +- **Container Registry**: Azure Container Registry (ACR) +- **API Gateway**: Azure API Management + Istio Service Mesh +- **CI/CD**: Jenkins + ArgoCD (GitOps) + +#### **๋ฐฑํ‚น ์„œ๋น„์Šค** +- **Database**: + - PostgreSQL (๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ) + - Redis (์บ์‹ฑ, ์„ธ์…˜) +- **Storage**: Azure Blob Storage (์ด๋ฏธ์ง€, ๋™์˜์ƒ) +- **Message Queue**: Azure Service Bus +- **Monitoring**: ELK Stack + Prometheus + Grafana + +## 3. ๋ฐฑํ‚น ์„œ๋น„์Šค ์„ค์น˜ + +### Database ์„ค์น˜ + +```bash +# Helm ์ €์žฅ์†Œ ์ถ”๊ฐ€ +helm repo add bitnami https://charts.bitnami.com/bitnami +helm repo update + +# ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ ์„œ๋น„์Šค์šฉ DB +helm install user-mgmt bitnami/postgresql \ + --set global.postgresql.auth.postgresPassword=Passw0rd \ + --set global.postgresql.auth.username=admin \ + --set global.postgresql.auth.password=Passw0rd \ + --set global.postgresql.auth.database=user_mgmt + +# ๋งค์žฅ ์šด์˜ ์„œ๋น„์Šค์šฉ DB +helm install store-mgmt bitnami/postgresql \ + --set global.postgresql.auth.postgresPassword=Passw0rd \ + --set global.postgresql.auth.username=admin \ + --set global.postgresql.auth.password=Passw0rd \ + --set global.postgresql.auth.database=store_mgmt + +# ์ฝ˜ํ…์ธ  ๊ด€๋ฆฌ ์„œ๋น„์Šค์šฉ DB +helm install content-mgmt bitnami/postgresql \ + --set global.postgresql.auth.postgresPassword=Passw0rd \ + --set global.postgresql.auth.username=admin \ + --set global.postgresql.auth.password=Passw0rd \ + --set global.postgresql.auth.database=content_mgmt + +# AI ์ถ”์ฒœ ์„œ๋น„์Šค์šฉ DB +helm install ai-recommend bitnami/postgresql \ + --set global.postgresql.auth.postgresPassword=Passw0rd \ + --set global.postgresql.auth.username=admin \ + --set global.postgresql.auth.password=Passw0rd \ + --set global.postgresql.auth.database=ai_recommend +``` + +### Redis ์„ค์น˜ + +```bash +# Redis ํด๋Ÿฌ์Šคํ„ฐ ์„ค์น˜ +helm install redis bitnami/redis \ + --set auth.enabled=true \ + --set auth.password=Redis123! \ + --set master.persistence.enabled=true \ + --set replica.persistence.enabled=true +``` + +### Azure Service Bus ์„ค์ • + +```bash +# Azure Service Bus ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ƒ์„ฑ +az servicebus namespace create \ + --name smarketing-sb \ + --resource-group smarketing-rg \ + --location koreacentral \ + --sku Standard + +# ํ† ํ”ฝ ์ƒ์„ฑ +az servicebus topic create \ + --namespace-name smarketing-sb \ + --resource-group smarketing-rg \ + --name content-generation-topic + +az servicebus topic create \ + --namespace-name smarketing-sb \ + --resource-group smarketing-rg \ + --name social-posting-topic + +az servicebus topic create \ + --namespace-name smarketing-sb \ + --resource-group smarketing-rg \ + --name analytics-topic +``` + +## 4. ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ + +### 4.1 ํ”„๋ก ํŠธ์—”๋“œ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ + +#### ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ๋นŒ๋“œ + +```bash +docker build \ + --build-arg NODE_ENV="production" \ + --build-arg VITE_API_BASE_URL="https://api.smarketing.com" \ + --build-arg VITE_AI_API_URL="https://ai.smarketing.com" \ + -f deployment/Dockerfile \ + -t {Image Registry์ฃผ์†Œ}/smarketing/frontend:latest . +``` + +#### ์ด๋ฏธ์ง€ ํ‘ธ์‹œ + +```bash +docker push {Image Registry์ฃผ์†Œ}/smarketing/frontend:latest +``` + +#### Kubernetes ๋ฐฐํฌ + +```bash +kubectl apply -f deployment/manifest/frontend/ +``` + +### 4.2 ๋ฐฑ์—”๋“œ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ + +#### ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋นŒ๋“œ + +```bash +# ๊ฐ ์„œ๋น„์Šค ๋ชจ๋“ˆ์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ๋นŒ๋“œ +./gradlew :user-management:clean :user-management:build -x test +./gradlew :store-management:clean :store-management:build -x test +./gradlew :content-management:clean :content-management:build -x test +./gradlew :ai-recommend:clean :ai-recommend:build -x test +``` + +#### ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ๋นŒ๋“œ (๊ฐ ์„œ๋น„์Šค๋ณ„๋กœ ์ˆ˜ํ–‰) + +```bash +# ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ ์„œ๋น„์Šค +docker build \ + --build-arg BUILD_LIB_DIR="user-management/build/libs" \ + --build-arg ARTIFACTORY_FILE="user-management.jar" \ + -f deployment/Dockerfile \ + -t {Image Registry์ฃผ์†Œ}/smarketing/user-management:latest . + +# ๋งค์žฅ ์šด์˜ ์„œ๋น„์Šค +docker build \ + --build-arg BUILD_LIB_DIR="store-management/build/libs" \ + --build-arg ARTIFACTORY_FILE="store-management.jar" \ + -f deployment/Dockerfile \ + -t {Image Registry์ฃผ์†Œ}/smarketing/store-management:latest . + +# ์ฝ˜ํ…์ธ  ๊ด€๋ฆฌ ์„œ๋น„์Šค +docker build \ + --build-arg BUILD_LIB_DIR="content-management/build/libs" \ + --build-arg ARTIFACTORY_FILE="content-management.jar" \ + -f deployment/Dockerfile \ + -t {Image Registry์ฃผ์†Œ}/smarketing/content-management:latest . + +# AI ์ถ”์ฒœ ์„œ๋น„์Šค +docker build \ + --build-arg BUILD_LIB_DIR="ai-recommend/build/libs" \ + --build-arg ARTIFACTORY_FILE="ai-recommend.jar" \ + -f deployment/Dockerfile \ + -t {Image Registry์ฃผ์†Œ}/smarketing/ai-recommend:latest . +``` + +#### ์ด๋ฏธ์ง€ ํ‘ธ์‹œ + +```bash +docker push {Image Registry์ฃผ์†Œ}/smarketing/user-management:latest +docker push {Image Registry์ฃผ์†Œ}/smarketing/store-management:latest +docker push {Image Registry์ฃผ์†Œ}/smarketing/content-management:latest +docker push {Image Registry์ฃผ์†Œ}/smarketing/ai-recommend:latest +``` + +#### Kubernetes ๋ฐฐํฌ + +```bash +kubectl apply -f deployment/manifest/backend/ +``` + +### 4.3 AI ์„œ๋น„์Šค ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ + +#### ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ๋นŒ๋“œ + +```bash +docker build \ + --build-arg PYTHON_VERSION="3.11" \ + --build-arg REQUIREMENTS_FILE="requirements.txt" \ + -f deployment/ai/Dockerfile \ + -t {Image Registry์ฃผ์†Œ}/smarketing/ai-service:latest . +``` + +#### ์ด๋ฏธ์ง€ ํ‘ธ์‹œ ๋ฐ ๋ฐฐํฌ + +```bash +docker push {Image Registry์ฃผ์†Œ}/smarketing/ai-service:latest +kubectl apply -f deployment/manifest/ai/ +``` + +### 4.4 ํ…Œ์ŠคํŠธ + +#### ํ”„๋ก ํŠธ์—”๋“œ ํŽ˜์ด์ง€ ์ฃผ์†Œ ํ™•์ธ + +```bash +kubens smarketing +kubectl get svc smarketing-frontend-service +``` + +#### ๋กœ๊ทธ์ธ ์ •๋ณด +- **ํ…Œ์ŠคํŠธ ๊ณ„์ •**: + - ID: testuser1 + - PW: password123! + +#### API ์—”๋“œํฌ์ธํŠธ ํ™•์ธ + +```bash +# API Gateway ์ฃผ์†Œ ํ™•์ธ +kubectl get ingress smarketing-api-gateway + +# ์„œ๋น„์Šค ์ƒํƒœ ํ™•์ธ +kubectl get pods -l app.kubernetes.io/name=smarketing +``` + +## 5. ํŒ€ + +**โ‚ฉONํŒ€** - ์†Œ์ƒ๊ณต์ธ์—๊ฒŒ ๊ฐ€์น˜์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ํŒ€ + +### ํŒ€ ๊ตฌ์„ฑ์› + +**์ด์ค€์˜ "์šฐ๋””"** - Frontend Developer (Scrum Master) +- ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ ๋ฐ ์• ์ž์ผ ๋ฐฉ๋ฒ•๋ก  ์ „๋ฌธ๊ฐ€ +- ํŒ€ ์Šคํฌ๋Ÿผ ๋งˆ์Šคํ„ฐ ์—ญํ•  ์ˆ˜ํ–‰ + +**ํ•œ์ง€์œค "์ œ๋‹ˆ"** - Frontend Developer (Product Owner) +- ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ ๋ฐ ์ œํ’ˆ ๊ธฐํš ๋‹ด๋‹น +- ์‚ฌ์šฉ์ž ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„ ๋ฐ ์ œํ’ˆ ๋กœ๋“œ๋งต ๊ด€๋ฆฌ + +**๋ฐ•์„œ์€ "๊ณ ๋ž˜"** - Backend Developer +- Spring Boot ๊ธฐ๋ฐ˜ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ฐœ๋ฐœ +- API ์„ค๊ณ„ ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•„ํ‚คํ…์ฒ˜ ๊ตฌ์ถ• + +**์œ ํ•˜์—ฐ "ํ•˜๋ฃจ"** - UI/UX Designer & Data Architect & Backend Developer +- ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ์„ค๊ณ„ +- ๋ฐ์ดํ„ฐ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„ ๋ฐ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ์ง€์› + +**์˜ค์„ฑ๋ฝ "์˜ค์ž‰"** - AI Developer & CI/CD & QA Engineer +- AI/ML ๋ชจ๋ธ ๊ฐœ๋ฐœ ๋ฐ ์ตœ์ ํ™” +- CI/CD ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ• ๋ฐ ํ’ˆ์งˆ ๋ณด์ฆ + +**๊น€ํ•œ์ฃผ "ํ•ด๋ชฝ"** - Infrastructure Architect & System Analyst & CI/CD Engineer +- ์ธํ”„๋ผ ์„ค๊ณ„ ๋ฐ ์‹œ์Šคํ…œ ๊ธฐํš (TA) +- CI/CD ํ™˜๊ฒฝ ๊ตฌ์ถ• ๋ฐ ์šด์˜ + +### ํŒ€ ํ–‰๋™์›์น™ - 'M'์‚ฌ์ƒ + +- **Value-Oriented**: WHY First, Align WHY - ๊ฐ€์น˜ ์ค‘์‹ฌ์˜ ์˜์‚ฌ๊ฒฐ์ • +- **Interactive**: Believe crew, Yes And - ์ƒํ˜ธ์ž‘์šฉ๊ณผ ํ˜‘์—… ์ค‘์‹œ +- **Iterative**: Fast fail, Learn and Pivot - ๋น ๋ฅธ ์‹คํŒจ์™€ ํ•™์Šต์„ ํ†ตํ•œ ๊ฐœ์„  + +--- + +**๋น„์ „**: ํšจ๊ณผ์ ์ธ ์†Œํ†ต์„ ํ†ตํ•ด ์†Œ์ƒ๊ณต์ธ์—๊ฒŒ ๊ฐ€์น˜์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜์—ฌ, ์†Œ์ƒ๊ณต์ธ์˜ ๋””์ง€ํ„ธ ๋งˆ์ผ€ํŒ… ์—ญ๋Ÿ‰์„ ํ˜์‹ ํ•˜๊ณ  ์ˆ˜์ต ์ฐฝ์ถœ์„ ๊ทน๋Œ€ํ™”ํ•œ๋‹ค. \ No newline at end of file