Что должна дать работа над контрактом?
Быстрый тест: Опишите каждую функцию контракта одним предложением, понятным неразработчику. Если не получается — правило еще не ясно.
Разработка смарт-контрактов переводит согласованные правила продукта в код, который можно протестировать и подготовить к релизу на выбранном блокчейне. Полезный результат — не код сам по себе, а реализация, чье ожидаемое поведение, границы и передача понятны продуктовой команде.
Эта услуга подходит, когда вашему проекту нужна кастомная on-chain логика: контракт, связанный с токеном, графики вестинга, стейкинг-флоу или функции контракта, которые будет вызывать dApp. Если контракт — часть более широкого продукта, мы можем согласовать план с Web3-разработкой и разработкой dApp, чтобы интерфейс и контракт совпадали по входам, правам доступа и действиям пользователей.
Перед реализацией подготовьте:
- Описание каждого действия пользователя и ожидаемого результата простым языком.
- Блокчейн, который вы планируете использовать, и существующие зависимости контракта или продукта.
- Правила доступа, сроков, изменений и исключительных случаев.
- Назначенного ответственного, который может решать открытые продуктовые вопросы.
Если вы пока не можете сформулировать правило, отметьте его как нерешенное, а не позволяйте ему стать неявным инженерным решением. Мы превращаем открытые вопросы в список для проверки, а затем подтверждаем план контракта с вами до начала разработки.
Как требования становятся протестированным поведением?
Мы сопоставляем каждое требование с наблюдаемым поведением контракта и тестом, прежде чем считать его готовым к релизу. Это дает проектной команде практический способ проверить, соответствует ли реализация задуманным правилам, а не полагаться на общее описание вроде «поддержка стейкинга».
Рабочая последовательность проста: уточните роли пользователей и разрешенные действия, определите ожидаемые изменения состояния, выявите недопустимые или неполные входные данные, затем реализуйте и протестируйте согласованные сценарии. Для каждой функции критерии приемки должны отвечать на вопросы: что делает валидный вызов, кто может его совершить и что должно произойти, если условие не выполнено. Мы проверяем эти критерии с вашим ответственным за продукт, прежде чем они станут основой для разработки.
Полезно различать поведение контракта и пользовательский опыт. Контракт обрабатывает правила, закрепленные за ним; связанное приложение может дополнительно объяснять состояния, отображать данные или проводить пользователя через транзакцию. Если в плане есть и то и другое, мы координируем эту границу с разработкой dApp. Для токена, который требует создания и развертывания, а также кастомной логики, согласуйте требования к контракту с созданием и развертыванием токена.
Вы получаете проверяемую запись согласованных поведений и соответствующих тестов. Это упрощает оценку будущих изменений продукта: команда может определить, какие существующие правила затронуты, до утверждения обновления.
Ваш чек-лист из 7 пунктов для спецификации контракта
Запишите эти 7 пунктов до написания кода. Они станут критериями приемки, по которым проверяется каждый тест. Храните отмеченный список вместе с документацией — это самый быстрый способ объяснить позже, о чем договорились.
- Перечислите каждый контракт и его единственную задачу.
- Укажите, кто может вызывать каждую функцию.
- Определите графики вестинга и стейкинга с точными числами.
- Решите, может ли контракт быть обновлен, и кем.
- Перечислите случаи сбоев и ожидаемый результат для каждого.
- Выберите сеть и стандарт токена.
- Запланируйте независимую проверку до релиза.
Термины в одной строке
Вестинг: постепенное высвобождение токенов держателям по фиксированному графику.
Обновляемый контракт (простыми словами: контракт, логику которого можно заменить после развертывания).
Спецификация правил вестинга и стейкинга
Контракты вестинга и стейкинга требуют явных правил для права участия, сроков, действий пользователей и результатов, которые отображает продукт. Назвать функцию недостаточно; план контракта должен описывать случаи, которые реализация должна поддерживать, и случаи, которые она должна отклонять.
Для вестинга решите, кто получает аллокацию, какое событие запускает график, как рассчитываются выплаты и допустимы ли изменения после установки графика. Подтвердите, как продукт должен обрабатывать проверку аллокации пользователем или запрос доступной выплаты. Для стейкинга определите действия участника, условия входа и выхода, а также то, как контракт представляет соответствующие балансы или состояния. Это требования, которые нужно подтвердить с вашей командой, а не настройки по умолчанию, которые мы молча выбираем.
Используйте этот чек-лист для подготовки:
- Определите роли, которые могут создавать, администрировать или использовать каждую функцию контракта.
- Запишите правила сроков и что считается допустимым действием.
- Решите, как обрабатывать и сообщать об исключительных случаях.
- Отделите подтвержденные правила продукта от политических или токен-решений, которые еще обсуждаются.
Если эмиссия или распределение токенов являются частью того же релиза, согласуйте план с созданием и развертыванием токена. Если пользователи будут взаимодействовать через специальный кошелек, обсудите связь с разработкой крипто-кошелька на раннем этапе, чтобы требования к контракту и интерфейсу рассматривались вместе.
Что входит в работу?
Правило большого пальца: Тесты показывают, о чем вы подумали. Независимая проверка показывает, о чем вы не подумали.
Работа охватывает согласованный план контракта и материалы, которые нужны вашей команде для проверки, тестирования и подготовки к релизу. Мы подтверждаем, что вы получите, на старте, чтобы было общее определение завершенности, включая любые работы, зависящие от вашей команды или внешнего аудитора.
В зависимости от утвержденного плана вы можете получить:
- Письменное резюме требований к контракту и критериев приемки.
- Кастомную реализацию контракта для выбранного блокчейна и согласованных функций.
- Тесты, покрывающие поведения и крайние случаи, определенные при планировании.
- Сборочные и релизные заметки, объясняющие, что готово к проверке и что остается открытым.
- Координацию независимого аудита, включая упаковку согласованных материалов и организацию ответов на замечания.
Координация аудита означает помощь команде в подготовке четкой передачи на проверку и отслеживание обратной связи в изменениях кода. Это не то же самое, что утверждение, что аудит проведен или что аудитор одобрил код. Если вашему продукту нужен сайт или лендинг для объяснения поведения контракта, технический план можно согласовать с разработкой Web3-сайтов и лендингов.
Хорошая передача позволяет вашей внутренней команде понять, что было создано, что протестировано и какие решения остаются за ними. Мы проверяем полученные материалы с вашим ответственным за проект, фиксируем принятые изменения и делаем статус релиза ясным до того, как работа будет считаться завершенной.
Как планируется и контролируется проект?
Проект движется от требований к реализации через обозначенные точки проверки, сроки устанавливаются из подтвержденного плана. Небольшой четко определенный контракт и многофункциональная система не требуют одинакового плана, поэтому мы сначала устанавливаем, что создается и кто принимает решения.
На старте мы проверяем выбранный блокчейн, зависимости контракта, правила продукта, существующий код и людей, ответственных за утверждения. Во время разработки мы делимся прогрессом по согласованным требованиям и поднимаем вопросы, которые могут изменить поведение, до того как они станут сюрпризами в последнюю минуту. Вы проверяете реализацию по критериям приемки, а мы фиксируем запрошенные изменения как конкретные пункты для подтверждения.
График также учитывает внешнюю проверку, если она запрошена. Мы координируем, когда материалы готовы, связываем обратную связь аудитора с соответствующим требованием и подтверждаем, какие изменения включены в согласованный план. Ваша команда должна планировать быстрые ответы на продуктовые вопросы и вопросы доступа; нерешенные решения могут задержать реализацию или подготовку к релизу.
Чтобы работу было легко оценивать, запрашивайте обновление прогресса, разделяющее выполненные пункты, открытые решения, статус тестов и следующие действия. MarketingExtra использует прямую проверку инженером и клиентом критериев приемки и тестового покрытия, чтобы люди, утверждающие поведение продукта, видели, что должен установить каждый тест. Итоговый план сдачи работ подтверждается с вами до начала разработки.
Что нужно знать перед релизом кода?
Тщательный процесс разработки улучшает проверяемость, но тестирование и координация аудита не устраняют все риски релиза. Тесты могут проверить только те случаи, которые они покрывают, а независимый аудитор может выявить проблемы или запросить изменения; развертывание должно ждать, пока ваша команда одобрит точный релиз и целевую сеть.
Для ответственной передачи убедитесь, что развернутая версия совпадает с версией, которую проверяла ваша команда, что права на релиз понятны и что у проекта есть ответственный за вопросы после релиза. Храните запись принятых требований, результатов тестов, обратной связи аудитора, где применимо, и финального решения о релизе. Эти материалы помогают вашей команде отличать проверенную работу от решений или операционных обязанностей, которые остаются вне плана разработки.
Если разработка контракта — часть более крупного проекта, согласуйте план релиза с общим планом Web3-разработки, а не рассматривайте контракт как отдельный финиш. Поделитесь с MarketingExtra целевым блокчейном, кратким описанием назначения контракта и любыми существующими спецификациями или кодом. Мы изучим материалы, выявим нерешенные продуктовые вопросы и вернем письменный план работ.
Отправьте 3 вещи: правила вашего продукта, целевую сеть и сроки проверки.
Как мы работаем
- Поделитесь правилами продуктаОтправьте ожидаемое поведение контракта, целевой блокчейн, существующий код или спецификации и известные зависимости. Четко отметьте нерешенные решения.
- Подтвердите план и критерии приемкиМы проверяем роли, действия, исключительные случаи и то, что вы получите, с вашим ответственным. Согласованные критерии определяют, что покроют разработка и тестирование.
- Создайте и протестируйте согласованное поведениеИнженер реализует запланированный контракт и проверяет его по принятым тестовым сценариям. Вопросы, влияющие на поведение, возвращаются на ваше решение.
- Координируйте независимую проверкуЕсли координация аудита включена, мы готовим согласованные материалы, организуем обратную связь и отслеживаем запрошенные изменения с вашей командой.
- Проверьте передачу релизаВы проверяете итоговые материалы, записи тестов и открытые пункты перед утверждением плана релиза для выбранной сети.
Частые вопросы
Какие детали нужны для старта?
Начните с назначения контракта, целевого блокчейна, ролей пользователей и описания каждого ожидаемого действия. Включите существующие спецификации, код или зависимости продукта, если они есть. Мы вместе выявим недостающие решения и подтвердим критерии приемки до реализации.
Можете ли вы написать кастомный контракт вестинга или стейкинга?
Да. Мы можем спланировать кастомное поведение вестинга или стейкинга на основе правил вашего продукта, включая роли, сроки, разрешенные действия и исключительные случаи. Команда должна подтвердить эти правила до их реализации; мы не предполагаем стандартных условий для вашего проекта.
Входит ли аудит в услугу?
Услуга может включать координацию с независимым аудитором, например подготовку согласованных материалов для проверки и организацию обратной связи в изменения кода. Координация аудита — это не то же самое, что проведение независимого аудита или выдача одобрения аудитора. Мы уточняем точный план проверки до начала работ.
Сколько недель занимает работа над контрактом?
Сроки подтверждаются после изучения целевого блокчейна, поведения контракта, зависимостей и любой запрошенной координации аудита. План также отражает, насколько быстро ваша команда может решать продуктовые вопросы и проверять материалы. Мы предоставляем плановый график после того, как эти вводные ясны.
Может ли контракт измениться после релиза?
Изменения можно оценить по согласованным требованиям и плану релиза. Сначала определите, какое поведение должно измениться, почему и затрагивает ли запрошенная работа связанные компоненты продукта. Мы проверяем влияние с вами и подтверждаем дополнительный план перед продолжением.
Означают ли пройденные тесты, что контракт не имеет рисков?
Нет. Тесты показывают, как реализация вела себя в покрытых случаях, а не то, что все возможные проблемы исключены. Независимый аудитор все еще может найти проблемы или запросить изменения, поэтому ваша команда должна проверить финальный код и утвердить решение о релизе для выбранной сети.
Расскажите о проекте
Ответьте на четыре коротких вопроса — менеджер в течение часа пришлёт план, сроки и вилку бюджета. Всё строго конфиденциально.
Загружаем форму…