Главная страница Анализ эмпирических данных ROUT Кодовый идентификатор программы, заме- няющий ее имя. Идентификатор указывает на подсистему и функцию, в состав которых входит программа {Пример: Код А101 расшифровывается так: подсистема А, функция 1, модуль 01.) PROBS Число действительных ошибок, т. е. таких ошибок, которые требуют корректировки текста программы Zi=TS Общее число операторов в программе [TS = NEX + ЕХ] == Lloop ~ LL ЕЗ Сложность циклов модуля, рассчитываемая по формуле Ш0Р= Z \ А--\ > 1 = 1 mi - число циклов в модуле, имеющих /-Й уровень вложения, wi - весовой множитель, Q - наивысший уровень вложенности циклов, 4 - нормирующий множитель 23 = Ер = 1РЕЗ Сложность условных операторов IF, рас- считываемая по формуле где fii - число условных операторов /-го урэвня, laj -весовой множитель (ана.чо-гичен Lloop) 24 = BR Общее число ветвлений 2б = АР Общее число логических операторов Z7=SYS Количество непосредственных сопряжений с другими прикладными программами (но не обращений к ним) Ze = I/O Количество непосредственных сопряжений с системными программными средствами Zg = СОМР Число операций ввода-вывода Zio = DATA Число вычислительных операторов Zn=NEX Число операторов обработки данных Zi2 = ЕХ Количество неисполняемых операторов Таблица 4.1 Параметры, входящие в уравнения регрессии Исходными данными для анализа являлись отдельные программы и подпрограммы, идентифицируемые по именам, которые содержат условные обозначения выполняемых программами функций; программы объединялись в подсистемы по функциональному признаку Для каждого модуля определялись число действительных ошибок и значения 16 показателей. Использованные для анализа в качестве факторов показатели приведены в табл. 4.1, а их значения для каждой из программ или подпрограмм - в табл. 4.2. Два из перечисленных в табл. 4.1 показателей, Lloop и Lif, рассчитывались с учетом определяемых LOOP и IF уровней вложения циклов и условных операторов-). Другие два, RAT и WK-LD - квалификация программиста и его загруженность работой соответственно, были получены в результате контактов с администрацией Проекта 3 для всех подсистем, исключая G и И. Считалось, что все показатели, кроме СОМ (число комментариев) и RAT, должны изменять общее число ошибок в положительном направлении. Последним двум показателям приписывался вес (-1). Это позволило распространить условие неотрицательности на все коэффициенты (для простоты вычислений) ) Значения Lloop и Lif приводятся увеличенными в 1000 раз. ) Характерной особенностью примененного метода нелинейного программирования является условие неотрицательности всех коэффициентов, принимаемое по умолчанию. Продолжение табл. 4.1 Zi3==TI Общее число связей с другими програм. мами Т1 = АР+ SYS Zi4=COM Полное число комментариев, которые не включаются в число неисполияемых операторов, NEX Z.15 = RAT Средняя квалификапия по всем программи- стам, которые разрабатывали данную программу Zie = WK-LD Средняя загрузка по всем программистам, которые разрабатывали данную прог- рамму *) Свободный член в модели отсутствует. ) Основная причина этого - появление нерегулярных областей в пространстве коэффициентов, для которых ровместное распределение оценок имеет ненулевую вероятность. 4.2. Особенности обобщенной регрессионной модели Пусть имеется N параметров Zj (/==1, 2, N), характеризующих К программ, объединенных в конкретный модуль. Предположим, что ожидаемое число ошибок в программе задается линейной моделью вида Y, = Zfl;Z/ (4.1) где Zji - значение параметра Z/ для г-й программы, а й/ - коэффициент влияния /-го параметра на вели* чину.отклика. Допустим, что фактическое число ошибок i-й про* граммы равно Yj. Тогда для определения неизвестных коэффициентов а,- необходимо минимизировать сумму квадратов отклонений фактического числа ошибок от ожидаемого по каждой программе, т. е. найти минимум к к / N \2 Q = Z (Y, - Y,) = Е ( Y, - I aiZ;i (4.2) при ограничениях а,>0, /=1, 2, N. (4.3) Таким образом, задача оценки коэффициентов О/ представляет собой задачу нелинейного программирования с квадратичной целевой функций (4.2) и ограничениями типа неравенств (4.3). Несмотря на то что широко используемые статистические методы регрессионного анализа неприменимы в рассматриваемом случае задачи с ограничениями типа неравенств 2), качество приближения от-клика линейной функцией заданных факторов мож-
|
© 2000 - 2024 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования. |