Составление технического задания на блокчейн-проект

Проектируем и разрабатываем блокчейн-решения полного цикла: от архитектуры смарт-контрактов до запуска DeFi-протоколов, NFT-маркетплейсов и криптобирж. Аудит безопасности, токеномика, интеграция с существующей инфраструктурой.
Показано 1 из 1 услугВсе 1306 услуг
Составление технического задания на блокчейн-проект
Средняя
~3-5 рабочих дней
Часто задаваемые вопросы
Направления блокчейн-разработки
Этапы блокчейн-разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1221
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1163
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    855
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1056
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    561
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    828

Составление технического задания на блокчейн-проект

Техническое задание для блокчейн-проекта принципиально отличается от ТЗ на обычный веб-сервис: нужно специфицировать смарт-контракты, их взаимодействие, upgrade стратегию, gas оптимизацию, и инфраструктуру. Недостаточно проработанное ТЗ ведёт к кардинальным изменениям уже в процессе разработки — в крипто это особенно дорого из-за аудита.

Структура ТЗ для блокчейн-проекта

1. Обзор системы

  • Цель проекта и ключевые stakeholders
  • Выбранный блокчейн и обоснование
  • Высокоуровневая архитектура (diagram)
  • Интеграции с внешними системами (оракулы, bridge, другие протоколы)

2. Смарт-контракты

Для каждого контракта:

Contract: LiquidityPool
Сеть: Arbitrum One
Стандарты: ERC-20 compatible
Апгрейдаемость: UUPS proxy

Функции:
- deposit(uint256 amount) — депозит токенов, mint LP shares
- withdraw(uint256 shares) — burn LP shares, получить токены + accumulated fees
- swap(address tokenIn, uint256 amountIn, uint256 minAmountOut) — обмен

События (Events):
- Deposit(address indexed user, uint256 amount, uint256 shares)
- Withdraw(address indexed user, uint256 shares, uint256 amount)
- Swap(address indexed user, address tokenIn, uint256 amountIn, uint256 amountOut)

Роли (Access Control):
- DEFAULT_ADMIN_ROLE: Gnosis Safe 3/5
- PAUSE_ROLE: Protocol Defender (multisig или automated)
- FEE_MANAGER_ROLE: DAO timelock

Параметры (configurable):
- swapFee: 0.3% (range: 0.01%-1%)
- protocolFeeShare: 20% от swap fee

3. Токен спецификация (если есть)

Token: PROTO
Standard: ERC-20 + ERC-2612 (Permit)
Supply: 100,000,000 (fixed)
Decimals: 18
Mintable: нет (fixed supply)
Burnable: да (holder может сжечь)
Pausable: да (PAUSE_ROLE)
Distributor: специальный Vesting контракт

4. Off-chain компоненты

  • Indexer (The Graph subgraph) — какие события индексируются, GraphQL схема
  • Backend API (если нужен) — endpoints, authentication
  • Frontend — технический стек, wallet интеграция

5. Инфраструктура

Деплой:
- Foundry Deploy Scripts + Hardhat для верификации
- Multisig owner: Gnosis Safe 3/5
- Timelock: 48 часов для admin функций
- Proxy: UUPS (implementation upgrade через timelock)

Мониторинг:
- OpenZeppelin Defender для alerts
- Tenderly для транзакций simulation
- The Graph для исторических данных

Сети для деплоя:
- Testnet: Arbitrum Sepolia
- Mainnet: Arbitrum One

6. Безопасность

  • Список smart contract паттернов (Reentrancy guard, CEI, etc.)
  • Oracle manipulation protection
  • Flash loan attack vectors
  • Access control схема
  • Upgrade strategy и timelock

7. Тестирование

Unit tests (Foundry):
- Все публичные функции
- Edge cases и boundary conditions
- Revert scenarios

Fuzz tests:
- Инварианты: "totalShares * pricePerShare = totalAssets"
- Random deposit/withdraw sequences

Fork tests:
- Integration с реальными протоколами на fork mainnet

Coverage target: 95%+

8. Аудит план

  • Объём аудита (какие контракты)
  • Timeline (аудит после code freeze, до mainnet)
  • Критерии готовности (все medium+ находки fixed)

Типичные ошибки в ТЗ

Нет спецификации ролей: "только owner может вызвать функцию" — а owner это EOA, multisig или DAO?

Нет upgrade стратегии: разработчики сами решают в процессе — риск несовместимых решений.

Не указан целевой gas budget: контракт написан, потом оказывается что каждый вызов стоит $50 gas.

Не описаны failure scenarios: что происходит если оракул недоступен, если контрагент не имплементирует интерфейс.

Составление ТЗ для блокчейн-проекта: 1-2 недели. Включает архитектурные диаграммы, спецификации контрактов, инфраструктурные требования.