Ликвидация бизнеса. Приказы. Оборудование для бизнеса. Бухгалтерия и кадры
Поиск по сайту

Нисходящее и восходящее проектирование. Open Library - открытая библиотека учебной информации. Имеет смысл рассматривать полную и частичную ФЗ в том случае, если ПК - составной

Вопрос 4. Восходящее и нисходящее проектирование.

Наименование параметра Значение
Тема статьи: Вопрос 4. Восходящее и нисходящее проектирование.
Рубрика (тематическая категория) Производство

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

Кроме процедур детализации на иерархические уровни при блочно-иерархическом подходе к проектированию ЭС применяют расчленение представлений об изделии на ряд аспектов по характеру отображаемых свойств.

К числу базовых аспектов относятся функциональный, конструкторский и топологический .

Функциональным принято называть аспект, связанный с описанием проектируемых действий и процессов функционального объекта.

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

На системном уровне в качестве систем фигурируют комплексы, а в качестве элементов – блоки аппаратуры.

На функционально-логическом уровне эти блоки рассматриваются как системы, состоящие из элементов, в качестве которых выступают функциональные узлы.

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

На компонентном уровне сами компоненты рассматривают как системы и рассматривают процессы, протекающие в схематических компонентах.

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

В технологическом аспекте рассматриваются иерархические уровни описания технологических процессов в виде маршрутов проектирования, совокупности операций и переходов.

Учитывая зависимость оттого в какой последовательности выполняются проектные процедуры различают два способа проектирования:

Восходящее проектирование - ϶ᴛᴏ проектирование, при котором выполнение процедур низких уровней предшествует выполнению проектных процедур, относящихся к более высоким иерархическим уровням (ᴛ.ᴇ. – снизу вверх).

Нисходящее проектирование - ϶ᴛᴏ проектирование сверху вниз, и характеризуется противоположной последовательностью выполнения процедур.

Типичная последовательность процедур нисходящего проектирования ЭС, включает в себя:

- системно-техническое проектирование - ϶ᴛᴏ анализ тактико-технических требований на проектировании комплекс определœенных основ принципов функционирования, выработка структурных схем.

- схемотехническое проектирование - ϶ᴛᴏ выработка функциональных и принципиальных схем.

- конструкторское проектирование - ϶ᴛᴏ выбор формы, компоновки и размещения конструктивов, трассировка межсоединœений и выработка конструкторской документации.

- технологическое проектирование - ϶ᴛᴏ выработка маршрутов и технологической базы, выбор оснастки.

Нисходящее проектирование (рис. 3).

Рис. 3 Последовательность этапов нисходящего проектирования ЭС

Типичная последовательность процедур восходящего проектирования включает в себя (рис. 4).:

Приборно-технологическое проектирование - ϶ᴛᴏ выбор базовой технологии, расчёт диффузии профиля, выбор топологии компонентов.

Схемотехническое проектирование - ϶ᴛᴏ синтез принципиальной электрической схемы, оптимизация параметров элементов.

Функционально-логическое проектирование - ϶ᴛᴏ синтез логических схем, реализация памяти, синтез контролирующих и проверяющих тестов.

Конструкторско-технологическое проектирование - ϶ᴛᴏ размещение элементов, трассировка межсоединœений, проверка соответствия топологических и электрических схем, вычерчивание послойной топологии.

Рис. 4 Последовательность этапов восходящего проектирования, характерная для проектирования интегральных схем (ИС)

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

Алгоритм получения проектного решения представлен на рисунке 5

Рис. 5 Алгоритм выполнения проектной процедуры

Анализ - процедура мысленного или реального расчленения предмета͵ свойства предмета или отношения между предметами (явлениями или процессами) на части и выявление взаимосвязей между этими частями.

Аналитические процедуры являются одними из главных приёмов получения новых творческих результатов.

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

Оценка - установление соответствия качества предмета (продукта разработки) предъявляемым требованиям.

Вопрос 4. Восходящее и нисходящее проектирование. - понятие и виды. Классификация и особенности категории "Вопрос 4. Восходящее и нисходящее проектирование." 2017, 2018.

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

У каждого из этих двух видов проектирования имеются преимущества и недостатки. При нисходящем проектировании система разрабатывается в условиях, когда ее элементы еще не определены и, следовательно, сведения о их возможностях и свойствах носят предположительный характер. При восходящем проектировании, наоборот, элементы проектируются раньше системы, и, следовательно, предположительный характер имеют требования к элементам. В обоих случаях из-за отсутствия исчерпывающей исходной информации имеют место отклонения от потенциально возможных оптимальных технических результатов. Однако нужно помнить, что подобные отклонения неизбежны при блочно-иерархическом подходе к проектированию и что какой-либо приемлемой альтернативы блочно-иерархическому подходу при проектировании сложных объектов не существует. Поэтому оптимальность результатов блочно-иерархического проектирования следует рассматривать с позиций технико-экономических показателей, включающих в себя, в частности материальные и временные затраты на проектирование.

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

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

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

СТРУКТУРНОЕ ПРОЕКТИРОВАНИЕ И ПРОГРАММИРОВАНИЕ

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

Модульное программирование

Структурное программирование

Метод нисходящего проектирования предполагает последовательное разложение общей функции обработки данных на простые функциональные элементы ("сверху-вниз").

В результате строится иерархическая схема, отражающая состав и взаимоподчиненность отдельных функций, которая носит название функциональная структура алгоритма (ФСА) приложения.

Последовательность действий по разработке функциональной структуры алгоритма приложения:

определяются цели автоматизации предметной области и их иерархия (цель-подцель);

устанавливается состав приложений (задач обработки), обеспечивающих реализацию поставленных целей;

уточняется характер взаимосвязи приложений и их основные характеристики (информация для решения задач, время и периодичность решения, условия выполнения и др.);

определяются необходимые для решения задач функции обработки данных;

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

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

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

По частоте использования функции делятся на:

однократно выполняемые;

повторяющиеся.

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

Пример 18.4. Некоторые функции, например Ф2, далее неразложимы на составляющие: они предполагают непосредственную программную реализацию. Другие функции, например Ф1, Фm, могут быть представлены в виде структурного объединения более простых функций, например Ф11, Ф12 и т.д. Для всех функций-компонентов осуществляется самостоятельная программная реализация; составные функции (типа Ф1, Фm) реализуются как программные модули, управляющие функциями-компонентами, например, в виде программ-меню.

Метод разработки проектов, систем, программ, при котором разработка производится сверху вниз.

Один из основных методов структурного проектирования . Нисходящее программирование - частный случай нисходящей разработки.

Метод предполагает последовательное разложение функции обработки данных на простые функциональные элементы ("сверху вниз").

В результате строится иерархическая схема, которая отражает состав и взаимоподчиненность отдельных функций. Она носит название функциональная структура алгоритма (ФСА) приложения, в которой отражаются:

  • цели предметной области (цель-подцель);
  • состав приложений (задач обработки), обеспечивающих реализацию поставленных целей;
  • характер взаимодействия приложений с их основными характеристиками;
  • функции обработки данных.

Рассмотрим функциональную структуру приложения.

Пример функциональной структуры приложения

Подобная структура отражает состав и взаимосвязь функций обработки информации для реализации приложений, не раскрывая логику выполнения каждой отдельной функции.

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

Функции ввода/вывода информации отделяют от функций вычислительной или логической обработки данных.

Некоторые функции, например, Ф2, ФM далее неразложимы на составляющие, они предполагают непосредственную программную реализацию. Другие функции (Ф1) могут быть представлены в виде структурного объединения более простых функций, например Ф11, Ф1k. Для всех функций-компонентов осуществляется самостоятельная программная реализация, составные функции типа Ф1 реализуются как программные модули, управляющие функциями - компонентами, например, в виде программ-меню.

По частоте использования функции делятся на однократно выполняемые и повторяющиеся.

Литература

  1. Истомин Е.П., Новиков В.В., Новикова М.В. Высокоуровневые методы информатики и программирования: Учебник. - СПб. ООО "Адреевский издательский дом", 2006 г. - 228 с.

Метод нисходящего проектирования предлагает последовательное разложение общей функции разработки данных на простые функциональные элементы(«сверху-вниз»).

В результате строится иерархическая схема, отражающая состав и взаимоподчиненность отдельных функций, которая носит название функциональная структура алгоритма(ФСА) приложения.

