Главная » Просмотр файлов » И. Соммервилл - Инженерия программного обеспечения

И. Соммервилл - Инженерия программного обеспечения (1133538), страница 64

Файл №1133538 И. Соммервилл - Инженерия программного обеспечения (И. Соммервилл - Инженерия программного обеспечения) 64 страницаИ. Соммервилл - Инженерия программного обеспечения (1133538) страница 642019-05-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

1. Сс)мг)>м, в которых объект реализован как параллельный процесс с методами, соотвстствующимн опрсдслснпым опсрациям объекта. Методы запускаются в ответ на внсщпсс сообщение и мо<ут выполняться параллельно с мстодами, связанными с другими объсктаии, По окончании вссх действий выполнснис объекта приостанав. лнэастся и оп ожидает лальнсйших запросов к сервису. 12. Объектно ориентированное проектирование 249 2. Акжкзньи абзекмьь у которых состояние может измеиятьсл посредством операций, выполняющихся внутри самого объекта.

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

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

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

С помощью спутниковой навигационной системы радиомаякчзтветчик отслеживает положение самолета. Он может отвечать на сообщения, приходящие от компьютеров, управляющих воздушныии полетами. В ответ на запрос метод п(черпай)оп сообщает текущее положение самолета. Листинг 12.1. Реализации активного объекта, использующего потоки языка )ага с1азз Тгапзропс(ег ехгепг)з тпгеаг) ( Розгсгоп сцггепГРозгс1оп г Соотг)в с1, с2 Заге111ге заг1, ваг2 Нач1оагог Гпеиач(йагог ри)з11с Роагсгоп ч1чеРоз1Г1оп () ( гееигп сцггепГРоззсгопг ) ри)з11с чого гцп () ( нй11е (ггце) с1 = заг1.роз1г1оп ()г с2 = заС2.ровгГ1оп (): соггепгрозггзоп = г)зенач1чагог.совриге (с1, с2) ) ) )//Тгапзропг)ег Данный объект реализован как поток, где в непрерывном цикле метода гцп содержится код, вычисляющий положение самолета с помощью сигналов, полученных от спутников.

В (ача потоки создаются с помощью встроенного класса Т(кевб (Поток), выступающего в объявлении классов в качестве базового. 2БО г%асть П1. Проектирование 12.2. Процесс объектно-ориентированного проектирования В этом разделе процесс объектно. ориентированного проекгирования показан на примере разработки структуры управляющей программной системы, встроенной в автоматизированную метеостанцию. Как отмечалось выше, есть несколько методов объектно. ориентированного проектирования, причем какого. либо предпочтительного метода или процесса проектирования нс существует.

Рассматриваемый здесь процесс является достаточно общим, т.с. состоит из операций, характерных для болыпинства процессов объектно-ориентированного проектированил. В этом отношении он сравним с процессом, предлагаемым языком ()М1. [304), однако я значительно )простил его. Общий процесс объектно-ориентированного проектирования состоит из нескольких этапов.

1. Определение рабочего окружения системы и разработка моделей ес использованил. 2. Проектирование архитектуры системы. 3. Определение основных объектов системы. 4. Разработка моделей архитектуры гистемы. 5. Определение интерфейсов объекта. Процесс проектирования нельзя представить в виде простой схемы, в которой предполагается четкая последовательность этапов. Фактически все перечисленные этапы в значительной мере можно выполнять параллельно, с взаимным влилнием друг на друга. Как только разработана архитектура системы, определяются объекты н (частнчно или полностью) интерфейсы.

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

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

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

Из данного описания видно, что одна часть общей системы занимается сбором дан. ных, другая обобщает данные, полученные нз различных источников, третья выполняет архивирование данных и наконец четвертая создает метеорологические карты. Нз рнс. 12.зг изображена одна из возможных архитектур систелгы, которую можно построить на основе предложенного описания. Она представляет собой многоуровневую архитеюуру (обсужласиую в главе 1О), в которой отражены все этапы обработки данных в системе, т.с. сбор >пи>пыл, обоГ>щепие данных, архивирование данных и создание карт. Такам мно.

гоуровпсвал архитектура вполне годитсл лля пашей системы, так как каждьи! этап основывается т> лько па обраГ>отке данных, выполненной па прсдыдуцгсм этапе. 12. Объектно-ориентированное проектнроюанне 251 Уровень отобрвхенкп данных, на котором обьекты занимаютсн подготовкой данных и отобракением данных в форме, понятной человеку Уровень врхивировтния данных, на котором обьекты соцюнвот данные для их дальнейшей обработки Уровень обработки данных, на котором обьекты проверяют и обьвдиняют собранные данные Уровень сбора данных, на котором обьеьты фоунгируют запросы к данным из различных источников Рис. 12.5.

Млвгвфовневвя лРлиэмк~лурв сисэммь нвс прогнил кпрэг лвгвдм На рис. 12.5 показаны все уровни системы. Назвагнтп уровней заключены в прямоугольники, что в нотации 1)М1. обозначает подсистемы. Прямоугольники 1.'МУ. (т.е. пол. системы) — это набор объектов и других подсистем. Я использ)ю здесь это обозначение, чтобы показать, что каждый уровень включает в себя множество друптх коьтттггт~снтов. На рнс.

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

12.б. Пвдсисэимм в сисвгеэге лвстРвелия клугггг погоди 252 Часть П1. Проектирование 12.2.1. Окружение системы и модели ее использования Первый этап в любом процессе проектированил состоит в выявлении взаимоотношений между проект»»руемь»м программным обеспечением и его окружением. Выявление этих взаимоотношений помогает решить, как обеспечить необходимую функциональность системы и как структурировать систему, чтобы она могла эффективно взаимодействовать со своим окружением. Модель окр)пкспия сисгемы и модель использования системы представляют собой две до. полня»ощие »вз)т друга модели взаимоотношений между данной системой и ее окружением. 1.

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

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

Тип файла
DJVU-файл
Размер
8,79 Mb
Тип материала
Высшее учебное заведение

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

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