|
Список путей вызовов (тестирования):
1)М1à М2à М4
2)М1à М2à М5à М8
3)М1à М2à М5à М9
4)М1à М2à М5à М10
5)М1à М3à М6
6)М1à М3à М7àМ10
7)М1à М3à М7àМ11
8) М1à М3à М7àМ12
Иерархическая сложность: I = N / L = 12 / 4 = 3
Структурная сложность: S = D / N = 12 / 12 = 1
М1= 1
М2= М3=1/2
М4= М5= М6= М7= (1/2)/2=1/4
М8= М9= М11= М12=(1/4)/3=1/12
М10=1/12+1/12=2/12=1/6
k
тестируемость пути: Pj = [∑(1 / A(Mj))]-1
j = 1
P1= P5= (1+2+4)-1=1/7
P2= P3= P7= P8= (1+2+4+12)-1=1/19
P4= P6=(1+2+4+6)-1 =1/13
Nв
Тестируемость ПС:Т = [(1 / Nв) · (∑1 / Pi)]-1=(1/8*(14+76+26))-1=(116/8)-1=
i = 1
=8/116
N N N
Энтропия вызовов: E=[∑(Li(log(Li/∑Li))]/ ∑Li =[(3*log(3/30))]/30+…=-3,03741
i=1 i=1 i=1
Код программы:
#include "stdafx.h"
#include <iostream>
using namespace std;
//объявление глоьальных переменных и функций(выполняющих роль модулей из схемы вызовов)
int c5, c7, a;
//реализация модуля 12 из схемы вызовов
void block12(){
cout<<"vy vybrali shkolynika genkogo pola saninaushegosya kriketom"<<endl;
}
//реализация модуля 11 из схемы вызовов
void block11(){
cout<<"vy vybrali shkolynika genkogo pola saninaushegosya voleybolom";
}
//реализация модуля 10 из схемы вызовов
void block10(){
if(c7==1)
{
cout<<"vy vybrali shkolynika genkogo pola saninaushegosya futbolom";
}
else
{
cout<<"vy vybrali shkolynika mugskogo pola saninaushegosya futbolom";
}
}
//реализация модуля 9 из схемы вызовов
void block9(){
cout<<"vy vybrali shkolynika muzskogo pola sanimaushegosya voleybolom";
}
//реализация модуля 8 из схемы вызовов
void block8(){
cout<<"vy vybrali shkolynika muzskogo pola sanimaushegosya kriketom";
}
//реализация модуля 7 из схемы вызовов
void block7(){
c7=1;
int a;
a=1;
//вывод меню модуля 1
cout<<"viberite vid sporta"<<endl;
cout<<"1:voleybol"<<endl;
cout<<"2:kriket"<<endl;
cout<<"3:futbol"<<endl;
cout<<"vash vybor: "<<endl;
//выбор пункта из меню
cin>>a;
//выбор решения исходя из введённого значения "а"
switch (a)
{
case 1:block11();break;
case 2:block12();break;
case 3:block10();break;
}
}
//реализация модуля 6 из схемы вызовов
void block6(){
cout<<"vy vybrali shkolynika genskogo pola lenivec =) lol";
}
//реализация модуля 5 из схемы вызовов
void block5(){
//дадим проге знать что мы перешли в этот блок
c5=1;
//вывод меню блока 5
cout<<"viberite vid sporta"<<endl;
cout<<"1:voleybol"<<endl;
cout<<"2:kriket"<<endl;
cout<<"3:futbol"<<endl;
cout<<"vash vybor: "<<endl;
//ввод значения "а"
cin>>a;
//выбор решения исходя из введённого значения "а"
switch (a)
{
case 1:block9();break;
case 2:block8();break;
case 3:block10();break;
}
}
//реализация модуля 4 из схемы вызовов
void block4(){
cout<<"vy vybrali shkolynika muzskogo pola ne sanimaushegosya sportom";
}
//реализация модуля 3 из схемы вызовов
void block3(){
//вывод меню блока 3
cout<<"viberite nomer shkoly"<<endl;
cout<<"1:shkola nomer 15 (obychnaya shkola)"<<endl;
cout<<"2:shkola nomer 3 (so sportivnym uklonom)"<<endl;
cout<<"vash vybor: "<<endl;
//ввод значения "а"
cin>>a;
//выбор решения исходя из введённого значения "а"
switch(a)
{
case 1:block6();break;
case 2:block7();break;
default: break;
}
}
//реализация модуля 2 из схемы вызовов
void block2(){
//вывод меню блока 2
cout<<"viberite nomer shkoly"<<endl;
cout<<"1:shkola nomer 15 (obychnaya shkola)"<<endl;
cout<<"2:shkola nomer 3 (so sportivnym uklonom)"<<endl;
cout<<"vash vybor: "<<endl;
//ввод значения "а"
cin>>a;
//выбор решения исходя из введённого значения "а"
switch (a)
{
case 1:block4();break;
case 2:block5();break;
}
}
//реализация модуля 1 из схемы вызовов
int _tmain(int argc, _TCHAR* argv[])
{
//вывод главное меню
cout<<"Vas privetstvuet programma po klonirovaniyu shkolynikov..."<<endl;
cout<<"Vyberite pol..."<<endl;
cout<<"1:mugskoi"<<endl;
cout<<"2:genskiy"<<endl;
cout<<"vash vybor: "<<endl;
//ввод значения "а"
cin>>a;
//выбор решения исходя из введённого значения "а"
switch (a)
{
case 1:block2(); break;
case 2:block3(); break;
}
cout<<endl;
cout<<"1-9999999:exit"<<endl;
cout<<"vash vybor: ";
cin>>a;
return 0;
}
Иерархическая сложность: I = N / L = 12 / 4 = 3
Структурная сложность: S = D / N = 12 / 12 = 1
М1= 1
М2= М3=1/2
М4= М5= М6= М7= (1/2)/2=1/4
М8= М9= М11= М12=(1/4)/3=1/12
М10=1/12+1/12=2/12=1/6
Сложность по Маккейну: С=e-n+2= 12-12+2=2
k
тестируемость пути: Pj = [∑(1 / A(Mj))]-1
j = 1
P1= P5= (1+2+4)-1=1/7
P2= P3= P7= P8= (1+2+4+12)-1=1/19
P4= P6=(1+2+4+6)-1 =1/13
Nв
Тестируемость ПС:Т = [(1 / Nв) · (∑1 / Pi)]-1=(1/8*(14+76+26))-1=(116/8)-1=
i = 1
=8/116
Расчёт трудоёмкости:
Текстовая сложность программы: E=0,132(в тысячах)
Наглядность: C=NC/N=30/132= 0,22727
Методика оценки трудоёмкости разработки
программных средств
Норм – норма времени на разработку ПС
0,1 | ||
0,11 | 7,4 | |
0,12 | 7,8 | |
0,13 | 8,2 | |
0,14 | 8,6 | |
0,15 | ||
0,16 | 9,4 | |
0,17 | 9,8 | |
0,18 | 10,2 | |
0,19 | 10,6 | |
0,2 |
(таблица 5.1) Выбор – 0.14 тысяч строк, норма – 8,6 чел. дней
Исходный объем разрабатываемого ПС
Коэффициент сложности – 0,73 (очень низкий)
8,6*0,73=6,278
Общая трудоёмкость разработки ПС
(Степень новизны) – 0,7
(коэфицент уровня требований)
Уровень требований к надёжности ПС
(очень низкий) = 0,82
Требовательность к производительности ПС
(производительность роли не играет) = 0,9
Требования к уровню информативности информации
(Очень низкий) = 0,81
Коэффициент повторного использования
(низкий) =0,95
0,82*0,9*0,81*0,95=0,567891
6,278*0,7*0,567891=2,495654
Трудоёмкость разработки ПС с учётом конкретных условий разработки
Использование средств управления жизненным циклом
(очень низкий) = 1,17
Конкретные условия и средства разработки
(язык C++ сети; локальные (типа Windows NT)) = 1,2
трудоемкость разработки с учетом рейтинга разработчика Тр:
2,495654*1,17*1,2=3,503898
Тр = Тур ∙ Кквал ∙ Копыт
поправочный коэффициент, учитывающий уровень квалификации разработчика ПС:
Кквал (средний) = 1
Копыт (средний) =1
Тр =3,503898*1*1=3,503898
Трудоемкость разработки ПС Т в человеко-днях:
трудоемкость i -й стадии разработки ПС:
Т1 = L1 ∙ Т – трудоемкость стадии «Анализ разработки»;
Т2 = L2 ∙ Т – трудоемкость стадии «Проектирование»;
Т3 = L3 ∙ Т – трудоемкость стадии «Программирование»;
Т4 = L4 ∙ Т – трудоемкость стадии «Тестирование»;
Т5 = L5 ∙ Т – трудоемкость стадии «Внедрение»;
Вид технологии - Традиционная технология разработки без применения структурных методологийи средств автоматизации.
L1=0,2; L2=0,15; L3=0,2; L4=0,40; L5=0,05;
Т1 = 0,2 * 3,503898=0,70078
Т2 = 0,15 * 3,503898 = 0,525585
Т3 = 0,2 * 3,503898 = 0,70078
Т4 = 0,4 * 3,503898 = 1,401559
Т5 = 0,05 * 3,503898= 0,175195
Методика оценки трудоёмкости сопровождения
программных средств
Наличие в фонде аналогов ПС
Кан (есть) = 1
Степень участия службы сопровождения в разработке ПС
Куч (ССо в разработке не участвовала. Информации о разработке до момента сдачи в фонд не имелось) = 1,2
Язык программирования
Крз (С++) = 1
Характер внедрения ПС
Кхв (Локальное внедрение ПС) = 1
Полнота тестирования ПС
Кm (тестирование всех основных функций ПС) = 1,7
Характер поставки ПС
Kхп (локальная поставка стандартного комплекта ПС) = 1
Уровень повышения сложности ПС
Kсл (№ п/п 1) = 0,73
=====================================================================
Трудоёмкость выполнения работы «Подготовка процесса»
=====================================================================
=====================================================================
Норма времени на выполнение работы «Подготовка процесса»
Нвр.пп (табл. 5.27)=8
Трудоёмкость выполнения работы «Подготовка процесса» в чел.-днях
Тпп = Ксл * Кан *Куч *Нвр.пп
Тпп = 0,73*1*1,2*8=7,008
=====================================================================
Трудоёмкость выполнения работы «Анализ проблем и изменений»
=====================================================================
=====================================================================
Норма времени на выполнение задачи «Анализ сообщения о проблеме или заявки на внесение изменений»
Нвр.ан (табл. 5.28)=6
Трудоёмкость задачи «Анализ сообщений о проблеме или заявки на внесение изменений» в чел.-днях
Тан = Ксл * Кхв *Куч *Нвр.ан
Тан =0,73*1*1,2*6=5,256
=====================================================================
Норма времени на выполнение задачи «Верификация возникшей проблемы»
Нвр.вер (табл. 5.29)=9
Трудоёмкость выполнения задачи «Верификация возникшей проблемы» в чел.-днях
Твер = Ксл * Кm *Куч *Нвр.вер
Твер=0,73*1,7*1,2*9=13,4028
=====================================================================
Норма времени на выполнение задачи «Разработка вариантов реализации изменений»
Нвр.вар (табл. 5.30)=2
Трудоёмкость выполнения задачи «Разработка вариантов реализации изменений» в чел.-днях
Твар = Кхв * Куч *Ксл *Нвр.вар
Твар =1*1,2*0,73*2=1,752
=====================================================================
=====================================================================
Трудоёмкость выполнения работы «Внесение изменений»
Тсогл=5чел.-дням
=====================================================================
=====================================================================
Норма времени на выполнение задачи «Анализ и определение перечней программ и документов, требующих изменения; документальное оформление результатов»
Нвр.ан (табл. 5.31)=4
Трудоёмкость задачи «Анализ и определение перечней программ и документов, требующих изменения; документальное оформление результатов»
Тдр =Куч* Ксл*Нвр.ан
Тдр =1,2*0,73*4=3,504
=====================================================================
Норма времени на выполнение задачи «Реализация процесса разработки для внесения изменений»
Нвр.раз (табл. 5.32)=7
Трудоёмкость задачи «Реализация процесса разработки для внесения изменений»
Тдр = Краз*Куч* Ксл*Нвр.раз
Тдр =1*1,2*0,73*7=6,132
=====================================================================
Трудоёмкость выполнения работы «Проверка и приемка при сопровождении
=====================================================================
=====================================================================
Норма времени на выполнение задачи «Проверка внесённого изменения в целях подтверждения работоспособности изменённого ПС»
Нвр.пи(табл.5.33)=3,5
Трудоёмкость задачи «Проверка внесённого изменения в целях подтверждения работоспособности изменённого ПС»
Тпи = Кme*Кхв* Ксл*Нвр.пи
Тпи =1,7*1*0,73*3,5=4,3435
=====================================================================
Трудоёмкость задачи «получение подтверждения правильности внесённого изменения от организации - заказчика»
Тпод=5чел.-дням
=====================================================================
Норма времени на выполнение задач «Проверка соответствия переносимого ПС стандарту ИСО/МЭК 12207 - 99» и «Разработка плана переноса»
Нвр.п(табл.5.34)=10
Трудоёмкость задач «Проверка соответствия переносимого ПС стандарту ИСО/МЭК 12207 - 99» и «Разработка плана переноса»
Тпп=Кхп*Нвр.п
Тпп=1*10=10
=====================================================================
Туп=1,0 чел.-день
=====================================================================
Норма времени на выполнение задачи «Обучение специалистов пользователя работе в новой среде»
Нвр.об(табл.5.35)=15,5
Трудоёмкость задачи «Обучение специалистов пользователя работе в новой среде»
Тоб=Ксл*Нвр.об
Тоб=0,73*15,5=11,315
=====================================================================
Норма времени на архивирование
Нвр.ар=8
Трудоёмкость задачи «Архивация прежних программ и документации»
Тар=Нвр.ар
Тар=8
=======================================================================================================
Норма времени на выполнение задачи «Анализ влияния перехода к новой среде»
Нвр.аn(табл.5.37)=5,5
Трудоёмкость задачи «Анализ влияния перехода к новой среде»
Тан=Ксл*Нвр.аn
Тан=0,73*5,5=4,015
=======================================================================================================
Трудоёмкость выполнения работы «Снятие с эксплуатации»
==========================================================================================================================================
Норма времени на выполнение задачи «Разработка плана снятия с экплуатации»
Нвр.псэ(табл.5.38)=10
Трудоёмкость задачи «Разработка и выполнение плана снятия с экплуатации»
Тпсэ=Ксл*Нвр.псэ
Тпсэ=0,73*10=7,3
=====================================================================
Норма времени на выполнение задачи «Уведомление пользователя о планах и работах по снятию с эксплуатации»
Тyni=1.0 чел.-день
=====================================================================
Норма времени на выполнение задачи «Обучение пользователей в течение периода параллельной эксплуатации прежнего и нового ПС»
Нвр.обн(табл.5.39)=17,5
Трудоёмкость задачи «Обучение пользователей в течение периода параллельной эксплуатации прежнего и нового ПС»
Тобн=Ксл*Нвр.обн
Тобн=0,73*17,5=12,775
=====================================================================
Норма времени на выполнение задачи «Архивация связанной с прежним объектом документации разработки, журналов регистрации и программ»
Нвр.ар(табл.5.36)=8
Трудоёмкость задачи «Архивация связанной с прежним объектом документации разработки, журналов регистрации и программ»
Тар=Нвр.ар
Тар=8
Дата добавления: 2015-11-04; просмотров: 27 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |
Речь идет о том, чтобы написать зависимость скорости реакции по каждому веществу, участвующему в сложной реакции. Задана схема реакции, для примера, та же, что при рассмотрении стехиометрических | | | Работа 3. Исследование процесса истечения воздуха |