На рубеже тысячелетий концентрация событий, раз и навсегда изменивших существующее мироустройство, превысила все мыслимые ожидания. Почти за десять лет до этого рубежа появился Интернет, перевернувший мир информации и коммуникаций, а через десять лет после этого рубежа разработки в области blockchain начали демонстрировать те фантастические перспективы их применения, которые сегодня являются для нас очевидными.

В этой статье мы сфокусируемся на двух других достижениях, менее исторически значимых, но тоже по-своему революционных: методология Agile и смарт-контракты. Как одно может соотноситься с другим? Обо всём по порядку.

Немного истории

В феврале 2001 года на лыжном курорте The Lodge at Snowbird в горах Юты прошла встреча 17 независимых практиков нескольких методик программирования, именующих себя “Agile Alliance”. На этой встрече был принят так называемый Agile Manifesto, идеологический документ, содержащий описание ценностей и принципов новой методики разработки программного обеспечения. Основные идеи этого манифеста сформулированы в четырёх коротких тезисах:
люди и взаимодействие важнее процессов и инструментов;
работающий продукт важнее исчерпывающей документации;
сотрудничество с заказчиком важнее согласования условий контракта;
готовность к изменениям важнее следования первоначальному плану.
Так появилось то, что сейчас принято называть методологией Agile, один из наиболее популярных и эффективных подходов в разработке программного обеспечения.

(ключевые идеи Agile Manifesto)

Пятью годами ранее специалист в области информатики, криптографии и права Ник Сабо предложил концепцию смарт-контрактов — компьютерных алгоритмов, предназначенных для заключения и поддержания коммерческих контрактов в blockchain. Почти через 18 лет после возникновения этой концепции появилась практическая возможность создания таких алгоритмов. Первые смарт-контракты были разработаны в 2014 году, а сейчас используются повсеместно в индустрии blockchain и криптовалют. Сам Ник Сабо прокомментировал это событие так: “Технология Blockchain появилась очень вовремя, став идеальной экосистемой для развития смарт-контрактов, которые уже сейчас становятся самым обычным явлением в бизнес-транзакциях и за его пределами. Мне приятно принадлежать к сообществу, причастному к развитию технологий с открытым исходным кодом, которые обеспечивают безопасность и конфиденциальность всех операций, и работать на достижение всеобщего блага”. Подробнее о том что такое смарт-контракты и как они работают, можно почитать здесь.

Несмотря на то, что смарт-контракты на протяжении вот уже нескольких лет являются важнейшей частью блокчейн-экосистемы и непрерывно эволюционируют технологически, охватывая всё больше областей применения, они всё ещё обладают рядом значительных недостатков.

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

Самое время ответить на вопрос “причём здесь методология Agile?”.

Agile Smart Contract

Мы в компании UMKA разработали собственное решение вышеописанной проблемы и назвали его Agile Smart Contract (AgileSC). UMKA — децентрализованная биржа труда, платформа для реализации проектов и создания рабочих команд, основанная на технологии блокчейн. Когда мы работали над концепцией продукта и продумывали детали взаимодействия между заказчиком и специалистом-фрилансером, которые заключают безопасные сделки через смарт-контракты, стало понятно, что в данном случае классические решения можно охарактеризовать ёмким английским словом inflexible. На линии, соединяющей точки “подписание контракта” и “закрытие сделки”, находится такое огромное количество подводных камней, что проще объединить их по трём основным признакам:
человеческий фактор: отсутствие гарантий своевременной оплаты и надлежащего исполнения, ошибки в процессе работы, разрешение споров.
особенности оказания услуг в сфере IT: практически все задачи в сфере создания IT-продуктов подразумевают сложности в оценке временных и финансовых ресурсов для выполнения этих задач, что часто влечёт за собой трудноразрешимые споры.
особенности онлайн-сделок в целом и фриланс-платформ в частности: аккумуляция и управление финансами и информацией одним субъектом, невозможность поэтапного исполнения и контроля.
Именно эти проблемы заставили нас задуматься о собственном решении.

Система Agile Smart Contract (AgileSC) — это смарт-контракт нового поколения, который позволяет разделять сделку на любое количество итераций и настраивать их по трем параметрам:

  • Work — что должно быть сделано
  • Time — к какому сроку
  • Budget — за какую сумму вознаграждения

Agile Smart Contract обеспечивает возможность вносить изменения в каждый из трех параметров по согласованию обеих сторон. Например, если Специалист просит изменить параметр Time (передвинуть сроки) и Заказчик подтверждает это действие, то изменения вносятся в блокчейн и подлежат исполнению по достижению нового срока.

AgileSC остается гарантом безопасной сделки потому, что стороннее лицо не может вносить изменения в исполняемый контракт. Вся история изменения контракта хранится в блокчейне и доступна всем пользователям.

Система позволяет отслеживать выполнение работы поэтапно, упрощает контроль сроков исполнения заказа, помогает урегулировать конфликтные ситуации без участия третьей стороны и автоматически перечисляет вознаграждение Специалисту, когда результат работы устраивает Заказчика.

Для каждого вида работ и услуг, которые могут выполнять Специалисты UMKA, разрабатываются Agile Smart Contracts с рекомендованными итерациями и майлстоунами — узловыми точками, соединяющими циклы разработки. Это значительно облегчает работу пользователя с системой: для согласования такого контракта, чаще всего, достаточно просто ввести бюджет. В работе над шаблонами учитывается мнение экспертов — наиболее опытных специалистов из разных областей, имеющих четкое представление о том, как должна быть организована работа с удаленными сотрудниками.

Разумеется, сам по себе AgileSC не исключает возникновение конфликтных ситуаций, но мы предусмотрели это и тщательно продумали механизмы их решения. Подробнее о них вы можете прочесть в нашем White Paper (ссылка).

Заключение

Agile-методики легко распознаются по элементарным и, казалось бы, очевидным принципам:
Риски нужно минимизировать.
Разработка продукта должна вестись короткими циклами.
Люди и коммуникация — самое важное в любой работе.
В основе идеи смарт-контрактов лежат принципы безопасности и прозрачности. Что мы получаем на выходе, когда применяем первое ко второму?
Синтез методологии Agile и технологии смарт-контрактов, комбинация идеологии гибкой разработки и философии децентрализации, это именно тот случай, когда мы можем наблюдать синергетический эффект: лучшие стороны первого и второго не просто суммируются, а формируют нечто третье, обладающее совершенно новыми и более впечатляющими особенностями. Мы надеемся, что AgileSC позволит заложить основы для создания новой формации деловых отношений в цифровом мире, а также стимулировать движение рынка в сторону прозрачности, безопасности, эффективности и удобства.