Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТРПО ответы.docx
Скачиваний:
13
Добавлен:
12.09.2019
Размер:
143.34 Кб
Скачать
  1. Архитектура программного обеспечения;

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

• однопользовательскую архитектуру;

• многопользовательскую (сетевую) архитектуру.

Кроме того, в рамках однопользовательской архитектуры различают:

• программы. Программа (program, routine) — упорядоченная последовательность формализованных инструкций для решения задачи с помощью компьютера. Это самый простой вид архитектуры, который обычно используется при решении небольших задач;

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

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

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

Многопользовательскую архитектуру реализуют системы, построенные по принципу «клиент — сервер».

11. Структура и формат данных. Классификация;

На этапе определения спецификаций для разработки качественного программного обеспечения необходимо определить структуру и формат используемых в программах данных. Структура данных — это множество элементов данных и связей между ними. Независимо от содержания и сложности любые данные в памяти компьютера представляются в виде последовательности двоичных разрядов (битов), а их значениями являются соответствующие двоичные числа. Битовые последовательности слабо структурированы и неудобны для практического применения. На практике обычно применяют более сложно организованные структуры данных.С понятием структуры данных тесно связано понятие типа данных. Различают физическую и логическую структуры данных. Физическая структура в отличие от логической отражает способ представления данных в памяти компьютера и называется еще внутренней. По составу различаются простые структуры (типы) данных и интегрированные (сложные). Простые структуры не могут быть расчленены на составные части, большие, чем биты. С точки зрения физической структуры для простого типа четко определен его размер и способ размещения в памяти компьютера. С точки зрения логической структуры простые структуры являются неделимыми единицами. Интегрированные структуры данных включают в себя другие структуры данных — простые или интегрированные. Между отдельными элементами структур могут наличествовать или отсутствовать явно заданные связи. В зависимости от этого следует различать: несвязные структуры (векторы, массивы, строки, стеки, очереди) и связные структуры (связные списки). По признаку изменчивости различают структуры статические, полустатические, динамические. Под изменчивостью понимают изменение числа элементов структуры или связей между этими элементами. Классификация структур данных по признаку изменчивости приведена на По признаку упорядоченности элементов структуры можно делить на линейные и нелинейные. Пример нелинейных структур — многосвязные списки, деревья, графы. Линейные структуры, в свою очередь, делятся на структуры с последовательным распределением (векторы, строки, массивы, стеки, очереди) и структуры с произвольным связным распределением (односвязные, двусвязные списки) по характеру распределения элементов в памяти. Указание типа данных четко определяет:

• размер памяти, отведенной под данную структуру и способ ее размещения в памяти;

• значения, допустимые для данного типа данных;

• операции, которые возможно над этими данными выполнять.