Feature Driven Development
Итеративная методология разработки программного обеспечения, одна из гибких методологий разработки (agile).
#ebf0fa
Как достигается

При поступлении задачи мы, уже на этапе коммерческого предложения предлагаем заказчику декомпозировать задачу на части (Features).

Каждая часть является обособленной и законченной функциональностью для конечного пользователя и оценивается отдельно.

Части системы могут быть реализованы как последовательно, так и параллельно. Это позволяет заказчику, спланировать бюджет, и, в зависимости от целей, либо запустить разработку всех частей параллельно, либо реализовывать функционал заказанной системы последовательно.
1 Коммерческое предложение
Преимущества для Заказчика

Планировать бюджет в разрезе функций системы.
Как достигается

Компания Интервейл выполняет разработку используя принципы Agile и методологии Scrum. Но это не означает, что документация отсутствует, каждая задача прорабатывается аналитиком, декомпозируется на требования и сценарии, готовится документ, который видит заказчик и на основании которого проводится разработка.
2. Аналитика
Преимущества для Заказчика

Договоренности на бумаге.
Как достигается

Каждые 2 недели (sprint) заказчику предоставляется результат работы команды в виде демонстрации того, что было сделано за 2 недели. Заказчик видит формирование продукта и может сразу высказать замечания.
3. Разработка
Преимущества для Заказчика

Постоянный контроль за тем, что сделано.
Как достигается

Перед демонстрацией и перед выведением реализованного функционала в продуктивную среду проводится тестирование функционала на соответствие заявленным в ТЗ возможностям и отсутствие ошибок. Общий набор тестов включает в себя Smoke-тестирование, функциональное тестирование, нагрузочное и регрессионное тестирование. Постоянно пополняется набор автотестов.
4. Тестирование
Преимущества для Заказчика

Уверенность в качестве предоставляемого продукта.
Как достигается

Для каждого проекта формируется набор независимых стендов, что позволяет выполнять параллельно разработку, функциональное и интеграционное тестирование В рамках проекта формируется система CI/CD (continuous integration and continuous delivery), которая минимизирует время доставки разработанного функционала для тестирования.
5. Внедрение
Преимущества для Заказчика

Вывод функционала в продуктивную среду за минимальное время, откаты функционала, после вывода в продуктивную среду, сведены к мнимому.
Как достигается

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

— Общее техническое описание
— Руководства пользователей консоли
— Описание протоколов взаимодействия
— Инструкции по сборке и развертыванию решения
— Описание структуры базы данных
6. Документирование
Преимущества для Заказчика

Описание для пользователей как управлять разработанной системой.
Как достигается

Компания Интервейл обеспечивает техническую поддержку разработанного решения 24/7. В зависимости от уровня инцидента возникшая проблема может быть решена как на уровне специалиста службы тех. поддержки, так и на уровне разработчика.
7. Техническая поддержка
Преимущества для Заказчика

Возникшие проблемы будут решены быстро.
Представление

— Angular 2+
— JSF2 (Primefaces)
— Typescript
— JavaScript
Технологический стек
Логика и доступ к данным

— Java8
— Spring Framework
— JPA/Hibernate
— Grizzly
Сервер приложений

— Oracle WebLogic Server 12c
— Wild Fly
Web-сервер

— Nginx
— Oracle HTTP Server 12c
— Tomcat
База данных

— Oracle 11g/12c
— Postgresql
— MSSQL
— MySQL
Используемые архитектурные шаблоны

— SOA (service-oriented architecture)
— Batch processing
— Multithreading
— NIO
Поддерживаемые интерфейсы

— HTTP/HTTPS
— REST
— SOAP/XML
— JSON
— google protobuf
— AMQP (Rabbit)