Главная » Просмотр файлов » М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ

М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ (1184225), страница 8

Файл №1184225 М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ (М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ.pdf) 8 страницаМ.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ (1184225) страница 82020-08-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 8)

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

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

Многообразие проводимых расчетов здесьдостигается неколичеством схем счета, а многочисленными вариантами заполнения гнездфиксированной программной структуры - каркаса.Например, в функциональном наполнении пакета может содержатьсянесколько модулей, реализующих различные методы расчета. Но в структурепрограммы для них предназначается единственное гнездо «МЕТОД», вкоторое по указанию пользователя при формировании расчетных программподставляется тот или иной модуль.При данном подходе, который мы будем называть каркасным, ненакладывается ограничений на способы взаимодействия модулей. Однакосвободой выбора способов взаимодействия разработчик пакета пользуетсятолько на стадии проектирования каркаса программы, а в дальнейшем всемодули должны программироваться в строгом соответствии свыработанными при проектировании каркаса требованиями к заполнениюгнезд.Единообразное оформление модулей, принадлежащих одному гнездукаркаса, позволяет достаточно свободно сочетать в вариантах расчетныхпрограмм различные комбинации модулей.

Можно численно оценитьмощность множества расчетных программ, генерируемых пакетом прикаркасном подходе. Пусть в спроектированном каркасе содержится п гнезд идля i-го гнезда (1 ≤ i ≤ n) существует тi различных реализующих егомодулей. Тогда число Р расчетных программ, которые могут быть, вообщеговоря, порождены на базе данного функционального наполнения,выражается формулойОтметим, что при реальных расчетах возникают не все потенциальнодопустимые комбинации модулей.

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

Соседи по гнезду никогда не соседствуют в расчетныхпрограммах, а вызывающие модули программирова-лись в рамках соглашений каркаса и потому могут с равным успехомобращаться к любой (в том числе и к новой) реализации гнезда.При каркасном подходе для задания конкретной конфигурациинеобходимо для каждого гнезда каркаса программы указать, какой именномодуль из соотнесенного гнезду семейства должен быть помещен в этогнездо. Для этого на языке заданий пакета записывается совокупность парвида<имя гнезда> = <имя модуля>которая полностью определяет расчетный вариант. Некоторые способыупрощения задания конфигурации при каркасном подходе будут разбиратьсяв последующих главах при рассмотрении производственных пакетов.Реже встречаются предметные области, в которых многообразие связеймодулей по управлению удается ограничить последовательным выполнениеммодулей, не жертвуя при этом ни удобством составления программ, ниэффективностью их выполнения.

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

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

Любой модульможет быть, вообще говоря, включен в любую позицию цепочки.Если считать, что модули в цепочке могут многократно повторяться, томожно заключить, что потенциально цепо-чечный подход на любом непустом наборе модулей позволяет генерироватьбесконечное число расчетных программ. Если даже ограничиться не болеечем однократным включением модуля в цепочку и считать порядок модулейв цепочке несущественным (в реальных пакетах нередко ни то, ни другоеограничение не выполняется), то тем не менее оценка числа Р потенциальновозможных расчетных программ составитР = 2м,(2)где М - число модулей в пакете.

Даже такая заниженная оценка выглядитнамного внушительнее, чем оценка (1) каркасного подхода. Однако напрактике при достаточно большом М подавляющая часть потенциальновозможных цепочек никогда не реализуется.Популярности цепочечного подхода в немалой степени способствует тообстоятельство, что многие современные операционные системы (преждевсего UNIX) предоставляют удобные средства для применения цепочечногоподхода при организации связей между задачами. В частности, в языкахуправления заданиями операционных систем часто встречается конструкция,инициирующая последовательное выполнение серии задач (программ),причем выходной поток каждой предшествующей задачи используется вкачестве входного потока для следующей за ней.

Эта конструкция позволяет,например, компактно и наглядно задать цепочку различных типовыхпреобразований данных, предназначенную для формирования печатногодокумента.В монографии [77], написанной под несомненным влиянием концепцийсистемы UNIX, предпринимается попытка применения цепочечного подходак программированию задач вычислительной математики. Автор считает этотподход одним из средств достижения повторной используемости(«переиспользуемости») программ. Все же основная масса крупныхпрограммных комплексов для решения вычислительных задач опирается накаркасный подход, который имеет не меньше оснований претендовать нароль инструмента для обеспечения повторной используемости.Относительно неширокая распространенность цепочечного подходаобъясняется, по-видимому, тем, что накладываемые им суровые ограниченияна управляющие связи модулей влекут за собой существенные трудностипри программировании и определенные потери эффективности привыполнении программ.В то же время для некоторых предметных областей, в частности, дляэлектротехнических расчетов, применениецепочечного подхода оказывается весьма плодотворным.

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

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

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6510
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее