Этапы развития технологии мышления Программирование (конференция Современная подготовка инженеров 2021) — различия между версиями
м |
м |
||
Строка 35: | Строка 35: | ||
{{Presentation|IT-mindset-programming-2021.pdf|290px}} | {{Presentation|IT-mindset-programming-2021.pdf|290px}} | ||
− | [[Категория:Доклады]][[Категория:Управление проектами]] | + | [[Категория:Доклады]][[Категория:Управление проектами]][[Категория:СМД]] |
Текущая версия на 15:40, 28 октября 2024
Вторая конференция «Современная подготовка инженеров» 1-2.11.2021 online Все видеозаписи конференции https://nticenter.spbstu.ru/news/7924 Мой доклад - трек технологии мышления, мой доклад 2:04 - 2:20
Каждая промышленная революция порождает свою технологию мышления. Для происходящей сейчас это «Программирование», выделенное, наряду с другими технологиями мышления Георгием Петровичем Щедровицким. Развитие IT начиналось на основе существующих технологий мышления — Конструирования, Проектирования и Исследования, однако, они не позволили решать задачи отрасли, и начиная с 2001 года в IT-отрасли складывается новая технология мышления. Ретроспективный анализ позволяет
- Восстановить схемы технологии, как она складывается в IT
- Отличия деятельности, которые потребовали новой схемы и показать процесс ее складывания
Результаты анализа представлены в докладе.
Примечание: Программирование как технология мышления и программирование как работа по разработке софта (программных продуктов) — разные предметы, и чтобы не путать я использую слово «программирование» только для технологии мышления, а для второго значения использую «разработка софта».
Вместе с тем, если рассматривать организацию кода в современных системах, то мы имеем дело с множеством независимо действующих сервисов, обменивающихся сообщениями, и реализация такой конструкции становится очень похожа на организацию работы множества людей, тут уместна метафора "маленьких человечков", которые живут в компьютере и делают работу. При этом важно, что каждый из них является активным во взаимодействии с другими. А вот то, что он действует по алгоритму, становится не столь важным, потому что, во-первых, рабочий на конвейере или оператор в call-центре тоже действуют по алгоритму, а, во-вторых, компьютерные человечки могут быть реализованы методами ИИ с самообучением, и тогда они уже работают не по алгоритму. При этом в рамках динамического управления производительностью новые человечки могут добавляться или устраняться из рабочего пространства. Таким образом, программирование как разработка кода сближается с программированием как технологией организации людей. У меня как раз есть серия докладов на эту тему, можно посмотреть презентацию - там много визуальных образов. И это - не метафорические картины, такие схемы реально отражают устройство системы.
Краткое содержание
Основной фокус - не индивидуальная разработка кода, а организация коллективной работы для разработки софта.
На первых этапах развития ИТ эта работа велась методами обычного НИОКР, то есть Исследований и Конструирования, с развитием теоретической науки. Но по мере роста потребности в софте потребовалось научиться не только Конструировать, но и Проектировать, то есть создавать проекты в предсказуемые сроки. Методы - ООП, объектный подход как технология создания кода и PMBOK и RUP для организации процессов. И вот здесь получилась неудача, причины которой объясняются природой ИТ. Это использование незрелых технологий с TRL 4-5, которые не успевают стабилизироваться из-за быстрого развития, нулевая стоимость производства готового изделия, которую делает компилятор, в то время как написание кода - низкоуровневое проектирование, критическое значение человеческого фактора в разработке, при этом прошлый опыт не дает оснований для предсказаний о будущих успехах и так далее.
Возможно, технологии Проектирования были бы доведены, но возник новый фактор: появились персоналки, которые открыли путь к автоматизации мелкого и среднего бизнеса, а это изменило саму задачу разработки: ввиду высокой динамики процесса задача меняется в ходе проекта, у обычных проектов так не происходит. Плюс резко выросла потребность в разработчиках, так как софта потребовалось кратно больше. Как ответ IT-отрасли появился Agile, и в нем весь процесс, включая конструирование изделия и проектирование работ выполняется итеративно, короткими циклами-экспериментами.
А дальше пришла эпоха public web с новым технологиями. Вместо объектов - распределенные структуры и асинхронно работающие агенты, эта часть была за пределами доклада Юры. И в результате внутрь проекта было включено доведение технологий до требуемого уровня зрелости, хотя бы в частном случае, требуемом проекту. И переход к продуктовому мышлению, которое включило тематизацию и целеопределение, структурирующие пространство целей.
Как результат - складывается новая схема деятельности и соответствующая ей технология мышления Программирования. Она - на слайдах презентации. Моя схема несколько отличается от схемы Георгия Петровича Щедровицкого, но я думаю, что это можно рассматривать как уточнение.
Видео
Запись всего трека про технологии мышления. Мой доклад 2:04-2:20
Презентация
Скачать весь pdf