Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.playwright-mcp/
1 change: 1 addition & 0 deletions .gitkeep
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# .gitkeep file auto-generated at 2026-05-19T19:55:41.811Z for PR creation at branch issue-1-f874e4635d72 for issue https://github.com/ideav/sci/issues/1
32 changes: 31 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,31 @@
# sci
# sci

Материалы и план подготовки научной публикации по модели **IDEAV** и
конструктору **Интеграм** (Integram) — варианту обобщённой Entity–Attribute–Value
(EAV) модели с устранением классических проблем масштабируемости (партиционирование
по диапазонам идентификаторов, индексация, кортежи фиксированной арности).

Цель — опубликоваться в **Journal of Systems and Software** (Elsevier, Scopus Q1)
или в одном из альтернативных Q1‑изданий из списка целевых журналов.

## Содержание

| Документ | Назначение |
|----------|------------|
| [`docs/PLAN.md`](docs/PLAN.md) | Поэтапный план работы до подачи рукописи |
| [`docs/PRIOR-ART.md`](docs/PRIOR-ART.md) | Обзор предшественников и сравнение с IDEAV/Интеграмом |
| [`docs/TARGET-VENUES.md`](docs/TARGET-VENUES.md) | Целевые журналы и конференции с критериями |
| [`docs/PAPER-OUTLINE.md`](docs/PAPER-OUTLINE.md) | Скелет рукописи под требования JSS |
| [`docs/CHECKLIST.md`](docs/CHECKLIST.md) | Чек‑лист готовности к подаче |

## Источники, послужившие отправной точкой

