Разработка программного средства для оценки сложности программ

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 21.12.2012
Размер файла 4,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

3) Модуль расчёта простейших объемных метрик. Данный модуль анализирует преобразованный текст и рассчитывает:

а) Число строк в программе;

б) Число исполняемых операторов;

в) Число программных модулей;

г) Средний размер программного модуля;

4) Модуль расчёта метрик Холстеда. Данный модуль находит в преобразованном тексте операторы и операнды. Вычисляются значения n1, n2, N1, N2 - параметры, необходимые для расчёта метрик Холстеда. После этого осуществляется расчёт следующих метрик:

а) Длинна программы;

б) Словарь программы;

в) Расчётная длинна программы;

г) Объём программы;

д) Трудность программы;

е) Уровень программы;

ж) Логическая сложность программы;

з) Языковая сложность программы;

и) Частота словаря;

5) Модуль расчёта цикломатического числа Маккейба. Данный модуль находит в преобразованном тексте программы операторы цикла (While, Repeat Until, For) и операторы ветвления (If, Case) и рассчитывает цикломатическую сложность программы. Также возможно построение управляющего графа программы.

6) Модуль расчёта метрики Майерса. Данный модуль в операторах найденных модулем расчёта цикломатического числа Маккейба подсчитывает количество предикатов и модифицирует с учетом среднего числа предикатов на один оператор цикломатическое число.

7) Модуль расчёта метрики Джилба. Данный модуль осуществляет расчёт:

а) Абсолютной сложности(количество условных операторов);

б) Относительной сложности(Отношение количества условий к общему числу операторов);

в) Максимальной вложенности условных операторов;

8) Модуль расчёта метрики обращения к глобальным переменным. В данном модуле определяется количество реальных и возможных обращений к глобальным переменным в подпрограммах и рассчитывается отношение реальных обращений к возможным

9) Модуль расчёта спена. Находятся все идентификаторы и рассчитывается спен каждого из них, после чего вычисляется среднее значение спена.

10) Модуль расчёта метрики Чепина. В данным модуле определяется к какой категории относятся все переменные, с учетом, что одна переменная может относиться к нескольким категориям, после чего подставляются стандартные или введенные пользователем весовые коэффициенты и производится вычисление значения метрики.

11) Модуль расчёта комплексной оценки сложности программы. В данном модуле выбираются метрики, и производится расчёт комплексной меры с учетом весовых коэффициентов стандартных или введенных пользователем.

12) Модуль генерации отчётов. Данный модуль записывает результаты всех вычислений в файл отчёта. При записи комплексной меры записывается, какие метрики и с какими весовыми коэффициентами были учтены при расчёте комплексной меры.

4.2 Разработка алгоритмов

Схема обобщенного алгоритма представлена на рисунке 4.2.

Как видно из рисунка 4.2, ПСОСП осуществляет следующие функции:

-загрузка исходного текста программы;

- преобразование текста в форму, удобную для анализа;

- расчёт различных метрик;

- Вывод вспомогательной графической или текстовой информации;

Расчёт каждой метрики реализован, как предопределенный процесс

Рисунок 4.2 - Обобщенный алгоритм ПСОСП

4.2.1 Алгоритм расчёта простейших объёмных метрик

Программа построчно анализирует текст. Если в строке присутствует исполняемый оператор, то инкрементируется значение S. Если в строке присутствует слово «Procedure» или «Function», то инкрементируется значение U. Затем, происходит инкремент значения L и считывается следующая строка. Данная операция повторяется, пока не будет достигнут конец файла.

После достижения конца файла Значение S делится на значение U, и происходит вывод полученных значений на экран.

Схема алгоритма расчёта простейших объемных метрик представлена на рисунке 4.3.

Рисунок 4.3 - Алгоритм расчёта и вывода простейших объемных метрик

4.2.2 Алгоритм расчёта метрик Холстеда

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

Затем происходит поиск операндов, для чего анализируются строки содержащие объявления переменных, после чего происходит поиск операндов аналогично с операторами. После расчёта происходит инкрементирование n2 и N2 аналогично n1 и N1.

После расчёта n1, n2, N1, N2 подстанавливаются в соответствующие формулы, и производится расчет метрик Холстеда.

Схема алгоритма расчёта метрик Холстеда представлена на рисунке 4.4.

4.2.3 Алгоритм расчёта метрики Маккейба

Программа открывает преобразованный текст. После этого происходит построчный анализ на присутствие операторов, влияющих на цикломатическую сложность(if, case, while, repeat until). При нахождении оператора программа записывает его в файл «McCabe.mcb». На основании этого файла в итоге будет строиться управляющий граф. Если найденный оператор if, while или repeat until? То цикломатическая сложность увеличивается на 1, если это оператор case, цикломатическая сложность увеличивается на число возможных вариантов решения минус 1.

Схема алгоритма расчёта метрики Маккейба представлена на рисунке 4.5.

Рисунок 4.4 - Алгоритм расчёта и вывода метрик Холстеда

Рисунок 4.5 - Алгоритм расчёта и вывода метрики Маккейба

4.2.4 Алгоритм расчёта метрики Майерса

Программа, построчно анализируя текст, ищет операторы с предикатами. Если найден таковой, то рассчитывается количество предикатов для этого оператора. После этого рассчитывается среднее число предикатов на оператор с предикатами, и, учитывая это значение, модифицируется цикломатическая сложность, что и является метрикой Майерса (рисунок 4.6)

Рисунок 4.6 - Алгоритм расчёта и вывода метрики Майерса

4.2.5 Алгоритм расчёта метрики Джилба

Данный алгоритм ищет в преобразованном тексте операторы условия (if) посредством построчного анализа. Если находит, то считает их количество, отношение к общему числу операторов, а также максимальную степень вложенности. После расчётов осуществляется вывод значений (рисунок 4.7)

Рисунок 4.7 - Алгоритм расчёта и вывода метрики Джилба

4.2.6 Алгоритм расчёта метрики обращения к глобальным переменным

