- •Методы проектирования программ
- •Методы программирования
- •1.1 Технология нисходящего программирования
- •Уровень II
- •Управляющая
- •Восходящее программирование
- •1.3 Повышение качества проектирования программ
- •2 Организация выполнения курсовой работы
- •2.1 Этапы выполнения курсовой работы
- •2.2 Требования к пояснительной записке
- •3 Задания на курсовое проектирование
- •3.1 Числовые задачи
- •3.2 Создание и введение баз данных. Справочники
- •3.3 Контролирующие и обучающие программы
- •3.4 Звукогенерация. Графика и движение
- •3.5 Помехоустойчивое кодирование
- •3.6 Игровые задачи
- •Психологическое тестирование
- •3.8 Моделирование арифметических операций
- •Задачи по программированию / с.А. Абрамов и др. - м.: Наука, 1988. – 224 с.
- •Савельев а. Я. Прикладная теория цифровых автоматов. – м.: Высш.Шк., 1987. – 272 с.
- •10. Фаронов в. В. Турбо Паскаль 7.0. Начальный курс. – м.: Нолидж, 2001. –
- •11. Шафеева о. П. Обнаружение и исправление ошибок в вычислительных системах многовекторными кодами. Учеб. Пособие. – Омск: ОмПи, 1991. –76 с.
- •Курсовой проект (работа)
- •3. Разработка алгоритмов. 4. Особенности разработки программы.
- •Разработка алгоритмов кодирования – декодирования
- •1 Анализ задания и формулировка задач на проектирование
- •2 Разработка алгоритмов для контроля передачи данных
- •2.1 Кодирование двоичных данных кодом с проверкой на четность
- •2.2 Декодирование данных
- •2.3 Универсальный алгоритм кодирования-декодирования
- •3 Особенности разработки программы
- •4 Инструкция пользователя
- •5 Результаты тестирования
Федеральное агентство по образованию
Государственное образовательное учреждение
Высшего профессионального образования
«Омский государственный технический университет»
Методы проектирования программ
Методические указания к выполнению курсовой работы
Омск 2005
Составитель: Ольга Павловна Шафеева, канд.техн.наук, доцент
Рассмотрены этапы разработки программного обеспечения и комплексов программ, методы нисходящего и восходящего проектирования программ. Приведены требования к выполнению курсовой работы по дисциплине «Алгоритмические языки и программирование» и правила оформления пояснительной записки. Составлены примерные темы проектов для реализации студентами при курсовом проектировании по программированию. Имеются примеры заполнения бланка задания, оформление титульного листа и написания пояснительной записки.
Предназначена для студентов специальностей 23 01 01 – «Вычислительные машины, комплексы, системы и сети», 23 01 00 – «Информатика и вычислительная техника»
Печатается по решению редакционно-издательского совета Омского технического университета
Методы программирования
1.1 Технология нисходящего программирования
Технология программирования – это система методов, способов и приемов обработки и выдачи информации 5.
Нисходящее программирование предполагает проектирование программы “сверху вниз” (top – down programming), когда на каждом шаге детализации для каждой задачи составляется программа в терминах выделенных в ней подзадач 8. Данный метод применяется при разработке сложных алгоритмов и программ, а также их комплексов.
Для проектирования алгоритма функционирования основной программы определяются видимые “сверху” относительно самостоятельные задачи. Разрабатывается структура основной программы (или программного комплекса), в которой отдельные программные модули (или программы) решают свою задачу. Далее производится детализация алгоритмов решения задач с выделением в них подзадач. В процессе кодирования (программирования) алгоритма программные модули нижнего уровня, для которых еще не спроектированы алгоритмы, заменяются «заглушками».
Таким образом, отладка программного комплекса начинается с основной программы или главного модуля, и в любой момент разработки имеется действующий вариант. Тестирование и отладка отдельных программных модулей и комплекса в целом ведется по ходу его проектирования.
Одним из средств реализации модульной структуры в языках программирования являются процедуры и функции, каждой из которых отведена роль решения конкретной подзадачи. Для удобства работы рекомендуется их делать небольшими. Это позволит легче модифицировать программные комплексы и эффективнее тестировать. Программный модуль (или подпрограмма) должен
- решать самостоятельную задачу;
- иметь собственную спецификацию (формализованное описание свойств, характеристик и функций 8);
- иметь один вход и один выход;
- возвращать управление тому программному модулю, который его вызвал.
Проектирование структуры программы удобно выполнять с помощью схем алгоритмов: разработать схему основного алгоритма, а затем уже программировать.
При реализации курсовой работы по дисциплине «Алгоритмические языки и программирование» можно выделить три части:
проектирование графической заставки;
решение математических задач;
разработка игровой программы.
Кроме того, должны выдаваться сведения о разработке, разработчике и меню пользователя, что можно предусмотреть в основной программе.
Проектирование программного комплекса начинается с основной управляющей программы. Для выполняемой курсовой работы схема алгоритма может быть представлена в виде рис. 1.1. В ней еще не отражено, сколько математических задач будет решаться. Пусть задач будет две, тогда структуру проектируемого программного комплекса можно изобразить схемой рис. 1.2.
1
2
3
иначе 4
Рисунок 1.1 Система алгоритма основной программы
Уровень I