Рубрика «agile» - 62

Экстремальное программирование: Pair Programming

Парное программирование является одной из практик XP. Эта практика воплощает экстремальную (преувеличенную) идею Code Review. Если ревью позволяет улучшить качество кода, то давайте делать его постоянно, во время рефакторинга и написания нового кода.

Проблема проведения обычного Code Review заключается в том, что программисты дают очень поверхностную обратную связь, когда просто смотрят на ваш код. Но как только они начинаются с ним работать, вот тогда прилетает настоящая обратная связь по всем тонким местам и недочетам.

Читать полностью »

    Я бы хотел обсудить неприятную для многих тему, а именно — ваши иллюзии. Иллюзии и убеждения относительно того комплексного процесса, который называется разработка программного обеспечения. Давайте сразу определимся, что такое иллюзия в данном контексте — это такое убеждение человека, не подкрепленное четкими научными доказательствами.
    Разработка ПО пронизана такими убеждениями на всех уровнях, начиная от выбора языка программирования, переходя на технологию проектирования, и заканчивая технологией управления проектами. Интерпретация результатов результатов успешного проекта, если вы решите проверить какую-то методику на его примере, тоже может ввести вас в заблуждение, если вы не будете настроены максимально скептично. В этом цикле статей я попытаюсь дать вам несколько отправных точек для анализа эффективности той или иной методики разработки. В какой-то мере все, что будет написано далее является просто развернутым описанием основной идеи сайта programming-motherfucker.com.

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

Конференция Agile Testing Days в Постдаме (Германия) в НоябреС 19 по 22 ноября в Постдаме, недалеко от Берлина, пройдет конференция Agile Testing Days. Пока что есть возможность пройти по ранней регистрации и сэкономить 400 евро за три дня конференции плюс однодневный тренинг по выбору. Тренинги ведут Lisa Crispin, Gojko Adzic, Ola Ellnestam, Scott W. Ambler, Lasse Koskela и многие другие известные специалисты в области тестирования! Кстати, записываться на все дни не обязательно — можно выбрать именно те, которые будет интересны.

И так как мне удалось договориться с организаторами конференции, то я с удовольствием делюсь промокодом еще на 5% скидку: RUSSIA_005
Читать полностью »

Провела полдня на баскетбольной площадке. Хорошая разминка, и, как говорят американцы “thought-provoking”. Хочу поделиться некоторыми наблюдениями — общими, на мой взгляд, для командного спорта и командной разработки.

Наблюдение 1: СЛАБАЯ КОМАНДА

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

Забавный паттерн: думать “я — в слабой команде”, вместо “мы — слабая команда”. Причем, независимо от собственного уровня игры. Казалось бы, и то и другое — формулировка факта, но есть нюанс. Попробовала повторить про себя по несколько раз, понаблюдать ощущения:
Читать полностью »

Пришло время очередного дайджеста новостей. Как и прежде, мы постараемся рассказать про все или почти все основные события, а также самые свежие релизы и апдейты, которые состоялись за последний месяц.
image

  • Сегодня, 4 сентября RubyMine 4.5.3 улучшил поддержку Sass и LESS;

Читать полностью »

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

  1. Учёт потраченных человеко-часов с разбивкой по задачам
  2. Учёт реализуемого функционала (backlog/requirements) и общая оценка стоимости работ
  3. Творческая работа без списка функционала и контроля ресурсов

Давайте рассмотрим различия и аргументы в выборе подходов для следующих аспектов:

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

Обсуждать и противопоставлять мы будем первые два подхода, потому что про третий я рассуждать не могу. Мне приходилось работать в разных компаниях и в разных проектах, на разных технологиях и в разных управленческих схемах…
И самые интересные, технологически сложные и продвинутые, самые необычные проекты делались именно по третьему подходу. Именно про эти проекты я рассказывал на собеседованиях, именно в них создавались принципиально новые продукты, а не всякая надоевшая обыденность типа база данных→бизнес-логика→бизнес-процессы→клиентские представления→отчёты. Работой в этих проектах я горжусь, вспоминаю с ностальгией, не стесняюсь сказать «вот эти архитектурные решения принял я», и именно про эти проекты обычно слушают с большим интересом. Но с другой стороны, именно эти проекты были очень дорогими и экономически сомнительными. Сейчас никакие аргументы за или против таких проектов я приводить не готов, поэтому рассмотрим только два подхода:
Читать полностью »

Я читал про BDD, и понял одну вещь: BDD это блаблабла блабла бла. Нету у него нормального определения. Вот, например, написано:

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

Все понятно? Мне — ничего. Поэтому я расскажу, что мы делаем и зачем, из того, что может иметь отношение к BDD.
Читать полностью »

За годы участия в разработке ПО, я вывел для себя 3 правила, пересечение которых дает нужный результат: Делать правильные вещи правильно и быстро. Любопытно взглянуть, как Scrum нам помогает достигать эти цели?

Мой взгляд на Scrum

Читать полностью »

Моя статья будет представлять собой больше набор историй из жизни и некоторые выводы из них. Основная проблема, которая меня сейчас волнует: как сделать так, чтобы довольны были и заказчики, и разработчики, и прибыль была и карма цела. Конкретного окончательного рецепта у меня нет, есть несколько отрицательных примеров и намеченные цели, которыми хочется поделиться.
Я занимаюсь разработкой с 2003 года (в основном web-приложения), до этого 4 года преподавала в ОмГУ основы программирования для 1-го курса математического факультета. На данный момент у меня пошел 3-й год в роли совладельца собственной небольшой аутсорсинговой компании (http://7bits.it). Рассказывать буду исключительно о своем опыте по двум причинам: я успела побывать в трех различных типах компаний, которые могу сравнить, и считаю, что пересказ чьего-то опыта не дает полной картины.
Читать полностью »

GTD vs Agile Results. Исправляем недочёты Дэвида Аллена

В данном посте я хочу рассказать о том, чем система личной эффективности Agile Results отличается от GTD и как способна улучшить последнюю. Пост будет полезен как GTD-шникам со стажем, так и тем, у кого отношения с GTD не сложились.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js