![](/user_photo/1334_ivfwg.png)
Министерство общего и профессионального образования
Российской Федерации
УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра технической кибернетики
Специфицирование и тестирование программ
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
к курсовой работе по дисциплине ‘Технология программирования’
для студентов направления 552800 -
Информатика и вычислительная техника
Уфа 1999
Составители: В.Н. Мукасеева, А.Ю. Хасанов
УДК 681.3
Специфицирование и тестирование программ: Методические указания к курсовой работе по дисциплине ‘Технология программирования’для студентов направления 552800 - Информатика и вычислительная техника/ Уфимск. гос. авиац. техн. ун-т; Сост. В.Н.Мукасеева, А.Ю. Хасанов. - Уфа, 1999. - 29 с.
Содержатся теоретические сведения, касающиеся наиболее трудоемких этапов жизненного цикла программного обеспечения - анализа, проектирования и тестирования программ. Рассматривается метод специфицирования (формализованного описания функций), называемый методом таблиц решений, и метод тестирования таких спецификаций программного обеспечения. Практическое применение предлагаемых теоретических методов проиллюстрировано на конкретном примере разработки программы совместной обработки файлов. Приводятся рекомендации по кодированию программы обработки данных на языках программирования Турбо Паскаль и Си, а также методика выполнения курсовой работы и типовой вариант задания. Содержится подробное описание состава курсовой работы и прилагаются примеры оформления работы.
Табл.15. Ил.3. Библиогр.: 9 назв.
Рецензенты: канд.техн.наук Р.А. Мунасыпов;
канд.техн.наук А.Н.Набатов
Содержание
Введение 4
1 Краткие теоретические сведения 5
1.1 Внешние спецификации программного обеспечения 5
1.1.1 Структурирование целей разрабатываемого
программного обеспечения 5
1.1.2 Спецификация функций с помощью таблиц решений 6
1.2 Стратегии тестирования 9
1.3 Метод тестирования таблиц решений 11
2 Методика выполнения курсовой работы 12
2.1 Цель работы 12
2.2 Постановка задачи обработки информации 12
2.3 Ограничения на входные и выходные данные 13
2.4 Структурирование целей разрабатываемой программы 14
2.5 Внешние спецификации функций разрабатываемой программы 15
2.6 Рекомендации по кодированию программы 18
2.7 Тестирование программы 24
2.7.1 Тестирование функции ‘проверка на корректностьF2’24
2.7.2 Тестирование функции ‘формирование строк выходной таблицы 24
3 Оформление и содержание курсовой работы 25
Список литературы 26
Приложение А - Титульный лист курсовой работы 27
Приложение Б - Пример содержания курсовой работы 28
Приложение В - Вариант задания на курсовую работу 29
Введение
‘Технология программирования’- дисциплина общепрофессионального цикла, задачей которой является изучение методов создания программного обеспечения, а также процессов сопровождения и применения программного продукта.
Значение учебной дисциплины ‘Технология программирования’обусловлено значительным сокращением времени на проектирование и освоение программного обеспечения и, в связи с этим, возрастающими требованиями к профессиональной подготовке специалистов по разработке и применению программных продуктов.
Одним из базовых понятий технологии программирования является понятие жизненного цикла программного продукта (ПП) /1/.
Жизненный цикл ППопределяется как совокупность последовательных состояний программного продукта и всех действий по его преобразованию, начиная с анализа возникшей потребности в автоматизации определенных функций обработки данных до их программной реализации и включения в программное обеспечение (ПО) конкретного применения. Традиционно в модели жизненного цикла ПП принято выделять следующие этапы:
- анализ, посредством которого осуществляется формализованное специфицирование (описание) предъявляемых к автоматизированным системам обработки информации (АСОИ) требований, или иначе, целей ПП;
- проектирование, включающее разработку иерархической структуры разрабатываемого ПО, функциональные спецификации отдельных модулей и структуры данных БД;
- программирование или, иначе говоря, кодирование функциональных модулей;
- тестирование и отладка, в процессе которых выявляется соответствие ПП его спецификациям;
- эксплуатация и сопровождение, когда разработанное ПО функционирует в составе (или в качестве) АСОИ в конкретной области применения.
В литературе /4/ приводятся следующие количественные характеристики трудозатрат по этапам ЖЦ ПО: анализ - 20%, проектирование - 15%, кодирование - 20%, тестирование - 45%. Эти данные свидетельствуют о том, что на специфицирование и тестирование ПО затрачивается большая часть всего времени разработки.
В связи с вышеизложенным основной целью курсовой работы студентов по дисциплине ‘Технология программирования’является получение знаний и навыков, необходимых для формирования грамотного подхода к анализу, проектированию и тестированию разрабатываемых программ. Для достижения поставленной цели необходимо решить следующие задачи:
освоить основной метод понижения сложности программного обеспечения - выделение из поставленной задачи более простых подзадач (функций), которые в совокупности решают исходную проблему;
научиться разрабатывать внешние спецификации проектируемого программного обеспечения в виде таблиц решения для функций программы;
научиться проектировать тесты, позволяющие установить соответствие разработанного программного обеспечения его внешним спецификациям;
изучить и применить на практике правила оформления курсовой работы в виде строго формализованных таблиц.
Выполнение курсовой работы базируется на знаниях, умениях и навыках, полученных при изучении курса информатики.