Главная » Просмотр файлов » Гради Буч - Объектно-ориентированный анализ и проектирование с примерами приложений на С++

Гради Буч - Объектно-ориентированный анализ и проектирование с примерами приложений на С++ (1158635), страница 88

Файл №1158635 Гради Буч - Объектно-ориентированный анализ и проектирование с примерами приложений на С++ (Гради Буч - Объектно-ориентированный анализ и проектирование с примерами приложений на С++) 88 страницаГради Буч - Объектно-ориентированный анализ и проектирование с примерами приложений на С++ (1158635) страница 882019-09-18СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

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

12-3. Диаграмма процессов системы управления движениемщим поездом или с наземным контроллером через их передатчики иприемники. Каждый наземный контроллер присоединяется через глобальнуюсеть к диспетчерскому центру (который входит в систему управленияоперациями). Для обеспечения бесперебойного обслуживания мы решилиразместить на каждом диспетчерском центре два компьютера: основной ирезервный (второй включится в случае отказа основного компьютера).

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

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

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

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

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

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

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

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

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

Ониявляются наиболее сложными и рискованными частями проекта. Важно,чтобы мы поручили лучшим системным архитекторам поэкспериментироватьс различными подходами и постепенно создать среду, на базе которой болеемолодые разработчики сделают все остальное.12.2. ПроектированиеКак уже отмечалось в главе 6, создание архитектуры подразумеваетвыявление основной структуры классов и спецификацию общихвзаимодействий, которые оживляют классы. Сконцентрировав вниманиепрежде всего на этих механизмах, мы с самого начала выявляем элементынаибольшего риска и нацеливаем на них все усилия системных архитекторов.Результаты этой фазы дают хорошую основу (в виде классов ивзаимодействий), на базе которой строятся функциональные элементы нашейсистемы.В данном разделе мы подробно рассмотрим семантику каждого изчетырех выделенных ключевых механизмов.Механизм передачи сообщенийПод сообщением здесь мы не имеем в виду активизацию методов, какэто принято в объектно-ориентированных языках программирования.

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

Так каксистема включает территориально распределенную сеть, мы должны учестьтакие факторы, как помехи, отказы оборудования и секретность передачиинформации.Первый шаг при определении сообщений в системе - анализвзаимодействия каждой пары сообщающихся компьютеров (см. рис. 12-3). Длякаждой такой пары мы должны задать три вопроса: (1) Какую информациюобрабатывает каждый компьютер? (2) Какая информация будет передаваться содного компьютера на другой? (3) К какому уровню абстракции будетотноситься эта информация? Эмпирического ответа на эти вопросы нет. Мыдолжны действовать итеративно, пока не придем к уверенности, чтоопределены правильные сообщения и в системе связи нет "узких" мест(которые могут возникать из-за перегрузки линий связи или, например, из-затого, что сообщение разбивается на слишком мелкие пакеты).Очень важно, чтобы на данном этапе проектирования внимание былососредоточено на сути, а не на форме сообщений. Слишком часто системныеархитекторы начинают проектирование с выбора битового представлениясообщений.

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

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

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