Программирование — это вечное детство

1

Разработка любой программной системы по сути представляет собой непрерывное моделирование.

В самом начале, описывая идею будущего продукта, мы создаём его самую общую, концептуальную модель. После чего начинаем её развивать и детализировать, придумывая новые, всё более детальные и полные модели.

Представляем себе пользователей программы, их потребности и поведение. То есть моделируем их. Составляем перечень фич — функциональную модель. Разрабатываем макеты интерфейса. Описываем это всё в виде технического задания — более или менее стройной текстовой модели.

Потом начинаем разрабатывать архитектуру. Модель компонентов. Модель данных. Модель классов. Всё это изображаем в виде разнообразных диаграмм — визуальных моделей.

Приступаем к программированию. То есть создаём модель продукта, описывая его поведение на специальных языках.

Почему я называю всё это моделями? Потому что самого продукта ещё нет. Есть только отражения будущего продукта — всё более и более детальные представления о нём.

Наконец, у нас появляются первые прототипы, которые уже можно запускать. Каждый такой прототип — это всё ещё модель!

И даже когда у нас, наконец, появляется первая версия продукта, моделирование не останавливается. Мы начинаем его тестировать. То есть снова моделируем поведение его пользователей.

В общем, вы поняли. Однажды втянувшись в разработку ПО, мы обречены всю оставшуюся жизнь заниматься моделированием.

Но давайте подумаем, кто ещё имеет дело только с моделями? Думать долго не придётся. Это дети!

Дети всё своё время посвящают моделированию будущего взрослого мира. В детских играх отрабатываются модели поведения и взаимодействия с окружающим миром и другими людьми. Каждая игрушка — это модель. Кукла — модель ребёнка. Игрушечная машинка — модель настоящей. Простая палка может быть моделью сабли, лопаты, удочки — чего угодно, лишь бы хватило воображения.

Но значит, разрабатывая ПО, мы продлеваем себе детство! Закончив работу над одним продуктом, тут же принимаемся за другой. Находя для себя всё новые и новые игры.

Не потому ли офисы компаний, создающих самые лучшие продукты, так напоминают детские сады?

2

Добавить комментарий