YourLib.net
Твоя библиотека
Главная arrow Информатика (Под общ. ред. А.Н. Данчула) arrow 3.5. Тенденции развития программного обеспечения
3.5. Тенденции развития программного обеспечения

3.5. Тенденции развития программного обеспечения

   Индустрия программного обеспечения ежедневно поставляет на рынок программных продуктов десятки, если не сотни новых программ, приложений, систем либо очередных модификаций, версий уже существующих программных средств. Даже специалисту в этой области достаточно сложно разобраться в таком множестве программного обеспечения. Для удовлетворения одних и тех же информационных потребностей пользователю предлагается, как правило, несколько десятков программных продуктов. Особенно ярко это проявляется при решении проблемы выбора того или иного программного продукта для новой информационной системы. Нередко перед проблемой выбора того или иного приложения оказывается и обычный пользователь. Одним из аспектов проблемы выбора является учет перспектив развития выбранного программного средства, которые во многом определяются общими тенденциями развития программного обеспечения. То, насколько при разработке того или иного приложения были учтены эти тенденции, во многом определяет его успех у пользователей. В свою очередь, знание тенденций развития в сфере программных средств позволяет пользователю более обоснованно выбрать то или иное приложение или систему.
   Основными тенденциями развития программного обеспечения являются:
   —  стандартизация как отдельных компонентов программных средств, так и интерфейсов между ними, которая позволяет использовать то или иное приложение на разных аппаратных платформах и в среде разных операционных систем, а также обеспечить его взаимодействие с широким кругом приложений;
   —  ориентация на объектно-ориентированное проектирование и программирование программных средств, что позволяет в совокупности с их стандартизацией перейти к новой технологии — технологии «сборки» того или иного приложения, ориентированного на конкретные потребности конкретного пользователя, из отдельных модулей-«кубиков», избегая тем самым ненужных пользователю функций. При этом снижаются объем и стоимость и повышается надежность «собранного» таким образом приложения (существующие офисные системы, например, используются абсолютным большинством обычных пользователей не более чем на 20 — 30%). Одновременно во многом снимается проблема модификации приложения при изменении информационных потребностей пользователя. Кроме того, ориентация на технологии «сборки» приложения в сочетании с возможностями сетевого доступа к этим приложениям как требуемым программным ресурсам позволяет в перспективе не приобретать в «личное пользование» то или иное приложение, а брать его во временную «аренду», снижая тем самым затраты на программное обеспечение;
   —  интеллектуализация интерфейса пользователя, обеспечение его интуитивной понятности, непроцедурности и приближение языка общения с компьютером к профессиональному языку пользователя; настройка интерфейса пользователя на особенности и потребности конкретного пользователя при организации его диалога с компьютером; использование средств мультимедиа при реализации интерфейса пользователя;
   —  интеллектуализация возможностей программ и программных систем; все шире при проектировании приложений используются методы искусственного интеллекта, что позволяет сделать приложения более «умными» и решать все более сложные, плохо формализуемые задачи;
   —  универсализация отдельных компонентов (модулей) прикладных программ и постепенный переход этих компонентов, а затем и самих программ из области специализированного прикладного ПО в область универсального прикладного ПО. Подобная ситуация сложилась с текстовыми процессорами, которые в свое время относились к специализированному прикладному ПО;
   —  ориентация на совместную, групповую работу пользователей при решении той или иной проблемы при помощи программных средств. В связи с этим при разработке ПО все большее внимание уделяется коммуникационным компонентам. Примером является включение в ОС Windows коммуникационных средств, обеспечивающих работу пользователя в сети Интернет;
   —  внедрение ПО в аппаратную составляющую технических средств (товаров) массового потребления — телевизоров, телефонов и т. п. Это, с одной стороны, повышает требования к надежности ПО, интерфейсу пользователя, а с другой — требует от пользователя в определенной мере более полных знаний как об основных понятиях ПО (файлы, папки и т. д.), так и о типичных действиях в программной среде;
   —  постепенный переход компонентов ПО, характерных для специализированного прикладного ПО, в универсальное прикладное ПО. Те программные средства, которые ранее были доступны специалистам в конкретной проблемной области, становятся доступны широкому кругу пользователей. Еще 15—20 лет назад текстовые редакторы были доступны в основном работникам подразделений, занимавшихся издательской деятельностью.
   Следует отметить, что указанные тенденции порождают еще одну: все более жесткие требования к качественным и количественным характеристикам аппаратных средств компьютеров. Однако в настоящее время потенциальные возможности аппаратуры пока превышают данные требования, что создает благоприятные условия для того, чтобы указанные тенденции в полной мере стали реальностью информационных технологий.
   Реализация той или иной тенденции связана и с определенными ошибками методологического характера, которые могут достаточно долго не восприниматься разработчиками как ошибки. Примером может служить излишняя интеллектуализация интерфейса пользователя, когда не отработанные до конца новые методы взаимодействия пользователя с компьютером пытаются скрыть угадыванием предполагаемых действий (потребностей) пользователя и немедленным выполнением угаданных потребностей, что часто приводит к обратному результату, вызывая у пользователя справедливое раздражение. Другим примером неудачной «интеллектуализации» является попытка отобразить в интерфейсе пользователя все возможные варианты его действий в той или иной ситуации. Появляющиеся в результате многоуровневые меню могут существенно снизить эффективность работы пользователя. Однако эти недостатки — проявление «болезни бурного роста» и внедрения информационных технологий во все сферы человеческой деятельности и, безусловно, будут преодолены в ближайшем будущем.

Выводы

   Реализация информационных процессов требует соответствующего программного обеспечения (программных средств), затраты на приобретение которого соизмеримы с затратами на аппаратное обеспечение.
   Различают три вида ПО: системное, прикладное и инструментальное. В основание классификации и соответственно определения этих видов ПО положена инвариантность (независимость) ПО по отношению к специфике той или иной проблемной области, в которой предполагается его использование.
   Типичным представителем системного ПО являются операционные системы (ОС), обеспечивающие эффективное использование аппаратно-программных ресурсов ЭВМ и предоставление пользователю дружественного интерфейса для работы на компьютере. Пользователь взаимодействует с программами только через «посредничество» ОС. Современные ОС, как правило, являются сетевыми.
   Прикладное программное обеспечение делится на универсальное и специализированное. Типичными представителями универсального прикладного ПО являются офисные системы, системы управления базами данных и системы искусственного интеллекта.
   Офисная система — совокупность приложений, обеспечивающих автоматизацию типичных функций организационного управления деятельностью офиса. Наиболее часто используемым приложением офисной системы являются текстовый и табличный процессоры. В офисной системе MS Office это соответственно MS Word и MS Excel.
   Данные, требующиеся для решения задач пользователя, структурируются и накапливаются в базах данных (БД). Структуру данных в БД для представления той или иной предметной области определяет модель данных. Выделяют четыре основных типа моделей данных: иерархическую, сетевую, реляционную и объектную. Для задачи создания, пополнения, модификации и поиска данных в БД используют систему управления базой данных (СУБД). При работе с БД в среде некоторой СУБД различают три уровня представления данных: концептуальный, внешний и внутренний. Пользователь работает с данными в среде СУБД на внешнем уровне представления данных. Наиболее важная из функций СУБД — предоставление в распоряжение пользователя языка запросов, посредством которого он выражает свои информационные потребности.
   Перспективным направлением является искусственный интеллект (ИИ) как совокупность средств и методов решения интеллектуальных задач на основе моделирования процессов выявления, представления и манипулирования знаниями с использованием средств вычислительной техники.
   Для автоматизации процессов разработки программного обеспечения предназначены инструментальные системы, к которым относятся системы программирования и CASE-системы.

Контрольные вопросы

   1.  Что является основой для классификации программного обеспечения?
   2.  Для чего нужна программная документация?
   3.  Что такое программная система?
   4.  Каковы признаки интегрированной программной системы?
   5.  Что такое интерфейс?
   6.  В чем различие интерфейсов пользователя и прикладного программирования?
   7.  К какому виду программного обеспечения относятся операционные оболочки?
   8.  Могут ли в приложении, относящемся к прикладному программному обеспечению, быть элементы, относящиеся к системному программному обеспечению?
   9.  Каково назначение сервисных программ?
   10.  Каково назначение операционной системы?
   11.  Какими параметрами характеризуется файл?
   12.  Возможна ли работа на компьютере без операционной системы.
   13.  Что такое переносимость операционной системы?
   14.  Дайте классификацию операционной системы Windows 98.
   15.  Чем отличается операционная среда от операционной оболочки?
   16.  Что такое WIMP-интерфейс?
   17.  Назовите примеры универсального и специализированного программного обеспечения.
   18.  Какие основные модели данных используются для представления информационных объектов и связей между ними?
   19.  Какая модель данных наиболее используема в настоящее время?
   20.  Что такое первичный ключ данных?
   21.  Дайте определение третьей нормальной формы.
   22.  Перечислите основные функции СУБД.
   23.  Какие направления исследований в области ИИ наиболее актуальны в настоящее время?
   24.  Что такое знания?
   25.  В каких режимах действует экспертная система?
   26.  Приведите примеры специализированного программного обеспечения.
   27.  Каковы тенденции развития программного обеспечения?
   28.  Каково назначение инструментальных систем?
   29.  Что входит в состав системы программирования?

Литература

   1.  Безручко В. Т. Практикум по курсу «Информатика». М.: Финансы и статистика, 2001. С. 7—73, 107—139, 169—207.
   2.  Вендеров А.М. CASE-технологии. М.: Финансы и статистика, 1999. С. 9-14, 27-34, 80-82.
   3.  Григорьев Ю.А., Ревунков Г.И. Банки данных. М.: МГТУ им. Н.Э. Баумана, 2002. С. 21—36,41-89.
   4.  Дорот В.Л., Новиков Ф.А. Толковый словарь современной компьютерной лексики. СПб.: БХВ-Петербург, 2001.
   5.  Информатика: Учебник / Под ред. проф. Н.В. Макаровой. М.: Финансы и статистика, 2002. С. 297-342, 381-391, 419—455, 465—484, 489-501, 561-574, 590-604.
   6.  Эдельман С.Л. Математическая логика. М.: Высшая школа, 1975. С. 8-14.

 
< Пред.   След. >