Сколько нужно процессу для одного разработчика? Является ли формальный процесс слишком много?
=============================================================================================

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

Я сольный разработчик по своим проектам, как правило, очень мелочи, но у меня есть несколько идей, которые могут превратиться в проекты FOSS. Я верю в документацию (в разной степени, в зависимости от конкретного проекта и конечного пользователя), контроль источника и управление проектами (включая отслеживание ошибок, управление временем и т. Д.). Тем не менее, я не уверен, сколько из [formal process](https://en.wikipedia.org/wiki/Software_development_process) я должен следовать.

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

Какие процессы существуют или могут быть применены к сольному разработчику, если мне даже нужен формальный процесс?

EDIT: Я понимаю, что есть задачи, которые я выполняю, чтобы выполнять документацию и контроль источника. Однако я не уверен, как часть вопроса. В качестве сольного разработчика я должен принять более гибкий подход (если это так, какая «ветка» Agile-XP? Scrum? RAD?) Или более традиционный подход (водопад или спираль?)?

Даже если вам не нужен процесс для обеспечения хорошей связи между членами команды, процесс может помочь вам компенсировать тот факт, что вы не такие сверхчеловеческие, как считали вы, когда вам было 18 :) Тип и сумма «документов», которые вы решаете, зависит от ваших сильных и слабых сторон. Плохая память? Записывайте свои идеи и мысли каждый день. Хорошие деревья, но не леса? Удостоверьтесь, что вы очень осторожны с вашими требованиями и дизайнами. Хорошие леса, но не деревья? Подробные списки задач, оценки времени и частые результаты - ваш друг.

Это сводится к: что вы, вероятно, испортите, и какие процессы помогут вам в вашем конкретном способе работы.



Следуйте за своим сердцем.



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

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



Вам определенно нужен процесс, есть много некодовых данных, которые входят в управление и поддержку проекта. Без процесса вы будете быстро страдать, переосмысливая дизайнерские идеи, потому что вы забыли все эти веские причины не делать что-либо или переучивать, как разветвить svn b/c, вы делаете это только один раз в месяц.

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

И тестирование, контроль источника и т. Д. - все это хорошие методы разработки и должны выполняться независимо от размера проекта.



Это очень широкий вопрос, но, возможно, я могу помочь, обменявшись опытом. Я проработал почти 5 лет в проекте по кодированию хобби с несколькими моими друзьями. Очень вялая группа разработчиков, мы обычно подталкивали наши машины в одну квартиру на выходные для разработки проекта. Я хочу сказать, что его можно сравнить с усилиями одного человека, поскольку мы все должны были принять решение о важных проектных решениях и т. Д. 'Обработать?' Нет, я не могу идентифицировать, даже в ретроспективе.

Единственное, что держало источник под контролем, заключалось в парадигме «гибкого развития», которую мы решили реализовать с самого начала: **refactor mercilessly**. Мы сделали это, и святой ад все время разрывал всю игру. Но он **сделал**, чтобы сохранить исходный код чистым, и когда мы решили пойти на «стабильные релизы» время от времени, все это, казалось, приходило к другому.



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

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