uzluga.ru
добавить свой файл
1

УДК 004.05

Модель качества программных средств



В. В. Бураков,

канд. техн. наук, доцент

Санкт-Петербургский государственный университет аэрокосмического приборостроения


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


Ключевые слова качество программ, моделирование качества программ, модель качества программ.


Burakov V. V.

Software Quality Model

An approach to software quality modeling is described. As an introduction, the paper contains a brief overview of existing research in this field, as well as the main requirements to software quality modeling. The paper investigates formal software quality modeling by using category theory and explains the means of satisfaction of software quality modeling requirements.

Keywords - Software Quality, Software Quality Modeling, Software Quality Model.

Введение

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


Модели и стандарты качества ПС

Наиболее современный стандарт — ISO/IEC 25000 — характеризует модель качества как определенный набор характеристик (т. е. категорий атрибутов, которые имеют отношение к качеству ПС) и отношений между ними, которые обеспечивают основу для спецификации требований к качеству и оценки качества [Error: Reference source not found]. Наиболее распространенными в настоящий момент являются модели типа «факторы—критерии метрики» (модели МакКола [Error: Reference source not found], Боэма [Error: Reference source not found], FURPS [Error: Reference source not found], Гилба [Error: Reference source not found], IEEE 1061 [Error: Reference source not found], ГОСТ 28195-89 [Error: Reference source not found], ISO/IEC 9126, ISO/IEC 25000 [Error: Reference source not found]), модели типа «цель—вопрос—метрика» (GQM), модели типа «процесс/продукт» (модели Дроми [Error: Reference source not found] и SQUID [Error: Reference source not found]).

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

  1. Отсутствие терминологической согласованности. Узкая специализация моделей породила применение разных терминов для описания эквивалентных явлений.

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

  3. Уровень детализации обратно влияет на уровень применимости. Существующие модели являются или абстрактными, при этом широко применимыми, или детальными и узко применимыми. При этом высокий уровень абстракции нивелирует широкое применение, а узкая применимость нивелирует высокую степень детализации.

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

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


Формальная модель качества

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

Категория качества Q используется для представления понятия качества ПС и состоит из объектов Ob(Q) и морфизмов Mor(Q).

Класс объектов категории качества представляет концептуальные понятия, характеризующие качество ПС (например, характеристики, подхарактеристики качества ПС, принципы проектирования ПС) и является конечным множеством с разбиением где — множество объектов i-го уровня иерархии; ki — число элементов множества Qi.

Класс морфизмов категории качества описывается тремя множествами Mor(Q) = Morsi(Q) Mordi(Q)  Morsl(Q) — множеством строгих иерархических морфизмов Morsi(Q), множеством нестрогих иерархических морфизмов Mordi(Q) и множеством одноуровневых морфизмов Morsl(Q).

Строгие иерархические морфизмы категории качества:

  1. для любых двух объектов i{1, …, n} определяется множество морфизмов из в



где — тождественный морфизм объекта

  1. для любых двух объектов при i{1, …, n – 1}, a{1, …, ki}, b{1, …, ki+1}, множество морфизмов определяется пустым

  2. для любого объекта могут существовать объекты вида такие, что состоит из одного морфизма для каждого объекта Для всех остальных объектов при aj  ab множество морфизмов задается пустым:



Нестрогие иерархические морфизмы категории качества:

  1. для любых двух объектов i{1, …, n} определяется множество морфизмов из в



  1. для любых двух объектов при i, j{0, …, n – 1}, i < j, a{1, …, ki}, b{1, …, ki+1} множество морфизмов определяется пустым

  2. для любого объекта могут существовать объекты вида при j > i + 1 такие, что состоит из одного морфизма для каждого объекта Для всех остальных объектов при aj  ab множество морфизмов задается пустым:



Одноуровневые морфизмы категории качества:

  1. для любых двух объектов i{1, …, n} определяется множество морфизмов из в



  1. для любых двух объектов i, j{1, …, n} множество одноуровневых морфизмов является пустым:

