Инфраструктура ShvetsGroup: организацонные инструменты
Ведение проектов веб-студии требует наличия ряда инструментов:
- Коммуникации
- Система управления проектами (планирование, задачи)
- Багтрекер (ведение разработки и учет дефектов)
- Система управления кодом (администрирование репозиториями)
- Система документооборота (хранение общей и проектной документации)
- Система биллинга времени (слежение за расходом времени на задачи)
- Система расчетов и бухгалтерии
Существует масса конкретных продуктов и решений для каждой из этих категорий, и я не буду расписывать все их. Вместо этого, я опишу что использовали мы, как эволюционировал наш выбор и на чем вы в конце-концов остановились.
Настоящее: Google Apps
۷ Почта
۷ Календарь
۷ Совместная работа над документами
Google Apps — это специальная версия сервисов Google для компаний и организаций. Преимущества серсвисов Google были описаны уже тысячи раз, поэтому я только лишь суммирую самые важные из них для нас.
Позитив
Пожалуй, самыми важным плюсом является доступность сервисов Google, где бы вы не находились.
Самым используемым из них для нас является почта Gmail (еще бы). Тем не менее, Google Docs также является сервисом, используемым практически каждый день.
Менеджерский состав успешно использует календарь Google. С синхронизацией на мобильники, sms оповещениями о событиях, он очень удобен в мобильной работе.
Поистине, открытием прошлого года для нас стал Google Wave, который занял нишу где-то между системой документации, почты, багтрекера и CRM. Настоятельно рекомендую вам хоть раз попробовать этот сервис.
Негатив
Бизнес-версия Google Apps обойдется студии в 25 человек примерно в $1250/год. Тем не менее, есть возможность использовать Standard-версию, у который количество пользователей ограничено в 50 человек, чего вполне должно хватить попервах.
Прошлое: Active Collab
۷ Система управления проектами
۷ Багтрекер
۷ Система документооборота
۷ Система биллинга времени
Позитив
Этот продукт долгое время отлично решал практически все вопросы связанные с ведением проектов, разработки и документации, интеграции с SVN, биллинга времени и ведения отчетности компании. Я до сих пор могу смело рекомендовать его небольшим командам (2-5 человек).
Отдельно стоит упомянуть его удобство и юзабилити, множество аяксовых фишечек — которые в сумме и делают этот продукт отличным.
Негатив
Тем не менее, нам пришлось в последствии поменять его на другие инструменты из-за таких проблем:
- Слабая категоризация задач багтрекера, отсутствие оценок времени и бюджетирования проектов/задач.
- Невозможность настраивать свои процессы выполнения (workflow) для задач.
- Не гибкая система распределения прав (есть только два состояния — «вкл» и «выкл»).
Теоретически, их можно было бы исправить самостоятельно, так как код доступен и на PHP, но продукт платный, поэтому особой мотивации к этому не было. Отсюда и пришло решение сменить выбор на что-то еще, а из-за того, что Active Collab выполнял много задач одновременно, пришлось мигрировать сразу на несколько продуктов и решений.
Настоящее: Atlassian Jira
۷ Система управления проектами
۷ Багтрекер
۷ Система биллинга времени (при наличии плагинов)
Это довольно известный, мощный продукт, написанный на Java. Основное предназначение — багтрекер и управление задачами. Он решил все наши проблемы, которые не удовлетворял Active Collab в этой сфере.
Позитив
Jira позволяет полностью настроить процесс решение задач, задать нужные поля, настраивать свои типы процессов задач, следить за оценками и потраченным временем и многое, многое другое — в общем, «комбайн» в мире багтрекеров. Кроме того, для Jira существует множество плагинов (как хороших, так и плохих), а используя API, теоретически, можно и самому что-то написать.
Для особых ценителей, для Jira существует специальный аддон Greenhopper, который добавляет кучу всяких вкусностей для ведения Agile-проектов.
Негатив
В наших реалиях, большим минусом этого продукта является довольно высокая цена. Для студии до 25ти человек, продукт обойдется $1800. Есть и версия, распространяемая по типу SaaS (хостится на серверах Atlassian, платите помесячно $400), но большим ее минусом является невозможность установки нестандартных плагинов.
Если вы друпаллер и никогда раньше не работали с джавой, установка, настройка и борьба с проблемами Jira может занять у вас несколько дней. При этом, вы будете вспоминать процесс установки Друпала, который казался вам убогим до этого, как сладкий сон.
Настоящее: Atlassian Fisheye + Crucible
۷ Система управления кодом
۷ Система код-ревью
Отдельно упомяну эти продукты, т.к. они внесли значительный вклад в улучшение наших процессов. Fisheye — это браузер репозиториев, поддерживающий CVS, SVN, GIT и другие системы. Crucible — система ревью кода.
Позитив
Оба продукта интегрируются с тикетами Jira, что позволяет прямо в тикетах видеть коммиты, по задачам и делать по ним ревью кода менеджером в процессе завершения задачи.
Негатив
Опять же цена. Для студии до 25 человек эта радость обойдется в $2200.
Кроме того, бросается в глаза разный подход к администрированию всех трех продуктов, что наводит на мысль что их писали разные люди и потом только лишь с трудом связали вместе.
Прошлое: Codesion
۷ Система управления репозиториями
В начале нашего пути, у нас был один физический сервер в дата-центре в Киеве, на котором хостился SVN сервер. После печального падения сервера и трехдневного даунтайма SVN, было решено что-то с этим решать, и все SVN репозитории переехали на внешний SaaS сервис хостинга репозиториев Codesion (бывший CVSdude).
Позитив
В самом начале поразила простота создания, настроек, разграничения прав в репозитории прямо из интерфейса. До этого все производилось руками в консоли. Кроме того, сервис гарантирует постоянный аптайм серверов и трехуровневую систему бекапов.
Кроме того, этот сервис просто идеален для рекомендации клиентам, которые по каким-то причинам еще не имеют своего репозитория (надеюсь, зачем его иметь, и так понятно).
Негатив
Причиной миграции с этого сервиса для нас стала невозможность подключения своих SVN хуков блокировки коммитов (например, для блокировки коммитов без указания номера тикета), хотя стоит сказать, что базовая система оповещения о коммитах таки есть.
Кроме того, многих может расстроить цена сервиса, которая для студии до 25 человек будет составлять от $69/месяц до аж $538/месяц в PRO версии.
Настоящее: Amazon EC2 + USVN
۷ Система управления репозиториями
По указанным выше причинам, мы мигрировали наши репозитории опять обратно на сервер, принадлежащий нам.
Проблему надежности и доступности сервера решили путем создания ежечасных снимков SVN сервера плюс ежедневных «снимков» в довесок к ним. Таким образом, при падении сервера, новый можно восстановить в считанные минуты, подняв новую машину на амазоне и назначив ей старые айпишники.
Сохранение легкости администрирования также являлось требованием к миграции и решилось установкой бесплатной панели управления репозиториями USVN. Она довольно проста в установке, и поистине упрощает все администрирование репозиториев.
Отдельным моментом, которые многие игнорируют при работе со своими серверами репозиториев, является безопасность хранения кода. Я видел уже много примеров, когда компания хранит все дерево проектов в одном репозитории, и у всех разработчиков есть доступ ко всем проектам. Очевидно, что при росте количества сотрудников, данная схема весьма опасна утечкой кода на сторону и последующими проблемам. У нас каждый проект имеет собственный репозиторий с четким разграничением прав. К тому же, все репозитории защищены SSL сертификатом.
Настоящее: Open Atrium
۷ Система документации
Introduction for Site Administrators from Development Seed on Vimeo.
Позитив
Open Atrium отлично работает для нас как система хранения информации о проектах, сотрудниках и процессах. Мы заводим в нем группы на каждый проект, и ведем всю остальную документацию в одной большой группе компании. Так как это старый добрый Друпал, нам не составляет труда дописывать какой-то специальный функционал и устанавливать существующие модули.
Естественно, с этим продуктом все бесплатно.
Негатив
Друпал — не wiki. Одновременная совместная работа над документами в Друпале оборачивается большой головной болью, поэтому в Open Atrium для нас является скорее архивом документов, в то время как Google Docs и Google Wave — поле активных действий.
Настоящее: FreshBooks
۷ Система биллинга времени
۷ Система расчетов и бухгалтерии
В прошлом, я описал детально схему работы с FreshBooks в статье Цивилизованный прием денег за работу или "в топку WesternUnion, Webmoney, Быстропочту и Яндекс.деньги"
Позитив
Система биллинга потраченного времени — необходимая вещь практически для каждой консалтинговой компании. Такая система должна предоставлять удобный способ биллинга времени самим разработчикам, менеджменту — следить за этими записями и корректировать их при необходимости, бухгалтерии — выставлять на основе этих записей счета клиентам.
Свой выбор мы остановили на SaaS сервисе FreshBooks, который со всеми этими задачами справляется на ура.
Негатив
Негативных сторон сервиса мы для себя пока не обнаружили, хотя цены FreshBooks могут показаться высоковатыми. Так для студии с 25 сотрудниками, месячная оплата обойдется примерно в $280.
Комментарии
13 января, 2011
Спасибо за статью. Тоже использую волны и документы гугла для совместной работы. Очень ускоряет работу одновременное редактирование в волнах и документах.
14 января, 2011
Сейчас как раз занимаюсь корпоративной базой знаний.
Делаю на друпале.
Почему выбрал друпал - тема отдельного поста.
Действительно, одновременное редактирование статьи несколькими пользователями "не самая сильная сторона" моей системы. Но я пошел на этот шаг осмысленно, тщательно взвесив все плюсы и минусы данного решения в контексте моей конкретной задачи.
Система пока не запущена, но на локалхосте я ей успешно пользуюсь для документирования текущих проектов, и мне она (субъективно) кажется удобнее MediaWiki (с MediaWiki работал 3 года).
После запуска и тестового периода использования (1-2 месяца) я возможно отпишусь о результатах.
21 января, 2011
Для проджект менеджинга попробуйте пивотал (http://www.pivotaltracker.com).
Мы ушли от старой, дорогой и занудной жиры. Принцип пивотала основан на кукумберовских тестах (I as user should see dupal.ua site So that i can follow ukrainian community of drupallers). Таким макаром фича расписывается по сторям (одна сторя - мелкий кусок функционала, который не завязан на других сторях).
Зачем? Так можно прийти к continuous deployment - деливерить каждый день, а не провтыкивать дедлайны из-за плохого планинга. Также через сторю можно разглядеть бенефит (и приоритизировать что важнее девелопить в данный момент).
21 января, 2011
Также ушли прочь от меркуриала. Гит просто превосходен благодаря наличию стеджинг арии: промежуточного хранилища между локальной версией кода и той что на сервере. Плюс конфликты случаются крайне редко и довольно небольшие.
Также есть много плюшек, доставляющих радость и быстроту работы.
21 февраля, 2011
А мы после долгих размышлений перелезли на unfuddle.
там есть: git/svn repo (пользуемся гитом) + достаточно адекватный тикет менеджмент + repo browser + простенькая записная книжка для доков. интерфейс не очень тупой, опять же - аякс, все дела. платим, страшно сказать, 10 баксов в месяц сейчас. Ну это для маленьких команд, конечно. Вполне могут быть проблемы с теми же хуками на коммит, но нам в маленькой (но очень гордой) команде это не так критично.
трекинг времени - freshbooks, по старинке :)
документация - google docs, который просто обалденен теперь, например можно сразу там же рисовать простые вайрфреймы. редко - google wave. че то там.. чересчур :)
Хотите что-то добавить?