Тенденции развития программного обеспечения
Основными тенденциями развития программного обеспечения являются:
— стандартизация как отдельных компонентов программных средств, так и интерфейсов между ними, которая позволяет использовать то или иное приложение на разных аппаратных платформах и в среде разных операционных систем, а также обеспечить его взаимодействие с широким кругом приложений;
— ориентация на объектно-ориентированное проектирование и программирование программных средств, что позволяет в совокупности с их стандартизацией перейти к новой технологии — технологии «сборки» того или иного приложения, ориентированного на конкретные потребности конкретного пользователя, из отдельных модулей-«кубиков», избегая тем самым ненужных пользователю функций.
При этом снижаются объем и стоимость и повышается надежность «собранного» таким образом приложения (существующие офисные системы, например, используются абсолютным большинством обычных пользователей не более чем на 20 — 30%). Одновременно во многом снимается проблема модификации приложения при изменении информационных потребностей пользователя. Кроме того, ориентация на технологии «сборки» приложения в сочетании с возможностями сетевого доступа к этим приложениям как требуемым программным ресурсам позволяет в перспективе не приобретать в «личное пользование» то или иное приложение, а брать его во временную «аренду», снижая тем самым затраты на программное обеспечение;
— интеллектуализация интерфейса пользователя, обеспечение его интуитивной понятности, непроцедурности и приближение языка общения с компьютером к профессиональному языку пользователя; настройка интерфейса пользователя на особенности и потребности конкретного пользователя при организации его диалога с компьютером; использование средств мультимедиа при реализации интерфейса пользователя;
— интеллектуализация возможностей программ и программных систем; все шире при проектировании приложений используются методы искусственного интеллекта, что позволяет сделать приложения более «умными» и решать все более сложные, плохо формализуемые задачи;
— универсализация отдельных компонентов (модулей) прикладных программ и постепенный переход этих компонентов, а затем и самих программ из области специализированного прикладного ПО в область универсального прикладного ПО. Подобная ситуация сложилась с текстовыми процессорами, которые в свое время относились к специализированному прикладному ПО;
— ориентация на совместную, групповую работу пользователей при решении той или иной проблемы при помощи программных средств. В связи с этим при разработке ПО все большее внимание уделяется коммуникационным компонентам. Примером является включение в ОС \Vindows коммуникационных средств, обеспечивающих работу пользователя в сети Интернет;
— внедрение ПО в аппаратную составляющую технических средств (товаров) массового потребления — телевизоров, телефонов и т.
п. Это, с одной стороны, повышает требования к надежности ПО, интерфейсу пользователя, а с другой — требует от пользователя в определенной мере более полных знаний как об основных понятиях ПО (файлы, папки и т. д.), так и о типичных действиях в программной среде;— постепенный переход компонентов ПО, характерных для специализированного прикладного ПО, в универсальное прикладное ПО. Те программные средства, которые ранее были доступны специалистам в конкретной проблемной области, становятся доступны широкому кругу пользователей. Еще 15—20 лет назад текстовые редакторы были доступны в основном работникам подразделений, занимавшихся издательской деятельностью.
Следует отметить, что указанные тенденции порождают еще одну: все более жесткие требования к качественным и количественным характеристикам аппаратных средств компьютеров. Однако в настоящее время потенциальные возможности аппаратуры пока превышают данные требования, что создает благоприятные условия для того, чтобы указанные тенденции в полной мере стали реальностью информационных технологий.
Реализация той или иной тенденции связана и с определенными ошибками методологического характера, которые могут достаточно долго не восприниматься разработчиками как ошибки. Примером может служить излишняя интеллектуализация интерфейса пользователя, когда не отработанные до конца новые методы взаимодействия пользователя с компьютером пытаются скрыть угадыванием предполагаемых действий (потребностей) пользователя и немедленным выполнением угаданных потребностей, что часто приводит к обратному результату, вызывая у пользователя справедливое раздражение. Другим примером неудачной «интеллектуализации» является попытка отобразить в интерфейсе пользователя все возможные варианты его действий в той или иной ситуации. Появляющиеся в результате многоуровневые меню могут существенно снизить эффективность работы пользователя. Однако эти недостатки — проявление «болезни бурного роста» и внедрения информационных технологий во все сферы человеческой деятельности и, безусловно, будут преодолены в ближайшем будущем.
Еще по теме Тенденции развития программного обеспечения:
- Программное обеспечение
- Богомазова Г.Н.. Установка и обслуживание программного обеспечения персональных компьютеров, серверов, периферийных устройств и оборудования, 2015
- Эд САЛЛИВАН. ВРЕМЯ — ДЕНЬГИ Создание команды разработчиков, программного обеспечения, 2001
- Том ДеМарко. Вальсируя с Медведями Управление рисками в проектах по разработке программного обеспечения, 2005
- Алистэр Коуберн. Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения, 1999
- § 2. Основные тенденции конституционного развития
- 6.4. Тенденции развития института современной семьи
- Тенденции развития мирового телевидения: а)
- 3. Основные тенденции развития обязательственного права
- 6. Тенденции развития современного российского законодательства
- Тенденции конституционно-правового развития современных государств
- 5. Современные тенденции развития американского права
- Основные тенденции конституционного развития в современный период