# 테크포임팩트 LAB 프로덕트 가이드라인

테크포임팩트 LAB에서 개발되는 모든 프로덕트가 지켜야 할 필수 조건과 권장사항을 안내합니다.

***

### 필수 조건

#### 공통 조건

모든 프로덕트는 다음 조건을 반드시 만족해야 합니다.

**1️⃣ 독립적 운영 가능성**

* 임팩트 조직이 **실제 현장에서** 독립적으로 운영 가능한 시스템
* 비기술 전문가도 기본 교육 후 핵심 기능을 이해하고 활용할 수 있는 수준의 사용성

**2️⃣ 완전한 문서화**

모든 프로덕트는 다음 문서들을 포함해야 합니다:

* **시스템 아키텍처 문서**: 시스템 구성, 주요 컴포넌트, 데이터 흐름
* **개발 가이드**: 환경 설정, 배포 프로세스, 필요 의존성
* **운영 매뉴얼**: 일반 사용자 및 관리자용 기능 설명
* **트러블슈팅 가이드**: 주요 운영 절차 및 점검사항

***

#### 지속가능한 솔루션 조건

**1️⃣ 장기적 대응력**

* 확장성과 기술 변화에 대응할 수 있는 유연성 고려
* 임팩트 조직의 기술 역량에 맞는 설계
* 필요시 역량 강화를 위한 교육 계획 포함

**2️⃣ 현실적 유지보수 구조**

* 임팩트 조직의 예산과 인력 상황을 고려한 비용 구조
* 합리적인 운영 비용으로 지속 운영 가능
* 자동화된 관리 기능을 통한 운영 부담 최소화

***

#### 데이터 및 오픈소스 조건

**1️⃣ 데이터 보호 및 활용**

* **내부 데이터 활용 시**: 프라이빗 리포지토리 관리, 재사용 가능한 모듈은 별도 오픈소스화
* **민감 정보 처리**: 개인정보, 의료데이터 등은 기획 단계에서 관련 법률 검토 필수

**2️⃣ 오픈소스 기여**

* **랩 당 최소 1개 이상**의 오픈소스 모듈을 테크포임팩트 깃허브에 공개
* 재사용 가능한 형태로 모듈화된 코드
* 메인테이너 제도를 통한 1년 단위 관리

***

### 제출 기술 성과물

#### 1️⃣ 서비스 코드 (필수)

* 실제 서비스 운영에 필요한 전체 소스 코드
* 테스트 코드 포함
* **저장소 옵션**:
  * 테크포임팩트 깃허브 (Private)
  * 펠로우 조직 깃허브 또는 로컬 환경

#### 2️⃣ 기술 문서 (필수)

* **시스템 아키텍처 문서**: 시스템 구성도, 주요 컴포넌트 설명, 데이터 흐름도
* **개발 환경 설정 및 배포 문서**: 로컬 개발 환경 구성, 배포 프로세스, 필요 의존성
* **사용자 매뉴얼**: 일반 사용자 및 관리자용 기능 설명서
* **운영 인수인계 문서**: 유지보수 담당자를 위한 주요 운영 절차 및 점검사항

#### 3️⃣ 오픈소스 모듈 (랩 당 최소 1개 필수)

* 재사용 가능한 형태로 모듈화된 코드
* 테크포임팩트 깃허브에 공개
* 메인테이너 제도를 통한 1년 단위 관리

#### 4️⃣ 오픈 데이터셋 (해당되는 경우)

* 가공된 고품질의 데이터셋
* 테크포임팩트 홈페이지의 데이터셋 섹션에 공개 예정

***

### 유지보수 전략

#### 유지보수 계획 선택

모든 프로덕트는 랩 종료 시점에 명확한 유지보수 전략을 문서화해야 합니다.

**Option A: 임팩트 조직 자체 유지보수**

* 조직 내 담당자 지정
* 필요 역량 및 교육 계획
* 예상 비용 및 자원 계획

**Option B: 카카오임팩트 유지보수 지원 요청**

다음 심사 기준을 충족하는 경우 지원 가능합니다:

**임팩트 증명**

* 명확한 사회적 임팩트 측정 지표 및 성과
* 현장 적용 테스트 결과 및 사용자 피드백
* 지속적인 임팩트 확산 가능성

**운영 지속가능성**

* 합리적인 운영 비용 구조
* 장애 대응 및 백업 시스템 구축
* 확장성 및 미래 기술 변화 대응 가능성

***

### 서비스 보증 조건

#### 필수 표기사항

개발된 서비스는 카카오임팩트 재단의 지원과 테크포임팩트 커뮤니티의 기여를 서비스 내에 명시해야 합니다.

**표준 문구:**

> "본 서비스는 카카오임팩트 재단의 지원과 테크포임팩트 커뮤니티의 기여로 개발되었습니다."

*서비스 유형별 상세 적용 방법은 추후 보증 가이드라인을 제공할 예정입니다.*

***

### 권장사항

#### 접근성 고려

* 다양한 사용자의 접근성을 고려한 UI/UX 설계
* 특히 필요한 서비스의 경우 [W3C 접근성 지침](https://www.w3.org/WAI/standards-guidelines/ko) 준수 권장

#### 문서화 우선순위

* 문서화는 단순한 참고자료가 아닌 **지속가능한 운영을 위한 필수 결과물**
* 개발 일정에 충분한 문서화 시간 포함 필수

#### 자동화 고려

* 가능한 범위 내에서 자동화된 관리 기능 제공
* 임팩트 조직의 운영 부담 최소화

***

### 단계별 점검 타임라인

<table><thead><tr><th width="173">단계</th><th width="211">시기</th><th>점검사항</th></tr></thead><tbody><tr><td><strong>기획 단계</strong></td><td>PI1 중</td><td>지속가능성 조건, 데이터 관련 조건 검토</td></tr><tr><td><strong>개발 중간 점검</strong></td><td>중간 발표</td><td>공통 조건 중간 점검, 문서화 계획 수립</td></tr><tr><td><strong>개발 완료 전</strong></td><td>PI2 종료</td><td>모든 필수 조건 최종 점검, 기술 문서 초안 작성</td></tr><tr><td><strong>랩 종료 시</strong></td><td>최종 주차</td><td>유지보수 전략 확정, 최종 기술 성과물 제출</td></tr></tbody></table>
