The method of requirements prioritization in software engineering
In software development processes, requirements prioritization plays a key role. Proper gathering of requirements and their objective prioritization can ensure a sequential and effective development of a software project. With the increasing complexity of software, which is a characteristic of today...
Gespeichert in:
| Datum: | 2024 |
|---|---|
| 1. Verfasser: | |
| Format: | Artikel |
| Sprache: | Ukrainisch |
| Veröffentlicht: |
PROBLEMS IN PROGRAMMING
2024
|
| Schlagworte: | |
| Online Zugang: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/629 |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Назва журналу: | Problems in programming |
| Завантажити файл: | |
Institution
Problems in programming| _version_ | 1859502875635351552 |
|---|---|
| author | Nesterenko, O.V. |
| author_facet | Nesterenko, O.V. |
| author_sort | Nesterenko, O.V. |
| baseUrl_str | https://pp.isofts.kiev.ua/index.php/ojs1/oai |
| collection | OJS |
| datestamp_date | 2025-02-15T11:45:10Z |
| description | In software development processes, requirements prioritization plays a key role. Proper gathering of requirements and their objective prioritization can ensure a sequential and effective development of a software project. With the increasing complexity of software, which is a characteristic of today, problems related to defining requirements also increase. It becomes increasingly challenging to identify the most important and essential requirements in a stream of wishes and recommendations, determining what should be the starting point of development and where the most attention should be focused. The task of requirements prioritization is multi-criterial and poses significant cognitive loads. Most researchers and professionals suggest expert methods for decision-making in such environments, which to some extent help solve the tasks at hand. However, among the known requirements prioritization methods, practically all involve qualitative descriptive analysis based on brainstorming techniques. At the same time, in the modern conditions of digitalization, providing decision support based on a comprehensive presentation of the information model of the subject area and processing through information technologies for quantitative assessment of alternatives is more promising. Another important capability of modern technologies is visualization of decision-making processes. Thus, this work explores a comprehensive prioritization method that involves a full presentation of the information picture of the subject area, including in the form of computer ontologies, applying a quantitative AHP method for comparing requirements, and visualized data in gra phs for considering alternatives. Additional use of a modified SWOT matrix allows for the disaggregation of requirements into their individual characteristics and consideration of their advantages for problem evaluation. The existence of such tools and the capabilities of information technologies confirm the effectiveness and stability of the proposed method.Problems in programming 2024; 2-3: 132-139 |
| first_indexed | 2025-07-17T09:42:05Z |
| format | Article |
| fulltext |
132
Методи та засоби програмної інженерії
УДК 004.02 http://doi.org/10.15407/pp2024.02-03.132
О. В. Нестеренко
МЕТОД ПРІОРИТЕЗАЦІЇ ВИМОГ
В ПРОРАМНІЙ ІНЖЕНЕРІЇ
У процесах розробки програмного забезпечення ключову роль відіграє пріоритезація вимог. Нале-
жне збирання вимог та їхня об’єктивна пріоритезація можуть забезпечити послідовний та ефектив-
ний розвиток програмного проєкту. Зі збільшенням складності програмного забезпечення, що є озна-
кою сьогодення, зростають і проблеми, пов’язані із визначенням вимог. Усе складнішим завданням
стає виявлення в потоці побажань і рекомендацій найважливішого, найсуттєвішого, того, з чого
треба починати розроблення і що варте найбільшої уваги. Задача ранжування вимог є багатокрите-
ріальною і викликає значні когнітивні навантаження. Більшість із дослідників та фахівці пропону-
ють для ухвалення рішень у такому середовищі експертні методи, які певною мірою дають змогу
вирішувати поставлені задачі. Однак серед відомих методів пріоритезаці ї вимог практично усі пе-
редбачають якісний описовий аналіз, що спирається на техніки інтелектуального штурму. В той же
час в сучасних умовах цифровізації перспективнішим є забезпечення підтримки рішень на основі
вичерпного подання інформаційної моделі предметної області та опрацювання за допомогою інфо-
рмаційних технологій кількісних оцінок альтернатив. Також важливою можливістю сучасних тех-
нологій є забезпечення візуалізації процесів, пов’язаних із прийняттям рішень. Отже, у цій роботі
досліджується комплексний метод пріоретизації, який передбачає вичерпне подання інформаційної
картини предметної області, зокрема у вигляді комп’ютерних онтологій, застосування для порів-
няння вимог кількісного методу аналізу ієрархій та візуалізовані у графах дані щодо розгляду аль-
тернатив. Додаткове використанням модифікованої матриці SWOT дозволяє проводити дезагрегу-
вання вимог до окремих їхніх характеристик та врахування переваг для оцінювання проблем. Ная-
вність таких інструментів та можливостей інформаційних технологій підтверджують ефективність
та стабільність запропонованого методу.
Ключові слова: інженерія вимог, комп’ютерні онтології, візуалізація, графи, AHP, SWOT.
О. V. Nesterenko
THE METHOD OF REQUIREMENTS PRIORITIZATION
IN SOFTWARE ENGINEERING
Abstract: In software development processes, requirements prioritization plays a key role. Proper gathering
of requirements and their objective prioritization can ensure a sequential and effective development of a
software project. With the increasing complexity of software, which is a characteristic of today, problems
related to defining requirements also increase. It becomes increasingly challenging to identify the most
important and essential requirements in a stream of wishes and recommendations, determining what should
be the starting point of development and where the most attention should be focused. The task of require-
ments prioritization is multi-criterial and poses significant cognitive loads. Most researchers and profes-
sionals suggest expert methods for decision-making in such environments, which to some extent help solve
the tasks at hand. However, among the known requirements prioritization methods, practically all involve
qualitative descriptive analysis based on brainstorming techniques. At the same time, in the modern condi-
tions of digitalization, providing decision support based on a comprehensive presentation of the information
model of the subject area and processing through information technologies for quantitative assessment of
alternatives is more promising. Another important capability of modern technologies is visualization of
decision-making processes. Thus, this work explores a comprehensive prioritization method that involves
a full presentation of the information picture of the subject area, including in the form of computer ontolo-
gies, applying a quantitative AHP method for comparing requirements, and visualized data in gra phs for
considering alternatives. Additional use of a modified SWOT matrix allows for the disaggregation of re-
quirements into their individual characteristics and consideration of their advantages for problem evalua-
tion. The existence of such tools and the capabilities of information technologies confirm the effectiveness
and stability of the proposed method.
Key words: requirements engineering, computer ontologies, visualization, graphs, AHP, SWOT
© О.В. Нестеренко, 2024
ISSN 1727-4907. Проблеми програмування. 2024. №2-3
133
Методи та засоби програмної інженерії
Вступ
Інженерія вимог до програмного за-
безпечення (ПЗ) є поширеною і необхідною
дисципліною в IT-компаніях. Галузь знань
Software Requirements міжнародних рекоме-
ндацій з програмної інженерії є першою у
зведенні знань. Від адекватного визначення
функцій, умов і обмежень виконання ПЗ
суттєво залежить успіх програмного проє-
кту і, зрештою, якість отриманого продукту.
Збирання вимог є нетривіальною за-
дачею і проводиться, як правило, шляхом
багатьох ітерацій спілкування розробника з
замовником. Але ще складнішим завданням
є виявлення в потоці побажань і рекоменда-
цій найважливішого, найсуттєвішого, того,
з чого треба починати і що варте найбіль-
шої уваги. Тому пріоритезація, або ранжу-
вання вимог, може забезпечити їхнє струк-
турування, створити умови для їх класифі-
кації та систематизації, що допоможе ко-
манді розробників зрозуміти їхнє значення
і цінність та ухвалити відповідні ефективні
рішення.
Задача ранжування вимог є багаток-
ритеріальною і викликає значні когнітивні
навантаження. Дослідники та фахівці про-
понують низку методів, більшість з них
спираються на експертні методи, які пев-
ною мірою дають змогу вирішувати поста-
влені задачі. Однак, серед таких відомих
методів (MoSCoW, Kano, Story Mapping,
KJ, Feature Buckets) практично усі передба-
чають якісний описовий аналіз, що спира-
ється на техніки інтелектуального штурму.
Водночас у сучасних умовах цифровізації
більш перспективним є забезпечення підт-
римки рішень в аналітичній діяльності, осо-
бливо в багатокритеріальних випадках на
основі вичерпного подання інформаційної
картини предметної області та опрацю-
вання за допомогою інформаційних техно-
логій кількісних оцінок альтернатив.
Таким чином існує актуальна про-
блема визначення кількісного методу та ві-
дповідного інформаційно-технологічного
інструментарію для вирішення важливого
практичного завдання підтримки експерт-
ної діяльності в процесах аналізу вимог, зо-
крема, для їхньої пріоритезації.
Аналіз останніх досліджень
і публікацій
Ключову роль пріоритезації вимог у
процесі розроблення програмного забезпе-
чення демонструє значна кількість публіка-
цій, зокрема присвячених систематичному
аналізу важливих факторів у контексті ви-
значення пріоритетів вимог, таких як ри-
зики, вартість, час та ін. [1, 2]. В цих роботах
відмічається використання кількох десятків
різних методів пріоритезації вимог. Але за-
значається, що ці методи пріоритезації ма-
ють деякі обмеження та недоліки, існують
проблеми з вибором критеріїв пріоритезації,
які часто визначаються інтуїтивно. Водно-
час важливість критеріїв може змінюватися
залежно від того, наскільки глибоко опра-
цьована вимога в процесі розроблення [3].
Існування великої кількості різних
методів (технік) визначення пріоритетності
вимог пов’язане передусім із різноманіттям
специфічних особливостей програмних за-
собів і систем. Тому дослідники намага-
ються запропонувати підходи гібридизації
існуючих методів для досягнення більшої
універсальності і ефективності. В роботі
[4] запропоновано метод MCBRank, який
включає в себе відомий метод MoSCoW і
метод Case-Based Ranking на основі статис-
тичного аналізу випадків для покращення
правильності визначення пріоритетів. В ро-
боті [5] розглянуто гібридну модель, що
включає відому техніку пріоритезації та ви-
користання критичних факторів проєкту на
основі їхніх квантованих балів.
У роботі [6] зазначається, що у відо-
мому методі розроблення цільових вимог
AGORA (attributed goal oriented
requirements analysis) особи, які ухвалюють
рішення, використовують суб’єктивні оці-
нки для визначення пріоритетів вимог,
тому для забезпечення обчислення об'єкти-
вних значень цей метод пропонується роз-
ширити методом аналізу ієрархій AHP
(analytic hierarchy process). В роботі [7] зве-
ртається увага на те, що звичайні методи
пріоритезації вимог, особливо з урахуван-
ням атрибутів якості ПЗ, є якісними за
своєю природою. Тому у цій статті також
134
Методи та засоби програмної інженерії
пропонується техніка AHP для кількісного
ранжування вимог.
Водночас необхідно звернути увагу,
що у складних випадках, наприклад, стра-
тегічного аналізу, існує потреба у враху-
ванні при пріоретизації значної сукупності
внутрішніх та зовнішніх факторів, в оціню-
ванні вимог за такими узагальненими кри-
теріями, як перспективи вигоди, існуючі
можливості, можливі витрати та допустимі
ризики тощо. Одним із інструментів, шо
найбільш часто використовується для та-
кого розгляду, є SWOT-аналіз.
Зазвичай SWOT застосовують на ма-
крорівні стратегічного аналізу. Незважа-
ючи на свої переваги та популярність, цей
метод зазнав критики, зокрема, щодо відсу-
тності методології кількісної оцінки ре-
зультатів складання SWOT-матриці. Зруч-
ність використання первинного SWOT пок-
ращує гібридний метод SWOT/AHP, впе-
рше представлений у [8]. Відтоді цей підхід
набув широкої популярності і застосову-
ється в багатьох сферах [9, 10].
Багато дослідників поділяють думку,
що підтримка рішень в аналітичній діяльно-
сті, особливо в багатокритеріальних випад-
ках, до яких належить й аналіз вимог, безпо-
середньо пов’язана з вичерпним поданням ін-
формаційної картини предметної області
(ПдО). Тому у сучасних умовах забезпечення
когнітивного процесу пріоретизації вимог
полягає передусім у підтримці доменної ін-
женерії на основі відповідних моделей та
знань [11]. У зв’язку із цим як методичну ос-
нову для вирішення проблеми прийняття ра-
ціонального рішення експертами, необхідно
передусім встановити оптимальний склад ін-
формації, потрібної для ефективного вироб-
лення і ухвалення рішень, забезпечити збір,
подання та аналіз на різних рівнях значної су-
купності гетерогенних даних [12r]. Тому ва-
жливим елементом сучасних систем підтри-
мки ухвалення рішень є інформаційна мо-
дель ПдО. Серед існуючих підходів до таких
моделей останнім часом найбільш адекват-
ним вважається представлення ПдО у ви-
гляді комп’ютерних онтологій [13]. Підви-
щення ефективності цього підходу полягає у
застосуванні механізмів спільного викорис-
тання онтологій ПдО і онтологій, що нале-
жать до процесів програмної інженерії [14].
Багато досліджень, зокрема у галузі
соціальних наук, підтверджують, шо важ-
ливою можливістю сучасних технологій є
забезпечення візуалізації процесів, пов’яза-
них із ухваленням рішень [15]. Широко ви-
користовуваними інструментами для по-
ліпшення розуміння проблем і, зрештою,
покращення ухвалених рішень є застосу-
вання для візуалізації інформації графічних
засобів. Візуалізовані у графах дані потре-
бують менших когнітивних зусиль у інтер-
претації, ніж текстові (табличні) [16].
Отож, залишаються невирішеними
частини загальної проблеми ухвалення ефе-
ктивних рішень щодо пріоритезації вимог
до ПЗ, які пов’язані з інформаційною підт-
римкою, кількісним обрахуванням та візуа-
лізацією процесу пріоритезації та яким при-
свячується дана стаття.
Виходячи з цього, метою статті є до-
слідження комплексного методу підтримки
ухвалення рішень щодо пріоритезації ви-
мог з урахуванням інформаційного забезпе-
чення, кількісного оцінювання вимог та ві-
зуалізації процесу порівнянь вимог.
Виклад основного матеріалу
дослідження
Методи пріоритезації, які зарекоме-
ндували себе в усьому світі, та які викорис-
товуються у середовищі менеджерів для ра-
нжування вимог до програмних проєктів,
оперують в основному якісними категорі-
ями. У Табл. 1 наведено перелік деяких та-
ких методів та сукупності категорій, що
ними використовуються.
З даних Табл. 1 не важко помітити,
що ці методології базуються на основі до-
статньо схожих прийомів посилення інте-
лектуальних зусиль учасників групового
штурму, але оперують категоріями, які не
мають чіткого визначення. Що таке «найва-
жливіші» вимоги? Або «некритичні» ви-
моги? Враховуючи, що в цих методах мо-
дель відношення переваги, якою користу-
ються експерти, є невизначеною і нечіт-
кою, а уподобання відрізняються у різних
експертів, це призводить до розподілу оці-
нок для одного й того самого об’єкта. Як
наслідок, рівень неузгодженості порівнянь
часто є вирішальним в результатах аналізу.
135
Методи та засоби програмної інженерії
Таблиця 1
Категорії відомих методів пріоритезації
вимог
Метод Категорії
MoSCoW найважливіші вимоги; важливі
вимоги; бажані вимоги;
некритичні вимоги
Kano очікувані властивості; основні
властивості; властивості, що ви-
кликають захоплення
Story
Mapping
критичність
KJ найважливіші групи вимог;
найважливіші вимоги в групі
найважливіших вимог
Feature
Buckets
вимоги, здатні сильно вплинути
на цільові показники продукту;
додаткові покращення; вимоги,
важливі для приємного подиву
замовника; стратегічні вимоги,
важливі для майбутнього
Impact-
effort
matrix
вплив;
зусилля
Прийнято вважати, що експерти є
досвідченими, професійними та чесними.
Однак на практиці існують випадки коли
експерти намагаються маніпулювати ре-
зультатами на свою користь, або вагаються
і роблять помилки через обмеженість знань
і інформації. Це потребує застосовання до-
даткових механізмів, які дозволяють ви-
явити маніпуляторів і мінімізувати їхній
вплив на груповий консенсус.
Таким чином подальші проблеми
проєкту фактично укорінені у здавалося б
простому етапі – визначення експертами
певних ваг (пріоритету) альтернатив при
формуванні ранжованого списку вимог.
Безперспективно сподіватись, що в найбли-
жчі часи людина в цьому сенсі зміниться на
краще. Але вже сьогодні зміну ситуації мо-
жуть забезпечити інформаційні технології,
що підтримують кількісні методи.
Одним із методів пріоритезації, що
базується на кількісних даних, є RICE, аб-
ревіатура якого походить від чотирьох фак-
торів, що використовуються для оцінки та
пріоритезації об’єктів: охоплення (Reach),
вплив (Impact), впевненість в оцінці охоп-
лення, впливу та трудовитрат (Confidence)
та трудовитрати (Effort). Щоб отримати
оцінку за RICE необхідно об’єднати ці фак-
тори, представлені у кількісному вимірі, за
визначеною формулою.
Експертні кількісні порівняння для
ранжування альтернатив знайшли застосу-
вання й у відомому методі аналізу ієрархій
(AHP), запропонованому наприкінці 1970-х
років американським математиком Т. Сааті.
Метод полягає в ієрархічній декомпозиції
проблеми на простіші складові і поетап-
ному встановленні пріоритетів оцінюваних
компонент із використанням парних порів-
нянь.
Водночас чимало дослідників поді-
ляють думку, що підтримка рішень в ана-
літичній діяльності, особливо в багатокри-
теріальних випадках, безпосередньо
пов’язана з вичерпним поданням інформа-
ційної картини предметної області (ПдО).
У зв’язку із цим як методичну основу для
вирішення проблеми прийняття раціона-
льного рішення експертами щодо вибору
вимог необхідно передусім установити оп-
тимальний склад інформації, потрібної для
оцінювання вимог, забезпечити збір, по-
дання та аналіз на різних рівнях значної су-
купності гетерогенних даних [12]. Серед
існуючих підходів до таких інформаційних
моделей останнім часом найбільш адеква-
тним вважається представлення ПдО у ви-
гляді комп’ютерних онтологій [13, 14]. У
загальному випадку така онтологія містить
інформаційні описи на основі об’єктно-
орієнтованої процедури формалізації кон-
цептів та їхніх бінарних відношень. Врахо-
вуючи, що для ухвалення об’єктивних рі-
шень важливе значення має обізнаність
експертів із характеристиками альтерна-
тив, одночасне застосування елементів он-
тологічних описів підвищує рівень конк-
ретності моделі та більш чіткого уявлення
щодо значення кожної вимоги ля успішно-
сті проєкту.
Таким чином в сучасних умовах в
системах ухвалення рішень існує перехід
від впливу індивідуальних суджень до під-
вищення значення кількості доступної ін-
формації щодо альтернатив.
З іншого боку, щоб забезпечити екс-
пертну діяльність, необхідні структуровані
формати для опису альтернатив. Це є сер-
136
Методи та засоби програмної інженерії
йозною проблемою, оскільки від читабель-
ності і зрозумілості задокументованої ін-
формації багато в чому залежать успіх і
ефективність внеску експертів у процес ра-
нжування вимог. У цьому сенсі важливою
можливістю сучасних технологій є забезпе-
чення візуалізації процесів, пов’язаних із
ухваленням рішень.
Широко використовуваними інстру-
ментами для поліпшення розуміння про-
блем і, зрештою, покращення ухвалених рі-
шень є застосування для візуалізації проце-
дур порівняння графічних засобів. Ство-
рення графових моделей для визначення
впливів різного типу свідчить про зручність
їх застосування. Водночас, у випадку засто-
сування AHP така візуалізація надає експе-
ртам ефективний інструментарій запобі-
гання транзитивної неузгодженості, яка, як
відомо, в цьому методі не контролюється
[12, 16].
На Рис. 1 показано фрагмент інтер-
фейсу програмного засобу підтримки ран-
жування альтернатив Ci з візуалізацією на
графах.
Рис. 1. Приклад візуалізації на гра-
фах процесу ранжування альтернатив
У найпростішому випадку при ви-
значенні експертних оцінок вимог Cr їхні
кількісні та якісні показники, отримані на
основі реальних метрик та доступні з інфо-
рмаційних джерел, узагальнюються у кіль-
кісному (бальному) вимірі за певною умов-
ною шкалою, наприклад: незначний вплив
на проєкт – 1 бал, низький – 3, середній – 5,
високий – 7, дуже високий – 9 балів. Далі
проводиться нормування величин Cr для
отримання їхніх відносних величин 𝐶𝐶𝑟𝑟̅̅ ̅ в ін-
тервалі (0,1):
𝐶𝐶�̅�𝑟 =
𝐶𝐶𝑟𝑟
∑ 𝐶𝐶𝑟𝑟|𝑂𝑂|
𝑟𝑟=1
,
де O – кількість вимог, що розгляда-
ються.
Запропонований підхід може бути
застосовним для відносно простих задач
пріоритезації вимог. У складніших випад-
ках існує потреба у врахуванні при ранжу-
ванні вимог значної сукупності внутрішніх
та зовнішніх факторів, в оцінюванні альте-
рнатив за такими критеріями, як перспек-
тиви вигоди, існуючі можливості, можливі
витрати, допустимі ризики та ін. Одним із
інструментів, шо найчастіше використову-
ється для такого розгляду, є SWOT-аналіз.
Зазвичай SWOT застосовують на ма-
крорівні стратегічного аналізу, але універ-
сальність методу дозволяє використову-
вати його і в інших видах розгляду про-
блем. Особливістю SWOT є те, що він по-
єднує внутрішні (Strengths, Weaknesses) та
зовнішні фактори (Opportunities, Threats),
що впливають на об’єкт дослідження. Вод-
ночас розглядається позитивний вплив
(Strengths, Opportunities) та негативний
вплив (Weaknesses, Threats).
Скористуємось особливостями
SWOT та ідеями вище розглянутих методо-
логій для формування матриці аналізу у
предметній області пріоритезації вимог. За
оцінку сильної сторони вимоги, шо розгля-
дається, доцільно вибрати її вплив на якість
майбутнього програмного продукту (Табл.
2). Водночас слабкою стороною є витрати
трудових ресурсів на забезпечення вико-
нання цієї вимоги.
Таблиця 2
Співставлення факторів SWOT та QECR
SWOT QECR
Strengths (сильні
сторони)
Quality (якість)
Weaknesses (слабкі
сторони)
Effort (трудовитрати)
Opportunities
(можливості)
Consumers (спожи-
вачі)
Threats (загрози) Risks (ризики)
Відповідно можливості розвитку
проєкту від реалізації вимоги напряму
пов’язані з врахуванням потреб ринку та
137
Методи та засоби програмної інженерії
споживачів. Нарешті, необхідною є оцінка
ризиків для проєкту, пов’язаних з пріорите-
тною реалізацією вимоги, та вжиттям захо-
дів для зменшення або управління цими ри-
зиками.
Тоді матриця QECR-аналізу вимог
буде виглядати як наведено у Табл. 3.
Таблиця 3
Особливості QECR-аналізу вимог
Властивості
вимоги
Переваги
вимоги
Недоліки
вимоги
Внутрішні (Q)
Якість
(E)
Трудовитрати
Зовнішні (C)
Споживачі
(R)
Ризики
Незважаючи на свої переваги та по-
пулярність, метод SWOT-аналізу зазнав
критики, зокрема, щодо відсутності мето-
дології кількісної оцінки результатів скла-
дання SWOT-матриці. Зручність викорис-
тання первинного SWOT покращує гібрид-
ний метод SWOT/AHP.
У цьому дослідженні пропонується
зворотне застосування методології SWOT,
тобто на мікрорівні, а саме під час аналізу
характеристик вимог. Побудова матриці
QECR дозволить експерту врахувати важ-
ливі фактори, які можуть бути недооцінені
при традиційному аналізі вимог.
Підхід передбачає побудову QECR -
матриці для кожної вимоги, а її фактори
враховуються в квартилях матриці залежно
від впливу вимоги на проєкт.
Застосування цього підходу відбува-
ється за таким алгоритмом.
1. У процесі аналізу предметної об-
ласті та збирання вимог формується інфор-
маційна модель на основі онтологій (онто-
логія ПдО, онтології задач).
2. Проводиться преселекція вимог з
аналізом їх характеристик.
3. Для кожної з відібраних вимог фо-
рмується матриця QECR, кожен елемент зі
складових секторів якої розглядається на
основі конкретних параметрів вимоги, які
доступні зі сформованих інформаційних
джерел (бази даних проєкту) і оцінюється в
кількісному (бальному) вимірі. Наприклад,
за вище наведеною умовною шкалою від 1
до 9 балів. Таким чином знаходимо для ко-
жної вимоги оцінки складових секторів,
відповідно CQ, CE, CC, CR.
4. Визначається сила кожної вимоги
Cі за чотирьома секторами QECR:
𝐶𝐶𝑖𝑖 =
𝐶𝐶𝑄𝑄 + 𝐶𝐶𝐶𝐶
𝐶𝐶𝐸𝐸 + 𝐶𝐶𝑅𝑅
.
5. Далі, особливо у разі участі в оці-
нюванні вимог групи експертів, необхідно
провести парне порівняння вимог на основі
отриманих оцінок Cі з використанням AHP
з візуалізацією процесу порівнянь.
Розглянемо спрощений приклад за-
стосування підходу QECR/AHP.
У Табл. 4 наведено результати оці-
нювання п’яти вимог одним експертом за
методологією QECR.
Таблиця 4
Оцінювання характеристик вимог за мето-
доогією QECR
Вимоги Q E C R Сила вимог
С1 9 1 3 1 6,00
С2 7 1 5 3 3,00
С3 1 9 3 3 0,33
С4 5 3 7 5 1,50
С5 9 1 3 5 2,00
На Рис. 2 показано приклад візуалі-
зації на графах процесу ранжування вимог
з використання цього методу (дуги графу
навантажені оцінками переваг за шкалою
Сааті, що використовується в AHP).
Рис. 2. Приклад візуалізації на гра-
фах процесу ранжування вимог з викорис-
тання методу аналізу ієрархій
138
Методи та засоби програмної інженерії
Автоматизація запропонованого ме-
тоду дозволяє відносно швидко проводити
ітеративні експерименти з ранжування ви-
мог та, за необхідності, з коригуванням ін-
формаційної моделі, поки не буде досяг-
нуто узгодженого результату.
Висновки
У статті запропоновано вирішення
актуальної проблеми визначення кількіс-
ного методу та відповідного інформаційно-
технологічного інструментарію для підт-
римки експертної діяльності в процесах
аналізу вимог, зокрема, для їхньої пріори-
тезації.
Метод базується на комплексному
використанні онтологічної моделі предмет-
ної області, методології SWOT-аналізу ви-
мог та методу аналізу ієрархій з візуаліза-
цією на графах процесів парних порівнянь.
Подяка
Щира подяка колективу співробіт-
ників державного підприємства «Українсь-
кий науковий центр розвитку інформацій-
них технологій», які брали участь у розро-
бці теоретичних основ і відповідного про-
грамного інструментарію підтримки екс-
пертної діяльності в процесах ухвалення рі-
шень.
Література
1. M. Sufian, Z. Khan, S. Rehman, W. Haider Butt, A
systematic literature review: Software requirements
prioritization techniques, in: Proceedings of the
2018 International Conference on Frontiers of
Information Technology (FIT 2018), 2018, pp. 35–
40. doi: 10.1109/FIT.2018.00014.
2. H. Ahuja, Sujata, G. N. Purohit, Understanding
requirement prioritization techniques, in:
Proceeding of the IEEE International Conference
on Computing, Communication and Automation
(ICCCA 2016), 2016, pp. 257-262. doi:
10.1109/CCAA.2016.7813759
3. R. Berntsson Svensson, R. Torkar, Not all
requirements prioritization criteria are equal at all
times: A quantitative analysis, in: Journal of
Systems and Software, 2024, 209, art. no. 111909.
doi: 10.1016/j.jss.2023.111909
4. S. Ahmad, R. Rizawanti, T. Woodings, I.
Ermahani A. Jalil, MCBRank Method to Improve
Software Requirements Prioritization, in:
International Journal of Advanced Computer
Science and Applications (IJACSA), 2022, 13(7),
pp. 215-222. doi:
10.14569/IJACSA.2022.0130728.
5. H. Arshad, S. Shaheen, J.A. Khan et al., A novel
hybrid requirement’s prioritization approach based
on critical software project factors, in: Cogn Tech
Work, 2023, 25, pp. 305–324. doi: 10.1007/s10111-
023-00729-3
6. M. Sadiq, T. Hassan, S. Nazneen,
AHP_GORE_PSR: Applying analytic hierarchy
process in goal oriented requirements elicitation
method for the prioritization of software
requirements, in: Proceedings of the 2017 3rd
International Conference on Computational
Intelligence & Communication Technology
(CICT), 2017, pp. 1-5. doi:
10.1109/CIACT.2017.7977366.
7. M. Kassab, N. Kilicay-Ergin, Applying analytical
hierarchy process to system quality requirements
prioritization, in: Innovations in Systems and
Software Engineering, 2015, 11 (4), pp. 303-312.
doi: 10.1007/s11334-015-0260-8.
8. M. Kurttila, J. Pesonen, M. Kangas, M. Kajanus,
Utilizing the analytic hierarchy process (AHP) in
SWOT analysis hybrid method and its application
to a forest-certification case, in: Forest Policy and
Economics, 2000, 1, pp. 41-52.
9. G. Popescu, C. Gasparotti, SWOT-AHP hybrid
method for ranking the strategies in the
shipbuilding sector, in: Journal of Business
Economics and Management, 2022, 23 (3), pp.
706–730.
10. R. Ariyana, R. Amalia, D. S. Salsabilah, et al.,
Strategy for increasing lowland rice productivity in
West Java Province with the SWOT-AHP model
approach, in: Proceedings of the 3rd International
Conference on Biosciences. IOP Conf. Series: Earth
and Environmental Science, IOP Publishing, 2020,
457, 012058.
11. O. V. Chebanyuk, O. V. Palahin, K. K. Markov.
Domain engineering approach of software
requirements analysis. Проблеми програмування,
2020. № 2-3, с. 164-172. doi:
10.15407/pp2020.02-03.164
12. O. Nesterenko, I. Netesin, V. Polischuk, Y Selin.
Multifunctional Methodology of Expert Evaluation
Alternatives in Tasks of Different Information
Complexity, in: Proceedings of the IEEE 3rd
International Conference on Advanced Trends in
Information Theory (ATIT). 2021, pp. 226-231.
13. Ю. В. Рогушина. Засоби та методи аналізу не-
структурованих даних. Проблеми програму-
вання, 2019, № 1. С. 57-77. doi:
10.15407/pp2019.01.057
14. Л. П. Бабенко. Онтологический подход к специ-
фикации свойств программных систем и их ком-
понентов. Кибернетика и системный анализ,
2009, Т. 45, № 1. С. 180-187.
15. K. Eberhard, The effects of visualization on
judgment and decision-making: a systematic
literature review. in: Management Review
139
Методи та засоби програмної інженерії
Quarterly, 2021, 73(1). doi:10.1007/s11301-021-
00235-8
16. O. Nesterenko, I. Netesin, V. Polischuk, Y Selin.
Graph-based decision making for varying
complexity multicriteria problems, in: Computer
Science Journal of Moldova. 2022, 30(3), pp. 391-
412. doi:10.56415/csjm.v30.21
References
1. M. Sufian, Z. Khan, S. Rehman, W. Haider Butt,
A systematic literature review: Software
requirements prioritization techniques, in:
Proceedings of the 2018 International Conference
on Frontiers of Information Technology (FIT
2018), 2018, pp. 35–40. doi:
10.1109/FIT.2018.00014.
2. H. Ahuja, Sujata, G. N. Purohit, Understanding
requirement prioritization techniques, in:
Proceeding of the IEEE International Conference
on Computing, Communication and Automation
(ICCCA 2016), 2016, pp. 257-262. doi:
10.1109/CCAA.2016.7813759.
3. R. Berntsson Svensson, R. Torkar, Not all
requirements prioritization criteria are equal at all
times: A quantitative analysis, in: Journal of
Systems and Software, 2024, 209, art. no. 111909.
doi: 10.1016/j.jss.2023.111909
4. S. Ahmad, R. Rizawanti, T. Woodings, I.
Ermahani A. Jalil, MCBRank Method to Improve
Software Requirements Prioritization, in:
International Journal of Advanced Computer
Science and Applications (IJACSA), 2022, 13(7),
pp. 215-222. doi:
10.14569/IJACSA.2022.0130728.
5. H. Arshad, S. Shaheen, J.A. Khan et al., A novel
hybrid requirement’s prioritization approach based
on critical software project factors, in: Cogn Tech
Work, 2023, 25, pp. 305–324. doi:
10.1007/s10111-023-00729-3
6. M. Sadiq, T. Hassan, S. Nazneen,
AHP_GORE_PSR: Applying analytic hierarchy
process in goal oriented requirements elicitation
method for the prioritization of software
requirements, in: Proceedings of the 2017 3rd
International Conference on Computational
Intelligence & Communication Technology
(CICT), 2017, pp. 1-5. doi:
10.1109/CIACT.2017.7977366.
7. M. Kassab, N. Kilicay-Ergin, Applying analytical
hierarchy process to system quality requirements
prioritization, in: Innovations in Systems and
Software Engineering, 2015, 11 (4), pp. 303-312.
doi: 10.1007/s11334-015-0260-8.
8. M. Kurttila, J. Pesonen, M. Kangas, M. Kajanus,
Utilizing the analytic hierarchy process (AHP) in
SWOT analysis hybrid method and its application
to a forest-certification case, in: Forest Policy and
Economics, 2000, 1, pp. 41-52.
9. G. Popescu, C. Gasparotti, SWOT-AHP hybrid
method for ranking the strategies in the
shipbuilding sector, in: Journal of Business
Economics and Management, 2022, 23 (3), pp.
706–730.
10. R. Ariyana, R. Amalia, D. S. Salsabilah, et al.,
Strategy for increasing lowland rice productivity in
West Java Province with the SWOT-AHP model
approach, in: Proceedings of the 3rd International
Conference on Biosciences. IOP Conf. Series:
Earth and Environmental Science, IOP Publishing,
2020, 457, 012058.
11. O. V. Chebanyuk, O. V. Palahin, K. K. Markov.
Domain engineering approach of software
requirements analysis. Проблеми програму-
вання, 2020. № 2-3, с. 164-172. doi:
10.15407/pp2020.02-03.164
12. O. Nesterenko, I. Netesin, V. Polischuk, Y Selin.
Multifunctional Methodology of Expert
Evaluation Alternatives in Tasks of Different
Information Complexity, in: Proceedings of the
IEEE 3rd. International Conference on Advanced
Trends in Information Theory (ATIT). 2021, pp.
226-231.
13. Ю. В. Рогушина. Засоби та методи аналізу не-
структурованих даних. Проблеми програму-
вання, 2019, № 1. С. 57-77. doi:
10.15407/pp2019.01.057
14. Л. П. Бабенко. Онтологический подход к специ-
фикации свойств программных систем и их ком-
понентов. Кибернетика и системный анализ,
2009, Т. 45, № 1. С. 180-187.
15. K. Eberhard, The effects of visualization on
judgment and decision-making: a systematic
literature review. in: Management Review
Quarterly, 2021, 73(1). doi:10.1007/s11301-021-
00235-8
16. O. Nesterenko, I. Netesin, V. Polischuk, Y Selin.
Graph-based decision making for varying
complexity multicriteria problems, in: Computer
Science Journal of Moldova. 2022, 30(3), pp. 391-
412. doi:10.56415/csjm.v30.21
Одержано: 12.03.2024
Внутрішня рецензія отримана: 19.03.2024
Зовнішня рецензія отримана: 08.04.2024
Про автора:
1Нестеренко Олександр Васильович,
Доктор технічних наук, професор,
завідувач кафедри
https://orcid.org/0000-0001-5329-889X.
Місце роботи автора:
1Міжнародний європейський університет,
E-mail: oleksandr_nesterenko@ieu.edu.ua
https://ieu.edu.ua
|
| id | pp_isofts_kiev_ua-article-629 |
| institution | Problems in programming |
| keywords_txt_mv | keywords |
| language | Ukrainian |
| last_indexed | 2025-07-17T09:42:05Z |
| publishDate | 2024 |
| publisher | PROBLEMS IN PROGRAMMING |
| record_format | ojs |
| resource_txt_mv | ppisoftskievua/84/023ec785ab51744df9e90e7ce20a3c84.pdf |
| spelling | pp_isofts_kiev_ua-article-6292025-02-15T11:45:10Z The method of requirements prioritization in software engineering Метод пріоритезації вимог в програмній інженерії Nesterenko, O.V. requirements engineering; computer ontologies; visualization; graphs; AHP; SWOT UDC 004.02 інженерія вимог; комп’ютерні онтології; візуалізація; графи; AHP; SWOT УДК 004.02 In software development processes, requirements prioritization plays a key role. Proper gathering of requirements and their objective prioritization can ensure a sequential and effective development of a software project. With the increasing complexity of software, which is a characteristic of today, problems related to defining requirements also increase. It becomes increasingly challenging to identify the most important and essential requirements in a stream of wishes and recommendations, determining what should be the starting point of development and where the most attention should be focused. The task of requirements prioritization is multi-criterial and poses significant cognitive loads. Most researchers and professionals suggest expert methods for decision-making in such environments, which to some extent help solve the tasks at hand. However, among the known requirements prioritization methods, practically all involve qualitative descriptive analysis based on brainstorming techniques. At the same time, in the modern conditions of digitalization, providing decision support based on a comprehensive presentation of the information model of the subject area and processing through information technologies for quantitative assessment of alternatives is more promising. Another important capability of modern technologies is visualization of decision-making processes. Thus, this work explores a comprehensive prioritization method that involves a full presentation of the information picture of the subject area, including in the form of computer ontologies, applying a quantitative AHP method for comparing requirements, and visualized data in gra phs for considering alternatives. Additional use of a modified SWOT matrix allows for the disaggregation of requirements into their individual characteristics and consideration of their advantages for problem evaluation. The existence of such tools and the capabilities of information technologies confirm the effectiveness and stability of the proposed method.Problems in programming 2024; 2-3: 132-139 У процесах розробки програмного забезпечення ключову роль відіграє пріоритезація вимог. Належне збирання вимог та їхня об’єктивна пріоритезація можуть забезпечити послідовний та ефективний розвиток програмного проєкту. Зі збільшенням складності програмного забезпечення, що є ознакою сьогодення, зростають і проблеми, пов’язані із визначенням вимог. Усе складнішим завданням стає виявлення в потоці побажань і рекомендацій найважливішого, найсуттєвішого, того, з чого треба починати розроблення і що варте найбільшої уваги. Задача ранжування вимог є багатокритеріальною і викликає значні когнітивні навантаження. Більшість із дослідників та фахівці пропонують для ухвалення рішень у такому середовищі експертні методи, які певною мірою дають змогу вирішувати поставлені задачі. Однак серед відомих методів пріоритезації вимог практично усі передбачають якісний описовий аналіз, що спирається на техніки інтелектуального штурму. В той же час в сучасних умовах цифровізації перспективнішим є забезпечення підтримки рішень на основі вичерпного подання інформаційної моделі предметної області та опрацювання за допомогою інформаційних технологій кількісних оцінок альтернатив. Також важливою можливістю сучасних технологій є забезпечення візуалізації процесів, пов’язаних із прийняттям рішень. Отже, у цій роботі досліджується комплексний метод пріоретизації, який передбачає вичерпне подання інформаційної картини предметної області, зокрема у вигляді комп’ютерних онтологій, застосування для порівняння вимог кількісного методу аналізу ієрархій та візуалізовані у графах дані щодо розгляду альтернатив. Додаткове використанням модифікованої матриці SWOT дозволяє проводити дезагрегування вимог до окремих їхніх характеристик та врахування переваг для оцінювання проблем. Наявність таких інструментів та можливостей інформаційних технологій підтверджують ефективність та стабільність запропонованого методу.Problems in programming 2024; 2-3: 132-139 PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2024-12-17 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/629 10.15407/pp2024.02-03.132 PROBLEMS IN PROGRAMMING; No 2-3 (2024); 132-139 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2-3 (2024); 132-139 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2-3 (2024); 132-139 1727-4907 10.15407/pp2024.02-03 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/629/681 Copyright (c) 2024 PROBLEMS IN PROGRAMMING |
| spellingShingle | requirements engineering computer ontologies visualization graphs AHP SWOT UDC 004.02 Nesterenko, O.V. The method of requirements prioritization in software engineering |
| title | The method of requirements prioritization in software engineering |
| title_alt | Метод пріоритезації вимог в програмній інженерії |
| title_full | The method of requirements prioritization in software engineering |
| title_fullStr | The method of requirements prioritization in software engineering |
| title_full_unstemmed | The method of requirements prioritization in software engineering |
| title_short | The method of requirements prioritization in software engineering |
| title_sort | method of requirements prioritization in software engineering |
| topic | requirements engineering computer ontologies visualization graphs AHP SWOT UDC 004.02 |
| topic_facet | requirements engineering computer ontologies visualization graphs AHP SWOT UDC 004.02 інженерія вимог комп’ютерні онтології візуалізація графи AHP SWOT УДК 004.02 |
| url | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/629 |
| work_keys_str_mv | AT nesterenkoov themethodofrequirementsprioritizationinsoftwareengineering AT nesterenkoov metodpríoritezacíívimogvprogramníjínženeríí AT nesterenkoov methodofrequirementsprioritizationinsoftwareengineering |