Подходы к управлению качеством программного обеспечения в сфере финансов | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 3 октября, печатный экземпляр отправим 7 октября.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №32 (322) август 2020 г.

Дата публикации: 09.08.2020

Статья просмотрена: 5 раз

Библиографическое описание:

Святенко, А. С. Подходы к управлению качеством программного обеспечения в сфере финансов / А. С. Святенко. — Текст : непосредственный // Молодой ученый. — 2020. — № 32 (322). — С. 13-18. — URL: https://moluch.ru/archive/322/73089/ (дата обращения: 22.09.2020).



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

Ключевые слова: финансовые технологии, программный продукт, управление качеством, обеспечение качеством, тестирование.

The article discusses the features, concepts, organizational and technological aspects of the quality management system of software products in the financial sector. The characteristic is given to financial technologies at the present stage of development of the global financial system. Promising segments of the financial sector are presented that provide competitive advantages at the international level. It is noted that for the development of these segments, the effective functioning of the financial technology system is necessary. The success of software in the field of finance is determined by the quality of the resulting product. Therefore, when developing financial and banking software products, special attention should be paid to quality management. The necessity of conducting thorough and intensive testing, taking into account the specifics of working with financial transactions and confidential user data, is justified. The industry features of the financial system are considered. The goals of achieving quality in software development and the key criteria used to test the quality of software in the field of finance are given. The approaches to software quality management in the financial sector and the main types of testing that should be included in the testing strategy when working with software for financial technologies are described. Recommendations on the improvement of the software quality standard used in practice for products in the field of finance have been formed and made.

Keywords: financial technologies, software product, quality management, quality assurance, testing.

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

Финансовые технологии являются перспективно развивающейся отраслью, обусловленные повышением спроса, трансграничным обменом данными и внедрением современных технологий [1, с.63]. Компании, предоставляющие банковские и финансовые услуги, являются крупнейшими потребителями IT-услуг.

Рынок финансовых технологий представляет собой быстрорастущий сегмент рынка, в котором существующие и новейшие технологии активно совершенствуют бизнес-процессы, улучшают продукты и сервисы в различных сегментах финансовой сферы [2, с.98].

Высокий уровень проникновения интернет-пространства и цифровой трансформации способствует интенсивному росту потребности в высокотехнологичном, и одновременно доступном и надежном каждому потенциальному пользователю программного обеспечения. Цифровые технологии, как искусственный интеллект, облачные технологии, роботизация, аналитика больших данных и алгоритмы прогнозирования, интернет вещей, публичное облако, виртуальная и дополненные реальности, позволяют ускорить и упростить финансовые операции и автоматизировать бизнес-процессы в финансово-банковской сфере [3, с.1847].

В финансовой сфере можно выделить отдельные наиболее перспективные сегменты, способствующих к формированию конкурентных преимуществ российской экономики на международном уровне в долгосрочном прогнозе до 2035 года: операции по платежам и переводам, финансирование, управление капиталом, страхование (рис. 1) [4]. Разработка инновационных продуктов и высокотехнологичных сервисов происходит в первую очередь именно в указанных сегментах, поскольку на сегодня в них происходит существенная реструктуризация традиционных финансовых процедур и формирование новых бизнес-моделей на основе инновационных технологий.

Прогноз развития перспективных продуктов в финансовой сфере в России к 2035 году[1]

Рис. 1. Прогноз развития перспективных продуктов в финансовой сфере в России к 2035 году[1]

Эффективное создание и грамотное функционирование системы финансовых технологий обуславливают развитие всех секторов сферы финансов в России. Для чего необходимо обеспечить разработку технологий и повышение спроса на соответствующие сервисы, путем инвестирования финансово-технологических компаний, совершенствования регуляторной среды, а также подготовкой квалифицированных кадров [5, с.112].

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

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

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

Комплекс мероприятий по обеспечению качества формирует систему управления качеством, при котором большее внимание направлено на предотвращение появления дефектной разработки, чем ее устранению и исправлению [7, с.89].

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

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

Подходы к управлению качеством программного обеспечения заключаются в следующих уровнях, а именно: тестирование, контроль качества продукта (QC), и обеспечение качества продукта (QA).

Тестирование (англ. Testing) — самый первый уровень, является базовой проверкой создаваемого программного продукта на соответствие бизнес-требованиям к данному продукту [8, с.36]. Тестирование заключается в выявлении возможных проблемных мест, фиксировании и исправлении дефектов в уже созданном программном обеспечении. На данном уровне обеспечивается целостность программного продукта с учетом специфики работы с финансовыми транзакциями и конфиденциальными данными пользователей, а также возможности корректного взаимодействия с другими системами и программными компонентами.

Можно выделить следующие основные этапы тестирования финансовых продуктов: анализ и оценка бизнес-требований, тестирование базы данных, интеграционное, функциональное тестирование, тестирование безопасности, юзабилити-тестирование и нагрузочное тестирование [10].

QC (англ. Quality Control) — контроль качества продукта — второй уровень, включающий в себя анализ результатов тестирования, поиск ошибок и их устранение. Quality Control обеспечивает проверку продукта на соответствие бизнес-требованиям, соответствие заранее согласованному уровню качества продукта и готовность к выпуску продукта в производство. Первостепенная задача контроля качества — предоставить объективную оценку качества продукта на разных этапах разработки.

