vit_r: default (Default)
[personal profile] vit_r


Сходил на Agile Q&A with Stories посмотреть на Alistair Cockburn. (Выше набросок из блокнота. На размер побольше места не хватило.)

Представляю какой контингент был бы в Берлине... В Цюрихе же народу немного и большинство старше стартапно-романтического возраста. Был, даже, вопрос про карго-культ. (Конечно, возражал.)

Из интересного стоит отметить только заявление о том, что по eXtreme Programming надо читать вторую книгу. "Она прекрасна." Первую читать не надо, потому что автор сам признался, что в ней был не прав. (Ну надо же! Даже до него дошло.)

Ещё пророк agile поделился тайной, "о которой не рассказано, даже, в блоге": agile is applicable only in environments where wrong decisions are easy (and cheap) to reverse.

Угу. Я знаю, где такие условия: в сказочной стране клубничного смузи и розовых пони. В реальных проектах agile будет работать до тех пор, пока до народа не допрёт, что что-то пошло не так. (В чём, естественно, виноваты глупые практики, не правильно применившие великие идеи.)

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

Date: 2017-06-08 09:09 pm (UTC)
From: [personal profile] cross_join
Первую книгу не читал, но вторую не буду.

Date: 2017-06-08 09:35 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Чтобы от неправильных решений все не погибало, достаточно (и необходимо) хорошего тестирования.

Date: 2017-06-08 10:54 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Архитектура исправляется тем самым (правильно примененным) аджайлом - через ряд небольших изменений.

Date: 2017-06-09 01:37 am (UTC)
sab123: (Default)
From: [personal profile] sab123
А так и получают - поменяли одну деталь, другую деталь, и так далее, потом глядишь - уже Мерседес.

Date: 2017-06-12 05:41 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
За формальный agile я не в ответе :-) А по уму - намечается цель, пишется примерный список изменений, и эти изменения начинают по-одному прикладываться. Если по пути обнаруживаются новые проблемы, то список соответственно подправляется. За скажем полгода-год вполне можно наисправлять что угодно.

Прелесть этого подхода в том, что все это время проект остается в работоспособном состоянии (каждое изменение делается так, чтобы ничего не сломать), и в нем можно наблюдать прогресс, а также опробовать результаты этого прогресса, находить в нем непредсказанные косяки дизайна и планирования, и исправлять на раннем этапе. А не так что пять лет работали-работали, но в итоге ничего работоспособного не наработали.

Date: 2017-06-12 05:59 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
> Обычно клиенту не нужна наполовину летающая ракета. С бизнес приложениями тоже.

Вовсе не, причем по многм пунктам.

Программа - это не ракета. Программа - это _чертеж_ ракеты. Ракета - это то, что программа делает.

Так чтобы нарисовали ракету, построили, и сразу полетели на Луну, бывает только в романах Жюль Верна. В реальности разработка проходит много промежуточных этапов. В которых есть и тестовые ракеты, и ракеты для решения каких-то промежуточных полезных задач. Когда кто-то решает уподобиться романам, ракета взрывается (между прочим, реальный случай с попыткой первого американского спутника, после каковых обосратушек все же позвали фон Брауна, и он поэтапно добрался до Луны). Аналогичная история была с первыми самолетами, где профессор Лэнгли Научно Рассчитал и построил самолет, который сразу сломался в куски и на этом все у него кончилось, а братья Райт шли маленькими шагами и у них все получилось.

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

Date: 2017-06-12 09:22 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
В механике тоже делают кучу прототипов, часто с настраиваемыми параметрами. Не надо смешивать этап разработки и этап массового производства. Гм, а какая механика в бизнес-приложениях?

> И при чём тут agile?

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

Date: 2017-06-13 06:38 am (UTC)
sab123: (Default)
From: [personal profile] sab123
Так программа - не дом, а _чертеж_ дома. Так что можно.

Date: 2017-06-13 07:21 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Еще как приводит, когда дом падает.

Date: 2017-06-13 07:26 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Дом по проекту строят, и он падает. Программа может привести к убыткам тоже только своей работой. Пока она тихо лежит на диске - никаких убытков.

