< Предыдущая
  Оглавление
  Следующая >


4.7. Прагматика в информатике: качество программного обеспечения

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

Максиму прагматизма Чарльз Пирс так определял: "Следует рассмотреть все диктуемые некоторым понятием следствия, которые будет иметь предмет этого понятия. Причем те, что согласно этому же понятию, способны иметь практический смысл. Понятие об этих следствиях и будет составлять полное понятие о предмете".

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

2. Измерение оценок предполагает приписывание им некоторых численных или лингвистических переменных2.

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

4. Шкалы оценок не являются универсальными, о чем свидетельствует широкое использование шкал порядка, прямых и пропорциональных оценок, равных и половинных интервалов, соотносительных попарных оценок и др.

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

6. Понимание процесса измерения оценок не является независимым от содержания теории, более того, оно всецело определяется ею.

Как в науке, так и в философии науки весьма сильны позиции объективистов, которые думают, что измерение является простым актом фиксации того, что есть. Избирается определенный эталон, с которым затем соотносится измеряемый признак, - вот и вся теория. Нет никакой необходимости обращаться к тонкостям устройства теорий. Это мнение неоднократно опровергалось, но объективисты не унимаются. Чтобы не быть голословными, сошлемся на показательный пример. Далеко не каждый экономист понимает, что цена определенного товара не является фиксированной величиной, а существенно зависит от избранного параметра оптимизации. Если таковым является объем продаж, то цена будет другой, чем при максимизации прибыли, приходящейся на авансированный капитал. Общий вывод таков: что именно следует измерять и каким образом, определяется исходя из содержания теории.

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

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

Качество программного обеспечения как ценность.

До сих пор прагматика характеризовалась в самых общих чертах. Обратимся теперь непосредственно к информатике, рассматривая качество программного обеспечения (ПО). Сама постановка вопроса о качестве ПО свидетельствует о его прагматическом содержании.

Строго говоря, программное обеспечение тем или иным образом стало оцениваться уже с момента его возникновения, но лишь с конца 1960-х гг. этот процесс начал приобретать систематические формы. Во второй половине 1970-х гг. появляются первые монографии1, число которых затем устойчиво возрастает в экспоненциальной прогрессии. Ведется многоплановый и упорный поиск количественных мер признаков ПО, чему посвящены многочисленные работы в области метрики программного обеспечения. Среди таких мер быстро выдвигаются два лидера: во-первых, количество строк кода и, во-вторых, число ошибок на тысячу строк кода. Разумеется, к ним не сводится оценка программного обеспечения. В табл. 4.4 приводятся факторы качества ПО согласно ГОСТ 28195-892.

Таблица 4.4. Качество программного обеспечения

Фактор качества ПО

Характеризуемое свойство

1

Надежность

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

2

Сопровождаемость

Характеризует технологические аспекты, обеспечивающие простоту устранения ошибок в ПО и программных документах и поддержания ПО в актуальном состоянии

3

Удобство применения

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

4

Эффективность

Характеризует степень удовлетворения потребности пользователя в обработке данных с учетом экономических, вычислительных и людских ресурсов

5

Универсальность

Характеризует адаптируемость ПО к новым функциональным требованиям, возникающим вследствие изменения области применения или других условий функционирования

6

Корректность

Характеризует степень соответствия ПО требованиям, установленным в техническом задании, требованиям к обработке данных и общесистемным требованиям

Содержание табл. 4.4 не оставляет сомнений относительно прагматического характера информатики. Действительно, все шесть факторов (отметим также, что им соответствуют 19 критериев, которые мы не стали указывать) имеют ярко выраженную прагматическую направленность. Разумеется, каждый из критериев определенным образом измеряется.

Метрики программного обеспечения. Особенно популярны метрики Холстеда, Мак-Кейба и Чепина. Их показатели, равно как и многие другие, позволяют не только произвести оценку трудоемкости реализации отдельных элементов программного проекта, скорректировать общие показатели оценки длительности и стоимости проекта, но и оценить связанные с проектом риски и принять необходимые управленческие решения. В то же время приходится констатировать, что вся программа качества ПО изобилует многочисленными проблемными аспектами. О них очень ярко написали английские исследователи Н. Фэнтен и М. Ниэл в статье "Метрики программного обеспечения: достижения, неудачи и новые направления".

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

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

Американские исследователи С. Канер и У. Бонд подвергают тщательному прагматическому анализу каждый из предлагаемых показателей, в том числе и тот, который так широко пропагандировал Т. Демарко, утверждая: "Я знаю лишь один показатель, который заслуживает собирания воедино раз и навсегда: подсчет дефектов". В этой связи необходимо дать вполне уверенный ответ на 10 вопросов:

1. Какова цель данного измерения?

2. Каковы границы данного измерения?

3. Какой признак мы пытаемся измерить?

4. Какова естественная шкала измерения данного признака?

5. Какова естественная изменчивость признака?

6. Какова метрика (функция, определяющая ценность признака)? Какой инструмент используется для осуществления процесса измерения?

7. Какова естественная шкала для рассматриваемой метрики?

8. Какова естественная шкала инструмента, с которого снимаются показания?

9. Как соотносятся ценности признака и метрики?

10. Каковы естественные и предсказуемые побочные эффекты используемого инструмента?

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

Выводы

1. Ценности всегда входят в состав теоретических построений. Их оценка в значительной степени определяется задаваемой целью.

2. Окончательным критерием эффективности выступает успешность функционирования теории. В случае неудачи теория пересматривается. Таков механизм роста научного знания в информатике.

< Предыдущая
  Оглавление
  Следующая >