Итак: Вы веб-студия. И мы знаем, что Вам нужно!
Конечно же, иметь прибыль, которая может обеспечить достаточный уровень жизни всех Ваших сотрудников от директора до уборщицы.
Мы предлагаем вам надежную техническую основу, которая поможет Вам привлечь и качественно обслужить клиента.
Вы заинтересованы? Тогда продолжим. Среди спектра оказываемых нами услуг:
- Реализация идей DevOps (начиная от развертывания Гит и заканчивая полным планированием комплекса систем непрерывной интеграции и развертывания)
- Планирование, настройка и обслуживания систем планирования и контроля работ, ServiceDesk и CRM.
- Администрирование серверных систем для Вашего решения (выбор и аренда физического оборудования, настройки виртуальных сред, операционных систем и служебных сервисов, поиск проблемных и узких мест при наличии проблем в работе Вашего решения)
- Круглосуточный мониторинг и оперативная поддержка Вашего решения.
Вы, конечно же, знаете об очевидной пользе подобных решений и возможно даже внедрили уже некоторые из них в своей компании. Однако наше преимущество в том, что мы имеем комплексное виденье и опыт настройки завершенных с информационной точки зрения систем.
Тут, вероятно, требуется пояснение: мы строим системы, которые организуют работу, автоматизируя постановку задач, осуществляют делегирование, и дают инструменты для базового контроля выполнения поставленных задач.
Как это работает? Не сложно!
Начнем минимума, который, как мы уверены, у Вас есть. Это Ваше web-решение. Есть разработчик или вероятнее группа разработчиков, которая это решение сопровождает и улучшает, а также группа тестировщиков, которая проверяет решение перед внедрением, ну и лидер команды, выполняющий роль дирижера в «оркестре».
Если вся Ваша команда составляет 3 человека, возможно, Вам не покажется необходимым наше решение, однако любая, даже маленькая команда имеет свойство расти.
Далее, с целью снижения трудозатрат на неосновную деятельность каждого из членов команды, согласование и бюрократию, мы будем развивать компьютерную систему. При этом наша цель — комплексное автоматизированное взаимодействие всех ее компонентов. Это выглядит так:
Менеджер проектов поставил 3 задачи по разработке для Вашего web-продукта каждому из программистов. Допустим, что для этого он использует программу для контроля задач, например Jira. На данном этапе это кажется усложнением, но обещаю, что позже мы убедимся, что это не так.
Разработчики при работе с кодом используют git-продукт для контроля версионности. В наши дни – это практически факт, но если иначе – внедряем git-решение. Получив новую версию web-продукта от разработчиков, тестировщики приступают к ее проверке на качество. Добавим между ними продукт CI, например Jenkins. Он возьмет на себя задачи инсталляции кода в тестовой среде. Также он может выполнять ряд тестов, например, по контролю качества кода, и даже работе приложения. Последние должны быть заботливо подготовлены разработчиками.
Как это выглядит с точки зрения системы. В Jira каждой задаче присваивается уникальный ключ. Указывая этот ключ в коммите в Git, разработчик сообщает системе о том, к какой задаче относится измененный им код. По триггеру, к срабатыванию которого привел коммит в Git, Jenkins запустит развертывание решения и тесты. Результаты выполнения этого действия будут доступны в Jira, а также могут быть получены в виде почтового сообщения. Если результат неудачный – разработчик продолжает работу над задачей, инициируя со временем новый коммит, который повторит описанный цикл. Если результат успешный, Jira переведет задачу на QA-инженера, который приступит к ее тестированию.
Если ручное тестирование прошло успешно, то QA-инженер переводит задачу на TeamLead’а, а тот в свою очередь запускает процесс развертывания протестированного web-решение в продуктивную среду. К слову, развертывание также может делать Jenkins, что сводит действия TeamLead’а к нажатию на несколько кнопок. Если ручное тестирование прошло неудачно, задача возвращается разработчику, и цикл повторяется снова.
Продолжаем «наворачивать». Конечно же, Вы следите за работой Вашего решения в продуктивной среде. Есть два основных источника получения информации о качестве ее работы: программы для мониторинга и отзывы (или обращения) пользователей. Давайте подключим их в нашу систему. Сервер мониторинга будет слать уведомления, из которых автоматически будут создаваться задачи в Jira. Эти задачи будут обрабатываться службой технической поддержки. Если у Вас ее нет, мы готовы принять на себя эти обязанности. Технический специалист определяет причину, которая привела к сработке системы мониторинга, и принимает решение о необходимости внесения изменений на уровне администрирования или разработки, переводя задачу на нужного специалиста. Также Jira позволяет принимать сообщения от пользователей в виде электронных сообщений, заполнения формы, встроенной в ваш сайт или размещенной на специальном web-портале. Обрабатываются они аналогично сообщениям от сервера мониторинга.
Ниже приведены примеры, возможных рабочих процессов Jira для вышеописанного решения.
Таким образом, мы имеем систему, в которой программист занимается разработкой web-решения, а не разбором писем от пользователей, QA-инженеру – тестированием решения, а не вечной настройкой тестовой среды, системный администратор – настройкой серверных систем, а не помощью программисту и QA-инженеру, а лидер проекта – контролем сроков и качества работы, вместо выполнения функций связующего звена между админами, кодерами тестерами. Последнему, помимо наличия истории задач, предоставляется возможность аналитики количества задач, скорости их решения, а также других параметров, в том числе обсуждений по задаче.
Описанное выше – это не предел, но отличный пример для подражания, к которому стоит стремиться в попытке упорядочить и упростить процессы организации работ. И ядром этого решения является система контроля задач, в нашем случае, на базе Jira. А также продукты для автоматизации рутинных задач.
Кажется, все просто. Почему же каждая компания не использует это? Сложность часто кроется в простых вещах. Для того, чтобы система хорошо работала, каждый процесс (прохождения задачи в Jira, развертывание приложения в Jenkins, тестирование web-решения и другие) должен быть заточен именно под Вашу компанию. Универсального решения здесь нет. Есть Лучшие Практики, которыми мы владеем и готовы применить, чтобы Ваш бизнес стал успешнее.
«Вкусно»? Обращайтесь к нам, [email protected] ! Мы знаем, как превратить слова в реальность.