Программа анализирует файл главной функции программы (Main). Ищет объявления переменных. Если найдена переменная, поочередно открываются файлы подпрограмм. Анализируется, не переназначена ли переменная с таким же именем. Если нет, то производится поиск изменений глобальной переменной. После анализа всех переменных, анализируются заголовки файлов подпрограмм (ищутся параметры, заданные через «var»). И аналогичным образом происходит поиск изменений переменной.

Схема алгоритма расчёта метрики обращения к глобальным переменным представлена на рисунке 4.8.

Рисунок 4.8 ? Алгоритм расчёта и вывода метрики обращения к глобальным переменным

4.2.7 Алгоритм расчёта спена

Программа ищет объявления переменных, после чего вычисляется суммарное их использование. Спен равен - суммарное использование минус 1. После всех расчётов вычисляется средний спен равный сумме спенов всех переменных деленной на количество переменных.

Схема алгоритма расчёта спена представлена на рисунке 4.9.

Рисунок 4.9 -Алгоритма расчёта и вывода спена

4.2.8 Алгоритм расчёта метрики Чепина

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

Схема алгоритма расчёта спена представлена на рисунке 4.10.

Рисунок 4.10 -Алгоритма расчёта и вывода метрики Чепина

4.2.9 Алгоритм расчёта комплексной меры сложности программы

Программа загружает значения всех рассчитанных метрик. Если метрика ещё не рассчитана, программа вычисляет её. После того все значения метрик выводятся на экран. Пользователь выбирает, какие метрики он хочет использовать при расчёте, а также какие весовые коэффициенты подставить к каждому из значений метрик. После нажатия кнопки «Вычислить комплексную меру» осуществляется расчёт комплексной оценки сложности программ.

Схема алгоритма расчёта комплексной меры сложности программ представлена на рисунке 4.11.

Рисунок 4.11 - Алгоритм расчёта и вывода комплексной меры сложности

4.3 Структура классов программного средства для оценки сложности программ

Структура классов ПСОСП представлена на рисунке 4.12.

Как видно на рисунке 4.12, основным классом является класс frmMain. Именно тут производятся расчёты всех метрик. Ниже приведены основные методы класса frmMain:

procedure FillOpm(Str: String);

Данная процедура заполняет матрицу операторов, которые присутствуют в программе.

function GetProcName(Str: string): string;

Функция GetProcName получает на входе строку исходного текста. Возвращает имя процедуры, реализованной в этой строке. Если в строке-параметре нет реализации процедуры, функция возвращает пустую строку.

function GetFuncName(Str: string): string;

Функция GetFuncName получает на входе строку исходного текста. Возвращает имя функции, реализованной в этой строке. Если в строке-параметре нет реализации функции, возвращается пустая строка.

procedure OperCount(Oper, Str, FileName: string);

Считает количество операторов или операндов Oper в файле под названием FileName, начиная со строки Str.

function IsIn(subst, str : string):boolean;

Данная функция проверяет, входит ли строка subst в сроку str. В отличие от стандартной функции pos, в данной функции есть условие, является ли subst обособленной строкой(т.е. не является частью какого-нибудь слова).

Например,

Isin (my,`my name is alex') = true;

Isin (my,`mynameisalex') = false;

Рисунок 4.12 - Структура классов ПСОСП

Procedure GetOperands(Str,FileName : string);

Извлекает объявляемые операнды из строки Str файла FileName. Помимо извлечения операндов реализуется их подсчёт, посредством вызова процедуры OperCount.

procedure SplitFile(const F: TextFile);

Данная процедура разбивает файл F на несколько файлов меньшего размера. В результате появляются файлы в каждом из которых реализована только одно подпрограмма.

Function NumOfPredicates(Str:string): integer;

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

procedure mk_case(var Str:string; const F : TextFile);

Данная процедура сканирует файл F, начиная со строки Str, содержащей оператор «case». Процедура прекращает свою работу, когда обнаружит что оператор «case» закончился.

procedure mk_if(var Str:string; const F : TextFile; var CLI: Integer);

Данная процедура сканирует файл F, начиная со строки Str, содержащей оператор «if». Процедура прекращает свою работу, когда обнаружит что оператор «if» закончился.

procedure mk_while(var Str:string; const F : TextFile);

Данная процедура сканирует файл F, начиная со строки Str, содержащей оператор «while». Процедура прекращает свою работу, когда обнаружит что оператор «while» закончился.

procedure mk_repeat(var Str:string; const F : TextFile);

Данная процедура сканирует файл F, начиная со строки Str, содержащей оператор «repeat». Процедура прекращает свою работу, когда обнаружит что оператор «repeat» закончился.

Procedure DrawGraph(FN:string;Img : TImage);

Данная функция генерирует и строит управляющий граф программы. Исходные данные для построения графа - файл `mccabe.mcb'.

function IsNDeclared(Str,FileName : string):boolean;

Функция проверяет, объявлена ли переменная Str в файле FileNAme.

procedure MakeGlobalList;

Данная процедура составляет список всех глобальных переменных, используемых в программе.

function CoefCount:extended;

Данная функция вычисляет весовые коэффициенты для расчёта комплексной меры сложности программ.

function GetFile(str:string):string;

Функция извлекает имя файла из полной директории, содержащейся в Str.

function GetTimeStr:string;

Данная функция преобразует текущее время и дату в строковый формат.

procedure MkReport;

Данная процедура генерирует и сохраняет в файл отчёт после расчёта комплексной меры сложности.

Класс frmReports отвечает за вывод отчётов.

Методы:

procedure Open1Click(Sender: TObject);

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

procedure Open2Click(Sender: TObject);

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

procedure ExitClick(Sender: TObject);

При вызове этой процедуры осуществляется закрытие окна просмотра отчётов.

В классе frmDrawGraph реализованы методы построения управляющего графа.

Методы:

Function FillIf(X,Y: integer;var ind: integer;const F:TextFile): PT;

Данная функция рассчитывает и заносит в массив координаты вершин управляющего графа, формируемых оператором условия(IF).

На входе:

X,Y - координаты начальной точки;

Ind - индекс первого свободного элемента в массиве;

F - идентификатор файла, по которому строится управляющий граф;

На выходе координаты последней вершины.

Function FillCase(X,Y: integer;var ind: integer;const F:TextFile): PT;

Данная функция рассчитывает и заносит в массив координаты вершин управляющего графа, формируемых оператором CASE.

На входе:

X,Y - координаты начальной точки;

Ind - индекс первого свободного элемента в массиве;

F - идентификатор файла, по которому строится управляющий граф;

На выходе координаты последней вершины.

Function FillWhile(X,Y: integer;var ind: integer;const F:TextFile): PT;

Данная функция рассчитывает и заносит в массив координаты вершин управляющего графа, формируемых оператором цикла(WHILE).

На входе:

X,Y - координаты начальной точки;

Ind - индекс первого свободного элемента в массиве;

F - идентификатор файла, по которому строится управляющий граф;

На выходе координаты последней вершины.

Function FillRepeat(X,Y: integer;var ind: integer;const F:TextFile): PT;

Данная функция рассчитывает и заносит в массив координаты вершин управляющего графа, формируемых оператором цикла(REPEAT).

На входе:

X,Y - координаты начальной точки;

Ind - индекс первого свободного элемента в массиве;

F - идентификатор файла, по которому строится управляющий граф;

На выходе координаты последней вершины.

Function RestIf(var ind: integer;const F:TextFile): PT;

Данная функция корректирует координаты вершин оператора IF в массиве, начиная с ind.

Function RestCase(var ind: integer;const F:TextFile): PT;

Данная функция корректирует координаты вершин оператора CASE в массиве, начиная с ind.

Function RestWhile(var ind: integer;const F:TextFile): PT;

Данная функция корректирует координаты вершин оператора WHILE в массиве, начиная с ind.

Function RestRepeat(var ind: integer;const F:TextFile): PT;

Данная функция корректирует координаты вершин оператора REPEAT в массиве, начиная с ind.

Function DrawIf(var ind: integer;const F:TextFile;Img : TImage): PT;

Данная функция берет из массива, сгенерированного из файла F, координаты вершин, начиная с ind и строит линии между ними в поле Img. На выходе координаты последней вершины.

Function DrawCase(var ind: integer;const F:TextFile;Img : TImage): PT;

Данная функция берет из массива, сгенерированного из файла F, координаты вершин, начиная с ind и строит линии между ними в поле Img. На выходе координаты последней вершины.

Function DrawWhile(var ind: integer;const F:TextFile;Img : TImage): PT;

Данная функция берет из массива, сгенерированного из файла F, координаты вершин, начиная с ind и строит линии между ними в поле Img. На выходе координаты последней вершины.

Function DrawRepeat(var ind: integer;const F:TextFile;Img : TImage): PT;

Данная функция берет из массива, сгенерированного из файла F, координаты вершин, начиная с ind и строит линии между ними в поле Img. На выходе координаты последней вершины.

Function DrawGraph(F:TextFile;Img : TImage): PT;

Управляющая процедура. В этой процедуре осуществляется вызов всех, описанных ранее методов класса frmDrawGraph. Фактически данная процедура строит граф, описанный в файле F, в поле Img.

Объектами класса frmAbout являются окна справочной информации. При создании объекта данного класса появляется окно «О программе», на котором есть одна кнопка, за нажатие которой отвечает процедура procedure TForm4.BitBtn1Click(Sender: TObject), которая закрывает это окно.

5. Методика работы пользователя с программным средством для оценки сложности программ

5.1 Комплектация

ПСОСП «Сложность» поставляется в следующей комплектации:

1. CompEval.exe - Исполняемый файл программы. Требуется для непосредственного запуска ПСОСП;

2. Папка Opmaps. - Папка, в которой находятся карты операторов Pascal;

3. Папка Procs. - В данную папку временно записываются все процедуры и функции исследуемой программы;

4. Папка Reports. - В данную папку записываются отчёты о проведенных расчётах;

5. Папка Temp. - Папка предназначена для хранения временных файлов;

5.2 Описание элементов главного меню

Главное меню находится в верхней части окна программы(рисунок 5.1)

Рисунок 5.1 - Главное меню ПСОСП «Сложность»

Как видно из рисунка 5.1 оно состоит из следующих элементов:

1. Файл;

2. Метрики;

3. Отчеты;

4. Информация;

Элементы пункта меню Файл

Данный пункт меню предназначен для выполнения управляющих функций ПСОСП «Сложность». Состоит он из следующих пунктов:

1) Открыть. По нажатию на этот пункт появляется диалоговое окно открытия файла(рисунок 5.2);

2) Выход. При нажатии на этот пункт меню осуществляется выход из программы;

Рисунок 5.2 ? Диалоговое окно открытия файла

Элементы пункта меню Метрики

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

1) Метрики размера программ. Содержит следующие пункты:

a) Простейшие объемные метрики. Выбор этого пункта осуществляет переход к окну вывода информации о простейших объемных метриках;

б) Метрики Холстеда. Выбор этого пункта осуществляет переход к окну вывода информации о метриках Холстеда;

2) Метрики сложности потока управления программ. Содержит следующие пункты:

а) Цикломатическое число Маккейба. Выбор этого пункта осуществляет переход к окну вывода информации о метрике Маккейба;

б) Метрика Майерса. Выбор этого пункта осуществляет переход к окну вывода информации о метрике Майерса;

в) Метрика Джилба. Выбор этого пункта осуществляет переход к окну вывода информации о метрике Джилба;

3) Метрики сложности потока данных программ. Содержит следующие пункты:

а) Обращение к глобальным переменным. Выбор этого пункта осуществляет переход к окну вывода информации о метрике обращения к глобальным переменным;

б) Спен. Выбор этого пункта осуществляет переход к окну вывода информации о Спене;

в) Метрика Чепина. Выбор этого пункта осуществляет переход к окну вывода информации о метрике Чепина;

4) Комплексная оценка сложности программы. Выбор этого пункта осуществляет переход к окну вывода информации комплексной оценке сложности программы;

Элементы пункта меню Отчеты

По нажатию на этот пункт меню открывается окно просмотра отчетов (рисунок 5.3)

Рисунок 5.3 - Окно просмотра отчётов

У окна просмотра отчётов есть своё меню, содержащее только 1 пункт - «Файл». У него в свою очередь есть 3 подпункта:

а) Открыть 1й файл. Показывает диалоговое окно для открытия первого файла для сравнения отчётов;

б) Открыть 2й файл. Показывает диалоговое окно для открытия второго файла для сравнения отчётов;

в) Закрыть. Закрывает окно просмотра отчётов.

Элементы пункта меню Информация

Содержит всего один пункт - «О программе». При выборе этого пункта появляется окно выводящее информацию о программе (рисунок 5.4).

Рисунок 5.4 - Окно «О программе»

5.3 Работа с программным средством для оценки сложности программ

Для начала работы необходимо запустить файл CompEval.exe. На экране появится главное окно ПСОСП «Сложность»(рис 5.5). Для работы в полноэкранном режиме рекомендуется развернуть окно стандартными средствами Windows. Изначально окно пустое. Для того чтобы на окне появилась информация, необходимо выбрать в главном меню «Файл -> Открыть файл» либо нажать Ctrl+O. В появившемся диалоговом окне (рисунок 5.2) нужно выбрать файл и нажать ОК. Благодаря встроенному фильтру в диалоговом окне будут видны только файлы с расширением «*.pas», что облегчает пользователю поиск нужного файла.

Рисунок 5.5 - Главное окно ПСОСП «Сложность»

После открытия файла в главном окне появится текст выбранной программы (Рисунок 5.6).

Рисунок 5.6 - Текст открытой программы

Между текстом программы и главным меню появятся закладки, нажимая на которые можно передвигаться по категориям метрик.

Если выбрать закладки «Метрики размера программ», «Метрики сложности потока Управления программ» либо «Метрики сложности потока данных программ», то под выбранной закладкой появится ещё одна строка закладок, нажимая на которые пользователь может непосредственно перейти к определенным метрикам (рисунок. 5.7).

Рисунок 5.7 - Метрики Холстеда

При нажатии на закладку «Комплексная оценка сложности программы» отображается окно вывода информации о комплексной мере. (Рисунок 5.8)

В появившемся окне выводятся все метрики, которые были рассчитаны, а также их значения. Для исключения какой-либо метрики из расчета комплексной оценки достаточно просто снять отметку напротив метрики. (Рисунок 5.9)

Рисунок 5.8 - Комплексная оценка сложности программы

Рисунок 5.9 - Выбор метрик для расчета комплесной оценки

В нижнем левом углу пользователь может выбрать как распределить весовые коэффициенты. Если выбрать «использовать стандартные коэффициенты», то программа их сама расставит. Если же выбрать «Ввести свои коэффициенты», то программа предложит пользователю ввести их самостоятельно (рисунок 5.10).

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

При нажатии на кнопку «Вычислить комплексную меру» программа производит расчёт комплексной меры, а также генерирует отчёт и выводит сообщение, предлагающее просмотреть отчёт (рисунок 5.11).

Рисунок 5.10 - Весовые коэффициенты

Рисунок 5.11 - Сообщение об отчёте

Если нажать на кнопку «Да», то появится окно просмотра отчетов, и только что созданный отчёт автоматически загрузится в левое поле (рисунок 5.12).

По желанию можно открыть ещё один файл отчёта и сравнить результаты. (Рисунок 5.13).

Рисунок 5.12 - Просмотр отчёта

Отчёты генерируются автоматически и имеют следующее название

«Имя файла_дата проверки (ДДММГГГГ)_время проверки(ЧЧММСС)»

Такой формат отчёта позволяет пользователю с легкостью найти требуемый ему файл.

Рисунок 5.13 - Сравнение отчетов

5.4 Окна Метрик

сложность метрика программный алгоритм

Окна метрик несут в себе исключительно информативную функцию. Пользователь не может там ничего изменить, окна просто отображают информацию, о расчётах, за исключением метрики Чепина.

Простейшие объемные метрики. В левой части окна отображаются значения метрик. В правой части отображен преобразованный код программы из расчёта один оператор - одна строка (рисунок 5.14).

Рисунок 5.14 - Окно простейших объемных метрик

Метрики Холстеда. В верхней левой части отображаются значения параметров, используемых при расчёте метрик Холстеда. В нижней левой части отображаются значения метрик. В правой части - Списки операторов и операндов, а также частота их использования (рисунок 5.7)

Цикломатическое число Маккейба. В левой части окна отображается Цикломатическое число. В правой части отображена последовательность операторов, влияющих на цикломатическое число (рисунок 5.15).

Рисунок 5.15 - Цикломатическое число Маккейба

При нажатии на кнопку «Управляющий граф» открывается окно, на котором изображен управляющий граф анализируемой программы (рисунок 5.16)

Рисунок 5.16 - Управляющий граф

Метрика Майерса. В левой части окна отображается значения параметров, влияющих на значение метрики, а также скорректированное цикломатическое число. В правой части отображены операторы с предикатами (рисунок 5.17).

Рисунок 5.17 - Метрика Майерса

Рисунок 5.18 - Метрика Джилба

Метрика Джилба. В левой части окна отображается значения параметров, влияющих на значение метрики, а также само значение метрики. В правой части отображена последовательность операторов, влияющих на значение метрики (рисунок 5.18).

Обращение к глобальным переменным. В левой части окна отображается значения параметров, влияющих на значение метрики, а также само значение метрики. В правой части отображены глобальные переменные (рисунок 5.19).

Рисунок 5.19 - Обращение к глобальным переменным

Рисунок 5.20 - Спен

Спен. В левой части окна отображается значение метрики. В правой части отображены спены всех переменных (рисунок 5.20).

Метрика Чепина. В верхней части окна отображены все идентификаторы, разделенные на категории, а также их количество.

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

В нижней правой части расположено значение метрики. Чтобы его получить необходимо нажать на кнопку «Вычислить» (рисунок 5.21)

Рисунок 5.21 - Метрика Чепина

5.5 Горячие клавиши

В ПСОСП «Сложность» предусмотрены следующие горячие клавиши:

- Ctrl+O - Открыть файл;

- Ctrl+X - Выйти из программы;

- Ctrl+S - Перейти к простейшим объемным метрикам;

- Ctrl+H - Перейти к Метрикам Холстеда;

- Ctrl+M - Перейти к цикломатическому числу Маккейба;

- Ctrl+Y - Перейти к метрике Майерса;

- Ctrl+D - Перейти к метрике Джилба;

- Ctrl+G - Перейти к обращению к глобальным переменным;

- Ctrl+S - Перейти к спену;

- Ctrl+C - Перейти к метрике Чепина;

- Ctrl+R - Открыть окно просмотра отчётов;

- Ctrl+F1(Окно просмотра отчётов) - Открыть отчёт в левую область окна;

- Ctrl+F2(Окно просмотра отчётов) - Открыть отчёт в правую область окна

- Ctrl+X(Окно просмотра отчётов) - Закрыть окно просмотра отчётов окна

- F1 - открыть окно «О программе»

6. Технико-экономическое обоснование разработки программного средства для оценки сложности программ

6.1 Общая характеристика программных средств вычислительной техники

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

Каждое ПС, как реальная продукция, имеет определенный жизненный цикл, т.е. период от начала разработки и до снятия с эксплуатации, включающий три стадии: разработку (проектирование); производство (создание), использование.

Разработка ПС предусматривает проведение всех стадий проектирования (техническое задание, эскизный проект, технический проект, рабочий проект, внедрение) и относится к 3-й группе сложности. По степени новизны ПС относится к группе "А" с коэффициентом 1,0.

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

Таблица 1. - Характеристика функций и их объем

№ функции

Содержание функций

Объем (условных машинных команд)

101

Организация ввода информации

100

102

Контроль, предварительная обработка и ввод информации

520

109

Организация ввода/вывода в интерактивном режиме

220

207

Манипулирование данными

8400

506

Обработка ошибок и сбойных ситуаций

430

507

Обеспечение интерфейса между компонентами

730

706

Предварительная обработка и печать файлов

540

Общий объем ПС рассчитывается по формуле:

(6.1)

где Vo - общий объем ПС;

Vi - объем функций ПС;

n - общее число функций.

Vo = 10940 (усл. маш. команд).

Нормативная трудоемкость Тн = 241,5 человеко-дней.

6.2 Расчёт сметы затрат и отпускной цены на ПС

Исходные данные для расчета суммы затрат и определения отпускной цены на ПС приведены в таблице 2.

Таблица 2. - Исходные данные для расчета отпускной цены и суммы затрат

Наименование показателей

Буквенные обозначения

Единицы измерения

Количество

Коэффициент новизны

Кн

Единиц

0.8

Группа сложности

Единиц

3

Дополнительный коэффициент сложности

Ксл

Единиц

0,07

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

Кт

Единиц

0.8

Продолжительность разработки

Тр

Лет

0,5

Фонд рабочего времени

Фр

ч/мес.

168,3

Продолжительность рабочего дня

Тч

Ч

8

Норматив дополнительной заработной платы

Нзд

%

10

Тарифная ставка 1-го разряда

Тм1

руб.

62000

Ставка отчислений в фонд социальной защиты населения

Нзсз

%

35

Норматив командировочных расходов

Нрнк

%

30

Норматив прочих затрат

Нпз

%

20

Норматив накладных расходов

Нрн

%

100

Норматив на сопровождение и адаптацию ПС

Нрса

%

10

Ставка налога на добавленную стоимость

Ндс

%

18

Ставка налога, уплачиваемого единым платежом от начисленной заработной платы

Нне

%

4

Ставка налога в местный и республиканский бюджеты единым платежом

Нмр

%

3

Налог на прибыль при отсутствии льгот

Нn

%

24

С учетом дополнительного коэффициента сложности Ксл рассчитывается общая трудоемкость ПС:

(6.2)

где То - общая трудоемкость ПС;

Тн - нормативная трудоемкость ПC;

Ксл - дополнительный коэффициент сложности ПС.

To = 241,5+(241,50,07)=258,405(человеко-дней).

При решении сложных задач с длительным периодом разработки ПС трудоемкость определяется по стадиям разработки (техническое задание - ТЗ, эскизный проект - ЭП, технический проект - ТП, рабочий проект - РП и внедрение - ВН) с учетом новизны, степени использования типовых программ и удельного веса трудоемкости стадий разработки ПС в общей трудоемкости разработки ПС. При этом на основании о6щей трудоемкости рассчитывается уточненная трудоемкость с учетом распределения по стадиям (Ту):

(6.3)

где Тi - трудоемкость разработки ПС на i-й стадии (человеко-дней);

m - количество стадий разработки.

Трудоемкость ПС по стадиям определяется с учетом новизны и степени использования в разработке типовых программ и ПС:

(6.4)

где Тстi - трудоемкость разработки ПС на i-й стадии (технического задания, эскизного проекта, технического проекта, рабочего проекта и внедрения);

Кн - поправочный коэффициент, учитывающий степень новизны ПС;

Кт - поправочный коэффициент, учитывающий степень использования в разработке типовых программ и ПС;

dcтi - удельный вес трудоемкости i-й стадии разработки ПС в общей трудоемкости разработки ПС.

Трп = 0,550,80,8258,4=91 (человеко-дней).

Аналогичный расчет проводится для всех стадий разработки ПС, результаты которого приведены в таблице 3.

Таблица 3. - Расчет уточненной трудоемкости ПС по стадиям

Стадии

Итого

ТЗ

ЭП

ТП

РП

ВН

Коэффициент удельных весов трудоемкости (dст)

0,11

0,09

0,11

0,55

0,14

1

Коэффициент, учитывающий использование типовых программ (Кт)

-

-

-

0,8

-

-

Коэффициент новизны (Кн)

0,8

0,8

0,8

0,8

0,8

-

Уточнённая трудоемкость (Ту)

23

19

23

91

29

185

Численность исполнителей (Чр)

1

1

1

1

1

1

Срок разработки (лет) Тр

0,055

0,045

0,055

0,275

0,07

0,5

Уточненная трудоемкость разработки ПС по всем стадиям составит 185 человеко-дней (см таблицу 3).

Уточненная трудоемкость и общая плановая численность разработчиков служат базой для расчета основной заработной платы. Месячная тарифная ставка каждого исполнителя (Тм) определяется путем умножения действующей месячной тарифной ставки 1-го разряда (Тм1) на тарифный коэффициент (Тк), соответствующий установленному тарифному разряду:

ТМ= ТМ1. ТК (6.5)

Часовая тарифная ставка рассчитывается путем деления месячной тарифной ставки на установленный при восьмичасовом рабочем дне фонд рабочего времени

(6.6)

где ТЧ - часовая тарифная ставка (руб.);

ТМ - месячная тарифная ставка (руб.).

Определяются месячные и часовые ставки инженера-программиста (Тмв, Тчв) по формулам (6.5) и (6.6).

Основная заработная плата исполнителей на конкретное ПС рассчитывается по формуле:

(6.7)

где n - количество исполнителей, занятых разработкой конкретного ПС;

Тчi - часовая тарифная ставка i-гo исполнителя (ден.ед.);

Фэi - эффективный фонд рабочего времени i-гo исполнителя (дней);

Тч - количество часов работы в день (ч);

К - коэффициент премирования.

Зоi = 128281301,3 =1 733 264 (руб.)

Дополнительная заработная плата на конкретное ПС (Здi) включает выплаты, предусмотренные законодательством о труде (оплата отпусков, льготных часов, времени выполнения государственных обязанностей и других выплат, не связанных с основной деятельностью исполнителей), и определяется по нормативу в процентах к основной заработной плате:

(6.8)

где Здi - дополнительная заработная плата исполнителей на конкретное ПС (ден.ед.);

Нд - норматив дополнительной заработной платы в целом по научной организации.

Дополнительная заработная плата (Здi) при нормативе дополнительной заработной платы Нд = 10%:

Здi=1 733 264 · 10/100=173 326 (руб.)

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

Отчисления в фонд социальной защиты населения (Зсзi) определяются последующей формуле:

(6.9)

где НСЗ - норматив отчислений в фонд социальной защиты населения (%).

Сумма отчислений в фонд социальной защиты населения при нормативе отчислений НСЗ = 35% равна:

Зсзi=(1 733 264 + 173 326)·35/100 = 667 306 (руб.).

Налоги рассчитываемые от фонда оплаты труда определяются в соответствии с действующими законодательными актами по нормативам в процентном отношении к сумме всей заработной платы, относимой на ПС (налог, уплачиваемый единым платежом, включая налог на ликвидацию последствий чернобыльской катастрофы и отчисления в фонд занятости (Неi)):

(6.10)

где Нне - норматив налога, уплачиваемого единым платежом (%).

Неi=(1 733 264 + 173 326)·4/100 = 76 264 (руб.)

Расходы по статье «Материалы» (М) определяются на основании сметы затрат, разрабатываемой на ПС с учетом действующих нормативов. По статье «Материалы» отражаются расходы на материалы, необходимые для разработки ПС. Нормы расхода материалов в суммарном выражении (Нм) определяются в расчете на 100 строк исходного кода. Сумма затрат материалов рассчитывается по формуле:

(6.11)

где НМi - норма расхода материалов в расчете на 100 строк исходного кода ПС (руб.);

VOi - общий объем ПС (строк исходного кода) на конкретное ПС.

При нормативе Нмi = 380 рублей на 100 команд расходы на материалы составляют:

Мi =380·10940/100 = 41572 (руб.).

Расходы по статье «Спецоборудование» (Рсi) включают затраты средств на приобретение вспомогательных специального назначения технических и программных средств, необходимых для разработки конкретного ПС, включая расходы на их проектирование, изготовление, отладку, установку и эксплуатацию. Затраты по этой статье определяются в соответствии со сметой расходов, которая составляется перед разработкой ПС. Данная статья включается в смету расходов на разработку ПС в том случае, когда приобретаются специальное оборудование, или специальные программы, предназначенные для разработки и создания только данного ПС. Т.к. таких расходов не было, то эта статья не учитывается.

Расходы по статье «Машинное время» (Рмi) включают оплату машинного времени, необходимого для разработки и отладки ПС, которое определяется по нормативам (в машино-часах) на 100 строк исходного кода (Нмв) машинного времени в зависимости от характера решаемых задач и типа ПЭВМ:

(6.12)

где Цмi - цена одного машино-часа (тыс.руб.);

Vоi - общий объем ПС (строк исходного кода);

Нмв - норматив расхода машинного времени на отладку 100 строк исходного кода (машино-часов).

Расходы на оплату машинного времени (Рмi) при цене 1-го машино-часа Цмi = 1000 рублей и нормативе расхода машинного времени на 100 строк исходного кода Нмi = 11,93:

Рмi = 1000 · 10940 · 11,93/100 = 1 305 142 (руб.).

Расходы по статье «Научные командировки» (Рнкi) на конкретное ПС определяются по нормативу, разрабатываемому в целом по научной организации, в процентах к основной заработной плате. Поскольку таких затрат не было, данная статья не учитывается

Расходы по статье «Прочие затраты» (Пзi) на конкретное ПС включают затраты на приобретение и подготовку специальной научно-технической информации и специальной литературы. Определяются по нормативу, разрабатываемому в целом по научной организации, в процентах к основной заработной плате:

(6.13)

где Hпз - норматив прочих затрат в целом по научной организации.

Норматив прочих затрат в целом по научной организации рассчитывается по формуле:

(6.14)

где Пз - прочие затраты в целом по научной организации.

Прочие затраты (Пзi) при нормативе прочих затрат Нпз=20%:

Пзi = 1 733 264· 20/100 = 346 653 (руб.).

Затраты по статье «Накладные расходы» (Рнi), связанные с необходимостью содержания аппарата управления, вспомогательных хозяйств и опытных (экспериментальных) производств, а также с расходами на общехозяйственные нужды (Pнi), относятся на конкретное ПС по нормативу (Hрн) в процентном отношении к основной заработной плате исполнителей. Норматив устанавливается в целом по научной организации:

(6.15)

где Рнi - накладные расходы на конкретную ПС (руб.);

Нрн - норматив накладных расходов в целом по научной организации.

Норматив накладных расходов определяется по формуле:

(6.16)

где Рн - накладные расходы в целом по научной организации (руб.).

Накладные расходы при нормативе накладных расходов Нрн = 100% составляют:

Рнi = 1 733 264 · 100/100 = 1 733 264 (руб.)

Общая сумма расходов по всем статьям сметы (Срi) на ПС рассчитывается по формуле:

Срi= Мiоiдiсзiеi+ Рсi+ РмiНкi+ Пзiнi (6.17)

Срi = 41 572 + 1 733 264 + 173 326 + 667 307 +76 264 + 1 305 142 + 346 653 + 1 733 264 = 6 076 792 (руб.)

Кроме того, организация - разработчик осуществляет затраты на сопровождение и адаптацию ПС (Pcai), которые определяются по нормативу (Нрса):

(6.18)

(6.19)

где Нрса - норматив расходов на сопровождение и адаптацию (%).

Рса - расходы на сопровождение и адаптацию ПС в целом по организации (руб.);

Ср - смета расходов в целом по организации без расходов на сопровождение и адаптацию (ден. Ед.).

Расходы на сопровождение и адаптацию при нормативе Нрса = 10% от общей суммы расходов по смете:

Рса = 6 076 792 ·10/100= 607 679 (руб.)

Общая сумма расходов на разработку (с затратами на сопровождение и адаптацию) как полная себестоимость ПС (Сп) определяется по формуле:

(6.20)

Спi = 6 076 792 + 607 679 = 6 684 471 (руб.)

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

(6.21)

где Псi - прибыль от реализации ПС заказчика (руб.);

Урпi - уровень рентабельности ПС (%);

Спi - себестоимость ПС (тыс.руб.).

При уровне рентабельности ПС равном 30% прибыль от реализации создаваемого ПС равна:

Псi = 6 684 471 · 30/100=2 005 341 (руб.).

Прогнозируемая цена без налогов:

(6.22)

Прогнозируемая цена равна:

Цпi= 6 684 471 + 2 005 341 = 8 689 812(руб.).

Отчисления из выручки в бюджет (ОЕП):

(6.23)

где НЕП - норматив единого платежа (%).

При норме отчислений 3% величина отчислений в бюджет составит:

ОЕП =8 689 812·3/(100-3) = 268 757 (руб.)

Цена без НДС определяются по следующей формуле:

Ц = Цп + ОЕП (6.24)

Цена без НДС равна:

Ц = 8 689 812 + 268 757 = 8 958 569 (руб).

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

(6.25)

где Ндсi - налог на добавленную стоимость (ден. ед.);

Ц - цена без НДС (ден. ед.);

Нндс - норматив налога на добавленную стоимость (%).

Налог на добавленную стоимость (Ндсi) рассчитывается при ставке налога Нндс = 18%:

Ндсi=8 958 569 · 18/100 = 1 612 542(руб.)

Прогнозируемая «отпускная цена» ПС представляет собой сумму себестоимости, прибыли, отчислений в местный и республиканский бюджеты, налога на добавленную стоимость:

Цоi =Ц+ Ндсi (6.26)

Цоi= 8 958 569 + 1 612 542 = 10 571 111 (руб.)

Прибыль от реализации ПС за вычетом налога (Нпi) с прибыли (чистая прибыль - Пчi) остается организации - разработчику и представляет собой эффект от создания нового программного средства ВТ:

(6.27)

где Ннп - норматив налога на прибыль (%).

Пчi = 2 005 341- (2 005 341 ·24)/100 = 1 524 059 (руб.)

Таким образом, все полученные значения сводятся в таблицу 4

Таблица 4. - Сводная таблица рассчитанных статей

№ пп

Наименование статей

Условные обозначения

Норматив

Расчётные формулы

Вычисленное значение (руб.)

1.

Материалы и комплектующие

Мi

-

Расходы определяются на основании расчета

41572

2.

Основная заработная плата исполнителей

Зоi

-

Расходы определяются на основании расчета

1 733 264

3.

Дополнительная заработная плата исполнителей

Здi

Нд=10-20%

173 326

4.

Отчисления в фонд социальной защиты населения

Зсзi

Ноз=35%

667 307

5.

Налог, уплачиваемый единым платежом от начисленной заработной платы

Неi

Нне=4%

76 264

6.

Машинное время

Рmi

-

Расходы определяются на основании расчета

1 305 142

7.

Прочие прямые расходы

Пзi

Нпз=20%

346 653

8.

Накладные расходы

Рнi

Нрн=100%

1 733 264

9.

Полная себестоимость

Спi

-

Сп i= Мi+Зоi+Здi+Зсзi+ +Неi+Рсi+Рмi++Рнкi+Пзi+Рнi

6 076 792

10.

Прогнозируемая прибыль

Псi

Урпi=30%

2 005 341

11.

Прогнозируемая цена без налогов

Цпi

-

Цпi = Спi+Псi

8 689 812

12.

Отчисления из выручки в бюджет

ОЕП

Нмр= 3

268 757

13.

НДС (при отсутствии льгот)

НДСi

НДС=18%

1 612 542

14.

Прогнозируемая отпускная цена

Цоi

-

Цоi=Цпi+Омр+НДС

10 571 111

6.3 Расчет прогнозируемого экономического эффекта от использования разрабатываемого программного средства у пользователя

Для определения экономического эффекта от использования нового ПС у потребителя необходимо сравнить расходы по всем основным статьями сметы затрат на эксплуатацию нового ПС (расходы на заработную плату с начислениями, материалы, машинное время) с расходами по соответствующим статьям базового варианта. При этом за базовый вариант следует принимать аналогичное программное средство, используемое в действующей автоматизированной системе. При сравнении базового и нового вариантов ПС в качестве экономического эффекта будет выступать общая экономия всех видов ресурсов относительно базового варианта. При этом создание нового ПС окажется экономически целесообразным лишь в том случае, если все капитальные затраты окупятся за счет получаемой экономии в ближайшие 1-2 года.

Таблица 5. - Исходные данные для расчета экономического эффекта

Наименование показателей

Обозначения

Единицы измерения

Значение показателя

Наименование источника информации

в базовом варианте

в новом варианте

1. Капитальные вложения, включая стоимость услуг по сопровожд. и адаптации ПС

Кпр

тыс.руб.

-

10 571 111

Договор заказчика с разработчиком

2. Затраты на доукомплек-тование ВТ техническими средствами в связи с внедрением нового ПС

Ктс

тыс. руб.

-

0

Смета затрат на внедрение

3. Затраты на пополнение оборотных фондов, связанных с эксплуатацией нового ПС

Коб

тыс. руб.

-

0

Смета затрат на внедрение

4. Численность программис-тов, занятых освоением ПС

Чпо

чел.

-

1

Паспорт ПС

5. Численность программис-тов, занятых эксплуатацией ПС

Чпэ

чел.

2

2

Проект плана работ пользователя

6. Продолжительность освоения

Тос

мес.

-

1

Паспорт ПС

7. Расход машинного времени на освоение ПС

Тмос

машино-часов

-

50

Паспорт ПС

8. Среднемесячная ЗП одного программиста

Зсм

руб.

300000

300000

Расчетные данные пользователя

9. Коэффициент начислений на зарплату

Кнз

единиц

2.0

2.0

Рассчитывается по данным пользователя

10. Среднемесячное количество р...


Подобные документы

  • Временная и ёмкостная сложность программы. Размер входных данных. Связь сложности в худшем случае и в среднем. Понятие оптимальной программы. Классы вычислительной сложности программ. Эквивалентность по сложности. Примеры классов вычислительной сложности.

    презентация [77,3 K], добавлен 19.10.2014

  • Понятие алгоритма и анализ теоретических оценок временной сложности алгоритмов умножения матриц. Сравнительный анализ оценки временной сложности некоторых классов алгоритмов обычным программированием и программированием с помощью технологии Open MP.

    дипломная работа [1,6 M], добавлен 12.08.2017

  • Общее понятие алгоритма и меры его сложности. Временная и емкостная сложность алгоритмов. Основные методы и приемы анализа сложности. Оптимизация, связанная с выбором метода построения алгоритма и с выбором методов представления данных в программе.

    реферат [90,6 K], добавлен 27.11.2012

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

    дипломная работа [1,4 M], добавлен 29.06.2012

  • Семантические сети как модели представления знаний. Основные методы определения сходства графовых моделей систем. Метод решения задач определения сходства семантических сетей на основе их сложности. Разработка алгоритмов и их программная реализация.

    дипломная работа [1,3 M], добавлен 17.12.2011

  • Разработка представления методов потокового анализа распараллеливаемых программ, управляемых базой знаний; требования к системе; проект верхнего и нижнего уровней. Математическая модель и техническая документация программного средства; тестирование.

    дипломная работа [2,9 M], добавлен 18.04.2012

  • Обзор существующих моделей параллельного программирования, основные средства отладки эффективности MPI-программ, общие проблемы всех средств трассировки. Создание экспериментальной системы отладки эффективности MPI-программ, этапы работы анализатора.

    дипломная работа [767,2 K], добавлен 14.10.2010

  • Формирование опыта создания программ с использованием программного продукта Turbo Assembler. Использование меньшего количества команд и обращений в память, увеличение скорости и уменьшение размера программы. Степень сложности совместной разработки.

    реферат [15,4 K], добавлен 24.02.2010

  • Основные процессы разработки, приобретения и внедрения сложных систем. Семейство стандартов ISO 9000. Зрелые и незрелые организации-разработчики программного обеспечения. Основные направления формирования метрик для оценки компьютерных программ.

    дипломная работа [656,8 K], добавлен 27.11.2012

  • Анализ алгоритмов, оценка параметров алгоритма (эффективности, сложности, правильности). Комплексный анализ эффективности алгоритма на основе комплексной оценки ресурсов формальной системы. Верификация при коллективной разработке программных систем.

    презентация [234,9 K], добавлен 22.10.2013

  • Средства формализации процесса определения спецификаций. Назначение языка (PSL) и анализатора определения задач (PSA). Разработка алгоритма решения задачи, критерии оценки его сложности. Локальный и глобальный уровни повышения эффективности алгоритмов.

    контрольная работа [144,9 K], добавлен 26.10.2010

  • Системное, прикладное и инструментальное программное обеспечение. Наиболее распространённые пакеты прикладных программ. Назначение и структура системных программ. Заполнение таблицы и работа с итогами в Excel, фильтрация данных и построение диаграммы.

    контрольная работа [1,6 M], добавлен 29.01.2014

  • Особенности разработки программ для ЭВМ. Этапы планирования программы. Понятие и особенности алгоритмов. Средства, используемые для создания программ. Виды и классификация языков программирования. Структурное и объектно-ориентированное программирование.

    реферат [59,7 K], добавлен 19.08.2010

  • Характеристика предприятия ТОО "Com Sales Group". Составление программ на языке программирования. Составление алгоритмов, разработка численных методов решения задач. Методы откладки программ. Анализ технологии машинной обработки экономической информации.

    отчет по практике [1,3 M], добавлен 19.04.2016

  • Программные средства, обеспечивающие функционирование аппаратных средств ЭВМ. Характеристики пакетов прикладных программ и их классификация. Оформление программных модулей в виде библиотек. Средства доступа к данным. Системы искусственного интеллекта.

    курсовая работа [163,3 K], добавлен 23.04.2013

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

    отчет по практике [2,0 M], добавлен 28.11.2022

  • Автоматизация оценки востребованности территорий города в объектах розничной торговли для определения оптимального местоположения для осуществления выбранного вида розничной торговли. Проектирование модели анализа данных. Разработка программного средства.

    дипломная работа [1,7 M], добавлен 14.07.2016

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

    курсовая работа [2,1 M], добавлен 17.06.2013

  • Этапы тестирования при испытаниях надежности программных средств. Комплексирование модулей и отладка автономных групп программ в статике без взаимодействия с другими компонентами. Испытания главного конструктора. Жизненный цикл программного средства.

    презентация [339,6 K], добавлен 22.03.2014

  • Разработка программных средств. Жизненный цикл программного средства и понятие его качества. Форма и интерфейс приложений, алгоритмы решения задач на языке Delphi. Методы борьбы со сложностью. Преодоление барьера между пользователем и разработчиком.

    курсовая работа [650,5 K], добавлен 27.01.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.