* Habr, «Предельная унификация», <https://habr.com/ru/articles/982120/>
* Habr, «Измерения предела возможностей», <https://habr.com/ru/articles/900308/>
* Red‑Gate Simple‑Talk, *Bad CaRMa*, <https://www.red-gate.com/simple-talk/opinion/opinion-pieces/bad-carma/>
* Три обсуждения в DeepSeek Chat — ссылки приведены в исходном issue
(см. ideav/sci#1). На момент подготовки документа shared‑страницы DeepSeek
возвращают HTTP 403 для внешних читателей, поэтому их выводы пересказываются
по контексту, известному автору, и помечаются как `(внутренний источник)`.

Полный текст задачи: ideav/sci#1.
82 changes: 82 additions & 0 deletions docs/CHECKLIST.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# Чек‑лист готовности к подаче

Отметки в Markdown: `[ ]` — не сделано, `[x]` — сделано. Этот документ —
живой; обновляйте его в каждом PR.

## Этап 0. Тезис

- [ ] Зафиксировано каноническое определение IDEAV (расшифровка аббревиатуры).
- [ ] Зафиксирована арность кортежа (квартет / иной).
- [ ] Записан elevator pitch в `docs/THESIS.md`.
- [ ] Перечислены 2–3 проверяемых гипотезы.

## Этап 1. Обзор предшественников

- [ ] PRISMA‑lite поиск проведён в IEEE/ACM/Scopus.
- [ ] Каждая запись в `PRIOR-ART.md` имеет BibTeX.
- [ ] Описаны все open‑source конкуренты (NocoDB, Baserow, Directus, Strapi…).
- [ ] Покрыты известные провалы (CaRMa, Magento bloat, и др.).

## Этап 2. Формальная модель

- [ ] DDL эталонной схемы в `experiments/schema/`.
- [ ] Псевдокод CRUD‑операций в `experiments/algorithms/`.
- [ ] Опционально: TLA+/Alloy спецификация.
- [ ] Описано отображение IDEAV → реляционная алгебра.

## Этап 3. Эталонная реализация

- [ ] `docker compose up` поднимает стек на чистой VM.
- [ ] Smoke‑тесты проходят в CI.
- [ ] Зафиксированы версии PostgreSQL и расширений.
- [ ] Дамп тестовой БД доступен по URL/DOI.

## Этап 4. Дизайн экспериментов

- [ ] Документ `experiments/DESIGN.md` готов и заморожен.
- [ ] Подтверждено железо (CPU, RAM, диск, сеть) и его доступность.
- [ ] Baselines настроены и валидированы.
- [ ] Статплан включает sample size, повторы, эффект‑сайз, p‑value.

## Этап 5. Прогоны

- [ ] Манифест каждого прогона коммитится в `experiments/results/`.
- [ ] Минимум 3 повтора на условие.
- [ ] Сырые логи зачищены от PII.
- [ ] Воспроизводимость подтверждена контрольным прогоном.

## Этап 6. Анализ

- [ ] Ноутбуки в `analysis/` запускаются с одной командой.
- [ ] Все рисунки в `figures/` отсылают к источнику данных.
- [ ] Описаны статистические тесты и ДИ.

## Этап 7. Драфт

- [ ] Соответствие шаблону `elsarticle` (single‑column).
- [ ] Abstract ≤ 250 слов.
- [ ] 3–5 Highlights.
- [ ] CRediT для всех авторов.
- [ ] Data Availability Statement готов.
- [ ] Объём ≤ 36 страниц single‑column.

## Этап 8. Внутренняя ревизия + pre‑print

- [ ] Ревью от минимум двух внешних читателей.
- [ ] Все блокирующие замечания закрыты.
- [ ] Pre‑print на SSRN, DOI получен.

## Этап 9. Сабмишн

- [ ] Cover letter подготовлен.
- [ ] Декларация GenAI / конфликта интересов / финансирования.
- [ ] Архив с supplementary materials готов.
- [ ] Editorial Manager submission подтверждён.
- [ ] Тег релиза в репозитории + Zenodo DOI.
- [ ] План B по альтернативным журналам (см. `TARGET-VENUES.md`).

## После подачи

- [ ] `docs/REVIEW-LOG.md` создан и поддерживается.
- [ ] Список вопросов от ревьюеров и план ответов.
- [ ] Сроки ревизий контролируются.
92 changes: 92 additions & 0 deletions docs/PAPER-OUTLINE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# Скелет рукописи под JSS

Шаблон рукописи, согласованный с требованиями
*Journal of Systems and Software* (Elsevier, `elsarticle` LaTeX, single‑column,
≤ 36 страниц). Заполняется на этапе 7 плана.

---

## Title (рабочее)

> *IDEAV: A Scalable Quadruple‑Tuple EAV Model and Its Reference Implementation
> in the Integram Low‑Code Platform*

Альтернативы для bake‑off:

* «Beyond EAV: Scaling Metadata‑Driven Applications via Partitioned
Quadruples».
* «From Bad CaRMa to Good IDEAV: Re‑examining the Entity–Attribute–Value
Model at Scale».

## Abstract (≤ 250 слов)

Шаблон секций:

1. **Context** — какие реальные задачи решают EAV‑подобные платформы и почему
они известны как анти‑паттерн.
2. **Objective** — формализовать IDEAV как четырёхкортежный вариант EAV с
диапазонным партиционированием и показать, что он устраняет основные
причины деградации.
3. **Method** — эмпирическое сравнение на нагрузке 10⁹–10¹⁰ записей против
четырёх baselines (3НФ, JSONB, MongoDB, ClickHouse).
4. **Results** — конкретные количественные показатели (latency p95, throughput,
стоимость эволюции схемы) с ДИ.
5. **Conclusion** — границы применимости и условия, при которых IDEAV
предпочтительнее альтернатив.

## Highlights (3–5 пунктов)

* IDEAV формализован как кортеж арности 4 с диапазонным партиционированием.
* На объёме 31 млрд записей деградация insert ниже 5 % (см. этап 5).
* Ad‑hoc запросы p95 в пределах 2× от 3НФ‑аналога при произвольной схеме.
* Эталонная реализация (Интеграм) опубликована под MIT/Apache 2.
* Условия применимости и анти‑паттерны выписаны явно (когда IDEAV не нужен).

## Структура секций

| № | Секция | Содержание |
|---|--------|------------|
| 1 | Introduction | Мотивирующий пример, исследовательские вопросы (RQ1–RQ3), вклад. |
| 2 | Background and Related Work | EAV в EHR, провалы (CaRMa, Magento bloat), low‑code платформы — см. `PRIOR-ART.md`. |
| 3 | The IDEAV Model | Формальное определение, инварианты, операции, отображение в реляционную алгебру. |
| 4 | Reference Implementation: Integram | Архитектура, схема, индексы, партиционирование, эволюция схемы. |
| 5 | Experimental Design | Гипотезы, переменные, baselines, нагрузка, метрики, статплан. |
| 6 | Results | Графики, таблицы, статтесты, эффект‑сайз. |
| 7 | Discussion | Внутренняя/внешняя валидность, threats to validity, ниши применимости. |
| 8 | Conclusion and Future Work | Что получилось, что осталось, дорожная карта. |
| | Author Contributions | По CRediT. |
| | Data Availability Statement | DOI Zenodo, URL репозитория. |
| | Acknowledgments | Спонсоры, со‑авторы, прокси‑ревьюеры. |
| | References | BibTeX, авто‑форматирование. |

## Исследовательские вопросы (черновик)

* **RQ1.** Можно ли формализовать IDEAV так, чтобы каждая операция CRUD
имела предсказуемую асимптотику по числу хранимых записей?
* **RQ2.** Как IDEAV ведёт себя по latency/throughput/disk на нагрузке
10⁹–10¹⁰ записей по сравнению с 3НФ, JSONB, документной и колоночной СУБД?
* **RQ3.** Какова амортизированная стоимость эволюции схемы (добавление
атрибута / типа / индекса) на работающей системе и в каких случаях она
ниже, чем у классической 3НФ?

## Cover Letter

Подготовить отдельный файл `docs/COVER-LETTER.md` на этапе 9. Краткие
ингредиенты:

* Почему именно JSS (соответствие скоупу «systems & software»).
* Что нового по сравнению с предыдущими работами авторов и других групп.
* Подтверждение, что работа не подавалась параллельно.
* Декларация о GenAI‑инструментах, конфликте интересов, источниках
финансирования.

## Воспроизводимость

Артефакты к моменту подачи:

* Репозиторий GitHub с тегом релиза (`vX.Y.Z`).
* DOI на Zenodo (CI workflow `release-to-zenodo.yml`).
* Скрипты воспроизводства бенчмарков (`reproduce.sh`) с фиксацией версий.
* `DATA_AVAILABILITY.md` — описание датасета (генерация / реальные данные).

В тексте статьи — ссылка на DOI Zenodo, а не на «живой» GitHub.
Loading