QA (англ. Quality Assurance) — обеспечение качества продукта — третий уровень, включающий в себя мероприятия на всех этапах разработки и использования продукта для обеспечения согласованного уровня качества программного обеспечения [9, с.103]. QA интегрировано во все этапы разработки: от описания проекта до тестирования, релиза и даже пост-релизного обслуживания. Основной задачей обеспечения качества является выстраивание системы, которая будет превентивно работать на качество продукта, чтобы при тестировании количество дефектов оставалось минимальным.

В соответствии со спецификой продуктов финансовой сферы в данном подходе учитываются тестирование транзакций, документации, код-ревью на соответствие стандартам, внедрение методик по работе с качеством, коммуникационные активности и другие.

В обязательном порядке тестирование QA должно гарантировать, что программное обеспечение не имеет никаких недостатков безопасности. Подход QA должен содержать отрицательные и положительные сценарии тестирования, но также может включать и деструктивное тестирование. Для тестирования безопасности используются инструменты автоматизации, такие как IBM AppScan и HPWebInspect, а для инструментов ручного тестирования, такие как Proxy Sniffer, Paros proxy, HTTP watch и т. д. Недопустимо выпустить программное обеспечение в эксплуатацию без проведения тестирования безопасности, которое обеспечивает защиту частной, финансовой и банковской информации от незаконных действий злоумышленников по финансовым операциям.

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

Финансовое программное обеспечение считается продуктом со сложной бизнес-логикой, поскольку управляет и обрабатывает важные пользовательские данные, которые напрямую связаны с конфиденциальной финансовой информацией (данные банковской карты, номера социального страхования, история транзакций, пароль и логин от интернет-банка и др.). Очень важно, чтобы все операции, выполняемые финансовым программным обеспечением, такие как перевод и внесение средств, запрос баланса, платежные операции, вывод средств и другие, выполнялись без дефектов и сбоев.

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

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

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

Стратегия проведения тестирования должна учитывать специфику финансовой сферы и все детали финансового бизнес-процесса. Выделим главные особенности, учитывающие отраслевую специфику финансовой системы:

– Конфиденциальность данных и безопасность частной и финансовой информации пользователей;

– Частые изменения в финансовом законодательстве;

– Интеграция с другими многочисленными продуктами: торговые счета, утилита оплаты счетов, кредитные карты и пр.;

– Интеграция нескольких секторов обслуживания: кредиты, розничные банковские операции и пр.;

– Соответствие финансовых операций технически сложным требованиям;

– Правила формирования и обработки транзакций;

– Скорость и безопасность обработки пользовательских запросов;

– Доступность программного обеспечения для всех потенциальных пользователей;

– Сложная в обращении клиентская база данных и большие объемы данных;

– Возможности угроз и нарушений безопасности;

– Многоуровневая функциональность.

При управлении качеством программного обеспечения используются количественные методы для оценивания поставленных задач. На сегодняшнее время в России применяется стандарт качества в области информационных технологий ГОСТ Р ИСО/МЭК 25010–2015, согласно серии принятых международных стандартов SQuaRE. В соответствии со стандартом SQuaRE используются следующие модели качества — модель качества при использовании продукта потребителем, модель качества продукта и качества данных. Совокупное использование данных моделей дает основание полагать, что учтены все требуемые характеристики качества и заинтересованные стороны.

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

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

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

Индивидуальный процесс разработки (PSP) основывается на принципах определения требований качества и тщательного поэтапного планирования при разработке продукта. Последовательное планирование позволяет оценить эффективность этапов, соответствие затрат и времени на каждом этапе, ошибки и дефекты, и объем работы. Сценарий планирования позволяет регулировать процесс планирования на каждом шаге разработки продукта.

Командный процесс разработки (TSP) дополняет индивидуальный подход, и позволяет конкретно и точно определить операционный процесс для выполнения этапов работы. В командном процессе разработки составляется стратегия выполнения проекта, этапы и шаги разработки, и определяется план. Таким образом, командный процесс обеспечивает оперативное и эффективное управление всеми этапами разработки.

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

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

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

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

Литература:

  1. Минченкова И. В., Особенности современного рынка финансовых технологий // Фундаментальные и прикладные исследования кооперативного сектора экономики, 2017, № 3, С. 98–104.
  2. Гадиева Т. Х.-М., Проблемы и перспективы применения финансовых технологий в Российской Федерации // Инновационное развитие экономики, 2017, № 3, С. 98–104.
  3. Борисова О. В., Рынок финансовых технологий и тенденции его развития // Финансы и кредит, 2018, т. 24, №. 30, С. 1844–1858.
  4. Перспективы развития рынка в России. Исследование компании EY по заказу Агентства Стратегических Инициатив, URL: https://www.ey.com/.
  5. Демьянова Е. А., Развитие компаний в современных условиях внедрения финансовых технологий // Имущественные отношения в Российской Федерации, 2017, № 7 (190), С. 104–113.
  6. Тамре Л., Введение в тестирование программного обеспечения: пер. с англ., М.: Издательский дом «Вильямс», 2003, 368 с.
  7. Звягина А. И., Понятие качества в IT-отрасли // Сборник трудов VIII конгресса молодых ученых, Санкт-Петербург, 2019, С. 89–91.
  8. Куликов С., Тестирование программного обеспечения. Базовый курс: учеб. пособ. 2–е изд., URL: http://svyatoslav.biz/software _testing_book/.

[1] Построено автором согласно исследованиям экспертов аналитической компании EY Global Limited

Основные термины (генерируются автоматически): программное обеспечение, финансовая сфера, программный продукт, продукт, управление качеством, сфера финансов, CMMI, качество, этап разработки, финансовая система.


Задать вопрос