Пользовательские истории (User Stories)

Я буду доволен, если вы вынесете из книги всего две мысли. Вот эти две мысли. 
• Цель работы с историями не написание идеальных историй. 
• Цель разработки продуктов не создание продуктов. 
Сейчас я все объясню

—Джефф Паттон — «Пользовательские истории»

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

Далее

На основании чего вы тестируете свой продукт? Или управление требованиями к ПО 101

По мере того как компания росла, на работу поступало все больше людей, привыкших к традиционному процессу разработки. Однажды ко мне пришла начальница другой команды и сказала: «Джефф, нужно, чтобы вы внесли вот эти изменения в продукт, над которым сейчас работаете». «Нет проблем, – ответил я, – только расскажите мне, для кого мы делаем эти изменения и какие задачи люди будут решать с их помощью». Что я услышал в ответ? «Это нужно для соответствия требованиям». «Я вас понял, – кивнул я. – Мне только нужно знать подробнее, для кого мы внедряем эти штуки, как эти люди будут их использовать, а также какой этап их рабочего процесса изменится». Она посмотрела на меня так, словно я был самым тупым человеком на свете, и повторила с нажимом: «Это. Для. Соответствия. Требованиям». И в этот момент я осознал, что слово «требования» на самом деле означает «заткнись». Вот что означают требования для большинства людей. Они перестают говорить о людях и проблемах, которые надо решить.

—Джефф Паттон — «Пользовательские истории»

Цитата выше очень злободневная, но даже она отражает лишь часть проблемы. Удивительно, но факт — в двух из трёх компаниях, в разработке пяти из шести программных продуктов, с которыми мне довелось иметь дело, про требования вообще не задумывались. Либо применяли что-то похожее на эту концепцию к отдельным, наиболее ярко выраженным частям (как правило, базовый функционал продукта) и только на отдельных этапах. Как результат, изрядная часть продукта развивается хаотично, накапливает избыточные элементы или, наоборот, недоделки, наращивает техдолг, а значительную часть усилий команда прикладывает не к тому, что на самом деле важно.

Дальнейший мой спич имеет целью небольшой ликбез в части важности управления требованиями в разработке ПО. Учебник Вигерса заменить не претендую, но и ориентируюсь не столько на бизнес-/системных аналитиков, сколько на остальных участников — разработчиков и QA. Хотя если у аналитиков всплывёт что-то в памяти или возникнет потребность что-то добавить — тоже неплохой результат.

Продолжить чтение «На основании чего вы тестируете свой продукт? Или управление требованиями к ПО 101»

Почему ветвление в git — это плохо

Это перевод статьи с dev.to. Оригинал.

Решил перевести в рамках практики не дословного перевода (и даже не по предложениям), а семантического. То есть передать смысл, но избежать корявости текста, характерного для переведённых текстов. А внимание привлекло потому что вопрос актуальный в текущей работе.

С автором согласен — подход очень органичный для CI, но требует очень высокой дисциплины команды (частых коммитов) и автоматизации сборок и базовых тестов.


Многие кодят используя фичебранчи в git. Понятно для чего — не хочется ввязываться в разбор возможных конфликтов в процессе пуллов (с кодом) или после того как ваш пуш сломал что-то для всей команды (с людьми).

Я нахожу эти аргументы безосновательными, а порой и вредными. Попытка программировать внутри вашей маленькой временной капсулы в целях избегания воздействия остальных членов команды — плохая идея. Продолжить чтение «Почему ветвление в git — это плохо»

Об округлении половины (0.5) до целого

Вчера потратил пару часов, отлаживая алгоритм на Python из-за того, что несмотря на шаг в минус один, округлённое значение после двойки сразу скатывалось в 0. Пока не решил проверить, как происходит округление.

round05

Со школы помню, что 0.5 математически округляется в большую сторону, если прямо не заявлено округление методом отброса дробной части. Оказалось, мои знания старомодны. В части именно числа 0.5 есть ряд новых вариантов (может они и не новы, но мимо меня прошли). Продолжить чтение «Об округлении половины (0.5) до целого»

MongoDB отжигает

Иначе не скажешь. Очень впечатляющее сочетание несочетаемого получилось.

Даже с учётом того, что я ничего не слышал про оригинал (для таких же как я, живущих в изоляции от современной культуры, вот ссылка и на него)

 

Книги марта — Agile и управление процессами создания ПО

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

В март также вошли пара книжиц по Python, но едва ли есть смысл делать обзоры учебников по языкам программирования. Они не то чтобы сильно разнообразные. Продолжить чтение «Книги марта — Agile и управление процессами создания ПО»

Книги декабря — много DevOps, немного для души и чуть-чуть психологии

Ещё раз обдумал заголовок, и осознал, что он просто жизнь мою описывает в данный момент.

Удивительно богат оказался декабрь на книги, причём на интересные книги, при общей интенсивности по другим направлениям. Половина из них о программировании и управлении процессами в разработке ПО. Остальное просто интересно. Художественная литература в этом месяце не просочилась.

Продолжить чтение «Книги декабря — много DevOps, немного для души и чуть-чуть психологии»

Маленькие хитрости Python из курса от МФТИ и статус по самообучению на конец года

Времени до нового года осталось мало, а техдолг по рефлексии и ретроспективе вырос большой. Так что буду совмещать.

Закрыть тему МООК хочу, положительным отзывом о курсе «Программирование на Python» от МФТИ. Дело в том, что обычно положительных ощущений остаётся мало. Я неоднократно уже, кажется, писал (а уж сколько говорил — достал, наверное, близких просто), насколько всё плохо в отечественном образовании в плане подачи и донесения информации. Особенно в формате дистанционного обучения. Сам себе зарёкаюсь время от времени браться за наши курсы, если есть англоязычные аналоги. Но любопытство время от времени берёт своё (или не нахожу аналогов).

За наводку на данный курс огромное спасибо Даше. Это оказалось то, что надо, в контексте отмены направления C# и размышлений на тему, чем заткнуть образовавшуюся дыру в виде ООП. Терзали меня сомнения, но с первых же лекций весь скепсис сменился восторгом. Продолжить чтение «Маленькие хитрости Python из курса от МФТИ и статус по самообучению на конец года»

К. Митник, У. Саймон — «Призрак в сети. Мемуары величайшего хакера»

Ещё одна увлекательная книга-биография. Не знаю, насколько известен Митник среди текущего поколения ИТ-специалистов, но я о нём слышал, кажется, даже ещё когда не имел компьютера. Незнаю, насколько величайший, но однозначно самый знаменитый хакер. Ранее доводилось читать его Искусство вторжения и Искусство обмана. В переводе не очень удачными получились книжки, вдобавок техническая их часть изрядно подустарела, но из них можно было выяснить, что главное оружие хакера — социальная инженерия, а вовсе не искусство взламывать любой сервер, как это пытаются показать в кино, типа «Пароль рыба-меч». И вот в текущих мемуарах можно оценить всю глубину и степень значимости умения убеждать, импровизировать и искать неожиданные решения в искусстве проникновения. Ниже фрагмент книги с примером фантастической наглости взлома и похищения кода операционной системы, сделанного с помощью двух телефонных звонков. Без какого-либо программного хакинга.

Продолжить чтение «К. Митник, У. Саймон — «Призрак в сети. Мемуары величайшего хакера»»

Логичный Maintenance Mode в VMware vSphere 6.0 U2

Наконец-то! Удивлён, почему это изменение не освещено в Release Notes для Update 2 (ESXi, vCenter). Зато есть отдельная статья в блоге VMware: Maintenance Mode Improvements in vSphere 6.0 Update 2. Продолжить чтение «Логичный Maintenance Mode в VMware vSphere 6.0 U2»