Date: 2017-06-12 06:08 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Вдогонку, правильное применение agile не означает отсутствия долговременных планов. Надо иметь планы на хотя бы примерно год вперед. Но планы эти будут разной степени детальности, ближние - детальные, дальние - расплывчатые. Планы эти будут конкретизироваться по мере движения времени, и изменяться согласно накопленному опыту.

Date: 2017-06-12 09:24 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Да, нынешнее религиозное agile - какая-то жуткая самодрочка. Но подходить к ее критике надо именно с позиций того, что она не способствует адаптивности, а не критиковать адаптивность.
Edited Date: 2017-06-12 09:24 pm (UTC)

Date: 2017-06-20 01:51 pm (UTC)
nnimble: (Default)
From: [personal profile] nnimble
Только при этом промежуточные варианты должны вполне работать, иначе не аджайл.

Date: 2017-06-09 10:25 am (UTC)
From: [personal profile] cross_join
О тестировании какого уровня идет речь? Рефакторинг функциональных требований у вас тоже регулярно проводится или ограничиваетесь кодом?

Date: 2017-06-12 05:47 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Рефакторинг - это в нынешней реальности плохое, гадкое слово. По крайней мере, в репертуаре современного аджайла под ним понимаются всякие гнусные гадости, от которых всем проблемы. Но будучи сделан правильно, он бесусловно полезен, в правильном виде определение рефакторинга будет: инфраструктура поддерживает все старые использования плюс воздает возможность добавления новых, которые раньше были невозможны.

Смысл правильного (а не того, который из мерзких книжек) аджайла - в том, что фукнциональные требования регулярно пересматриваются на основе накопленного опыта. И вот эти изменения функциональных требований движут изменения в коде.

Date: 2017-06-13 08:41 am (UTC)
From: [personal profile] cross_join
Рефакторинг = реструктуризация + факторизация, раньше использовались эти термины.
Функциональные требования также имеют иерархию уровней: от общесистемных до пользовательских. Функциональная архитектура, формирующаяся "эволюционным путем" - это нонсенс, означающий у подрядчика отсутствие знаний предметных областей.
Edited Date: 2017-06-13 08:42 am (UTC)

Date: 2017-06-13 07:22 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Наоборот, нонсенс - это функциональная архитектура, формирующаяся через intelligent design. Сформулировать-то так можно, только работать оно не будет.

Date: 2017-06-13 08:03 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Это возможно только когда новый проект - почти что повторение предшествующего. Или когда предметная область примитивна.

Date: 2017-06-13 09:20 pm (UTC)
From: [personal profile] cross_join
Ничего, подучите матчасть по предметным областям или наймете функциональных специалистов-аналитиков (ранее известных, как постановщиков задач) - заработает.

Date: 2017-06-13 09:27 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Ха-ха. Видели мы этих постановщиков.

Date: 2017-06-14 10:31 am (UTC)
From: [personal profile] cross_join
Тоже верно. Какие программисты, такие у них и постановщики. Квалифицированный аналитик вряд ли пойдет оформлять разрозненные требования пользователей без возможности анализа и проектирования системы в целом. В итоге, все остаются при своих. Обратная связь, точнее, отрицательный отбор, работает :)
Edited Date: 2017-06-14 10:31 am (UTC)

Date: 2017-06-09 02:43 pm (UTC)
rasta: (Default)
From: [personal profile] rasta
Реклама соцсетей на ТВ - в кадре радостные лица, затем показывают небольшой квадрат с толстыми тюремными решётками.

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

Ответ в том, что мозго@бы.

В общем очередной мурзилка под ником vit-r улетел в нирвану.


Edited Date: 2017-06-09 02:46 pm (UTC)

Date: 2017-06-12 05:48 pm (UTC)
sab123: (Default)
From: [personal profile] sab123
Нет, из других бесед - не бот. Но безусловно человек со странностями. Ну или исходя из особенностей понимания человеческого языка, возможно человекоподобный робот :-)
Edited Date: 2017-06-12 05:49 pm (UTC)

Date: 2017-06-20 01:48 pm (UTC)
nnimble: (Default)
From: [personal profile] nnimble
"...в сказочной стране клубничного смузи и розовых пони"

Всегда привожу Инстаграм в качестве примера, где можно и нужно применять канбан.

Profile

vit_r: default (Default)
vit_r

January 2026

S M T W T F S
    12 3
456 78910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 8th, 2026 04:53 am
Powered by Dreamwidth Studios