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

Привет студент

Проектирование (АС) Лекция 6.

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

При «нисходящем» проектировании осуществляется структурное проектирование сверху—вниз («нисходящее» проектирование).

Этапы проектирования БД методом «нисходящего» проектирования представлены на рисунке.

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

Рисунок — Этапы проектирования БД методом «нисходящего» проектирования

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

На основе описания внешнего уровня строится концептуальная

Такой подход к проектированию БД называют также концептуальным или концептуальным проектированием.

В концептуальном подходе к проектированию БД выделяют следующие три

— реальный мир или объектную систему;

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

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

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

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

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

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

Такое последовательное преобразование позволяет понятным и простым образом осуществлять правильное отображение смысла реального мира в базе данных. Таким образом, концептуальное проектирование БД состоит из следующих последовательных этапов:

— преобразование ДЛМ в физическую модель БД, полученную на ЯОД выбранной СУБД (формирование внутреннего уровня БД).

Метод «нисходящего» проектирования достаточно формализован и используется в CASE (Computer Aided System/Software Engineering — компьютерное проектирование программного обеспечения и систем) средствах.

— особенно эффективно их использование при создании крупных корпоративных АИС большим коллективом разработчиков;

CASE—средства классифицируются по:

— поддерживаемым методологиям проектирования (структурно— ориентированные, объектно—ориентированные, комплексно—ориентированные);

— поддерживаемым графическим нотациям построения диаграмм$

— степени интегрированности (отдельные локальные средства, набор интегрированных средств, охватывающих большинство этапов разработки АИС)$

— по режиму коллективной разработки проекта (режим реального времени, режим объединения проектов) и ряду других.

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

Наиболее популярные приведены в таблице.

Источник

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

Нисходящим проектированием алгоритмов, проектированием алгоритмов «сверху вниз» или методом последовательной (пошаговой) нисходящей разработки алгоритмов называется такой метод составления алгоритмов, когда исходная задача (алгоритм) разбивается на ряд вспомогательных подзадач (подалгоритмов), формулируемых и решаемых в терминах более простых и элементарных операций (процедур). Последние, в свою очередь, вновь разбиваются на более простые и элементарные, и так до тех пор, пока не дойдём до команд исполнителя. В терминах этих команд можно представить и выполнить полученные на последнем шаге разбиений подалгоритмы (команд системы команд исполнителя).

В рамках структурного программирования применяются две стратегии: «нисходящая» и «восходящая».

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

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

Если выполнилась операция записи в n-ю компоненту файла, то указатель автоматически продвигается к (n+1)-й компоненте, то есть для записи становится доступной уже только (n+1)-я компонента.

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

Общий вид описания типа FILE:

TYPE R = FILE OF TC;

Файлы могут быть разных типов: состоять из целых компонент, либо вещественных, либо записей и т.д. Как и другие переменные, каждую переменную-файл надо описать в разделе VAR. Вводя имя переменной файла (имя файла), надо указать, какого типа файл. Этот тип должен быть обозначен каким-либо именем и описан в разделе TYPE.

Например, файл F вещественных чисел:

TYPE N = FILE OF REAL;

VAR F:N;(*описание переменной файла*)

Файл может быть описан и непосредственно при описании переменной, например:

В первом случае введено имя файла F и соответствующий тип обозначен N; во втором введено имя файла F, а его тип имени не имеет и поэтому в разделе TYPE не описывается.

Возможно описание переменной без указания типа компонент:

Замечение редактора: в этом случае файл называется нетипизированным. Для работы с такими файлами используются отличные от указанных ниже процедуры и функции.

Для того, чтобы ассоциировать переменную F с именем файла, с которым будем работать, в паскале используется функция Assign.

1. Открытие, чтение и запись в файл.

RESET открывает только уже существующие файлы на чтение и запись.

RESET (F); (* Считается, что файл My_file.alr существует *)

TYPE NF:FILE OF INTEGER;

2. Процедура REWRITE.

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

Пример. Надо создать файл для записи массива целых чисел.

VAR F:FILE OF INTEGER;I:INTEGER;

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

FOR I:=1 TO 100 WRITELN(F,SQR(I));

Ввод и вывод осуществляется с помощью процедур READ и WRITE

Общий вид: READ(F,P1,P2,P3. PN);

3. После использования процедур RESET и REWRITE файл НЕОБХОДИМО закрыть. Это делается с помощью процедуры CLOSE.

VAR F:FILE OF INTEGER;U: STRING;

WRITELN (‘Содержание файла Autoexec.bat’)

Текстовые файлы

Особое место в языке ПАСКАЛЬ занимают текстовые файлы, компоненты которых имеют символьный тип. Для описания текстовых файлов в языке определен стандартный тип Тext:

С признаком конца строки связана функция EOLn(var T:Text):Boolean,

Read(T,X1,X2. XK) эквивалентен группе операторов

Оператор Write(T,X1,X2. XK) эквивалентен группе операторов

К текстовым файлам относятся стандартные файлы INPUT, OUTPUT.

Работа с этими файлами имеет особенности:

-для работы с файлами INPUT, OUTPUT введена разновидность функции EOLn без параметров.

TURBO PASCAL вводит дополнительные процедуры и функции, применимые только к текстовым файлам, это SetTextBuf, Append, Flush, SeekEOLn, SeekEOF.

Процедура Append( var f: Text ) служит для специального открытия выходных файлов. Она применима к уже существующим физическим файлам и открывает из для дозаписи в конец файла.

Процедура Flush( var f: Text ) применяется к открытым выходным файлам. Она принудительно записывает данные из буфера в файл независимо от степени его заполнения.

Функция SeekEOLn( var f: Text ): Boolean возвращает значение True, если до конца строки остались только пробелы. Функция SeekEOF( var f: Text ): Boolean возвращает значение True, если до конца файла остались строки, заполненные пробелами.

Источник

Метод нисходящего проектирования в чем его особенности

Метод нисходящего проектирования. Подпрограммы в языке Паскаль. Стандартные модули языка Паскаль. Модульное программирование.

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

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

Метод нисходящего проектирования программ основан на идее уровней абстракции, которые становятся уровнями модулей в разрабатываемой программе. На этапе проектирования строится схема иерархии, которая изображает эти уровни и позволяется сконцентрироваться сначала на том, что надо сделать в программе, затем разрабатывать решение. При этом методе проектирования исходная задача, подлежащая решению, делится на ряд подзадач, которые подчиняются главной задаче. Это разбиение называют декомпозицией. Далее эти задачи делятся еще на более мелкие и т.д. до тех пор, пока не получатся задачи, для решения которых требуются небольшие модули 3-5 строк. Такой метод позволяет упростить решение сложных задач. Паскаль имеет различные средства для деления программы на части. На верхнем уровне деления (больших задач) – это модули, на нижнем уровне (элементарных подзадач) – это процедуры и функции.

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

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

· procedure – это служебное слово,

· определяется в соответствии с общими правилами описания идентификатора,

Допускается описание процедур, которые не содержат списка формальных параметров:

Пример 1. Оформить в виде процедуры алгоритм вычисления метод нисходящего проектирования в чем его особенности

procedure STEP1 (n: integer; a: real; var y: real);

begin y:=1; for i:=1 to n do y:=y*a; end;

Пример 2. Оформить эту же процедуру в виде процедуры без параметра.

begin y:=1; for i:=1 to n do y:=y*a; end;

Обращение к процедурам

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

имя > ( список аргументов > )

— имя процедуры, к которой происходит обращение,

— это перечень конкретных значений и имен, подставляемых на место формальных параметров процедуры при ее выполнении.

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

метод нисходящего проектирования в чем его особенностиuses crt;

var m:integer; a,z:real;

procedure STEP1 (n: integer; x: real; var y: real);