Последовательность действий по разработке функциональной структуры алгоритма приложения:

· определенная цель автоматизации предметной области и их иерархия(цель-подцель);

· устанавливает состав приложений (задач обработки), обеспечивающих реализацию поставленных целей;

· уточняется характер взаимосвязи приложений и их основные характеристики (информация для решения задач, время и периодические решения, условия выполнения и др.);

· определяется необходимость для решения задач функции обработки данных;

· выполняется декомпозиция функций обработки до необходимой структурной сложности, реализуемой предлагаемым инструментарием;

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

Разложение должно носить строго функциональный характер, т.е. отдельный элемент ФСА описывает законченную содержательную функцию обработки информации, которая предполагает определенный способ реализации на программном уровне. Функции ввода-вывода информации рекомендуется отделять от функций вычислительной или логической обработки данных.

По частоте используемые функции делятся на:

· однократно выполняемые;

· повторяющиеся;

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



Модульное проектирование

Модульное проектирование (программирование) – основано на понятие модуля – логических взаимосвязанных совокупностью функциональных элементов, оформленных в виде отдельных программных модулей.

Модуль характеризуется:

· один вход и один выход – на входе программный модуль получает отдельный набор исходных данных, выполненные содержат обработку и возвращается один набор результатных данных, т.е. реализует стандартный принцип IPO(Input->Process->Output) – вход – процесс – выход;

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

· логическая независимость – результат работы программного модуля зависит только от исходных данных, но не зависит от работы других модулей;

· слабые информационные связи с другими программными модулями – обмен информацией между модулями должен быть по возможности минимизированным;

· обозримый по размеру и сложности программный элемент ;

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

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

При определенном наборе модулей учитывается следующие:

· каждый модуль вызывается на выполнение вышестоящим модулем и заканчивает работу, возвращающую управление вызвавшего его модуля;

· принятие основных решений в алгоритме выносится на максимально «высокий» по иерархии уровень;

· для использования одной и той же функции в разных местах алгоритма создается один модуль, который вызывается на выполнение по мере необходимости;

Объектно-ориентированное проектирование

Объектно-ориентированный подход к проектированию программного продукта основан на:

· выделении классов объектов;

· установлении характерных свойств объектов и методов их обработки;

· создание иерархии классов, наследовании свойств объектов и методов их обработки;

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

Объединенный подход при разработке алгоритмов и программ предполагает:

· объектно-ориентированный анализ предметной области;

· объектно-ориентированное проектирование;

· объектно-ориентированный анализ – анализ предметной области и выделение объектов, определенных свойств и методов обработки объектов, установленных их взаимосвязей;

Объектно-ориентированное проектирование соединяет процесс объектной декомпозиции и представления с использованием модулей данных проектируемой системы на логических и физических уровнях в статистике и динамике.

Для проектирования программного продукта разработаны объектно-ориентированные и инструментальные средства разработки пользовательского интерфейса.

Вывод: объектно-ориентированная технология разработки программного продукта объединяет данные и процессы в логические сущности – объекты, которые имеют способность наследовать характеристики (методы и данные) одного или более объектов, обеспечивающих тем самым повторным использованием программного кода. Это приводит к значительному уменьшению затрат на создание программного продукта, повышает эффективность жизненного цикла программного продукта (сокращается длительность фазы разработки). При выполнении программы, объекту посылается сообщение, которое инициирует обработку данных объекта.

5. Индивидуальное задание

5.1 Постановка задачи

Автоматизированная информационная справочная система ЗМК

Организационно-экономическая сущность задачи

Разработанная программа является примером программ для ЗМК и называется «Форма заполнения реализации заказа». С помощью этой программы можно значительно быстрее оформить заказ на продукцию. Периодичность решения задач: каждый день. Данные в программу поступают из базы данных, которую пользователь заполняет, осуществляя заказ.

5.1.2 Описание входной информации

Входная информация содержится в базе данных со следующим названием: Заказы.mdb. база данных содержит следующие поля с типами данных:

Таблица 1.

Код Счетчик
Дата Дата и время
Код двери Короткий текст
Организация Короткий текст
Подразделение Короткий текст
Дата запуска Дата и время
Дата исполнения Дата и время
Ответственный Короткий текст