Главная стр 1стр 2 ... стр 19стр 20
скачать
Содержание

Вопрос №1. Системный подход к проектированию программного обеспечения 2

Вопрос №2 Методы проектирования программного обеспечения (программных продуктов) 4

Вопрос №3 Принципы проектирования информационного обеспечения программного комплекса. 6

Вопрос №4 Показатели качества программного обеспечения 8

Вопрос №5. Методы создания надежного программного обеспечения 10

Вопрос №6 Ассемблеры. Определение. Области применения. 13

Вопрос №7 Управление ресурсами вычислительных систем 15

Вопрос №8 Классификация и организация прерываний в ОС 17

Вопрос №9 Общая характеристика (типы) операционных систем 20

Вопрос №15 Модели баз данных 25

Вопрос №16. Уровни отображения данных в СУБД 31

Вопрос № 17 Языки общения с СУБД (SQL, QBE) 32

Вопрос №18. Отличие баз данных от файловых систем 34

Вопрос №19 Методика проектирования имитационных моделей 37

Вопрос №21. Обработка списковых структур на языке Турбо Пролог. 39

Вопрос №22. Организация рекурсивных структур на Прологе. 46

Вопрос №23. Системы ИИ. Фреймы, семантические сети и процедуры. 51

Вопрос №24. Экспертные системы. Цель, состав и принципы функционирования. 57

Вопрос №25. Техническое и программное обеспечение глобальных компьютерных сетей (INTERNET). 62

Вопрос №26. Типы, стандарты протоколов компьютерной сети. 67

Вопрос №27. Топология компьютерных сетей. 71

Вопрос №28. Технические средства передачи информации. 73

Вопрос № 29 Многоуровневая модель взаимодействия компьютерных сетей 77

Вопрос № 31 Оценка производительности ЭВМ 79

Вопрос №33 Привилегии в ПЭВМ. Слово состояния программы. 83

Вопрос №34 Управление выполнением последовательности команд. 84

Вопрос №36 Приоритетное обслуживание прерываний 87

Вопрос № 37 Страничная адресация памяти 90

Вопрос № 38. Способы адресации в ПЭВМ с 32-х разрядной архитектурой 93

Вопрос №35 Передача данных с прямым доступом к памяти 98

Вопрос №35 Формирование адресов микрокоманд. 100

Вопрос №46 Функциональные узлы комбинационного и последовательного типа. 104

Вопрос №47 Понятие функционирования сети Петри. 108

Вопрос №48. Задание автоматов с помощью таблиц переходов и выходов. 110

Вопрос №49. Построение закона функционирования управляющего автомата Мили по граф-схеме алгоритма. 111



Вопрос №1. Системный подход к проектированию программного обеспечения


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

1. Определение и содержание проектирования

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

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

С системотехнической точки зрения в практику будущей работы) проектирование в общем случае включает следующие фазы: замысла, исследования возможностей, - фазы системного проектирования (СП); разработки и конструирования, включая и такую же схему испытаний объекта проектирования – фазы основного проектирования (ОП).



2. Системное проектирование

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

а) определение назначения СТК;

б) формирование требований в разрезе установленного назначения;

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

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

д) предварительная оценка потребных ресурсов;

е) предварительная оценка экономической эффективности и допустимости в экологическом отношении.

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

Задание на систему обычно имеет следующие особенности:

а) заказчик ориентирует требование к системе на её назначение и, как правило, уделяет мало внимания вопросам реализуемости системы;

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

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

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

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

Основные ограничения, которые всегда должны учитываться, включают:

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

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

в) особенности графика проектных работ – требование плотного графика может привести к согласованию заниженных технических и экономических показателей системы;

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

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

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

б) разработка на базе известных принципов инженерных методов проектирования;

в) определение методов оптимизации характеристик системы.



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

Задача разработки способов оптимизации преследует цели: минимизация стоимости, объёма, веса, обеспечения максимума надёжности, ремонтопригодности и т.д. и должна решаться в процессе создания методов проектирования.

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

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

Итогом системного проектирования служит документ, который должен содержать:



  1. обоснование предлагаемых решений;

  2. достаточно подробное описание работы всей системы в целом;

  3. чёткое описание подсистем;

  4. для каждой подсистемы: описание формы, числа и времени появления «входов» и «выходов», ясное и полное описание функционирования, операций над «входами», необходимых для получения требуемых выходов, перечень предельно допустимых общих габаритов, весов, объёмов памяти и потребляемой мощности, возможные методы физической реализации предложенного способа функционирования в пределах указанных ограничений и т.д.

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

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

Вопрос №2 Методы проектирования программного обеспечения (программных продуктов)


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

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

Методы проектирования программ, основанные на модульном принципе, делятся на три группы:


  • методы нисходящего проектирования,

  • методы расширения ядра

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

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

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



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

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


Пошаговое уточнение

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

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

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

Анализ сообщений

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

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

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

Связность модуля определяется как мера независимости его частей. Чем выше связность модуля, тем лучше результат проектирования. Для обозначения связности используется также понятие силы связности модуля. Типы связности модулей приведены в таблице:

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

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



2. Метод расширения ядра

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



Спецификация модуля

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

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

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



Метод иерархического проектирования модулей

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



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

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

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


скачать

следующая >>
Смотрите также:
Вопрос №1. Системный подход к проектированию программного обеспечения 2
2456.95kb.
Курс "Основы алгоритмизации и программирования" 1 год обучения Язык программирования Pascal
104.45kb.
В точностную теорию надежности программного обеспечения
133.83kb.
Системный и ситуационный подходы к процессу принятия управленческих решений Системный подход
45.32kb.
10. Проектирование программного обеспечения
33.59kb.
Билеты к экзамену по информатики за 9 класс
20.48kb.
Лекция 4 Программное обеспечение вычислительной техники. Операционные системы и оболочки
144.82kb.
Программный принцип работы компьютера. Программное обеспечение. Операционные системы
56.51kb.
Образовательные технологии
17.9kb.
Технические средства типового рабочего места. Технические требования
42.19kb.
Инструкция по порядку проведения инвентаризации программного обеспечения
32.23kb.
Установка программного обеспечения в среде unix
52.12kb.