begin y:=1; for i:=1 to n do y:=y*x; end;

writeln (‘Введите показатель и основание степени’);

write (‘m = ’); readln (m); write (‘a = ’); readln (a);

if m = 0 then z:=1 else if m>0 then STEP1(m, a, z)

writeln (‘z = ’, z:5:3); readkey; end.

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

Пример 4. Составить программу как в примере 3, используя процедуру без параметра.

Program STEP4; uses crt;

var m:integer; a,z:real;

begin z:=1; for i:=1 to m do z:=z*a; end;

begin clrscr; writeln (‘Введите показатель и основание степени’);

write (‘m = ’); readln (m);

write (‘a = ’); readln (a);

if m = 0 then z:=1 else

if m>0 then STEP2 else begin m:=-m; a:=1/a; STEP2; end;

writeln (‘z = ’, z:5:3); readkey; end.

Описание функций состоит из заголовка и содержательной части.

— это перечень формальных параметров с указанием их типа,

— это тип результата, т.е. значения функции.

Допускается описание функций без параметра

В содержательной части подпрограммы-функции имени функции должно быть присвоено некоторое значение (значение ответа).

function STEP5 (m: integer; a: real): real;

begin y:=1; for i:=1 to m do y:=y*a; STEP5:=y; end;

Обращение к функциям

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

Program STEP6; uses crt;

var m:integer; a,z,r:real;

function STEP5 (n: integer; x: real): real;

var i: integer; y: real;

begin y:=1; for i:=1 to n do y:=y*x; STEP5:=y; end;

writeln (‘ Введите m и a ’); write (‘m = ’); readln (m);

write (‘a = ’); readln (a);

if m=0 then r:=1 else if m>0 then r:=STEP5(m,a) else r:=STEP5(-m,1/a);

writeln (‘z = ’, z:5:3); readkey; end.

Стандартные модули языка Паскаль

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

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

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

Модуль состоит из заголовка модуля, интерфейса, исполнительской части, секции инициализации. Объявление модуля начинается с ключевого слова unit

Заголовок необходим для ссылки на модуль.

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

Раздел «инициализация» начинается с begin и содержит операторы, необходимые для инициализации модуля, т.е. операторы начальных установок, необходимых для запуска начальных установок модуля. Как правило, операторы инициализации не требуются, поэтому begin можно опустить.

Пример. Создать модуль математической функции.

function power ( x : real ; n : integer ): real ;

function factor ( n : integer ): integer ;

var i:integer; y:real;

begin y:=1; for i:=1 to n do y:=y*x; power:=y; end;

begin f:=1; for i:=1 to n do f:=f*i; factor:=f; end;

с точностью, заданной пользователем. Программа использует модуль Math >

uses crt,math; var x,u,eps,s:real; k: integer;

write (‘ Введите x’); readln(x);

write (‘ Введите eps’); readln (eps);

while abs(u) > eps do begin

s:=s+u; k:=k+1; u:=power(x,k)/factor(k);

writeln (‘ Результат равен ’, s); readkey; end.

Источник

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

Методы проектирования программных продуктов

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

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

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

Принципы системного проектирования

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

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

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

· Единство составных частей:

o целесообразно любой объект, сложный ли он или простой, рассматривать как систему, внутри которой можно выделить логически связанные более простые части — подсистемы, единство частных свойств которых и образует качественно новые свойства объекта-системы;

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

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

· Изменяемость во времени:

o учёт этапов жизненного цикла объекта;

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

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

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

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

Например, разрабатывая при нисходящем проектировании автомобиль (от общей схемы к его частям, например, — к мотору), необходимо увязать общую компоновку с размерами и мощностью уже выпускаемых двигателей. В противном случае придётся разрабатывать применительно к данной компоновке новый двигатель, либо изменять первоначальные варианты его расположения или схему компоновки всего автомобиля.

Источник

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

схемотехническое проектирование – это разработка функциональных и принципиальных схем.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *