Расширение ArcGIS с помощью SDK и API

Системы ArcGIS обычно строятся на стабильном фундаменте существующих, хорошо понятных программных компонентов. Эти компоненты могут быть развернуты различными способами, настроены для поддержки рабочих процессов и требований, и для многих систем достаточно существующих приложений, сервисов, инструментов и функций. В других случаях для выполнения требований или критериев проектирования может потребоваться настройка программного обеспечения или рабочего процесса, и платформа ArcGIS предоставляет различные комплекты для разработки программного обеспечения (SDK), скрипты и механизмы автоматизации, а также интерфейсы разработки приложений (API), которые могут помочь в достижении этих целей. Сайт Esri Developer предоставляет исчерпывающую документацию и рекомендации по некоторым из этих API и SDK, а также документацию по другим REST API и функциям основных компонентов ArcGIS.

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

Критерии принятия решений для настройки приложения

Решение о добавлении в проект разработки программного обеспечения на заказ имеет ряд последствий, преимуществ и соображений. Лучше всего рассматривать роль разработки в системах ArcGIS как спектр с ценными возможностями, начиная от готовых систем, которые легко настраиваются с помощью всплывающих окон, аркадных скриптов или других методов, рабочих процессов с поддержкой Python для перемещения данных или геообработки, и заканчивая расширяемыми приложения с низким содержанием кода, которые поддерживают добавление Arcade, CSS и HTML в интерфейс и позволяют создавать полностью настраиваемые системы с тщательно разработанным интерфейсом, пользовательскими веб-сервисами и значительной автоматизацией данных и процессов.

Этот спектр можно разделить по-разному, но один из способов взглянуть на него заключается в трех основных подходах:

  • Настройте приложения в соответствии с потребностями вашего бизнеса. ArcGIS предоставляет набор настраиваемых приложений, которые поддерживают базовые и продвинутые рабочие процессы с помощью простой настройки на основе браузера. Использование этих приложений требует наименьших усилий и минимальных текущих затрат, но может быть ограничено поддерживаемыми конфигурациями. Приложения в этой категории включают Instant Apps, Story Maps, Dashboards, Field Maps или Survey 123.
  • Используйте конструкторы приложений с низким количеством кода. Esri предлагает различные конструкторы приложений, которые включают минимум программирования, включая ArcGIS Experience Builder, StoryMaps, Dashboards, ArcGIS Hub, Enterprise Sites и приложения ArcGIS Instant. Все эти приложения позволяют в той или иной степени настраивать пользовательский HTML и CSS, а также различные реализации или профили Arcade, и могут использоваться для создания тщательно настроенных приложений, соответствующих бренду с оформлением полностью настроенного приложения, сохраняя при этом возможность быстрого изменения или корректировки функциональности. Experience Builder также позволяет создавать пользовательские виджеты, которые можно разработать, а затем сделать доступными для использования в различных приложениях.
  • Полностью настраивайте приложения с помощью ArcGIS SDK. Esri создает SDK для различных сред программирования и языков, каждый из которых обеспечивает надежную поддержку создания картографических и управляемых данными приложений, содержащих слои ArcGIS, взаимодействия с пользовательским интерфейсом, безопасную аутентификацию и сложные картографические функции. Поскольку вам не нужно самостоятельно программировать каждую из этих конкретных частей, вы можете создавать приложения, ориентированные на бизнес, чтобы воспользоваться возможностями ArcGIS, доступными в вашей организации, снижая накладные расходы на разработку и обслуживание приложений. Сайт Esri Developer предоставляет исчерпывающую информацию о выборе доступных SDK, а также общие рабочие процессы, описания функциональных возможностей и примеры кода. Esri также предоставляет ряд компонентов приложений для упрощения веб-разработки с помощью стандартизированных подходов к пользовательскому интерфейсу.

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

