AI 개발 조건
수업에서 가능한 것과 어려운 것AI 开发条件
课堂上做得到的与做不到的
AI가 먼저 읽어야 하는 수업 조건입니다.这是第 9 次课设计用户流程与开发计划时,
AI 必须先读的课堂条件。
AI에게 먼저 읽히는 조건표先给 AI 读的条件表
이 자료는 교과서 본문이 아니라 AI에게 건네는 조건표입니다. 학생의 아이디어를 바로 코드로 만들지 말고, 이 조건 안에서 가능한지 먼저 판단하게 하는 것이 목적입니다.这份资料不是教科书正文,而是递给 AI 的条件表。目的是不让它把学生的点子直接变成代码,而是先在这些条件里判断能不能做。
실제 서비스 개발은 10회부터 시작합니다. 9회에는 사용자 흐름과 개발 계획만 확정합니다. AI가 코드를 먼저 내놓으려 하면 이 조건표를 다시 읽게 하세요.真正的服务开发从第 10 次课开始。第 9 次课只确定用户流程与开发计划。AI 若想先给代码,就让它重读这份条件表。
조건 없이 물으면 AI는 일반적인 웹서비스를 가정합니다. 로그인, 외부 API, 클라우드 데이터베이스가 당연히 있다고 보고 계획을 세웁니다. 그 계획은 이 수업에서 만들 수 없습니다.不给条件就问,AI 会按一般的网络服务来设想,默认有登录、外部 API、云数据库,并据此做计划。那样的计划在这门课里做不出来。
조건을 먼저 주면 AI는 가능한 범위 안에서 대안을 제안합니다. 그것이 이 자료의 목적입니다.先给条件,AI 就会在可行范围内提出替代方案。这正是这份资料的目的。
수업 프로젝트의 기본 조건课堂项目的基本条件 핵심核心
- 대상은 웹서비스를 처음 만드는 중·고등학생이다.对象是第一次做网络服务的中学生。
- 학생은 코드를 처음부터 직접 작성하지 않고 AI가 만든 결과를 확인·판단·수정 요청한다.学生不从零写代码,而是确认、判断 AI 做出的结果并提出修改要求。
- 실제 서비스 개발은 10회부터 시작한다. 9회에는 코드를 작성하거나 수정하지 않는다.真正的服务开发从第 10 次课开始。第 9 次课不写也不改代码。
- 개발할 때는 교사가 제공한 표준 Next.js 프로젝트 하나를 사용한다.开发时使用老师提供的同一个标准 Next.js 项目。
- 화면과 서버를 별도 프로젝트로 나누지 않는다.不把画面和服务器拆成两个项目。
- 학생이 패키지·프레임워크·포트·DB 경로와 배포 방식을 선택하지 않는다.学生不选择包、框架、端口、数据库路径与发布方式。
- 핵심 기능은 한 가지로 제한한다.核心功能限定为一个。
- 모든 프로젝트는 핵심 기능과 관련된 의미 있는 기록을 하나 이상 SQLite에 저장하고 다시 보여 준다.每个项目都要把与核心功能相关的至少一种有意义的记录存进 SQLite,并能再次展示。
- 테이블은 한 개로 시작할 수 있으며, 테이블 수를 늘리기 위한 가짜 기록을 만들지 않는다.数据表可以从一张开始;不为了增加表数而造假记录。
- 실제 개인정보와 민감정보를 사용하지 않는다.不使用真实的个人信息与敏感信息。
- 외부 공개 배포는 학생 활동이 아니라 교사가 준비한 플랫폼의 선택 기능이다.对外公开发布不是学生的活动,而是老师准备的平台上的可选功能。
수업에서 사용할 수 있는 기능课堂上可以使用的功能 핵심核心
아래 범위 안에서 만들면 표준 프로젝트에서 바로 작동합니다.在下面这个范围内做,在标准项目里就能直接跑起来。
- 글자 · 숫자 · 날짜 입력文字 · 数字 · 日期输入
- 항목 선택과 버튼 실행项目选择与按钮执行
- 입력 확인과 간단한 계산 · 분류 · 정렬 · 검색输入校验与简单的计算 · 分类 · 排序 · 检索
- 결과 · 안내 · 목록 표시结果 · 提示 · 列表的显示
- 표준 SQLite에 핵심 기능의 기록 저장 · 조회在标准 SQLite 中保存与查询核心功能的记录
- 교사가 제공한 이미지와 CSV · JSON 등의 예시 자료老师提供的图片与 CSV、JSON 等示例资料
- 새로고침과 재실행 후 결과 확인刷新与重新运行后确认结果
- 교사가 승인한 프로젝트의 제한적인 파일 업로드老师批准的项目可做受限的文件上传
입력 → 처리 → 결과 → 저장 → 다시 보기까지 모두 들어 있습니다. 계산기, 추천 도구, 퀴즈, 기록 도구, 목록 관리는 이 범위 안에서 충분히 만들 수 있습니다.输入 → 处理 → 结果 → 保存 → 再查看,全都在里面。计算器、推荐工具、测验、记录工具、清单管理在这个范围内完全做得出来。
기본 범위에서 제외하는 기능基本范围内排除的功能 핵심核心
- ChatGPT · Gemini 등 외부 AI 서비스 APIChatGPT、Gemini 等外部 AI 服务 API
- 유료 서비스와 학생 개인 API 키付费服务与学生个人 API 密钥
- Firebase · Supabase 등 외부 DB와 클라우드 저장소Firebase、Supabase 等外部数据库与云存储
- Google · Kakao 등의 소셜 로그인Google、Kakao 等社交登录
- 외부 웹사이트 크롤링对外部网站的爬取
- 학생 개인 계정을 이용한 외부 배포用学生个人账号对外发布
- 복잡한 회원가입 · 권한 · 관리자 기능复杂的注册、权限、管理员功能
- 이메일 · SMS · 푸시 알림邮件、短信、推送通知
- 결제 · 광고와 상업적 기능支付、广告与商业功能
- 실제 개인정보와 민감정보 수집收集真实的个人信息与敏感信息
- 실시간 채팅과 많은 사용자의 동시 참여实时聊天与大量用户同时参与
- 장시간 실행되는 작업과 예약 작업长时间运行的任务与定时任务
- 교사가 승인하지 않은 새 패키지老师未批准的新的包
대부분은 돈, 개인 계정, 또는 남의 정보에 대한 책임이 따르는 기능입니다. 한 학기 수업에서 책임질 수 있는 범위를 넘어서기 때문에 제외합니다.这些大多是牵涉钱、个人账号,或对他人信息负责的功能。它们超出一个学期的课能承担的范围,所以排除。
교사 확인 후에만 가능한 기능经老师确认才可以的功能 핵심核心
- 파일 업로드와 파일 저장文件上传与文件保存
- 외부 공개 데이터 연결连接外部公开数据
- 수업 목적에 꼭 필요한 추가 패키지课程目的上确有必要的额外的包
- 외부 사이트의 자료 · 지도 · 영상 연결连接外部网站的资料、地图、视频
- 기본 범위에 없지만 핵심 기능에 반드시 필요한 기능不在基本范围内,但对核心功能确实必需的功能
AI는 위 기능을 임의로 개발 계획에 넣지 않고 교사 확인 필요로 표시합니다. 표시만 하고 넘어가며, 학생과 교사가 확인하기 전에는 그 기능을 전제로 계획을 세우지 않습니다.AI 不得擅自把上述功能写进开发计划,而要标记为 교사 확인 필요(需老师确认)。只标记、不展开;在学生与老师确认之前,不以该功能为前提制定计划。
“이 기능을 넣고 싶다”가 아니라 “핵심 기능이 이것인데, 그러려면 이 기능이 필요하다”로 설명하세요. 대체로 더 작은 대안이 함께 나옵니다.不要说“我想加这个功能”,而要说“我的核心功能是这个,为此需要这个功能”。这样多半会一并得到更小的替代方案。
어려운 기능을 발견했을 때发现难以实现的功能时 핵심核心
어렵거나 사용할 수 없는 기능을 몰래 다른 기능으로 바꾸거나, 실제로 작동하지 않는 기능을 완성된 것처럼 표현하지 않습니다. 먼저 원래 목적을 설명하고, 수업에서 가능한 작은 대안을 제안합니다.不得把难以实现或不能用的功能偷偷换成别的,也不得把实际跑不起来的功能说成已经做好。要先说明原本的目的,再提出课堂上可行的更小的替代方案。
| 원래 아이디어原本的点子 | 수업에서 가능한 대안课堂上可行的替代 |
|---|---|
| AI가 글을 분석하고 조언由 AI 分析文章并给建议 | 학생이 정한 조건·키워드에 따른 결과, 또는 준비된 예시 결과按学生定的条件、关键词给出结果,或用事先准备的示例结果 |
| AI가 콘텐츠를 생성由 AI 生成内容 | 교사가 제공한 예시 자료에서 조건에 맞는 항목 제시从老师提供的示例资料中挑出符合条件的项目 |
| 실제 로그인真实的登录 | 로그인 없이 한 명이 사용하는 형태, 또는 임시 이름 입력不登录、按一人使用的形态,或输入临时名字 |
| 이메일 · 푸시 알림邮件、推送通知 | 서비스 화면 안에 알림과 상태 표시在服务画面内显示提示与状态 |
| 외부 클라우드 저장外部云存储 | 작품별 SQLite에 필요한 최소 기록 저장在各作品的 SQLite 里保存必要的最小记录 |
| 실시간 채팅实时聊天 | 메시지를 작성하고 저장된 목록을 확인하는 형태写下消息,再查看已保存列表的形态 |
| 외부 지도 API外部地图 API | 장소 목록, 주소 링크 또는 교사가 제공한 정적 자료地点列表、地址链接,或老师提供的静态资料 |
AI 기능을 규칙이나 예시 자료로 바꾸었다면 실제 AI 기능이라고 설명하지 않고 수업용 프로토타입이라고 표시합니다. 1-1에서 약속한 정직하게 밝히기가 여기에도 적용됩니다.若把 AI 功能换成了规则或示例资料,不得说成是真的 AI 功能,要标记为 수업용 프로토타입(课堂用原型)。1-1 约定的如实说明在这里同样适用。
AI의 판정 방식AI 的判定方式 핵심核心
AI는 PRD의 각 기능과 사용자 흐름을 다음 네 가지로 나눕니다.AI 把 PRD 里的每个功能与用户流程分成下面四类。
판정한 뒤에도 학생과 교사가 범위를 확인하기 전에는 코드를 작성하지 않습니다. 판정은 “무엇을 만들지 정하는” 단계이지 “만드는” 단계가 아닙니다.即使判定完成,在学生与老师确认范围之前也不写代码。判定属于“定下要做什么”的阶段,不是“动手做”的阶段。
대부분의 아이디어는 ②번으로 판정됩니다. 목적은 그대로 두고 범위만 줄이면 되므로, 가장 흔하고 정상적인 결과입니다.多数点子会被判成②。目的照旧、只缩小范围即可,这是最常见也最正常的结果。
AI가 반드시 지킬 응답 원칙AI 必须遵守的回应原则
먼저 사용자가 서비스를 이용하는 흐름을 이해하고,
각 단계가 수업 조건 안에서 가능한지 확인한다.
그다음 필요한 범위 조정을 제안한다.
사용자 흐름과 범위가 확정된 뒤에만 개발 순서를 작성하며,
9회에는 코드를 만들거나 수정하지 않는다.先理解用户使用服务的流程,
确认每一步在课堂条件内是否可行。
然后提出必要的范围调整。
只有在用户流程与范围确定之后,才写开发顺序;
第 9 次课不写也不改代码。
- 이 조건표를 대화 맨 앞에 붙이고, 그다음에 내 PRD를 붙인다.把这份条件表放在对话最前面,随后附上我的 PRD。
- AI가 코드부터 내놓으면 이 자료를 다시 읽게 한다.AI 若上来就给代码,就让它重读这份资料。
- 제외 기능은 대부분 돈·개인 계정·남의 정보에 대한 책임이 따르는 것들이다.被排除的功能,大多牵涉钱、个人账号、对他人信息的责任。
- 어려운 기능은 몰래 바꾸지 말고 대안을 제안하게 한다.难以实现的功能,不许偷偷替换,要让它提出替代方案。
- AI 기능을 규칙으로 바꿨다면
수업용 프로토타입이라고 표시한다.把 AI 功能换成规则时,要标记为수업용 프로토타입。 - 판정이 끝나도 9회에는 코드를 만들지 않는다.判定完成后,第 9 次课也不写代码。