Сквозной практический кейс и чек-лист готовности ТЗ
Практический сквозной кейс: Проектирование сервиса «Простой Трекер Привычек»
Пройдем весь путь от идеи до декомпозиции на конкретном примере.
1. Исходная идея:
«Хочу приложение, чтобы отмечать, выполнил ли я привычку сегодня (например, выпил воду, сделал зарядку)».
2. Оформленный PRD (docs/PRD.md):
# PRD: Простой Трекер Привычек (HabitTracker MVP) ## 1. Цель Веб-приложение для ежедневного отслеживания выполнения 3-5 личных привычек без регистрации. ## 2. Пользовательская роль Единственная роль — Локальный пользователь (данные сохраняются в браузере). ## 3. Границы MVP (MoSCoW) - MUST: Создание привычки, просмотр списка на сегодня, отметка «выполнено» (чекбокс), удаление привычки. - SHOULD: Прогресс-бар выполнения на сегодня (например, «3 из 5 выполнено»). - WON'T: Авторизация, статистика за прошлые месяцы, напоминания на почту, соцсети. ## 4. Модель данных Сущность: Habit (Привычка) - id: уникальный номер - title: название (текст, например: «Зарядка 10 минут») - is_completed_today: флаг выполнения (true/false) - created_at: дата создания ## 5. Экраны и UI-структура Главный экран (Single Page Application): - Заголовок: «Мои Привычки на Сегодня» - Форма добавления: Поле ввода + Кнопка «Добавить» - Прогресс-бар: Индикатор % выполненных дел - Список привычек: Карточка привычки с чекбоксом и кнопкой «Удалить» - Empty State: «У вас пока нет привычек. Добавьте первую выше!» ## 6. Ограничения - Не создавать серверную базу данных, использовать localStorage браузера. - Не использовать сторонние библиотеки стилей, кроме Tailwind CSS.
3. Итоговый план атомарной декомпозиции для ИИ-агента:
- Шаг 1: Создать базовый каркас главной страницы с заголовком и подвалом.
- Шаг 2: Сверстать форму ввода привычки (поле текста + кнопка Добавить).
- Шаг 3: Реализовать отображение пустого состояния (Empty State), если привычек нет.
- Шаг 4: Настроить сохранение новой привычки в локальную память браузера (localStorage).
- Шаг 5: Добавить вывод списка сохраненных привычек в виде карточек.
- Шаг 6: Реализовать переключение чекбокса Выполнено / Не выполнено.
- Шаг 7: Добавить функцию удаления привычки из списка.
- Шаг 8: Сверстать и подключить прогресс-бар (расчет % выполненных задач).