Skip to content

Commit 652836e

Browse files
committed
feat: update stakeholders
1 parent f1c18cf commit 652836e

File tree

1 file changed

+82
-5
lines changed

1 file changed

+82
-5
lines changed

src/chapter-03.tex

Lines changed: 82 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -78,16 +78,93 @@ \section{Разработчики других библиотек в PySATL}
7878
\noindent\rule{\textwidth}{0.5pt}
7979
\section{Руководители проекта PySATL}
8080

81+
Данная категория включает лиц, ответственных за планирование развития проекта в целом, распределение ресурсов и координацию между рабочими группами. Их интересы сфокусированы на стратегических аспектах разработки и эксплуатации ядра, а также на его интеграции в общую экосистему PySATL.
82+
83+
\begin{itemizecmp}
84+
\item Представление о планах разработки ядра и его функциональности на каждом этапе;
85+
\item Гарантии, предоставляемые ядром;
86+
\item Эффективное использование ресурсов и соблюдение сроков;
87+
\item Минимизация рисков, связанных с техническим долгом и зависимостями.
88+
\end{itemizecmp}
89+
90+
\textbf{1. Планы разработки и функциональность} \\
91+
Руководителям проекта необходимо иметь чёткое и актуальное представление о состоянии и roadmap ядра для принятия обоснованных решений. Это включает:
8192
\begin{itemizecmp}
82-
\item Представление о планах разработки ядра и его функциональности на каждом этапе
83-
\item Гарантии предоставляемые ядром
93+
\item Соответствие фактической функциональности ядра заявленным планам и требованиям других подсистем PySATL;
94+
\item Наличие документации, достаточной для оценки готовности компонент к интеграции;
95+
\item Понятный и измеримый прогресс разработки, позволяющий оценивать выполнение этапов.
96+
\end{itemizecmp}
97+
98+
\textbf{2. Гарантии, предоставляемые ядром} \\
99+
Поскольку ядро является фундаментальным компонентом всего проекта, от его качества и стабильности зависит работа всех надстроенных над ним библиотек. Руководители заинтересованы в наличии гарантий, обеспечиваемых за счёт:
100+
\begin{itemizecmp}
101+
\item Всестороннего тестирования, включая модульные, интеграционные и регрессионные тесты;
102+
\item Чёткого определения и поддержания публичных интерфейсов (API), что обеспечивает стабильность для потребителей ядра;
103+
\item Предсказуемой политики управления версиями, минимизирующей обратно несовместимые изменения;
104+
\item Исчерпывающей документации, снижающей риски misinterpretation API и его неправильного использования.
105+
\end{itemizecmp}
106+
107+
\textbf{3. Эффективность использования ресурсов и сроки} \\
108+
Процесс разработки ядра должен быть организован таким образом, чтобы:
109+
\begin{itemizecmp}
110+
\item Архитектурные решения способствовали повторному использованию кода и сокращению избыточности;
111+
\item Существовали механизмы для быстрого прототипирования и валидации новых идей без угрозы нарушения стабильности основной codebase;
112+
\item Соблюдались согласованные сроки поставки критически важной для других подсистем функциональности.
113+
\end{itemizecmp}
114+
115+
\textbf{4. Управление рисками} \\
116+
Ключевым аспектом является проактивное выявление и снижение потенциальных рисков, в частности:
117+
\begin{itemizecmp}
118+
\item Контроль над внешними зависимостями, их лицензионной чистотой и совместимостью;
119+
\item Минимизация накопления технического долга за счёт регулярного рефакторинга и применения современных практик разработки;
120+
\item Наличие плана по обеспечению долгосрочной поддерживаемости и расширяемости кодовой базы.
84121
\end{itemizecmp}
85122

86123
\noindent\rule{\textwidth}{0.5pt}
87124
\section{Инженеры-исследователи}
88-
Программисты, которым нужны только артефакты математической статитистики. Математики, статистики и люди занимающиеся численными методами.
89125

126+
К данной категории относятся специалисты, применяющие ядро PySATL для решения прикладных задач: программисты, математики, статистики и исследователи в области численных методов. Они используют систему как инструмент для реализации и проверки научных гипотез, прототипирования алгоритмов и проведения вычислительных экспериментов.
127+
128+
\begin{itemizecmp}
129+
\item Поддержка сложных операций над распределениями, смесями и иерархическими моделями;
130+
\item Бенчмаркинг новых алгоритмов и сравнение с существующими аналогами;
131+
\item Гибкость и выразительность для описания нестандартных вероятностных моделей;
132+
\item Воспроизводимость и контролируемость вычислительных экспериментов.
133+
\end{itemizecmp}
134+
135+
\textbf{1. Поддержка сложных операций и моделей} \\
136+
Инженеры-исследователи работают с комплексными вероятностными структурами, выходящими за рамки стандартных распределений. Их интерес заключается в возможности:
137+
\begin{itemizecmp}
138+
\item Конструировать составные распределения (смеси, свёртки, произведения);
139+
\item Определять иерархические (многоуровневые) вероятностные модели;
140+
\item Применять нелинейные функциональные преобразования к распределениям;
141+
\item Работать с усечёнными, цензурированными или модифицированными распределениями.
142+
\end{itemizecmp}
143+
144+
\textbf{2. Бенчмаркинг и валидация алгоритмов} \\
145+
Для данной аудитории критически важна возможность оценивать эффективность и корректность реализуемых методов:
146+
\begin{itemizecmp}
147+
\item Наличие встроенных средств для замеров производительности (профилирования) отдельных операций;
148+
\item Возможность сравнивать численные результаты, полученные с помощью ядра, с эталонными реализациями или аналитическими выкладками;
149+
\item Доступ к низкоуровневым параметрам численных методов (таким как точность, допуски, критерии остановки) для тонкой настройки и исследования сходимости алгоритмов.
150+
\end{itemizecmp}
151+
152+
\begin{example}
153+
Исследователь, разрабатывающий новый метод оценки параметров, должен иметь возможность сгенерировать набор синтетических данных из известного распределения, применить свой метод, сравнить полученные оценки с истинными значениями параметров и измерить время выполнения алгоритма, обеспечивая при этом полную воспроизводимость эксперимента.
154+
\end{example}
155+
156+
\textbf{3. Гибкость и выразительность} \\
157+
Система должна предоставлять достаточный уровень абстракции для лаконичного и интуитивно понятного выражения математических концепций:
158+
\begin{itemizecmp}
159+
\item Декларативный способ задания моделей, приближенный к математической нотации;
160+
\item Возможность легко комбинировать примитивы ядра для создания специализированных конструкций без необходимости написания большого объема boilerplate-кода;
161+
\item Доступ к символьным представлениям преобразований для анализа и оптимизации выражений до их численного вычисления.
162+
\end{itemizecmp}
163+
164+
\textbf{4. Воспроизводимость и контролируемость} \\
165+
Так как работа инженера-исследователя носит экспериментальный характер, ядро должно предоставлять инструменты для обеспечения строгости научного процесса:
90166
\begin{itemizecmp}
91-
\item Поддержка сложных операций над распределениями, смесями и т.п.
92-
\item Бенчмаркинг новых алгоритмов
167+
\item Детерминированная работа генератора псевдослучайных чисел с возможностью сохранения и восстановления состояния (seed);
168+
\item Логирование ключевых этапов вычислений и принятых решений (например, в алгоритмах оптимизации);
169+
\item Чёткое разделение между абстрактной спецификацией модели и конкретным численным методом её вычисления.
93170
\end{itemizecmp}

0 commit comments

Comments
 (0)