- •1 Специальная часть
- •Постановка задачи
- •1.1.2 Описание математической модели
- •Технология разработки программы
- •Описание среды программирования
- •Входные и выходные данные
- •Структурное проектирование задачи
- •1.2.4 Методы решения задачи
- •1.2.5 Аномалии
- •1.2.6 Реализация защитного программирования
- •1.2.7 Оптимизация программы.
- •1.3 Отладка и тестирование программы
- •1.4 Анализ результатов решения
- •1.5 Инструкция пользователя (системные требования, инсталляция, инструкция пользователя)
- •2 Экономическая часть Исходные данные
- •Материальные затраты:
- •2.1 Расчет затрат на разработку программы
- •2.1.1 Материальные затраты
- •2.1.2 Заработная плата разработчиков
- •2.1.3 Расчет итоговой калькуляции проекта
- •2.2. Расчет коммерческой эффективности проекта от реализаци
- •2.2.1 Расчет экономической эффективности проекта
- •2.2.2 Расчет денежных потоков
- •2.2.3 Расчет основных показателей эффективности
- •2.2.4 Расчет уровня безубыточности
- •2.2.5 Вывод о коммерческой эффективности проекта
- •2.3. Расчет экономической эффективности применения программы в организации
- •2.3.1 Расчет денежных потоков
- •2.3.2 Расчет основных показателей эффективности
- •2.3.3 Вывод об экономической эффективности применения базы данных
- •3 Заключение
- •4 Литература
- •Приложение а
- •Приложение б
- •Приложение в
- •Приложение г
1.2.5 Аномалии
При программировании данной задачи был применен метод защитного программирования, что обеспечивает своевременную реакцию на аномалии и не приводит к аварийному завершению работы с программой.
Все аномальные ситуации, которые могут возникнуть в программе, приведены в таблице 3 (Приложение А).
1.2.6 Реализация защитного программирования
Защитное программирование - это стиль программирования, при котором ошибки легко обнаруживаются и идентифицируются программистом .
С целью повышения надежности разрабатываемой программы был применен метод защитного программирования - обеспечение программного контроля:
1. Правильность и полнота ввода
2. Достоверность данных
1.2.7 Оптимизация программы.
Оптимизация – это процесс изменения программы по определенным критериям с целью повышения ее качества при сохранении смысла исходной программы.
Для сокращения объёма кода программы он разбивается на части – подпрограммы. Каждая подпрограмма может вызываться из разных частей основной программы.
Подпрограмма – это поименованная или иным образом идентифицированная часть компьютерной программы, содержащая описание определённого набора действий. В языках программирования для оформления и использования подпрограмм существуют специальные синтаксические средства.
В языках программирования высокого уровня используется два типа подпрограмм: процедуры и функции.
Функция — это подпрограмма специального вида, которая, кроме получения параметров, выполнения действий и передачи результатов работы через параметры имеет ещё одну возможность – она может возвращать результат. Вызов функции является, с точки зрения языка программирования, выражением, он может использоваться в других выражениях или в качестве правой части присваивания
Процедура – это любая подпрограмма, которая не является функцией.
Например, в программе написана процедура, выполняющая добавление в базу данных новой экзаменационной группы.
Также в оптимизации чаще всего нуждаются циклы. Цикл – это последовательность из нескольких (0 и больше) операторов, которая указывается в тексте программы один раз, но может выполняться несколько (0 и более) раз.
Например, цикл, выполняющий заполнение списка двоичными словами длины 4.
for i:= 0 to 15 do
begin
Memo1.Lines.Add(Bin(i));
end;
Данный цикл завершается, когда доходит до последней записи, т. е. имеет конечное число шагов. В теле цикла не содержится лишних операторов (операторов, которые можно было бы вынести за пределы тела цикла, не нарушая при этом логику работы программы).
1.3 Отладка и тестирование программы
Тестирование - это набор программных действий, предназначенных на выявление ошибок и демонстрации правильности работы программы в заданных режимах. Цель тестирования - выяснить наличие ошибок [3].
Существует два вида тестирования:
Восходящий
Нисходящий
Процесс тестирования делится на три этапа:
проверка нормальных условий – проверка, основанная на тестировании данных, которые соответствуют реальным условиям программы;
проверка экстремальных условий;
проверка исключительных ситуаций;
Данная программа тестировалась методом функциональных диаграмм (метод причинно-следственных связей). Этот метод позволяет системно выбирать только высокоэффективные тесты и уточнить спецификации программы. Диаграмма представлена в Приложении А (Рис.1).
Суть метода состоит в следующем: спецификация разбивается на рабочие области, и строятся свои диаграммы для причин и следствий с помощью последовательности спецификации. Для упрощения диаграмм причин и следствий им присваиваются номера, чтобы они не пересекались. Наглядно это можно выразить через граф, который будет связывать причины и следствия.
Для данного тестирования могут принимать участие следующие причины:
П1 – отсутствие обязательного значения;
П2 – некорректные значения;
П3 – правильное значение;
П4 – отсутствие необязательного значения;
В результате тестирования могут возникать следующие действия:
С1 – исправная работа программы;
С2 – блокировка неверного ввода;
С3 – просьба ввести данные;
Чертеж графа приведен в Приложении А. (рис.2)
Результаты тестирования приведены в Приложении А в таблице 4