Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shpory_site_vse.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.42 Mб
Скачать
  1. Технологии нисходящего и восходящего проектирования.

Базируется на методе "сверху-вниз" или "пошаговой детализации". В основе идея постепенной декомпозиции задачи на подзадачи. Сначала - грубая модель, потом детализация алгоритмов. Потом разработка отдельных блоков, называемых часто подпрограммами.

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

Технология нисходящего проектирования

  • На первом этапе разработка кодируется, тестируется и отлаживается головной модуль, который отвечает за логику работы всего программного комплекса.

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

  • Применение заглушек необходимо для того, чтобы на самом раннем этапе проектирования можно было проверить работоспособность головного модуля.

  • На последних этапах проектирования все заглушки постепенно заменяются рабочими модулями.

Недостатки и преимущества нисходящего проектирования

Недостатки:

  • Необходимость заглушек.

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

Преимущества:

  • На самом начальном этапе проектирования отлаживается головной модуль (логика программы).

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

При восходящем проектировании разработка идет снизу вверх.

  • На первом этапе разрабатываются модули самого низкого уровня.

  • На следующем этапе к ним подключаются модули более высокого уровня и проверяется их работоспособность.

  • На завершающем этапе проектирования разрабатывается головной модуль, отвечающий за логику работы всего программного комплекса.

Недостатки:

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

Преимущества:

  • не нужно писать заглушки.

На практике применяются оба метода. Метод нисходящего проектирования чаще всего применяется при разработке нового программного комплекса, а метод восходящего проектирования – при модификации уже существующего комплекса.

  1. Основные принципы проектирования, их характеристика.

Проектирование сложных объектов базируется на следующих основных принципах:

  • декомпозиция и иерархичность описания объектов;

  • многоэтапность  и итерационность проектирования;

  • типизация и унификация проектных решений и средств проектирования.

Принцип декомпозиции и иерархичности

  • Принцип иерархичности означает структурирование представлений об объектах проектирования по степени детальности описаний,

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

Принцип многоэтапности и итерационности

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

  • Проектирование представляет собой итерационный процесс, в котором попеременно выполняются процедуры внешнего и внутреннего проектирования. Внешнее – разработка технического задания на систему, а внутреннее – проектирование по сформулированному техническому заданию.

Этапы (1,2,3) и их итерации (а, б, в …) при проектирования баз данных:

  1. концептуальное проектирование:а)определение сущностей и их документирование; б)определение связей между сущностями и их документирование; в)создание модели предметной области.г) определение атрибутов и их документирование; д)определение значений атрибутов и их документирование;е)определение первичных ключей для сущностей и их документирование.

2) логическое проектирование: а)выбор модели данных; б)определение набора таблиц и их документирование;в)нормализация таблиц;г)определение требований поддержки целостности данных и их документирование;

3) физическое проектирование:а)проектирование таблиц базы данных средствами выбранной СУБД;б)проектирование физической организации базы данных.

Принцип типизации и унификации

  • Использование типовых проектных решений приводит к упрощению и ускорению проектирования (ввиду многократного использования однократно разработанных элементов).

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]