И. Соммервилл - Инженерия программного обеспечения (1133538), страница 147
Текст из файла (страница 147)
27. 10. Мтгогпу)гоонеопл модель гномельг Сервер: Управление взаимодействием Проверка данных Сервисы Баев данных Сервер: Сервисы Бюа данных Сервер: База данных Клиент: Представление Клиент: Представление Управление взмтмодействивм Управление взаеодейсанем Проверка данных Проверка данных Сервисы Клиент; Представление Увеличение шоимости и затрат Рис 27 11. ВпРипнты Рпсийеделен ныл еипнем 37.3.1. Распределение интерфейсов пользователя Многие наследуемые системы введены в эксплуатацию еще до того, как были изобре.
тены графические интерфейсы пользователей. Такие системы имеют интерфейсы, основанные на текстовых формах, которые выполняются на терминалах, способных выводить на экран только символьные изображения. Вычислительные средства таких терминалов относительно слабые, поэтому все основные вычислительные функции принимает на себя центральная ЭВМ. При распределении интерфейсов пользователя применяются мощности локальных ПК, обеспечивающие графический интерфейс, который в большей мере отвечает потребностям пользователей. Функции интерфейса (представление данных, управление взаимодействием и проверка данных) переводятся на локальный ПК, а текстовый интер- Когда наследуемая система представлена в виде сервера и доступ к ней осуществляется посредством промежуточного ПО (см.
рис. 27.9), распределение системы можно начинать с варианта, показанного на рис. 27.11 слева, а затем постепенно переходить к варианту, показанному справа. При реализации новых сервисов они принимают на себя функции т| он наследуемой системы на сервере, передавая управление операциями по обработке данных тчл, машине клиента. В конце концов такая постепенная переадресактйя функций приводит к тому, что большая часть изначальной наследуемой системы не используется.
она принима. ет на себя только функции канала обслуживания базы данных длн распределенной систе- мы. При достижении этого этапа уже можно будет решать, оставить ли наследуемую сис- тему либо заменить ее системой управления данными. ббб Яасть УП. Эволюции программного обеспечения фейс заменяется графическим интерфейсом пользователя.
Серверу остаются функции по обработке данных и реализации сервисов приложенил. Если наследуемая система обладаег четкой структурой, в которой легко выделить ин. терфейс пользователя. се можно преобразовать в систему с распределепнычн интерфейсами пользователя. Для этого следует перенести на компьютер клиента те компоненты системы, которые отвечают эа взаимодействие с пользователем. Свлзь этих компонентов с основной программой осуществляется с помощью интерфейса, подобного изначальному текстовому. Оливка часто встречаются системы.
в которых интерфейс и приложение интегрированы так, что невозможно вычленить код интерфейса. В этом случае можно прибегнуть к варианту распределения интерфейсов пользователя, который показан на рис. 27.12. ПК кававтсв с графкчоскяи интерфейсом Овксанш экранов Рве. 27.12. Рпслредеее«ие лаеыоеоэмлмхик киви)тр<ейсв< Промежугочиос ПО управления экранами (окнами), показанное на рис.
27.12, осуще. ствляет связь с приложением и действует точно так же, как терминал пользователя. Это програминое обеспечение использует описание каждого экрана лля интерпретации и вывода данных на экран. В таком виде данные пересылаются па машину клиента, где они представляются с поио<цью графического интерфейса.
В настоящее время процесс описания структуры интерфейса можно реализовать с помощью языка ХМЕ [э26). В этом случае не обязательно изменять наследуемую систему. Нужно только создать промеж)точное ПО управления экрапамн и программу поддержки интерфейса на машине клиента. Для реализации распределения пользовательских интерфейсов используются две стратегии.
1. Реализация интерфейса с помощью системы управления окнамн, установленной на машине клиента и осуществляющей связь с сервером. 2. Реализация интерфейса пользователя с помощью 1з<еЬброуэера. И первом случае интерфейс создается с помощью подходящего лзыка программированил, например[ага, или с помощью языка сценариев Яапа! Ваз)с. Для реализации интерфейса на машине пользователя выполняются запросы к функциям операционной системе.
Во втором сл)час для создания щ<терфейса иа основе 1з<еЬстраниц применяется язык 1П'М!. и 1з'еЬ броузеры. Каждый подход имеет свои преимущества и недостатки, которые представлены в табл. 27.2. 27. Модернизация программного обеспечения 567 Таблица 27.2. Преимущества н недостатки стратегий реализации рвспределенньгх пользовательских интерфейсов Стратегия Преимущества Недостатки Реализация с по. мощью системы управления окнами Реаэиэация с по- мощью пгеЬ броузера Доступ ко всем функциям интерфейса пользователя.
Улучшенная работа ин- терфейса пользователя Независимость от аппаратной платфор- мы. Снижение затрат на обучение работе с интерфейсолг (интерфейс гтеЬбро)зера знаком всем). Легче добиться согласова- ния интерфейсов Зависимость от аппаратной платформы. Трудности со- гласования интерфейсов Более низкая производитель- носп интерфейса Возмож- ности дизайна интерфейса ограничены возможносгями гг'еЬброуз эра Еэ 4. ~;,КЛЮЧЕВЫЕ ПОНЯТИЯ ' гэ."„Уэ Стратегия.модернизации программисте обеспечения состоят нз'сопровождения ПО, 'зяслюцияу ~;.."~~чсвщвмной архитектуры и реинжениринга ПО.
: ~гв' Ж Я; Существует ряд постоянных факторов (законы Лемана), влияющих на зваяюцию программных свс-.;: ;йэ)ф~твм, Этн зажены появились благодаря пракгическим наблюдениям к дают необходимую основу дм '- ,",;: ~:,.- управления прогщсссм сопровождения. ! е,';:;: Есть три вида сопровождения прогрвммньа продуктов: с целью исправления ошибок, с Шляюсь :.:зй);,'цдшпаций ПО к рабочему окружению системы и с целью изменения вли расширения фуккцгкь~г утёк.:,"Ф вильна возможностей системы.. 'к,в,,,;:-Эагршй нв сопровождение, кзк правило, превышают расходы на создание программной системы..",.' зги";"ф.' Поскольку в большинстве компаний используются устаревшие системы, большая часть срядсш,', :У:~',+';выделяемых на ПО, уходит именно на сспровшкдение гшшх систем.
Ь ,.',ь Эволюция систвмной архитектуры подразумевает переход пт централизованной струпуры систе-', мы к распределенной. : ° 'зг, Общепринятой стратегией эволюции системной архитектуры является првабразовзннв нзследуе-' ~ .- '.„-'гмой сйствмы в виде сервера н реализация распределенных интерфейсов пользователя, доступ к г~~Ф системным'функциям осуществляется посредством специзльногп прсмежушчнсгс ПО.
Переход с обычных интерфейсов на интерфейсы ЬцеЬброуэероэ приобрел так)ю популярность благодаря независимости от аппаратной платформы и широким возможностям ЬгеЬброузеров. Приложения на языке )эта применимы для локальных вычислений иа машине клиента, что позволяет сравнить эти интерфейсы с теми, которые основаны на системе управления окнами. Большая трудность в преобразовании интерфейсов, основанных на текстовых формах, в графические состоит в том, что они различаются способами управления взаимодействием и проверки данных. В первом случае компьютерная система осуществляет управление взаимодействием и выполняет проверку данных сразу после поступления информации.
Для этого необходимо, чтобы поля форм заполнялись в определенном порядке. В графическом интерфейсе пользователь произвольно выбирает интересующие его полл. Такое управление машина не может предсказать. Поэтолгу воэникаег дополнительный поток об. мена данными между ПК пользователя н сервером. Проверка данных возможна лишь в случае полного заполнения всех полей, иначе работа системы замедляется эа счет частых обменов данными между клиентом и сервером. 568 чкасгь к"П. Эволкоциж ирограммиого обеспечеииж Упражнения 27.1. Объясните, почему в "молодых" организацив-разработчиках постоянно возникают запросы на изменение программного обеспечения. Почему расходы на ати изменения неизбежно возрастают? 27.2, Объясните, на чем основаны законы Лемана.
При какик условиях ати законы не будут действовать? 27,3. Опишите трудности, которые возникают при определении сложности сопровождения. Почему для оценивания будущего процесса сопровождения рекомендуется применять разные показатели сложности систем? 27.4. Допустим, вы менеджер по программному обесгючению компании, специализирующейся на разработке программ для нефтедобывающей промышленности, и вам дали задание определить факто.
ры, влияющие на сопровождение систем, созданных компанией. Опишите, как вы организуете анализ процесса сопровождения с тем, чтобы найти систему показателей сопровождения, подходящую для вашей компании. 27.6. Объясните, почему преобразование а сервер наследуемой системы, реализованной на мэйнфрейме, является лишь краткосрочным решением проблемы эволюции системной архитеауры. 27.6. Опишите преимущества и нщшстатки распределения каждого системного слоя, показанного на рис. 27.10. 27.7.