Экспертные оценки или парное программирование или оба? [закрытый]

, как хорошо упоминались другие, и в этот поток

использовал ненужные быстрые файлы в «ресурсах связки копий»

16
задан Aliaksandr Belik 10 May 2012 в 16:37
поделиться

6 ответов

Когда я был молод и глуп, одно из моих первых заданий должно было создать синтаксический анализатор для вытаскивания определенных полей в длинном файле PDF, который был выведен к неформатированному тексту. Я знал достаточно для использования некоторой формы regex, но недостаточно о regex’s, чтобы сделать задание хорошо. Несколько дней спустя я закончил задачу, но в экспертной оценке я был сокрушен, чтобы узнать, что я, возможно, добился большего успеха и что я произвел, был мусор. Я изучил, как сделать лексический парсинг только, чтобы доказать, что я, wasn’t, которым идиоту, но позволяет просто, говорят, что процесс экспертной оценки высосал. Я, которого didn’t нужен старший человек для танца при моих отказах, мне был нужен наставник, и я напомнил мне о том каждом разе, что сделал экспертную оценку.

мне нравятся экспертные оценки, когда мы проверяем эго у двери. (Это включает мой!) Существует конечное количество времени в этом мире, и только так, что можно изучить и сделать. Через хорошую экспертную оценку можно развернуть Вас знание и стать более сделанными в более короткий период времени. Проблемы возникают, когда вещи ухудшаются в по анальной проверке синтаксиса.

у меня есть несколько правил из-за этого. Я не делаю экспертной оценки ничто, что мы можем автоматизировать. Осуществите проверку написания и кодируйте программу изящного форматирования. Если Вы имеете что-то как FXCop, доступный Вам, выполняете его, делают, что это говорит, или имейте проклятое серьезное основание, почему Вы не. Тогда мы можем посмотреть на то, как код соединен, как он функционирует и вещи, которые мы можем сделать для улучшения его. Таким образом Вы надеваете другую точку зрения, как решить проблему и почему кто-то думает тот путь. Иногда другой путь не действительно лучше, иногда новое решение является фантастическим и что-то, что Вы будете использовать для остальной части Вас программирующий жизнь. Как только обзор сделан, that’s это, I’m, не используя его в качестве примера против Вас. It’s Ваш для изучения то, что Вы будете от него. Я не справлюсь страхом или угрозой, you’re умный человек и I’m, собирающийся позволять Вам показать его.

21
ответ дан 30 November 2019 в 16:05
поделиться

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

Некоторые вещи не упустить:

  • Удостоверяются, что старшие позволяют программе юниоров также, когда соединение
  • не позволяет людям пара на маленьких задачах, обычно напрасно тратит время
  • Часы, как пары проживают (не спрессовывайте пару)
  • Remeber для перестановки пар время от времени
  • не позволяют пчеле обзоров, соответствие эго - не позволяет людям сокрушить других
11
ответ дан 30 November 2019 в 16:05
поделиться

Экспертная оценка должна быть ОБЯЗАТЕЛЬНА .

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

Лично, я думаю, что экспертная оценка должна быть сделана забавой. Обеспеченная еда и сохраняет атмосферу веселой. Это действительно нужно рассматривать как время, где разработчики/программисты могут изучить друг от друга не шанс судить (и все мы знаем, как каждый запрограммированный кажется терпевшим врожденный поверхностный ген). Я был склонен ценить или помог организовывать обзоры, чтобы быть 1/3-м или 1/4-м времени как открытое. Этим я имею в виду, когда группа объединяется, и один человек представляет проект, они работают или даже рассмотренные, который даже не связан с текущим проектом (я знаю, что это трудно с крайними сроками, но попыткой его).

Creatives обычно собираются для отображения рисования, проектов и художников they’re в настоящее время в то, чтобы помочь упростить вдохновение. Реалистично, вдохновение должно быть ведущим понятием, которому Вы надеетесь способствовать в обзоре. Вторичный к этому люди просто естественно замечают вещи, которые делают их поддерживающие разработчики, который они НЕ заметили прежде. “Oh, ничего себе, таким образом, Вам удалось сделать это в одной строке кода? Прохладный. Разработчики Получения ” вдохновили и мотивировали, о каком они делают, что они продолжают работать, и как они идут об этом, выплатит дивиденды больше, чем использование экспертной оценки для установления иерархии и разряда.

Наконец, прибывает на самом деле “review” часть, но it’s неизбежный факт. Ваши лучшие разработчики будут видеть плохой код и после достаточного количества обзоров it’s время для бедного кодера или к повышению или забывать об этом.

, Если Вы сохраняете вещи положительными и организованными обычно большой опыт.

Почти забыл затрагивать парное программирование. Это более жестко для устанавливания. Очевидно, у Вас не может быть двух из Ваших более слабых программистов, сотрудничающих, или Вы могли бы также расположить миллион обезьян с миллионом печатающих устройств. Попытайтесь поместить более сильного человека с более слабым на и стимулами предложения для обоих конфиденциально. Кто-то, кто более слаб, должен знать, что улучшение могло быть вознаграждено (если они требуют такого стимула), и более сильный программист должен знать, что настоящие лидеры запускают как хорошие наставники. Удостоверьтесь, что более слабый dev вводит все же. Не наоборот или это становится представлением и" зевок ", кто-то ничего не мог бы получить по опыту.

