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

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

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

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

Этот под- ход проиллюстрирован на рнс. 28.7 Расширение воэ- можностей обра. ботки данных Миграция данных ниться, чтобы соответствовать измененияи в программном обеспечении. Изменение данных — это процесс анализа и реорганизации структуры данных, а иногда еще и изменение значений системных данных. В принципе, если функциональность системы осталась прежней, изменения данных не требуется. Однако существует ряд причин„которые вынуждают изменлть данные (так же, кзк и программы) наследуемой системы. 28. Реинжениринг программного обеспечения 581 Рис 2В.

7. Мкгрпкия данных В статье [298] описаны некоторые проблемы с данными, возникающие в наследуемых системах, состоящих из нескольких программ коллективного пользования. 1. Пробмнл кненазания данных Имена мо~ут быть зашифрованы и трудны для восприятия. Одному и тому же логическому элементу в разных программах зюгут присваиваться разные имена С другой стороны, одно и то же имя в разных программах используется для именования различных элементов. 2. Пребммл длины намй.

Возникает в тех случаях, когда длина поля определена непосредственно в программе. Одному и тому же элементу записи может быть определена разная длина в разных частях программы, либо длина поля слишком мала для представления текущих данных. 3. Проблема оргтпилаии элпигей Записи, огносяшиеся к одному и тому же элементу, в разных программах мо~ут быть представлены по-разному.

Обычно эта проблема возникает с такими языками программирования, как СОВО1., где физическая организация записей определяется программистом. В языках типа С++ или 1а~ а такой проблемы не существует, так как физической организацией записей занимается компилятор. 582 Часть 1гП. Эволюция программиога обеспечения 4. Пробммп холсэюииь Константы (литеральные величины), например налоговые ставки, часто определены в программе, что затрудняет создание символьных ссылок па пих.

5. Оикуэкэмие словаря данках Часто отсутствует словарь данных, в котором отображены применяемые имена, их прелставления и использование. Таблица 28.2. Примеры несовместимости и противоречивости значений данных Данные Разлпчныс значения по умолчанию Описание В различных программах одному и тому же логическому элементу данных мог)т быть присвоены разные значения по умолчанию.

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

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

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

Для фиксации месг ссылок на элементы данных и изменений, которые там требуются, удобно создать набор таблиц регистрации изменений, которые содержат описание всех этапов из. мепенна данных. Схелш процесса изменения данных показана на рнс. 28 8. Если определения данных несовместимы или противоречивы, их значения могут храниться и обрабатываться некорректно. Примеры несовместимости и противоречивости данных приведены в табл. 28.2, взятой пз [293]. После изменения определений данных их значения преобразуются так, чтобы соответствовать новой структуре данных.

28. Реинжениринг программного обеспечения 58$ Рис. 28.8. ууроеесс изменения денник На первом этапе процесса изменения данных модифицируются определения данных. На сами данные такал модификация не оказывает влияния. Чтобы автоматизировать этот процесс, можно использовать систсиы сопоставления с образцом, например аиь [5), ко.

торые помогают находить и заменять определения, или жс можно создать ХМзе определения данных [325] и использовать их для управления средствами конвертнрова. ння данных. Несмотря на это, ручной работы над данными практически невозможно избежать. Если ставится цель улучшить понимасмость определений данных, то работу можно остановить на этой стадии. Если же имеются проблемы со значениями даннык, описанные выше, следует начать второй этап процесса изменения данных. После второго этапа обязательно идет третий — преобразование данных. Обычно зто очень дорогостоящий процесс.

Для его реализации создаются программы, аккумулирую. щие информацию о старой и новой структурах данных. Здесь опять применяется система сопоставления с образцом. В. ье. КЛЮЧЕВЫЕ ПОНЯТИЯ "::::;:; '.::,!.''"::4"'5" »" ч' 'йз,'з[СЗ '.' . "° '-' Целью реинжениринга 'систем является улучшение системных структур.

В результате снижаются расходы на сопровождение систем. ' °,' В процесс реинжениринга систем входят тише этапы, как перевщ исходного кода, анализ систем, ";;;: =. улучшение структуры программ, разбиение программ на модули и изменение данных. : ° .. Перевод исходного кода- зто автоматизированный перевод программы, созданной с помощью ззер[.з одного языка программирования, на другой. Вто необходимо, если исходный яаык программиро. [ -; валия усш[шл.':;;, зз е р ...„° ! ' °: ' В пршмзюв анализа системьз на основе исходюго кода восстанавливаются системные архитектура и : ег,ь 'специчзиащия.

Для подверг процесса знаема испаьзуются средства просмотра программ. ;, .чг-'ИДзш улучшения структуры программ таню нвструюурные управляющие элементы, как операторы ~;.-;,"змг'-„'.безусловно~о перехода, заменяются условными операторами и циклами.. 584 'Кисть 'чгк1. Эволюция программного обеспечения ° Разбиение на модули реорганизует исюдные программы в совокупность модулей, объединяющих '' группу взаимосвязанных элементов. Благодаря этому программы легче понимать и изменять. ' ', ' ° Изменение данных применяегся в том случае, когда в наследуемой систвме шиникиот противоре- .' чия в управлении данными. Целью изменения данных может быль преобразование всех программ, дпя работы с единой базой данных. -, .' .'„, - '- ° Если данные нужно преобразовать в новый формат, стоимость замены данных резко возрастает Упражнения 28.1.

В каких случаях необходимо заменить старое ПО новым вместо его реинжениринга? 28.2. Сравните управляющие структуры (циклы и условные операторы) в двух любых известных вам языках программирования. Кратко опишите процесс перевода управляющих структур с одного языка иа другой. 28.3. Переведите процедуру, приведенную в листинге 28.4, в эквивалентную структурированную, выполнив все необходимые для этого действие. 28.4. Напишите ряд указаний по определению модулей в несгруктурированной программе. 28.5, Предложите значащие имена для переменных, каторые используются в листинге 28.4, и создайте словарь данных для этих имен.

28.6. Какие трудности возникнут при переносе данных из СУБД одного типа в СУБД другого типа (например, из иерархической базы данных в реляционную или из реляционной в объектноориентированную)? 28.7. Объясните, почему невозможно восстановить системную спецификацию путем автоматического юелиза исходного кода системы. 28.8. Приведите примеры для описания проблем, связанных с нарушением данных при их чистке. З),9. Проблема 2000 года (когда даты предсгавлевы с помощью двух цифр) стала одной из основных причин для многих организаций внести коррективы в сопровождение программ, Как зго повлияло на процесс изменения данных? Листинг 28.4. Неструктурированная программа копкьпе ВЯ (К, т, Я, 1.) В:= 1 ЫХТ: ЕЕ Я >= В доко ООЫ Ь=-1 досо ЯТР ООИг Ь := 1ЫТЕОЕК(В / Я) 1, г= 1ЫТЕЯЕК((В + Я) / 2) 1Е Т (Ь) = Х С)ъеп кекихп ТЕ т (Ь) > К Спеп доко ОКТ В:=Ь+1 досо ыхт дкт: я := ь-1 досо ыхт Ятг: епк) дй '",' ь е $: г' ц .Ъ С1 1:1 "~ 4~ ! гч з М~ф зн / ' ггг мр, 1~ "у4+~ г .' 1~11 г lст гв ге $ Управление конфигурациями ~ЦЫ2И,'Я~42~з ".' 'М»,'.

' . ф„„,.~фй~~Щ$ Цель настоясцей главы — описание процесса управле ния программным кодом и документацией модифи цируемых программных систем. Прочитав главу, вь должны: понимать значение уп разлепил кон фин рацией ПСс знать о четырех основных процессах управлениг конфигурацией: планироваггнс управления, управ ление изменениями, управление версилми и сбор кой системы; С1 иметь представление о применении СдзЕ средств для поддержки процесса уцравлениг конфигурацией.

МФР Муе1Ф' МЮ6МЖФ,.'~4 29.1. Планирование управления конфигурацией 29.2. Управление изменениями 29.3. Управление версиллги и выпусками 29.4. Сборка системы 29.5. САЯЕ. средства для управления конфигурацией 586 тХасть 7П. Эволюция программного обеспечения Управление конфи~рацией — это процесс разработки и применения стандартов и правил по управлению эволюцией программных продуктов. Эволюционирующие системы нукдаются в управлении по той простой причине, что в процессе их эволюции создается нссколько всрсий одних и тех жс программ. В эти версии обязательно вносится некого.

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

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

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

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