Разработка и адаптация программного приложения: процесс, виды и правовые основы
Разработка и адаптация программного приложения — это создание продукта и его последующая настройка под условия конкретного заказчика. Готовая программа редко подходит организации без доработок: меняются справочники, формы документов, интеграции и язык интерфейса. В статье разобраны виды адаптации, этапы работ, инструменты, правовая сторона модификации и профильное обучение.
Содержание
Материал разбит на смысловые блоки. Каждый отвечает на отдельный вопрос по теме.
- Что понимают под адаптацией программного обеспечения
- Чем адаптация отличается от разработки с нуля
- Виды адаптации программных продуктов
- Настройка под процессы заказчика
- Локализация и языковая адаптация
- Перенос на другую платформу и оборудование
- Интеграция с внешними системами
- Этапы работ по адаптации
- Инструменты и технологии
- Тестирование после изменений
- Документация и сопровождение
- Правовые основы модификации программ
- Профессиональная подготовка специалистов
Дальше каждый пункт разобран подробно. Материал дает представление о процессе и требованиях к нему.
Что понимают под адаптацией программного обеспечения
Адаптация — это изменение готовой программы под условия конкретного пользователя без создания нового продукта.
Причины бывают разные. Организация работает по своим регламентам, использует особое оборудование или ведет учет в непривычных для программы разрезах.
Основные задачи адаптации:
- Подстройка под процессы. Формы, справочники и маршруты приводят к принятым в организации.
- Совместимость. Программа продолжает работать в новой среде или на другом оборудовании.
- Обмен данными. Продукт связывают с уже используемыми в компании системами.
- Языковая настройка. Интерфейс и документы переводят на нужный язык.
- Изменение функций. Добавляют недостающие возможности и убирают лишние.
Важно! Адаптация не должна ломать логику исходного продукта. Изменения вносят так, чтобы обновления от разработчика по-прежнему устанавливались.
Чем адаптация отличается от разработки с нуля
Оба процесса приводят к работающему решению, но идут разными путями.
Сравнение подходов:
| Критерий | Разработка с нуля | Адаптация готового продукта |
| Отправная точка | Пустой проект и техническое задание | Существующая программа с рабочей логикой |
| Срок | От нескольких месяцев | От нескольких недель |
| Стоимость | Полный бюджет проекта | Заметно ниже при том же результате |
| Свобода решений | Любая архитектура и функции | Ограничена структурой исходного продукта |
| Риски | Ошибки проектирования на старте | Конфликт правок с обновлениями разработчика |
Адаптация выгоднее, когда на рынке есть подходящий продукт. Переписывать учетную систему ради нескольких отличий в отчетах нерационально.
Виды адаптации программных продуктов
Работы различаются по характеру вносимых изменений.
Ниже разобраны направления, которые встречаются чаще всего.
Настройка под процессы заказчика
Самый распространенный вид работ. Программу приводят в соответствие с тем, как организация уже работает.
Типичные изменения включают состав полей в формах, наименования справочников, маршруты согласования документов, права ролей и шаблоны печатных форм.
Часть таких настроек предусмотрена самим продуктом. Их выполняют через встроенные средства без изменения исходного кода.
Локализация и языковая адаптация
Перевод интерфейса — только часть работы. Полноценная локализация затрагивает больше элементов.
Что меняется при языковой адаптации:
- Тексты интерфейса. Надписи, подсказки, сообщения об ошибках.
- Форматы данных. Дата, время, разделители чисел и денежные единицы.
- Печатные формы. Документы приводят к принятым в стране образцам.
- Направление текста. Для отдельных языков меняется вся компоновка экранов.
- Длина строк. Перевод бывает длиннее оригинала и ломает верстку кнопок.
Перенос на другую платформу и оборудование
Отдельное направление — работа программы в новой среде.
Задача возникает при смене операционной системы, переходе на другую архитектуру процессора или при подключении иного оборудования.
Объем работ зависит от исходного кода. Программа, написанная с использованием кроссплатформенных библиотек, переносится значительно проще.
Интеграция с внешними системами
Продукт редко работает изолированно. Обычно требуется обмен данными с уже используемыми программами.
Обмен реализуют через программные интерфейсы. Если внешняя система их не предоставляет, применяют выгрузку файлов по расписанию.
Этапы работ по адаптации
Процесс идет последовательно от обследования до сопровождения.
Стандартная последовательность:
- Обследование. Изучение процессов организации и возможностей исходного продукта.
- Анализ расхождений. Составление списка отличий между тем, что есть, и тем, что нужно.
- Техническое задание. Описание конкретных изменений и требований к результату.
- Проектирование решений. Выбор способа реализации каждого изменения.
- Внесение изменений. Настройка средствами продукта и доработка кода.
- Тестирование. Проверка новых возможностей и работоспособности прежних.
- Внедрение. Установка, перенос данных и обучение сотрудников.
- Сопровождение. Исправление замечаний и поддержка при обновлениях.
Инструменты и технологии
Набор средств зависит от исходного продукта и характера изменений.
Штатные средства настройки идут первыми. Многие системы содержат встроенный редактор форм, конструктор отчетов и механизм описания бизнес-правил.
Программные доработки выполняют на языке исходного продукта. Он определяется разработчиком и не выбирается свободно.
Обязательный инструмент — система контроля версий. Она хранит историю изменений и позволяет вернуться к рабочему состоянию.
Тестирование после изменений
Проверка после доработки устроена иначе, чем при разработке с нуля.
Проверяют не только новые возможности. Не менее важно убедиться, что прежние функции продолжают работать.
Такая проверка называется регрессионной. Она защищает от ситуации, когда правка в одном модуле ломает соседний.
Отдельно проверяют работу с реальным объемом данных. Изменение, быстрое на десяти записях, способно подвесить систему на сотне тысяч.
Документация и сопровождение
Внесенные изменения обязательно фиксируют.
Документация включает описание доработок, причины их появления, затронутые модули и порядок повторного применения после обновления.
Без такого описания сопровождение становится невозможным. Через год никто не вспомнит, зачем в системе появилась нестандартная форма.
Важно! Обновления от разработчика могут перезаписать доработки. Порядок их повторного применения фиксируют в документации сразу, а не после первой потери изменений.
Правовые основы модификации программ
Изменение чужой программы затрагивает авторские права ее создателя.
Программы для электронных вычислительных машин охраняются как объекты авторского права. Право на переработку принадлежит правообладателю.
Практический вывод простой. Возможность и пределы доработки определяются лицензионным соглашением или отдельным договором.
На что обратить внимание в документах:
- Разрешена ли модификация. Часть лицензий прямо запрещает изменение продукта.
- Кому принадлежат доработки. Права на созданные изменения фиксируют в договоре.
- Сохраняется ли поддержка. Производитель может снять гарантию после вмешательства в код.
- Доступ к исходному коду. Без него глубокая адаптация технически невозможна.
- Условия распространения. Право передавать доработанную версию третьим лицам оговаривают отдельно.
Отдельные случаи адаптации для собственных нужд закон допускает без согласия правообладателя. Границы таких действий стоит уточнять у юриста применительно к конкретной ситуации.
Профессиональная подготовка специалистов
Направление входит в программы среднего профессионального образования.
Профильный модуль охватывает разработку, внедрение и адаптацию программного обеспечения по отраслям. Он включает теоретическую часть, практические работы и курсовой проект.
В программе изучают анализ требований, средства разработки, методы отладки, документирование и правовые аспекты работы с программными продуктами.
- Содержание
- Что понимают под адаптацией программного обеспечения
- Чем адаптация отличается от разработки с нуля
- Виды адаптации программных продуктов
- Этапы работ по адаптации
- Инструменты и технологии
- Тестирование после изменений
- Документация и сопровождение
- Правовые основы модификации программ
- Профессиональная подготовка специалистов