4
ответ дан 30 November 2019 в 16:05
поделиться

Я сделал набор гибкой тренировки, и помочь людям преобладать над "клеймом" парного программирования, мы называем его "кодом в реальном времени & анализ проекта". Люди, кажется, получают понятие лучше, Вы помещаете его в те условия.

4
ответ дан 30 November 2019 в 16:05
поделиться

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

, НО с тех пор я был вовлечен в большое количество офлайновых обзоров кода.

В зависимости от проекта они или получили мандат перед регистрацией к "живому" ответвлению, или в некоторой случайной точке времени после. На 3 из 4 проектов они были охвачены, по общему признанию как необходимое зло первоначально, но позже как ценный вклад.

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

4-й проект использует наложенное рассмотрение схемы 'в случайное время', и технические руководители не принесли в него пока еще (поврежденная команда?)

<час>

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

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

, Как только у Вас была та дополнительная пара глаз на Вашем коде, Вы не захотите оглядываться назад

2
ответ дан 30 November 2019 в 16:05
поделиться

• Да, наша компания использует обзоры кода однорангового узла. Мы проводим их, поскольку Сверхплечо рассматривает, и пригласите team’s тестер участвовать во встрече для получения лучшего понимания изменений.

• Там являются определенными преимуществами для кодирования обзора, поскольку несколько исследований были в состоянии продемонстрировать. Для нашей компании было очевидно что качество кода, увеличенное как количество уменьшенных обращений за поддержкой и количество ошибок, о которых сообщают, уменьшенных также.Примечание: Некоторые преимущества здесь были результатом реализации Толпы и отказа от Водопада. Больше на Толпе ниже.

• преимущества обзора кода могут быть более стабильным продуктом, больше удобного в сопровождении кода, поскольку это относится к структуре и стандартам кодирования, и это позволяет разработчикам фокусироваться больше на новых возможностях, а не “fire-fighting” ошибках и других производственных проблемах. Там действительно aren’t любые недостатки, если обзоры кода проводятся “right”. Больше на “right way” ниже.

• Некоторые препятствия для преодоления при реализации обзоров кода являются идеей, что “big brother” наблюдает за мной и идеей, что не наличие идеального кода означает пытку и боль. Получение разработчиков доверять друг другу является трудным иногда, особенно когда оно включает “pecking order” или “holier, чем thou” отношения и подвергание Вашей тяжелой работы под микроскопом. Доверие является ключом к решению этих вопросов. Разработчик должен положить, что они не будут наказаны коллегами или управлением для ошибок в коде. Это происходит со всеми. Обратите внимание на проблему, разрешите ее и идите дальше.

Толпа Одно из преимуществ использования методологии Толпы - то, что цикл разработки (”sprint”) короток. Период времени “sprint” определяется тем, какие работы лучше всего для Вашей организации и будет нуждаться в некотором методе проб и ошибок, но действительно shouldn’t быть более длинным, чем четырехнедельные повторения. Преимущество - то, что это требует, чтобы разработчики ежедневно связывались и передавали проблемы вначале в проекте. Это было первоначально принято нашим департаментом развития и распространилось ко всем областям нашей компании, поскольку преимущества толпы являются далеко идущими. Для получения дополнительной информации см.: http://en.wikipedia.org/wiki/SCRUM или http://www.scrumalliance.org/ . Поскольку повторения разработки меньше, процесс рассмотрения кода рассматривает мелкие кусочки кода, делая обзор более вероятно для нахождения проблем, чем часы или дни формальных обзоров.

Обзоры Кода “Right Way”, сделанные, “right way” абсолютно субъективен. Однако я лично полагаю, что они должны быть неофициальными, обзоры сверхплеча. Все участники обзора должны постараться не лично нападать на человека, рассматриваемого операторами, такими как “why, Вы делали это тот путь? ” или “what Вы думали? ” и т.д. Эти типы комментариев уменьшают доверие между коллегами, ведя к враждебности, часы утверждения по лучшему/правильному способу кодировать решение. Следует иметь в виду, что разработчики не думают или кодируют точно то же, и существует много решений проблемы.
Просто немного разъяснения по поводу обзоров сверхплеча; они могут быть проведены через удаленный рабочий стол, совместно использующий (выберите разновидность здесь), или лично. Однако они shouldn’t быть ограниченным разработчиками только. Мы обычно приглашаем нашу всю команду толпы, которая состоит из двух разработчиков на команду, тестера, человека документации и владельца продукта. Все неразработчики там для получения лучшего понимания изменений или новой сделанной функциональности. Они свободны задать вопросы или обеспечить вход, но не принять решения кодирования или комментарии. Это было эффективно, поскольку определенные вопросы зададут, который может изменить направление проекта, поскольку начальные требования, возможно, пропустили сценарий, но именно это гибкий все о, изменение.

Предложение я настоятельно рекомендовал бы толпу исследования и обзоры кода, прежде, чем передать под мандат их. Создайте основные правила для каждого и реализуйте их как часть Вашей культуры для достижения лучшего качественного продукта. Это должно стать частью Вашей культуры так, чтобы это была часть естественного процесса и интегрированный на всех уровнях, как это - сдвиг парадигмы от низкого качества, пропущенные крайние сроки и разочарование к лучшим качественным продуктам, меньше разочарования, и больше вовремя результатов.

2
ответ дан 30 November 2019 в 16:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: