Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Задачи и процессы переноса программ и данных на иные платформы




 

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

- процессы переноса программ и данных из одной аппаратной, операционной и пользовательской среды в иную по архитектуре и характеристикам среду с сохранением их целостности или небольшими изменениями функций системы;

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

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

- обеспечение сохранения инвестиций, вложенных в реализованные и апробированные программные продукты и базы данных, в процессе развития, модификации и появления новых требований к ним, а также при совершенствовании архитектур и возрастании ресурсов и функций аппаратных и операционных платформ;

- снижение трудоемкости, стоимости и длительности непосредственной разработки сложных распределенных программных средств и баз данных;

- обеспечение высокого качества, надежности и безопасности функционирования программных средств и баз данных в системах;

- обеспечение возможности эффективного по экономическим показателям и качеству переноса апробированных программных продуктов, разработанных должным образом, с минимальными изменениями на различные операционные системы и аппаратные платформы;

- экономная реализация совместной работы и расширения функций ПС (интероперабельность) во взаимодействии с другими программами и данными при решении единой целевой задачи на различных локальных и распределенных платформах;

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

- снижения зависимости заказчиков конкретных систем от определенных поставщиков аппаратных и операционных платформ, а также от разработчиков некоторых программных продуктов.

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

- трудовые затраты специалистов и время, на создание, приобретение и эксплуатацию инструментальных средств, автоматизирующих разработку и сопровождение мобильных ПС и БД;

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

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

Задачи повторного использования и переноса программ и данных охватывают:

- встраивание готового программного средства и информации базы данных в создаваемую новую систему при условии, что их поставщики гарантируют функционирование на выбранной платформе;

- перенос программ и данных с платформ, в среде которых они были ранее реализованы, на выбранную для системы новую платформу;

- обеспечение доступа к информационным ресурсам других распределенных систем и сетей.

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

- системного анализа рентабельности переноса на иную или ту же платформу и оценки технико-экономических показателей этого процесса;

- реализации самого процесса переноса и интеграции с операционной и внешней средой на новой аппаратной платформе или в существующей среде;

- квалификационного тестирования, испытаний и комплексной проверки функционирования программного продукта в новом окружении или на новой платформе;

- сертификации перенесенного на новую платформу продукта и функционирующего в иной операционной и внешней среде;

- корректировки или дополнения эксплуатационной и технологической документации.

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

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

- программные модули и функциональные компоненты ПС;

- готовые (покупные) программные продукты и пакеты прикладных программ;

- крупные программные комплексы определенного функционального назначения;

- системы управления базами данных;

- файлы и информационные массивы баз данных;

- электронные документы на программы и данные.

Основные особенности повторного использования программ и данных в системах определяют две группы задач: структурирование программ и данных на стадиях анализа и проектирования систем, предполагающее последовательную декомпозицию заданных функций системы, что позволяет выделять компоненты, которые могут быть применены повторно как готовые, и описание их взаимодействия с другими компонентами; а также сборку или интеграцию компонентов и комплексное, квалификационное тестирование системы в целом. На обеспечение мобильности программ и данных направлена значительная часть методов и средств современной программной инженерии. Четкое разделение результатов работ, выполняемых на каждой стадии жизненного цикла ПС, и определенные условия переходов между этапами ЖЦ позволяют выделить следующие уровни переноса и повторного использования ПС:

- модели предметной области и спецификаций требований, возможно, реализуемые разными способами на этапе проектирования ПС;

- проектные спецификации требований на этапе разработки ПС;

- исходные тексты программ на языках программирования, применявшихся при разработке повторно используемых программных компонентов;

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

- структуры файлов и информация баз данных;

- тесты проверки функционирования компонентов, тесты проверки соответствия повторно используемых программ стандартизированным интерфейсам, комплексных тестов.

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

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

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

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

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

- при полной несовместимости платформ может потребоваться разработка всего комплекса программ заново (возможно, с использованием имеющихся спецификаций требований и методов реинженеринга);

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

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

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

Задачи и объекты, связанные с мобильностью ПС и БД в системах, и подлежащие рассмотрению при выборе методов и средств обеспечения переносимости, включают:

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

- языки программирования и инструментальные средства, поддержива-ющие создание переносимых ПС и БД систем и средства программной инженерии - CASE-системы;

- языки баз данных и системы управления базами данных;

- форматы данных, форматы внешних электронных сообщений;

- форматы переносимых электронных документов.

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

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

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

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

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

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

Процессы переноса программных средств и баз данных регламентируются рядом процедур и документов,стандартизированных в ISO 14764 ( п. 8.5), который детализирует требования к процессам переноса, определенным в базовом стандарте на жизненный цикл ПС (см. ISO 12207 п. 5.5.5). Специалисты, которые проводят перенос по рекомендациям этих стандартов, должны разработать план переноса, известить пользователей, обучить персонала, выдать предупреждения о завершении переноса, оценить влияние новой версии и внешней среды и архивировать соответствующие данные. Если систему или программный продукт (включая данные) переносят из старой в новую эксплуатационную среду, следует обеспечить, чтобы программный продукт и данные были корректно изменены при переносе. Для этого необходимо решить следующие основные задачи: определить все добавляемые или изменяемые программные компоненты, продукты или данные; проверить соответствие реализации конкретных задач, спецификациям требований заказчика на перенесенную версию ПС и БД.

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

- анализ и формирование требований к результатам переноса;

- разработка (или приобретение) инструментальных средств для выполнения переноса;

- настройка программного продукта и данных к новым условиям и среде эксплуатации;

- выполнение процессов переноса;

- верификация и тестирование результатов переноса;

- обеспечение последующей поддержки прежней среды и программного продукта.

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

Сопроводитель должен также представить пользователям план, процедуры и график (Программу) переноса и решить следующиезадачи:

- определить все компоненты, затрагиваемые переносом;

- отработать обратную связь и информацию с заказчиком и пользователями;

- определить специфику пользователей;

- опубликовать график (Программу) переноса.

Для плавного переходав новую среду, пользователями параллельно могут выполняться работы в прежней и новой среде с соответствующими версиями ПС и БД. Сопроводитель должен выполнить следующие работы по обучению персонала:

- определить требования по обучению для реализации переноса;

- запланировать реализацию требований по обучению переноса;

- выполнить проверку результатов обучения после выполнения переноса;

- обновить и откорректировать планы обучения.

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

Отчетными результатами работ по переносу ПС и БД являются:

- перенесенный программный продукт на новой платформе;

- план реализации переноса;

- инструментальные средства для переноса;

- извещения о намерениях по переносу;

- уведомление о завершении переноса;

- архивные данные процессов и результатов переноса.

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

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

При анализе баз данных, как объектов переноса, целесообразно рассматривать два компонента: системы управления данными (СУБД) и совокупность данных, упорядоченных по некоторым правилам. Простейший вариант переноса информации БД на иную аппаратную платформу реализуется, когда на обеих платформах имеются апробированные СУБД одного типа и версий. При этом считается, что отсутствуют дополнительные технические ограничения для размещения всей информации БД, и нет необходимости изменять и адаптировать её структуру на новой аппаратной платформе. В этом случае основные работы сводятся к переносу всего объема информации БД и к испытаниям после этого, функционирования СУБД на новой платформе, на соответствие документации исходной версии СУБД с перенесенной информацией. При этом трудоемкость и длительность создания БД на новой платформе определяются, в основном, работами по переносу информации БД и испытаниями новой системы.

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

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

- форматная совместимость характеризуется степенью соответствия данных в БД анализируемых платформ требованиям стандартов на форматы представления данных для документальных, фактографических, словарных или иных баз данных;

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

- физическая совместимость заключается в степени соответствия кодировки информации БД одинаковым стандартам на машиночитаемые носители информации.

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

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

 




Поделиться с друзьями:


Дата добавления: 2014-01-13; Просмотров: 771; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.063 сек.