Метрика изменения длины программной документации 
";


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Метрика изменения длины программной документации



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

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

Предположим, что документация изменяется в дискретные моменты времени t(i), i=1,2,...,n. Тогда в любой момент времени t(i) текущая длина документа l(i) может быть определена как

          l(i) = l(i-1) + a(i) - b(i); l(0) = 0,

где l(i-1) - длина документа в предыдущий момент времени; a(i) - добавляемая часть документа; b(i) - исключаемая часть документа.

Далее вводится d(i), представляющая собой отклонение текущей длины документа l(i) от конечного значения l(n):

d(i) = l(n) - l(i).

Затем рассчитывается интеграл по модулю этого отклонения на интервале от t(i) до t(n), представленный в виде суммы:

n-1H(n) = Сумма |d(i)| * (t(i+1) - t(i)).  (10)i=1

Значение H(n) представляет собой оценку переходного процесса для интервала времени от t(1) до t(n). Однако H(n) не учитывает изменений типа a(i)=b(i), хотя они, бесспорно, влияют на ход дальнейшего процесса.

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

 

Интеграл a(i)*e^(-L^(-1*(t-t(i))))dt = L*L(i) = L*b(i), L>0. (11)

t(i)

Таким образом, оценка длины документа пропорциональна значению импульсного изменения длины a(i)=b(i) с коэффициентом пропорциональности L.

В принципе импульсное изменение длины документа присутствует и при a(i)<>b(i). Поэтому с учетом (11) автор метрики преобразует выражение (10) к виду

n-1H'(n) = Сумма [ |d(i)| * (t(i+1)-t(i)) + L*c(i) ], (12)i=1

причем c(i) = min {a(i), b(i)}.

Если в процессе работы значения a(i) и b(i) неконтролируемы, импульсное изменение длины учесть нельзя. Тогда c(i)=0, и выражение (12) вырождается в (10). Используя конечное значение длины документа, можно записать

H(n)'' = H(n)' / l(n).

9. ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРИЛОЖЕНИЯ [7]

Алгоритм решения

 

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

В начале выполнения программы производится проверка полноты и корректности введенных данных. Если пользовательские данные не прошли проверку – выводится соответствующее уведомление.

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

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

 


 

Макет приложения

 

Form

Макет приложения. Модель Шумана (tabPage1)

 

 


 

 

 

 


menuStrip1 – выводит список меню содержащий пункты «Сохранить результаты» и «Выход»

tabPage1 – вкладка элемента tabControl1, содержащая в себе элементы: label49–54, label63–67, label 61, label59, label48, label62, label58, textBox14–19, groupBox4

label52–принимает текстовое значение «Командных строк в программе»

label51–принимает текстовое значение «Строк содержащих ошибку»

label50–принимает текстовое значение «Дней работы»

label49–принимает текстовое значение «Ошибок за время работы»

label58–принимает текстовое значение «Исходные данные»

label54–принимает текстовое значение «Конечный результат»

label61–принимает сокращенное значение «КСП»

label60–принимает сокращенное значение «ССО»

label59–принимает сокращенное значение «ДР»

label48–принимает сокращенное значение «ОВР»

label62–принимает сокращенное значение «КП»

textBox17–получает значение введенных пользовательских данных в графу «Командных строк в программе»

textBox15– получает значение введенных пользовательских данных в графу «Строк содержащих ошибок»

textBox16– получает значение введенных пользовательских данных в графу «Дней работы»

textBox14– получает значение введенных пользовательских данных в графу «Ошибок за время работы»

textBox18– получает значение введенных пользовательских данных в графу «Коэффициент пропорциональности», по умолчанию установлено значение «1».

textBox19–служит для вывода результатов вычислений, произведенных по формуле Шумана.

button5 – принимает текстовое значение «Очистить», а также отчищает все поля в данном блоке

обеспечение программный visual studio


 

Form

Макет приложения. Модель Джелински-Моранды(tabPage3)



tabPage3–содержит все группы объектов, таких как label41-42, label45-46, label73-69, label19-14, textBox4, button3, textBox13-10, groupBox3.

label41– принимает текстовое значение «Число ошибок, первоначально находящихся в программе.

label42– принимает текстовое значение «Коэффициент пропорциональности»

label45– принимает текстовое значение «Количество ошибок спустя время»

label46– принимает текстовое значение «время обнаружения i ошибки»

label73– принимает текстовое значение «Результат»

label69– принимает текстовое значение «Исходные данные»

label72– принимает сокращенное значение «ЧОПНВП»

label71– принимает сокращенное значение «КП»

label70– принимает сокращенное значение «КОСВ»

label15– принимает сокращенное значение «ВОО»

label14–принимает текстовое значение «Конечный результат»

Элементы label19–label16 принимают одинаковые начальные текстовые значения «null»

textBox10– получает значение введенных пользовательских данных в графу «Число ошибок, первоначально находящихся в программе»

textBox12– получает значение введенных пользовательских данных в графу «Коэффициент пропорциональности»

textBox11– получает значение введенных пользовательских данных в графу «Количество ошибок спустя время»

textBox13– получает значение введенных пользовательских данных в графу «Время обнаружения ошибки»

textBox4– служит для вывода результатов вычислений, произведенных по формуле Джелински-Моранды.

button3–– принимает текстовое значение «Очистить», а также отчищает все поля в данном блоке

 

9.2.3



Поделиться:


Последнее изменение этой страницы: 2020-11-23; просмотров: 199; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.224.59.231 (0.005 с.)