Определите клиента.
Это другая компания? Другой человек?
Это другая команда в вашей компании?
Является ли продукт чемпионом в вашей компании?
Это ты?
Все вышеперечисленное возможно и вполне разумно в зависимости от обстоятельств. Вы не хотите взглянуть вниз по туннелю о том, что значит быть гибким, поэтому сказать, что категорическое НЕТ было бы неправильно. ДА, с другой стороны, требует немного латерального мышления.
Подумайте о слове Agile на мгновение. Очень умная группа людей, придумавших этот термин, не могла бы выбрать лучшую метафору для концепции, которую они пытались описать. Когда вы говорите, ловкость , что приходит на ум? Быть флотом ног? Быстро реагировать что ли? Быстро адаптироваться?
Теперь подумайте обо всех общепринятых методах Agile и спросите себя, что они действительно привносят в методы разработки программного обеспечения, которые считаются Agile .
Я являюсь заказчиком всех намерений и целей моих сольных проектов. Иногда я даже ношу настоящую шляпу, когда я действительно хочу внести особые умственные изменения в мою роль клиента . Это делает меня не менее проворным, чем когда я на работе. Для меня все равно, мой кот может быть менеджером, Он следит за тем, чтобы я делал перерыв на отдых, и напоминает мне, чтобы я не был слишком одержим какой-либо одной задачей. Вы можете предпочесть использовать свою «Технику Помадоро», но я предпочитаю Таймер «Мошенник» !! Дело в том, что я работаю в строго Agile-процессе, когда пишу код для себя. Я не хакерский тип ковбоя, который живет бесконечными скачками развития и ничего не делает. Мне нравится создавать свое программное обеспечение, планировать разработку вокруг моей работы и личной жизни, и завершать его так, как я ожидал бы, если бы работал на реального клиента. Когда что-то мешает моему графику, я соответствующим образом корректирую и расставляю приоритеты в работе над проектом. Я использую все стандартные Agile практики и приемы, которые я могу применять в одиночку, и я «доставляю» рабочий код для себя (или друга или коллеги для тестирования) так часто, как я могу. Если все это не Agile, я спрашиваю вас, что это?
Итак, мой ответ - да , вы можете быть разработчиком программного обеспечения Agile и применять методологию Agile, при этом вам не обязательно нужен клиент или даже менеджер. Вы можете работать над проектом самостоятельно и носить несколько шляп. Тем не менее, это не обязательно идеально, чтобы покончить с этими другими ролями, поскольку очень полезно сотрудничать с другими для достижения цели. Они выступают в качестве основы для ваших идей, и они удовлетворяют вашим требованиям, которые в противном случае вам может быть трудно разумно выработать самостоятельно. Другая очень важная роль, которую удовлетворяют заказчик и менеджер, заключается в том, чтобы держать вас в фокусе на своих целях, без бесконечного добавления функций и улучшения вашего кода сверх того, что может быть строго необходимо.
Тем не менее, если вы работаете в дисциплинированной манере, строго придерживаясь своей методологии выбора, и применяете Agile-методы, и если вас отвлекают, или вы передумаете (надев шляпу клиента) и свой дизайн продукта или направление Если вы можете адаптировать свой график и скорректировать свои приоритеты так, как вы себе представляете, ваш клиент будет ожидать от вас, тогда вы будете Agile.