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

Тенденции развития программного обеспечения
Программное обеспечение как товар. Создание программного обеспечения для персональных компьютеров за какой-то десяток лет превратилось из занятия программистов-одиночек в важную и мощную сферу промышленности. Только в США более 50 фирм - производителей программного обеспечения имеют объемы продаж более 10 млн. дол., а у десяти из них (в частности, Microsoft, Lotus, Novell, Borland, Autodesk, Symantec и Computer Associates) объемы продаж превышают 100 млн. дол. Поэтому развитие программного обеспечения, предназначенного для широкого круга пользователей, происходит уже не в состязании индивидуальных программистов, а в процессе ожесточенной конкурентной борьбы между фирмами-производителями программного обеспечения. Доля некоммерческого программного обеспечения постоянно снижается и все более ограничивается программами, создаваемыми в процессе научных исследований или для собственного удовольствия.
Важнейшие свойства программ. При разработке коммерческих программ основной задачей фирм-разработчиков является, естественно, обеспечение их успеха на рынке. Для этого необходимо, чтобы программы обладали следующими качествами:
* функциональность программы, т.е. полнота удовлетворения ею потребностей пользователя;
* наглядный, удобный, интуитивно понятный и привычный пользователю интерфейс (т.е. способ взаимодействия программы с пользователем);
* простота освоения программы даже начинающими пользователями, для чего используются информативные подсказки, встроенные справочники и подробная документация;
* надежность программы, т.е. устойчивость ее к ошибкам пользователя, отказам оборудования и т.д., и разумные ее действия в этих ситуациях.
Стандартизация. Во многих областях совместная работа различных производителей программного обеспечения приводит к стандартизации отдельных элементов интерфейса программ, форматов данных и т.д., что весьма удобно для пользователей. Это происходит прежде всего потому, что разработчики программ перенимают друг у друга удачные находки и приемы и стремятся обеспечить совместимость с другими наиболее популярными программами. В результате использования ниспадающих (pull-down) меню или вид таблицы табличного процессора будут приблизительно одинаковыми во всех программах, хотя они созданы различными разработчиками, подобно тому, как похожи кнопки в лифтах, изготовленных разными заводами.
Удобство пользовательского интерфейса программ является важнейшим фактором, определяющим приемлемость программы для пользователей, а значит, и ее успеха на рынке. Большинство выпускаемых на рынок программ используют достаточно стандартные методы организации интерфейса: ниспадающее меню, панели для выбора ответа, встроенные диалоговые справочники и т.д. Как правило, пользователь может работать не только с клавиатурой, но и с мышью. В последнее время все большее количество программ используют графический пользовательский интерфейс (graphical user interface, GUI), в котором, в частности, для упрощения работы пользователя вместо надписей на экране употребляются рисунки (пиктограммы). При этом графический интерфейс используется не только в таких программах, как графические редакторы или издательские системы, но и в табличных процессорах, текстовых редакторах и т.д. Многие из программ с графическим интерфейсом работают под управлением системы Windows.
Увеличение мощности программ. Важнейшей тенденцией развития программного обеспечения является неуклонное увеличение их мощности - программы могут обрабатывать большие количества данных, делать это быстрее, предоставляют пользователю больше выполняемых функций и т.д. Таким образом, разработчики программного обеспечения используют возможности, появляющиеся из-за увеличения мощности компьютеров. Весьма заметно и стремление к интеграции функций программного обеспечения. Например, в табличный процессор включаются функции базы данных, в издательскую систему - функции текстового редактора и т.д.
Оборотной стороной увеличения мощности программ является повышение их требований к аппаратуре. Например, программы, работающие под управлением Windows, нельзя использовать на 486, требуется компьютер не ниже класса Pentium, для сносного быстродействия при этом необходим компьютер с микропроцессором 100 Mhz и 16 Мбайта памяти, а для комфортной работы - 200 Mhz и 32 Мбайт оперативной памяти. Для многих программ необходимы оперативная память не менее 16 Мбайт, графический монитор класса не ниже VGA, хорошая графическая плата и т.д.
Коммерческие разновидности программ
В настоящее время большинство программ распространяется на коммерческой основе. Для приобретения таких программ необходимо вначале заплатить за них определенную сумму денег. Такие программы называются коммерческими.
Существуют и такие программы, которые распространяются бесплатно. Чаще всего эти программы написаны каким-нибудь опытным программистом для себя, затем переданы для общего пользования. Такие программы называются бесплатными (freeware). Иногда разработчики программы указывают, что их программа является бесплатной для индивидуальных пользователей, но для использования в организациях должна покупаться соответствующая лицензия.
Промежуточное положение между бесплатными и коммерческими программами занимают условно-бесплатные программы (shareware). Эти программы можно получить и опробовать бесплатно, но для систематического их использования необходимо уплатить разработчикам или распространителям программы определенную сумму.
Нумерация версий программ
Программы, которые нашли популярность у пользователей, как правило, совершенствуются разработчиками: в них исправляются ошибки, включаются новые возможности и т.д. Чтобы сохранить преемственность, получившимся программам не дается какое-то другое имя, а вместо этого они называются версиями исходных программ.
По установившейся традиции версии программ обозначаются числами вида 1.00, 3.5 и т.д., т.е. десятичных дробей в американской записи. Номер версии обычно указывается после названия программы, например Windows 3.0 (читается "три ноль"). При этом существенные изменения в программах отражаются увеличением цифры до точки, незначительные изменения или исправления ошибок - увеличением цифр, стоящих после точки. Например, первоначальная версия программы обозначается 1.0, версия с некоторыми улучшениями - 1.1, а после внесения существенных дополнений новая версия программы будет иметь номер 2.0.
Также существует нумерация программ по годам, например: Windows 98 - версия, выпущенная в 98 году.
Большинство фирм-разработчиков программ продают на льготных условиях (а иногда даже предоставляют бесплатно) новые версии своих программ тем, кто ранее приобрел одну из предшествующих версий. Например, программа может стоить 400 дол., а для владельцев предыдущих версий - 50 дол.

  • 8. Требования преподавателя
  • 2. Тезисы лекций
  • Тема 1. Информатика – предмет и задачи. Основные категории и понятия информатики
  • Роль информатики в информационном обществе
  • Тема 2. Начала общей теории информации. Понятие информации.
  • Тема 3. Арифметические основы информатики. Формы представления информации. Системы счисления. Действия в различных системах счисления.
  • Тема 4. Логические основы информатики
  • Тема 5 . Архитектура персонального компьютера. Информационно-логические основы построения
  • Тема 6. Алгоритмические основы информатики
  • 6.1 Понятие алгоритма, его основные свойства
  • 6.2. Машина Тьюринга и машина Поста
  • Устройство машины Тьюринга
  • Описание машины Тьюринга
  • Тема 7.Основные конструкции программирования. Структурное программирование. Процедурное программирование. Объектно-ориентированное программирование.
  • Тема 8. Состояние и тенденции развития программного обеспечения
  • Тема 9. Операционные системы. Роль операционной системы в организации работы пользователя на персональном компьютере. Операционные системы и их основные функции
  • Классификация ос
  • Тема 10. Операционная система ms-dos
  • Тема 11. Операционные системы Windows. Концепция операционных систем Windows.
  • Объекты Windows
  • Тема 12. Сервисное программное обеспечение. Общие сведения об архивации файлов. Программы-архиваторы.
  • Программы архивирования данных
  • Тема 13. Прикладные программные продукты. Классификация прикладного программного обеспечения.
  • Тема 14. Тестовый процессор ms Word
  • 14.1. Система обработки текстов (основные возможности, классификация). Ms Word. Элементы экрана.
  • Установка основных параметров шрифта
  • 14.2. Оформление текста. Работа с таблицей. Вставка файла, рисунка. Редактор формул ms Equation.
  • Математические операторы и операторы сравнения
  • Тема 15. Табличный процессор ms Excel
  • 15.1. Назначение основные возможности Excel. Элементы экрана
  • Добавление пиктограмм в одно из пиктографических меню
  • Рабочие таблицы Excel предназначены для анализа данных, представленных в строках и столбцах. Они хранятся в файлах, которые называются рабочими книгами.
  • 15.2. Режим вычисления. Оформление таблиц. Оформление таблиц. Печать. Диаграмма.
  • 15.3. Работа с большими таблицами. Справочная система ms Excel.
  • Тема 16. Использование спп Power Point для создания бизнес плана. Информационные системы (ис). Создание презентации. Оформление.
  • Тема 17. Основы технологии работы в субд ms Access
  • Тема 18. Сеть Internet и ее применение. Основные понятия Internet. Программа Internet Explorer. Поиск информации. Поисковые системы. Почта.
  • Тема 19. Компьютерные вирусы и приемы борьбы с ними (понятие компьютерного вируса, средства защиты, методика защиты).
  • Лабораторная работа №4 Создание прайс-листа счёта
  • Лабораторная работа №5 Статистические расчеты Microsoft Excel.
  • Пуск – Программы - Microsoft Access
  • 2.1.1 Запрос, отбирающий данные из одной таблицы по условию
  • 2.2 Запросы, которые отбирают данные из нескольких таблиц
  • 2.3 Модификация данных с помощью запросов
  • 2.3.1 Запросы, которые изменяют значение группы записей
  • Тема: Создание форм
  • 3.1 Создание форм для просмотра и ввода данных
  • 3.2.Создание форм с подчиненной формой
  • Краткое описание семинарских и практических занятий (планы, задания для проведения семинарских и практических занятий, срсп, срс)
  • Задания для самопроверки и подготовки к экзамену, в том числе тесты
  • В) объединение
  • 6. Перечень основной и дополнительной литературы, в том числе на электронных носителях
  • Дополнительная литература
  • Справочная литература
  • Нормативная литература
  • Глоссарий
  • Тема 8. Состояние и тенденции развития программного обеспечения

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

    Программное обеспечение (softwаrе) на данный момент составляет сотни тысяч программ, которые предназначены для обработки самой разнообразной информация с самыми различными целями.

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

      аппаратная часть автономных компьютеров и сетей ЭВМ;

      функциональные задачи различных предметных областей;

      технология разработки программ.

    Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов, представленных на рисунке:

    Системное программное обеспечение – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ.

    Пакет прикладных программ – комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области.

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

    Тема 9. Операционные системы. Роль операционной системы в организации работы пользователя на персональном компьютере. Операционные системы и их основные функции

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

    Большинство пользователей имеет опыт эксплуатации операционных систем , но тем не менее они затруднятся дать этому понятию точное определение. Давайте кратко рассмотрим основные точки зрения.

    Операционная система как виртуальная машина

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

    Архитектура большинства компьютеров на уровне машинных команд очень неудобна для использования прикладными программами. Например, работа с диском предполагает знание внутреннего устройства его электронного компонента – контроллера для ввода команд вращения диска, поиска и форматирования дорожек, чтения и записи секторов и т. д. Ясно, что средний программист не в состоянии учитывать все особенности работы оборудования (в современной терминологии – заниматься разработкой драйверов устройств), а должен иметь простую высокоуровневую абстракцию, скажем представляя информационное пространство диска как набор файлов. Файл можно открывать для чтения или записи, использовать для получения или сброса информации, а потом закрывать. Это концептуально проще, чем заботиться о деталях перемещения головок дисков или организации работы мотора. Аналогичным образом, с помощью простых и ясных абстракций, скрываются от программиста все ненужные подробности организации прерываний , работы таймера, управления памятью и т. д. Более того, на современных вычислительных комплексах можно создать иллюзию неограниченного размера оперативной памяти и числа процессоров . Всем этим занимается операционная система . Таким образом, операционная система представляется пользователю виртуальной машиной , с которой проще иметь дело, чем непосредственно с оборудованием компьютера.

    Операционная система как менеджер ресурсов

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

    Операционная система как защитник пользователей и программ

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

    Операционная система как постоянно функционирующее ядро

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

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

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

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

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

    Основными функциями операционных систем являются:

      обеспечение операций по обмену данными между выполняющейся программой и внешними устройствами;

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

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

      организация хранения и поиска программ и данных на внешних носителях;

      организация взаимодействия пользователя и операционной системы – прием и выполнение команд пользователя;

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

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

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

    «Программное обеспечение для компьютера» - Общение человека с компьютером стало простым, наглядным, понятным. Прикладные программы, непосредственно обеспечивающие выполнение необходимых пользователям работ; Системные программы - служат для управления ресурсами компьютера. Все программы, работающие на компьютере, можно условно разделить на три категории:

    «Программное обеспечение ПК» - Приложения функционируют под управлением определенной ОС. ПО высокого уровня. Программная конфигурация ПК многоуровневая (от низкого уровня к высокому). Обучающие программы для самообразования или в учебном процессе. Иерархия программного обеспечения. Человек. Системы программирования являются инструментами создания прикладных программ.

    «Свободные программы» - Свобода запускать программу с любой целью (свобода 0). Обычно проприетарным называют любое несвободное ПО. Другую категорию представляют так называемые пробные или "триальные" программы. В большинстве случаев - для коммерческого использования. По окончании срока действия за программу надо заплатить.

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

    «Компьютерные программы» - Существуют различные типы компьютерных программ. Компьютерные программы. Сегодня наиболее популярными операционными системами являются программы семейства Windows . Даже оживить картинки! А наука о составлении программ для компьютера называется программированием. Операционная система организует работу всех частей и всех программ компьютера.

    «ПО в компьютере» - Системы автоматизированного проектирования (САПР) или CAD (англ. Группа Фик. Трансляторы реализуются в виде компиляторов или интерпретаторов. Представители графических редакторов – программы Adobe Photoshop, Corel Draw. Система программирования. Графические редакторы позволяют создавать и редактировать рисунки.

    Всего в теме 33 презентации

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

    Основными тенденциями развития программного обеспечения являются:

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

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

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

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

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

    Универсализация отдельных компонентов (модулей) прикладных программ и постепенный переход этих компонентов, а затем и самих программ из области специализированного прикладного ПО в область универсального прикладного ПО.

    Подобная ситуация сложилась с текстовыми процессорами, которые в свое время относились к специализированному прикладному ПО;

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

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

    Постепенный переход компонентов ПО, характерных для специализированного прикладного ПО, в универсальное прикладное ПО. Те программные средства, которые ранее были доступны специалистам в конкретной проблемной области, становятся доступны широкому кругу пользователей. Еще 15-20 лет назад текстовые редакторы были доступны в основном работникам подразделений, занимавшихся издательской деятельностью.

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

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

    Еще по теме Тенденции развития программного обеспечения:

    1. Богомазова Г.Н.. Установка и обслуживание программного обеспечения персональных компьютеров, серверов, периферийных устройств и оборудования, 2015

    Преобладающими в развитии программного обеспечения являются следующие тенденции:

    1. Наглядный, удобный, привычный и интуитивно понятный пользователю интерфейс .

    2. Упрощение работы пользователя , которая обеспечивается за счет ужесточения требований к ресурсам ПК.

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

    4. Функциональность программ , т.е. полнота удовлетворения потребностей пользователя.

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

    6. Объединение противоречивых свойств : универсализация и специализация.

    7. Надежность программ, т.е. устойчивость к ошибкам пользователя, отказам оборудования и т.д.

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

    Разработчики программ перенимают друг у друга удачные приемы и стремятся обеспечить совместимость с другими популярными программами.

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

    Компания IBM работает над расширением возможностей существующих операционных систем. Исследование направлено на создание самооптимизирующейся, самонастраиваемой, самовосстанавливающейся системы, сходной с нервной системой человека.

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

    1. Программы-органайзеры

    2. Уровни внедрения информационных технологий в делопроизводство

    3. Основные функции корпоративной электронной системы управления документами

    4. Программа Microsoft Outlook

    5. Средства Microsoft Outlook для организации рабочего места

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


    ТЕМА 11. системы программирования

    Вопросы

    1. Этапы решения задач на компьютере

    2. Алгоритм

    3. Инструментальные средства программирования

    4. Технологии программирования



    1. ЭТАПЫ РЕШЕНИЯ ЗАДАЧ НА КОМПЬЮТЕРЕ

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

    1. Постановка задачи

    2. Разработка математической модели

    3. Разработка алгоритма

    4. Составление программы

    5. Отладка программы

    6. Тестирование программы

    7. Проведение расчетов

    8. Анализ результатов

    9. Сопровождение программы

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

    · организационно-экономическую сущность задачи;

    · информацию, связанную с ней;

    · описание алгоритма и контрольный пример для ее решения.

    Для решения задачи должна быть разработана математическая модель и выбран метод решения. Критерии выбора метода:

    · обеспечение наименьшего времени решения задачи;

    · возможность использования метода при существующем объеме памяти компьютера;

    · обеспечение нужной точности вычислений;

    · возможность использования готовых программных средств.

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

    Составление программы , то есть программирование – запись алгоритма в форме, воспринимаемой компьютером.

    Отладка – выявление и исправление ошибок в программе.

    Тестирование – «прогон» программы на наборах реальных данных, подготовленных специалистами предметной области в качестве контрольного примера.

    После отладки программы проводятся расчеты непосредственное решение задачи на компьютере для конкретного варианта исходных данных.

    Анализ полученных результатов проводится специалистами соответствующейпредметной области.

    Сопровождение программы выполняют ее разработчики в течение определенного периода.

    2. АЛГОРИТМ

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

    Оператор (инструкция)– совокупность символов, указывающих операцию и значение или местонахождение ее операндов. Например : delete s;

    Операнд – объект, над которым выполняется операция в компьютере.

    Машинная команда – оператор, опознаваемый и выполняемый техническими средствами компьютера.

    Процесс составления программы называется программированием .

    Основные способы (средства) представления (записи) алгоритмов:

    1. Словесный

    2. Графический (блок-схемы)

    3. Языки программирования.

    Запись алгоритма с помощью алгебраических символов и словесного текста называют словесной .

    Например . Алгоритм Евклида – нахождение наибольшего общего делителя Н двух положительных чисел: А и В.

    1. Сравнить А и В:

    · если А = В, то Н = А и перейти к третьему шагу;

    · если А < В, то поменять А и В местами, и перейти к следующему шагу;

    · если А > В, то перейти к следующему шагу.

    2. Найти А = А–В и перейти к первому шагу.

    3. Процесс вычислений прекратить.

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

    Язык программирования – язык, предназначенный для записи программ и описания данных.

    Имеются следующие типы алгоритмических процессов:

    1. Линейные

    2. Ветвящиеся

    3. Циклические

    Линейные процессы : алгоритм представляется в виде линейной последовательности операций (рис.11.1).

    Пример : Найти С=S/n.

    Рис.11.2. Алгоритм ветвящегося процесса

    При решении реальных задач некоторые участки в них повторяются несколько раз. Многократно повторяющийся участок называют циклом , а вычислительные процессы, содержащие циклы, – циклическими . Если внутри цикла содержатся другие циклы, такой цикл называется кратным (сложным), в противном случае – простым . Общее число вложений циклов называется кратностью вложения (рис. 11.3).

    Пример : найти квадраты N чисел.

    N=1
    Вывод N, K
    Конец
    Нет
    N=N+1
    даа

    Рис.11.3. Алгоритм циклического процесса

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