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

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

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

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

5-34 показан высший уровень диаграммы модулейдля нашей системы тепличного хозяйства. Раскрыв любую из показанныхсеми подсистем, мы обнаружим все ее модули.Рис. 5-34. Диаграмма модулей верхнего уровня для гидропоннойсистемыРассмотрим, как связаны физическая и логическая (рис. 5-7)архитектуры этой системы. Они практически изоморфны, хотя имеютсянебольшие различия. В частности, мы приняли решение отделить классыустройств нижнего уровня от категорий классов Климат и Удобрения, ипоместить соответствующие им модули в одну подсистему, названнуюУстройства.

Кроме того, мы разделили категорию классов Теплица на двеподсистемы, названные УправлениеКлиматом и ВнесениеУдобрений.Дополнительные понятияДругие типы модулей. Некоторые языки, прежде всего Ada,определяют типы модулей, отличные от простейших, показанных на рис. 5-32.Например, Ada предусматривает обобщенные пакеты, обобщенныеподпрограммы и задачи как раздельно компилируемые единицы. Поэтому естьоснования дополнить основные обозначения значками типов модулей,специфических для данного языка.Сегментация.

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

"Раскрытие" модуля или подсистемы надиаграмме модулей открывает соответствующий физический файл иликаталог и наоборот.5.7. Диаграммы процессовСущественное: процессоры, устройства и соединенияДиаграммы процессов используются, чтобы показать распределениепроцессов по процессорам в физическом проекте системы. Отдельнаядиаграмма процессов показывает один ракурс структуры процессов системы.При разработке проекта мы используем диаграмму процессов, чтобы показатьфизическую совокупность процессоров и устройств, обеспечивающих работусистемы.Основные элементы диаграммы процессов - процессоры, устройства иих соединения.Процессоры. На рис. 5-35 показано обозначение процессора.Процессор - часть аппаратуры, способная выполнять программы.

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

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

На диаграмме процессов мы изображаем соединения между ниминенаправлеными линиями. Соединение обычно представляетнепосредственную связь между аппаратурой, например, RS232, Ethernet, илидаже доступ к разделяемой памяти, но эта связь может быть и не прямой,например, "Земля-спутник". Соединения обычно считаютсядвунаправленными, но при необходимости к их обозначению можно добавитьстрелку, чтобы указать направление. Любое соединение может иметьнеобязательную именующую его метку.Пример. На рис.

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

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

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

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

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

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

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

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

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

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