Компания более 10 лет занимается созданием специализированных программных решений корпоративного уровня. В настоящее время в Центре программных решений компании трудится более 100 сотрудников: аналитики, программисты, менеджеры проектов, тестировщики, технические писатели. Центр имеет филиал в Нижнем Новгороде.
Специалисты Центра выполняют весь комплекс работ от предпроектного обследования до развертывания системы, обучения пользователей и сопровождения. Кроме того, проектные решения часто включают в себя интеграцию созданной системы с информационной средой заказчика.
Технология управления разработкой имеет для нас первостепенное значение, т.к. она позволяет жестко контролировать сроки разработки и гарантировать качество разрабатываемой системы. Мы используем адаптированный вариант технологии Rational Unified Process (RUP). Процедуры работы детально описаны на каждой стадии разработки и включают в себя способы работы с системой контроля версий, жизненный цикл дефекта, процедур ревизии проектных решений, изменения требований, ревизии кода, выпуска коррекций ПО и т.д. Последовательное применение этих процедур позволяет реально контролировать сроки создания и качество продукта. Отлаженная процедура отчетности позволяет предметно анализировать отклонения планируемых затрат от плановых, позволяя постоянно корректировать процедуры и методики оценки затрат.
Применяемые процедуры диктуют и ролевой состав проектной команды, в которую входит релиз-менеджер, аналитик, архитектор, тест-менеджер, а также программисты, тестировщики и технические писатели.
Четкое выделение различных производственных ролей и определение функциональных обязанностей в проектной команде позволяет наращивать ее потенциал в короткие сроки. Проектная дисциплина обеспечивает возможность достоверной оценки состояния проекта, что позволяет надежно управлять рисками, характерными для проектов разработки программного обеспечения.
С точки зрения архитектуры мы являемся приверженцами трехуровневых систем:
При тестировании программных систем специалисты Центра, как правило, используют автоматизированные сквозные тесты. Это позволяет при выпуске новой версии продукта не ограничиваться выборочным тестированием новых функций, а всегда проводить полное регрессионное тестирование. Например, полное регрессионное тестирование одного из наших продуктов занимает несколько часов, и содержит больше 1500 индивидуальных тестов. Автоматизированные тесты реализованы с таким расчетом, чтобы их можно было использовать при создании нагрузочных тестовых сценариев. Естественно, при тестировании пользовательских интерфейсов используются и традиционные ручные методы.
А также, специализированные прикладные решения для силовых структур, такие как: