Автор: Пользователь скрыл имя, 13 Ноября 2011 в 10:45, дипломная работа
Цель:
Разработать программный продукт, для автоматизации рабочего места калькулятора столовой.
Задачи:
Изучить деятельность калькулятора, необходимость ее автоматизации;
Проанализировать назначение программы калькулятора;
Рассмотреть аналоги программы, применяемые в различных отраслях производства;
Проанализировать этапы разработки программного обеспечения;
Подобрать модель жизненного цикла для разработки программы калькулятора;
Выбрать программное обеспечение наиболее подходящее для создания данной программы;
Выполнить тестирование программы;
Оформить документацию на программный продукт.
ВВЕДЕНИЕ …………………………………………………………………………………………………3
Глава I. ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ, НЕОБХОДИМЫЕ ДЛЯ СОЗДАНИЯ ПРОГРАММЫ………………………………………………………………………………………………………5
1.1 Структура автоматизированного рабочего места специалиста……5
1.2 Особенности деятельности инженера технолога по калькуляции блюд …………………………………………………………………………………………………………7
1.3 Анализ аналогов программ……………………………………………………….…12
1.4 Этапы проектирования …………………………………………………………………16
1.5 Модель жизненного цикла программы ………………………………………18
1.6 Обоснования выбора средств создания программы ….………………21
1.7 Тестирование программных продуктов ………………………………………26
ГЛАВА II. ПРАКТИЧЕСКАЯ ЧАСТЬ РАБОТЫ………………………………………………33
2.1 Концептуальная фаза …………………………………………………………………..33
2.2 Моделирование ……………………………………………………………………………34
2.3 Разработка программного продукта……………………………………………38
2.4 Тестирование программного продукта .………………………………………45
2.5 Ввод программы в эксплуатацию…………………………………………………46
Заключение .……………………………………………………………………………………………48
Список использованной литературы………………………………………..……………49
Они дают общее понимание процесса тестирования существующего и применяемого сегодня в большинстве компаний разрабатывающих программное обеспечение. Так как эти методы в основном были разработаны в период начала развития информационных технологий, они по отдельности не могут гарантировать высокое качество разрабатываемого продукта. Вследствие этого в компаниях должны использоваться комбинированный подход в использовании этих методик.
В
настоящие время разработано
и применяются множество
Структурный метод (метод белого или стеклянного ящика)
Тестирование
методом "Белого ящика" (white box) предполагает
обработку тестируемой
Поведенческий метод "Черного ящика"
Тестирование
методом "Черного ящика" (black box)
предполагает обработку системы
как "непрозрачного объекта". Основная
цель – выяснение ситуаций, в
которых поведение программы
не соответствует ее спецификации.
Тестовые данные генерируются на основе
функциональной спецификации программы,
они имеют граничные значения.
Поэтому для тестирования функций
программы (в случае слишком большого
числа вариантов тестов) достаточно
протестировать граничные значения
и некоторые случайные
Этот подход требует наименьших затрат на тестирование и поэтому является наиболее распространенным в повседневной практике, но у него есть целый ряд недостатков. Во-первых, таким способом невозможно найти взаимоуничтожающиеся ошибки, во-вторых, некоторые ошибки возникают достаточно редко (ошибки работы с памятью) и потому их трудно найти и воспроизвести, в-третьих, сложность проверки соответствия конкретного программного продукта его спецификации и т.д.
Основным
же преимуществом тестирования по методу
"чёрного ящика" является его
объективность. Т.е. потенциальные ошибки,
которые могут быть выявлены методом
«белого ящика» требуют практического
подтверждения, что они действительно
являются ошибками и что существует
путь реализовать эти ошибки (т.е.
ошибка не отсекается на каком-либо другом
уровне проверок), что зачастую проще
выполняется именно функциональными
методами, как и в случае метода
"чёрного ящика".
Метод регрессивного тестирования
Оба вышеописанных процесса могут служить основой третьего, регрессивного тестирования. Это метод повторного тестирования измененного программного продукта в целях проверки отсутствия ошибок в раннее нормально работавших функциях, вызванных исправлением выявленных ошибок или добавлением новых функциональных возможностей. Сохранив тестовые наборы для "черного" и "белого" ящиков, можно использовать их для регрессивного тестирования, осуществляя контроль целостности кода по мере того, как он модифицируется. При выполнении регрессивного тестирования можно сразу же после изменения текста определять, не появились ли новые ошибки, и устранять их немедленно после возникновения, тем самым, препятствуя распространению ошибки. Как правило, этот подразумевает повторное выполнение всех ранее использованных процедур тестирования. Это тестирование позволяет полностью гарантировать, что программное обеспечение работает именно так, как планировалось.
Регрессионное
тестирование имеет большое значение
потому, что внесенные в программу
коды изменений и исправлений
ошибок, как правило, более подвержены
ошибкам, чем исходные коды программы.
Например, в книге приведены результаты
исследований, проведенных в одной
крупной компании, занимающейся сопровождением
программ. В результате этих исследований
выяснилось, что даже однострочное
изменение программы с
Метод "Серого ящика"
Тестирование
с использованием метода "Серого
ящика" (gray box) предполагает рассмотрение
в качестве объектов тестирования не
все приложение в целом, а отдельные
его интерфейсы, как пользовательские,
так и прикладные. В сравнении
с методикой "Черного ящика"
затраты на разработку и запуск тестов
значительно выше, поэтому ее применение
при тестировании приложений имеющих
интерфейс пользователя обычно ограничивается
его тестированием, что связано с частыми
его вариациями. Основным недостатком
данного метода является то, что программный
продукт не тестируется в полном объеме,
и, следовательно, только часть ошибок
может быть выявлена.
Метод опытной эксплуатации
Тестирование
на основе того, что пользователи реально
делают с программой. Бета-тестирование,
а иногда приемно-сдаточные испытания
предполагают выполнение заказчиком заранее
определенного набора тестовых ситуаций,
имитирующих типовые условия, в
которых программа будет
Тестирование эргономичности
Это
тестирование является частью процесса
создания необходимых условий для
"удобства пользователя". Этот метод
тестирования включает набор методов,
которые позволяют
Тестирование может включать сбор информации о последовательности действий, совершаемых пользователем в процессе выполнения задачи; ошибок, которые они делают; когда и чем они недовольны; насколько быстро они выполняют операции; преуспевают ли они в выполнении этих операций, а так же насколько они удовлетворены. Цель большинства тестов на эргономичность состоит в том, чтобы обнаружить любые проблемы, с которыми может столкнуться пользователь, и устранить их.
Внимательное изучение этих методов тестирования показывает, что они дополняют друг друга, то есть различные методы находят разные ошибки. Поэтому наиболее эффективными методиками тестирования при разработке программного обеспечения являются методики, которые обладают элементами этих методов, используя позитивные черты каждой из них. Обычно разрабатывается комплект тестов в соответствии с критериями какого-либо из методов “черного ящика”, а затем полученный комплект дополняется тестами для проверки наиболее сложных узлов и логики программы.
ГЛАВА
II. ПРАКТИЧЕСКАЯ ЧАСТЬ РАБОТЫ
Весь процесс разработки программы «АРМ калькулятора» включает в себя пять основных фаз проектирования: анализ требований, проектирование, разработка функций приложения, тестирование и методы тестирования, ввод системы в эксплуатацию.
Программа калькулятора, должна обладать следующими функциями:
2.2 Моделирование.
Реализация основных функций.
При запуске программы запускается
основная форма, которая содержит все
необходимые функции для «
На изображении мы видим, что программа имеет такие функции как:
Компонент TMainMenu
TMainMenu
позволяет поместить главное
меню в программу. При
1) помещение TMainMenu на форму,
2) вызов Дизайнера Меню через свойство Items в Инспекторе Объектов
3) определение пунктов меню в Дизайнере Меню.
Этот компонент доступен из модуля MENUS, и находится на странице Палитры компонентов Standard
Этот компонент представляет главное меню формы и наследует все методы и свойства TMenu. Особенность его в том, что в нем реализован сложный механизм объединения меню. Это необходимо по следующим причинам:
Если
в приложении имеется несколько
форм со своими меню, то для упрощения
работы целесообразно соединить
их в одно и управлять меню из
главной формы.
Также был использован компонент
AlphaControls7, который предает программе
дружественный интерфейс, и предоставляет
возможность менять оформление программы.
Он дает возможность устанавливать
дополнительные кнопки со специальными
расширениями. А помощью панели внизу
таблицы можно редактировать БД. Добавлять
записи, удалять, перемещать и так далее.
Так же были использованы компоненты ADOConnection, ADOTable, ADOQery и DataSource. Эти компоненты позволяют работать через программу с Б.Д.. Вообще компоненты ADO (Active Data Objects) - это высокоуровневый компонент технологии доступа к данным от Microsoft. (т.н. MDAC - Microsoft Data Access Components) Другие компоненты - это старый добрый ODBC и новый низкоуровневый интерфейс OLE DB.
Данными для ADO могут быть как привычные таблицы Access или серверные базы MS SQL или Oracle, так и несколько экзотичные Microsoft Active Directory Service, XML-файлы и т.п.