Структура категории качества, показана на рис. 1.





Рис. 1. Схема категории качества


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

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

В качестве примера рассмотрим фрагмент модели качества, представляющей стандарт ISO/IEC 25000, в котором выделим иерархию показателей, порождаемую характеристикой «удобство сопровождения». Согласно стандарту ISO/IEC 25000, эта характеристика зависит от подхарактеристик «удобство проверки», «стабильность», «удобство внесения изменений», «анализируемость» и «соответствие стандартам сопровождения». Декомпозируем подхарактеристики качества на ряд принципов проектирования применительно к объектно-ориентированному стилю. Это принципы: «высокое сцепление», отражающий необходимость усиления использования в методах класса членов этого же класса; «низкая связность», состоящий в уменьшении межклассовых зависимостей; «отсутствие классов-данных», т. е. классов, использующихся только в качестве структур данных для методов других классов, и «отсутствие классов-монстров», проявляющегося в существовании большого и сложного класса, который мало зависит от остальных классов и предоставляет им мало функциональности. Результирующая модель качества показана на рис. 2.





Рис. 2. Пример модели качества


Реализация требований формального моделирования качества

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

1) для двух объектов i1,…,n–1 и l1,…,n–1 — проверка на пустоту множества одноуровневых морфизмов при i = l;

2) для всех листовых объектов — проверка пустоты Morsl = .

Второй тип проверки реализуется путем проверки для двух объектов i1,…,n–1 и l1,…,n–1 выполнения следующих условий:

  1. отсутствия одноуровневых морфизмов между этими объектами: при i = l;

  2. отсутствия строгих иерархических морфизмов между этими объектами: при i  l;

  3. отсутствия нестрогих иерархических морфизмов между этими объектами: при i  l;

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






Заключение

Наукоемкий и экспериментальный характер процессов изготовления ПС накладывает особые требования к управлению качеством. Предложенный подход открывает возможность для формулирования понятия качества ПС на концептуальном уровне, создавая основу для последующей формальной оценки степени соответствия разрабатываемой ПС предъявляемым требованиям к качеству [Error: Reference source not found].

Литература

  1. ISO/IEC, ISO/IEC 25000: Software Engineering — Software Product Quality Requirements and Evaluation (SQuaRE) — Guide to SQuaRE. – Geneva: International Organization for Standardization, 2005. http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber = 35683 (дата обращения: 26.07.2008).

  2. McCall J., Richards P., Walters G. Factors in Software Quality. Three volumes: NTIS AD-A049-014, AD-A049-015, AD-A049-055, 1977. http://oai.dtic.mil/oai/oai?&verb = getRecord&metadataPrefix = html&identifier = ADA049014 (дата обращения: 17.05.2008).

  3. Боэм Б. и др. Характеристики качества программного обеспечения. – М.: Мир, 1981. – 208 с.

  4. Grady R., Caswell D. Software Metrics: Establishing a Company. – Prentice Hall, 1987.– 280 p.

  5. Gilb T. Principles of Software Engineering Management. – Reading MA: Addison Wesley, 1988. – 464 p.

  6. IEEE 1061 Standard for Software Quality Metrics Methodology, 1998. http://www.techstreet.com/cgi-bin/detail?product_id = 26157 (дата обращения: 20.06.2008).

  7. ГОСТ 28195–89. Оценка качества программных средств. Общие положения. 1989. http://www.standards.ru/document/4137355.aspx (дата обращения: 26.07.2008)

  8. Dromey R.G. Cornering the Chimera // IEEE Software. 1996. Vol. 13. N 1. P. 33–43.

  9. Bоegh J., Depanfilis S., Kitchenham B., Pasquini A. A Method for Software Quality Planning, Control, and Evaluation // IEEE Software. 1999. Vol. 16. N 2. P. 69–77.

  10. Бураков В. В. Методика оценки качества программных средств // Изв. вузов. Приборостроение. 2008. № 1. С. 35–41.