Общие мотиваторы и факторы разработки программного обеспечения

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

  • Мотивация функциональности и интеграции в первую очередь связана с отсутствием определенных функций в существующем приложении или рабочем процессе, а также с необходимостью поддержки интеграции с другой системой, для которой существующее приложение не существует. Еще одним мотиватором является желание объединить несколько наборов функциональных возможностей в едином унифицированном интерфейсе.
  • Производительность и масштабируемость Если производительность существующих сервисов, интерфейсов или рабочих процессов не соответствует вашим требованиям, возможно, что настраиваемый параметр может добавить новые варианты достижения желаемого уровня обслуживания или сократить путь к процессу, что значительно сэкономит время и повысит удовлетворенность пользователей.
  • Дизайн. Если приложение нуждается в брендировании, выходящем за рамки того, что поддерживают стили и тематические предложения существующих приложений ArcGIS, пользовательское приложение может соответствовать конкретным интерфейсам или целям дизайна организации. Esri Calcite Design System - это общая основа для создания хорошо продуманных и удобных в использовании интерфейсов.
  • Аудитория и пользовательский опыт. Удобство использования является ключевым критерием успеха для большинства усилий по проектированию приложений, и понимание различных потребностей в функциональности для различных групп пользователей является важным шагом. Пошаговые рабочие процессы могут помочь даже опытным пользователям как можно быстрее перейти от открытия приложения к продуктивной работе.
  • Организационная культура и способности. У вашей организации могут быть предпочтения или склонность к определенным способам использования разработки в процессе проектирования приложений. Руководство, менеджеры проектов и технические команды могут обладать предпочтениями, мышечной памятью или соответствующим опытом принятия решений о вариантах настройки и могут использовать это для принятия обоснованных решений о новой возможности. Тщательный анализ возможностей организации по настройке и сопровождению этой работы, а также немаловажное обслуживание приложений с высокой степенью настройки позволят сделать осознанный выбор, который обеспечит успех вашего приложения в будущем.
  • Стоимость. Ни один процесс создания приложения не обходится без затрат, и важно не ожидать, что настройка по умолчанию обойдется дороже - приложение, подходящее по назначению, может иметь более длительный и успешный срок службы, чем настроенное приложение, в зависимости от срока службы настроенного приложения, требуемой функциональности и ожидаемых изменений. При оценке стоимости следует учитывать первоначальные затраты на построение, а также текущее техническое обслуживание и любые риски, связанные с принятым решением.
  • Срок действия. Приложения не должны разрабатываться для использования вечно — здоровый интервал замены, при котором рассматриваются другие варианты или подходы, гарантирует, что новые параметры приложения не будут проигнорированы, а существующее приложение не будет продолжать работать бесконечно, когда может иметься лучший вариант. В некоторых случаях обновление пользовательского приложения — это просто получение новой версии SDK, но другие обновления могут быть более значительными или привести к большим инвестициям в зависимости от времени первоначальной разработки приложения и жизненного цикла SDK, используемого для его создания.

Рекомендации по работе с SDK и API

Когда разработка программного обеспечения будет играть роль в создании приложения или построении системы, в большинстве сценариев можно применить ряд рекомендаций:

  • Используйте средства, знакомые команде — у вашей организации или группы сотрудников может быть опыт работы с определенными языками, методологиями разработки программного обеспечения или способами создания приложений, и в большинстве сценариев полезно следовать этим существующим шаблонам. Это способствует повышению эффективности, поскольку позволяет использовать имеющиеся навыки, извлекать уроки из предыдущего опыта и не требовать от команды внедрения новых технологий просто ради новизны.
  • Будьте в курсе последних версий - как и основные программные компоненты, ArcGIS SDK и API регулярно обновляются, и рекомендуется оставаться в курсе последних версий любого из этих продуктов, поскольку они содержат новую функциональность наряду с улучшениями безопасности и производительностью. С каждой версией Esri тщательно документирует новые функции и любые критические изменения, чтобы помочь разработчикам оставаться на поздних версиях с минимальными перебоями.
  • Разрабатывайте с учетом принципов архитектуры - принципы архитектуры , описанные в этом разделе, одинаково актуальны как для систем, управляемых разработкой программного обеспечения, так и для более стандартных систем. Учитывайте важность безопасности, производительности, масштабируемости и наблюдаемости при разработке нового приложения или функции, чтобы быть уверенными в том, что полученное приложение может поддерживаться и эффективно эксплуатироваться командой в течение предполагаемого срока его службы.

Краткая информация

Расширение ArcGIS, либо путем настройки существующих интерфейсов, либо создания новых приложений с помощью ArcGIS Maps SDK, является отличным вариантом достижения некоторых из вышеуказанных целей. В процессе проектирования корпоративной системы тщательное рассмотрение актуальности расширения и адаптации к имеющемуся решению может оказать существенное влияние на будущую поставку и стоимость системы. Если вы сомневаетесь, рассмотрите возможности и готовность организации к использованию существующего опыта или индивидуального решения (или, чаще всего, их комбинации).

Top