Наша тема — системы поддержки разработки. Коллективная разработка всегда сталкивается с одними и теми же проблемами групповой работы - над кодом, документацией, тестами, ошибками и требованиями, корпоративными знаниями, и каждый решает эти проблемы по-своему. Кто-то увлекается изобретением систем собственной разработки ("изобретают велосипед"), кто-то идёт к вендорам, кто-то покупает платные специализированные узконаправленные системы.

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

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

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

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

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

В нашем докладе мы не просто расскажем об опыте интеграции («Talk is cheap, show me the code» © Линус Торвальдс), мы идем на большее, — мы публикуем в open-source полностью все используемые нами системы, с доработками и расширениями. Мы предлагаем сообществу совершенно бесплатно установить все это у себя, и возможно, присоединиться к развитию этого инструментального фреймворка.

Eng

The Golden Mean of Open Development Support Systems

Our topic is system development support.

Collaborative development is always facing the same problems of managing the code, documentation, tests, bugs and requirements, corporate knowledge, and everybody solves these problems in their own way. Someone invents systems of its own design ("reinventing the wheel"), someone asks for the help of vendors, someone buys a paid customized narrowly focused system.

From our point of view, a reasonable approach is to choose, integrate and refine the very well-known systems. It is important to consider not only features, but also openness.

Unfortunately, the integration of closed tools usually means terrible inflexibility and inconvenience, if you deviate from the main scenarios. Plus, of course, it's expensive.

Integrate different closed tools to create a convenient framework is difficult and uninteresting task. It's only reasonable in very rare cases, when there is no open source equivalent for closed system. It's now difficult to find this area - in the areas of revision control systems, trackers and wiki systems open-source is dominating.

You can take integrated open-source systems. Up and running and changed when adjustments are needed. However, the existing integrated systems are weak: they have weak tracker, weak wiki, they lack user right system. These are like Swiss army knife - everything simple is possible, but only simple.

There remains the option with the integration of disparate, but very powerful and popular system of open source. The volume of such modifications would be relatively insignificant compared to the total system, but still, these costs are sensitive.

In our report we do not just talk about the experience of integration («Talk is cheap, show me the code» © Linus Torvalds), we're going to do more - we will publish our system in open-source, with all the extensions. We offer the community free of charge to install it all by himself, and, perhaps, join the development of our tool framework.