Fortech logo
Как увеличить скорость разработки приложений - Блог Fortech

Поиск решений

Когда мы начали думать о возможных вариантах, нам сразу же в голову пришли различные “коробочные” CMS — WordPress, Drupal, Joomla, 1С Битрикс и так далее. Использование таких решений, как правило, снижает стоимость и сроки разработки. Но есть и ощутимые недостатки: они редко обновляются, имеют ряд ограничений, проблемы с безопасностью и масштабируемостью. Данные CMS являются отличными технологиями, но не подходят под наш тип задач. Из нашего опыта, также можем сказать, что внедрение таких решений может, наоборот, увеличить стоимость разработки: потребуется найм специалистов, покупка лицензий. И что более важно — дальнейшее расширение MVP может вызвать трудности. Тогда мы начали искать другие решения. Нам было важно делать качественные приложения, которые будут легко масштабировать и поддерживать. Соответственно, мы хотели делать MVP сразу на современных технологиях. Нашим решением стало использование архитектурного подхода JAMstack. Простыми словами, этот подход подразумевает полное разделение бизнес-логики и клиентских приложений. И что гораздо более важно, уже есть много готовых решений для различных задач.

JAMstack подход

Как мы увеличили скорость разработки прототипов приложений на 40% Коротко о компонентах JAMstack. Самым важным компонентом является слой бизнес логики, по сути, бэкенд. Основа этого слоя — headless CMS.

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

Одними из самых популярных решений в области headless CMS, на наш взгляд, являются Strapi и Contentful. Оба решения имеют как платный, так и бесплатный тариф, возможность масштабирования и подходят для создания серверной логики разной сложности.

Для разработки прототипа приложения, как правило, хватает бесплатного тарифа. Это позволяет еще больше снизить стоимость продукта, потому что отпадает необходимость покупки лицензии для CMS

Полный список headless CMS можно найти на https://jamstack. org/headless-cms/. Решений, представленных выше, хватит для покрытия большей части задач по прототипированию приложений

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

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

Нужно сказать и о минусах этого подхода. Использование headless CMS подходит для быстрого создания MVP с небольшим количеством данных. Но при росте количества данных и активных пользователей могут возникать проблемы с производительностью и с различными интеграциями. Особенно если речь идет о ПО, для которого нет встроенных плагинов. Поэтому для создания приложений с большой нагрузкой мы рекомендуем использовать более надежный стек — Java, Python, Node. js

Результаты

Как мы увеличили скорость разработки прототипов приложений на 40%

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

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

Часто задаваемые вопросы

Что получит клиент после завершения проекта?toggle
По завершении проекта клиент получает готовое приложение, а также, соответствующую документацию. Кроме того, в зависимости от соглашения, могут быть предоставлен исходный код разработанной системы.
Кому принадлежат права на разработанные решения?toggle
Как правило, клиентам предоставляют исключительные права на программное обеспечение и исходный код. Однако, в нашей практике мы всегда ограничиваем передачу прав на наши собственные внутренние разработки, которые использовались при создании заказанного проекта. Это касается разнообразных компонентов, включая фреймворки и библиотеки, применяемые для обмена данными.
Кто нужен для разработки веб и мобильных приложений?toggle
Менеджер по проектам для контроля сроков и бюджета проекта, UI/UX-дизайнер, разработчики фронтенда и бэкенда, тестировщики для проверки работы продукта.
Каким образом мы осуществляем управление проектами?toggle
В нашей команде менеджер по проектам играет важную роль в контроле и управлении проектами. Его задачами является: Планирование: разрабатывает детальный план проекта, определяя этапы, задачи, ресурсы и сроки, а также устанавливает приоритеты. Контроль сроков и бюджета: менеджер следит за тем, чтобы проект не выходил за рамки установленных сроков и бюджета. Если возникают отклонения, он принимает меры для их коррекции. Коммуникация: поддерживает связь между членами команды проекта, заказчиками и другими стейкхолдерами.  Ресурсное управление: управляет распределением ресурсов, включая персонал, оборудование и бюджет, чтобы обеспечить эффективность проекта. Риск-менеджмент: менеджер по проектам выявляет и оценивает потенциальные риски проекта, разрабатывает стратегии и планы по их управлению. Обратная связь и улучшение: после завершения проекта, менеджер по проектам анализирует результаты и процесс разработки.
Сколько времени потребуется на создание продукта?toggle
Время, необходимое для разработки продукта, может сильно варьировать в зависимости от его сложности, объема и требований. Мы проводим предварительный анализ проекта и создает детальное расписание, включая оценку времени на каждый этап разработки. Точные сроки можно уточнить, обратившись к нам с конкретными требованиями и деталями сервиса.
Предоставляем ли мы поддержку проектам после их запуска?toggle
Помимо разработки проектов, мы обеспечиваем их непрерывную поддержку после запуска. Наша забота о клиентах и наших проектах не ограничивается завершением разработки. Что вы можете ожидать от нас после старта работы продукта: Техническая поддержка: предоставляем надежную техническую поддержку и гарантируем постоянную работу проекта. Наши специалисты готовы решать возникающие технические проблемы и внедрять необходимые обновления. Обновления и улучшения: следим за новыми трендами, возможностями и предоставляем обновления и улучшения, чтобы ваш проект всегда оставался актуальным и конкурентоспособным. Мониторинг и аналитика: осуществляем постоянный мониторинг производительности вашего проекта и предоставляем детальную аналитику. Служба поддержки и обратная связь: наша служба поддержки доступна для ответов на ваши вопросы и решения любых затруднений. Мы также ценим вашу обратную связь и используем ее для постоянного совершенствования проекта.

Читайте также

Заполняйте форму или пишите нам!

Давайте пообщаемся!

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

Наша почта:partners@fortech.dev

Телеграм:@fortech_sales

Phone

Политикой конфиденциальности