Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Порядок выполнения и защиты курсовых работ.doc
Скачиваний:
6
Добавлен:
04.12.2018
Размер:
995.33 Кб
Скачать
  1. Технические требования к системе в терминах классов и взаимодействия

Данную систему предполагается использовать в учебном процессе для наглядности при рассмотрении различных алгоритмов обработки процессов. Она позволяется создать необходимую систему для моделирования (многопроцессорная система, без учета ввода-вывода), ввести необходимые параметры процессов и получить резуль­таты для анализа и сравнения. Используем технологию прецедентов для определения возможного применения системы.

    1. Отождествление действующих субъектов

    1. Основные пользователи данной системы - учащиеся и преподаватели.

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

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

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

    1. СОЗДАНИЕ ПРЕДВАРИТЕЛЬНОГО СПИСКА ПРЕЦЕДЕНТОВ

Пользователь может следующее:

      1. Вводить данные о системе, проектировать систему.

    1. Выбирать алгоритм обслуживания процессов.

    2. Определять характеристики обслуживаемых процессов.

    3. Просматривать результаты обработки процессов.

    4. Просматривать диаграмму обслуживания процессов.

    5. Сохранять полученные результаты и диаграмму.

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

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

      1. Создает очередь процессоров (если их несколько).

      2. Передает процессорам данные о времени кванта, времени, затрачиваемом на смену контекста.

      3. Создает очередь процессов и передает каждому данные о времени прихода в систему, о времени обработки, приоритет.

      4. Запускает обработку по выбранному алгоритму. Получает результаты обработки.

2.3. Уточнение и присвоение имен прецедента

    1. Пользователь может осуществить ввод данных о системе (процессорах).

    2. Пользователь может осуществить выбор требуемого алгоритма.

    3. Пользователь может осуществить ввод данных о процессах.

    4. Пользователь может получить результаты обработки.

  1. РАЗДЕЛЕНИЕ ПРЕЦЕДЕНТОВ

    1. Пользователь может определить количество процессоров в системе.

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

    3. Пользователь может определить время кванта.

    4. Пользователь может определить количество приоритетов.

    5. Пользователь может определить количество процессов в системе.

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

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

    8. Пользователь может определить приоритет каждого процесса.

    9. Пользователь может осуществить выбор требуемого алгоритма.

    10. Система может создать очередь процессоров.

    11. Система может передать сведения о времени кванта, времени, затрачиваемом на смену контекста процессорам.

    12. Система может создать очередь процессов.

    13. Система может передать сведения о времени прихода в систему, о времени обработки, приоритете процессам.

    14. Пользователь может получить результаты обработки.

  1. ОБЪЕДИНЕНИЕ ПРЕЦЕДЕНТОВ

    1. Пользователь может определить количество процессоров в системе.

    2. Пользователь может определить параметры системы (время смены контекста, время кванта, количество приоритетов).

    3. Пользователь может определить количество процессов в системе.

    4. Пользователь может определить параметры процессов (время прихода, время обслуживания, приоритет).

    5. Пользователь может осуществить выбор требуемого алгоритма.

    6. Система может инициализировать очередь процессоров.

    7. Система может инициализировать очередь процессов.

    8. Пользователь может получить результаты обработки.

  1. КОНЕЧНЫЙ СПИСОК ПРЕЦЕДЕНТОВ

Пользователь

    1. Определение количества процессоров в системе.

    2. Определение параметров системы.

    3. Определение количества процессов в системе.

    4. Определение параметров процессов.

    5. Определение алгоритма.

    6. Получение результатов работы системы. Система

      1. Инициализация очереди процессоров.

      2. Инициализация очереди процессов.

  1. ОПРЕДЕЛЕНИЕ ПОСЛЕДОВАТЕЛЬНОСТИ СОБЫТИЙ ДЛЯ КАЖДОГО ПРЕЦЕДЕНТА

    1. Определение количества процессоров в системе.

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

    1. Определение параметров системы. Ввод необходимых параметров системы, Предпосылки - не требуются. Последствия - инициализация процессоров. Альтернатива: окончание работы с системой.

    2. Определение количества процессов в системе.

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

    1. Определение параметров процессов. Ввод необходимых параметров процессов.

Предпосылки: инициализация системы, создание очереди процессов. Последствия: инициализация процессов. Альтернатива: окончание работы с системой.

    1. Определение алгоритма. Выбор алгоритма обслуживания.

Предпосылки: инициализация системы, инициализация процессов. Последствия: обработка данных.

Альтернатива: обработка по алгоритму FIFO (по умолчанию).

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

Альтернатива: инициализация системы с другими параметрами.

    1. Инициализация очереди процессоров,

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

    1. Инициализация очереди процессов.

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

3.8. ДИАГРАММА ПРЕЦЕДЕНТОВ

3.9. ДИАГРАММА ПОСЛЕДОВАТЕЛЬНОСТИ СОБЫТИЙ

3.10. ДИАГРАММА СОТРУДНИЧЕСТВА

3.11. КОНЦЕПТУАЛЬНАЯ МОДЕЛЬ

3.12. ОБЩИЕ ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ

  1. Поскольку система создается в учебных целях, то необходимо, чтобы она представляла простой и удобный графический интерфейс (GUI - Graphical User Interface).

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

  3. Далее ему будет необходимо определить алгоритм, по которому будут обрабатываться процессы. В системе будет реализовано четыре основных алгоритма: FIFO, LIFO, SJF и RoundRobin, особенности которых уже были описаны выше. Для удобства работы с системой предполагается, что у пользователя будет возможность изменить алгоритм обработки вплоть для начала работы системы (нажатия специальной клавиши), т.е. даже введя данные о системе и процессах, пользователь может изменить алгоритм. Он также может изменить алгоритм обработки и после начала обработки, но в этом случае данные о предыдущей обработке будут утеряны.

  4. Затем пользователь должен будет ввести параметры процессов для обработки. В системе предполагается использовать следующие параметры: время до начала процесса (или время прихода процесса в систему, в секундах, отсчет времени ведется от начала инициализации), время, необходимое для обработки процесса, приоритет процесса. Следует заметить, что приоритет используется лишь в алгоритме RoundRobin, но вводить его необходимо даже при работе с другими алгоритмами. Это связано с тем, что программа предполагает работу с различными алгоритмами без потери данных о системе и введенных процессах. Поэтому если пользователь после обработки алгоритмом FIFO, LIFO или SJF захочет посмотреть на результат работы алгоритма RR, а приоритет не будет введен, данная обработка не будет иметь смысла.

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

  6. После обработки на экран будут выведены сведения о результатах. Также предполагается вывод диаграммы обслуживания процессов.

  7. Для удобства анализа и сравнения должна быть возможность сохранения полученных данных в файл.

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