Применение программного обеспечения информационных систем. Информационная система

29.07.2019 Роутеры и модемы

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

Компьютер обрабатывает данные, представленные в формализованном виде – в виде чисел. Формализация данных является важнейшей составляющей работы информационных систем. Примером формализованных данных является представление результатов деятельности компании в виде наборов числовых таблиц: финансовые отчеты, баланс, денежные транзакции, платежи, оперативные сводки о выполнении суточных заданий, заказы, накладные и т. д. Действия с формализованными данными легче автоматизируются и могут проходить практически без участия человека. При заполнении матриц используется метод сценариев, строящихся по принципу "что, если…?" с помощью систем поддержки принятия решения (Decision Support System – DSS) .

Значительная часть данных, особенно на верхнем уровне управления, бывает неформализованной – политические новости, сведения о партнерах и конкурентах, информация с фондовых и валютных бирж, сводные неформальные отчеты по периодам, деловая переписка, протоколы встреч, семинаров, научные публикации и обзоры, гипертексты в Интернете. Такие данные наиболее трудно формализуемы, но их анализ является обязательной составляющей деятельности высшего руководителя. В этом случае основная тяжесть в принятии решения и ответственность за его результаты лежит на руководителе – здесь огромную роль играют его знания, деловой опыт, компетенция и интуиция. Компьютерные, информационные экспертные системы (Expert System – ES) только дополняют эти качества.

Если данные являются недостаточно структурированными и фрагментированными среди разнообразных платформ, операционных систем, различных СУБД и приложений, то особенно важным процессом является концентрация по некоторым согласованным правилам этих данных в массивы, называемые метаданными (Metadata). Решения для управления метаданными предоставляют расширенные возможности доступа к массивам структурированных данных вместе с отображением их взаимоотношений с другими массивами информации. Использование специальных хранилищ – репозиториев (Repository) – также может рационализовать или придать смысл этим данным за счет идентификации и сравнения.


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

Не все необходимые данные присутствуют в ИС в явном виде. Полезную информацию приходится искать среди большого количества дополнительных данных, и этот процесс называется извлечением данных (Data Mining – DM) .

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

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

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

- системы генерации отчетов для формального представления информации (например, программный продукт Crystal Reports компании Crystal Decisions, предназначенный для создания корпоративной отчетности);

- аналитические системы для сложного динамического анализа данных;

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

- решения по разработке КИС-приложений (Enterprise Information System Applications – EISA), предназначенные для создания инструментальных панелей руководителя и аналитических приложений для добычи данных.

В самом общем виде задачи руководителя можно свести к пяти ключевым вопросам: где мы находимся? чего мы хотим достичь? как мы туда попадем? сколько времени и ресурсов на это потребуется? сколько это будет стоить?

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

Современные ИС при поиске ответов на поставленные вопросы позволяют аналитику формулировать и решать задачи нижеследующих классов:

- Аналитические – вычисление заданных показателей и статистических характеристик бизнес-деятельности на основе ретроспективной информации из баз данных.

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

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

- Имитационные – проведение на ЭВМ экспериментов с формализованными (математическими) моделями, описывающими поведение сложных систем в течение заданного или формируемого интервала времени. Задачи этого класса применяются для анализа возможных последствий принятия того или иного управленческого решения (анализ "что, если?...").

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

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

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

Современная компания с разветвленным бизнесом, как правило, имеет:

- системы поддержки деятельности руководителя (Executive Support Systems – ESS) на стратегическом уровне;

- управляющие информационные системы (Management Information Systems – MIS) и системы поддержки принятия решений (Decision Support Systems – DSS) на среднем управленческом уровне;

- рабочие системы знания (Knowledge Work System – KWS) и системы автоматизации делопроизводства (Office Automation Systems – OAS) на уровне знаний;

- системы диалоговой обработки транзакций (Transaction Processing Systems – TPS) на эксплуатационном уровне.

Системы диалоговой обработки транзакций (TPS) – базовые системы, обслуживающие исполнительский (эксплуатационный) уровень организации. Это компьютеризированная система для автоматического выполнения большого числа транзакций (Transactions), составляющих стандартный бизнес-процесс этого уровня. Примеры – коммерческие расчеты, заказы, регистрация продаж, заполнение стандартных форм, платежных ведомостей, отчетов. На этом уровне цели, задачи, ресурсы точно определены, их выполнение связано с минимальным риском, данные, как правило, формализованы. Правила очень жесткие, и решения всегда структурированы. Соответствие критериям и шаблонам должно быть полным. Объемы обрабатываемых данных велики, но потоки и структура данных (Data Flow and Data Structure) четко идентифицированы и легко контролируются автоматизированными средствами.

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

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

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

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

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

Классификация ПО

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

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

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

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

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

Выставка «Связь»

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

На площади в более чем 31 тысячу квадратных метров будет размещено порядка более 300 компаний экспонатов из многих стран мира. Пять конференционных потоков, 40 дискуссионных мероприятий, мастер-классы, медиа-коммуникационный форум - это лишь часть того, в чем каждый посетитель сможет поучаствовать на выставке «Связь», проходящей в самом центре Москвы в ЦВК «Экспоцентр».

windows программный компьютер операционный

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

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

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

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

Системное , которое в свою очередь можно разделить на:

базовый уровень (firmware) - это те программы, которые отвечают за взаимодействие с базовыми аппаратными средствами и хранятся (записаны) в специальных микросхемах ПЗУ(ROM). Эти программы еще называются драйверами и их совокупность образует базовую систему ввода-вывода (BIOS). Обычно микросхемы ПЗУ BIOS в ПК расположены на материнской плате.

операционные системамы(ОС) - набор программ, которые обеспечивают взаимодействие прочих программ с базовыми программами, аппаратными средствами и предоставляют интерфейс управления компьютером человеку. Операционных система состоит из: а) программ ввода / вывода б) программ для управления файловой системой и планирования задания компьютера в) процессора командного языка, который принимает, анализирует и выполняет команды, адресованные операционной системе. В качестве примеров современных ОС можно привести различные Windows (98, 2000, XP, Vista, Seven, Pocket PC, Windows CE), MS-DOS, разработанные компанией MicroSoft, Unix подобные ОС (UnixWare, SunOS, Solaris, BSD, Linux) от различных производителей и свободно распространяющиеся, OS/2 и ее модификации от IBM, Mac OS и производные от Apple, ОС для карманных ПК, мобильных устройств (Symbian OS например) и многие другие. Место операционной системы в структуре компьютера можете увидеть на рис. 1.

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

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

Текстовые редакторы и процессоры - ввод и редактирование (форматирование) текстовых данных и элементов графики (например, MS Wordиз пакета MS Office);

Графические редакторы - создание и обработка графических изображений. Различают три категории: растровые, векторные и редакторы трёхмерной графики 3D (например, пакеты программ Adobe PhotoshopCorelDraw Graphics); или

Системы управления базами банных (СУБД) - организация массивов данных, управление ими и обеспечение взаимодействия с другими программами (например, MS Access из пакета MS Office);

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

Редакторы таблиц - управление данными в виде таблиц (например, MS Excel из пакета MS Office);

WEB редакторы - для создания и управления документов для сети Internet, обладают рядом полезных функция для удобства пользователей в создании Web страниц и документов в HTML (например, Adobe Dreamweaver);

Архиваторы данных - программы для сжатия различных видов документов и файлов, для уменьшения их размера, и управления архивами (например, WinRAR архиватор для Windows);

WEB браузеры - средства просмотра WEB страниц и воспроизведения текста, графики, видео, музыки, а также работа с электронной почтой (например Internet Explorer отMicrosoft);

Системы автоматизированного проектирования (СAD) - для автоматизации проектно-конструкторских процессов (например, AutoCAD);

Проигрыватели и медиаплееры - программы и кодеки для воспроизведения медиа контента - видео, музыки в различном формате и стандарте (например, проигрыватель Winows Media);

Системы графического (видео монтажа) - программы для работы с видеофайлами, кадрирования, спецэффектами (например, Windows MoveMaker);

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

Антивирусы и брандмауэры - программы для защиты от вирусов, троянских программ, управления доступом к портам компьютера, защите от хакерских атак и др. проникновений со стороны сети (например, антивирусная программа NOD32 от ESET);

Музыкальные редакторы - программы для создания музыкальных композиций на компьютере (например WaveLab);

Игровые программы и др. развлекательные программы - развлекательного характера программы 3D графического и другого характера (например, множество современных игр для настольных ПК и игровых приставок);

Геоинформационные системы - для работы с картами, аерофотоснимками, геодезических работ (например, GIS-lab);

Системные программы для работы с различными периферийными устройствами, управления дисками, резервного копирования, восстановления данных (например, Acronis Disk Doctor);

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

Программы для передачи мгновенных сообщений (ISQ клиенты) и передачи онлайн видео для общения пользователей, а текже передачи текста, файлов (например, Skype);

Программы для записи данных на CD, DVD, Blu-Ray носители (например, пакет NERO);

Многие другие развлекательные, научные, системные программы.

Инструментальное программное обеспечение - программное обеспечение, предназначенное для использования в ходе проектирования, разработки и сопровождения программ. Среди них можно выделить:

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

компиляторы - программы, переводящие текст программы на языке высокого уровня в эквивалентную программу на машинном языке;

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

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

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

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

и другие виды инструментального ПО.

Примерами инструментального ПО являются:

Borland Delphi - предназначен для решения практически любых задачи прикладного программирования;

Borland C++ Builder - это отличное средство для разработки DOS и Windows приложений;

Microsoft Visual Basic - это популярный инструмент для создания Windows-программ;

Microsoft Visual C++ - это средство позволяет разрабатывать любые приложения, выполняющиеся в среде ОС типа Microsoft Windows.

По методу распространения программное обеспечение делится на:

1. Проприетарное (proprietary software) - объект авторского права, которое является частной собственностью. Правообладатель такого ПО сохраняет за собой монополию на него и предоставляет лишь право на на установку, использование, доступ, отображение, запуск или любое другое взаимодействие с программным обеспечением.

По степени проприетарности ПО различают:

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

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

Freeware - вид сходен с коммерческим видом, но разрешено бесплатное использование.

Коммерческое бесплатное ПО с открытым исходным кодом, но без возможности производных продуктов.

Copyleft (open source) - то же, что «коммерческое бесплатное с открытым исходным кодом», но лишено ограничений на создание и публикацию производных продуктов, кроме одного - исходный код производного продукта обязан быть открыт. При копилефте всепроизводные произведения должны распространяться под той же лицензией, что и оригинальное произведение. Самой известной и распространённой копилефт-лицензией является GNU GPL. Такое ПО обычно называют открытое или свободным.

BSD License (public domain) - то же, что и copyleft, но лишено даже ограничения на создание производных продуктов с открытым кодом.

В любом этом виде ПО, кроме public domain существует понятие «правообладатель».

  • 2. Открытое (open source software) - программные продукты с открытым программным кодом, которые доступен для просмотра, изменения, что позволяет принять участие в доработке и исправлении ошибок в программном продукте и создания нового ПО - через заимствование исходного кода, если это позволяет лицензия, или через изучение использованных алгоритмов, структур данных, технологий, методик и интерфейсов. Свободная лицензия позволяет использовать исходный код программы для своих нужд с минимальными ограничениями. Открытое ПО не обязательно должно быть бесплатным, тем не менее, большинство открытого ПО - бесплатное.
  • 3 Свободное программное обеспечение (free software) - широкий спектр программных решений, в которых права пользователя («свободы») на неограниченные установку, запуск, а также свободное использование, изучение, распространение и изменение(совершенствование) программ защищены юридически авторскими правами при помощи свободных лицензий например таких как, GNU General Public License или BSD License. Обычно говоря free software имеют ввиду что такое ПО бесплатно и может свободно распространяться. Свободное программное обеспечение, в любом случае, может свободно устанавливаться и использоваться на любых компьютерах. Использование такого ПО свободно везде: в школах, офисах, вузах, на личных компьютерах и во всех организациях и учреждениях, в том числе, и на коммерческих и государственных.

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

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

УЧЕБНЫЙ ПЛАН СПЕЦИАЛЬНОСТИ "1-40 01 73 ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ"

Технические средства информационных систем

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

Основы алгоритмизации и программирования на языках высокого уровня

Теоретические основы алгоритмизации и программирования: основы теории алгоритмов и технологии программирования. Общая характеристика языка программирования высокого уровня, структура программы, типы данных, операции и выражения, ввод и вывод данных, операторы управления вычислительным процессом, подпрограммы. Дополнительные возможности изучаемого языка высокого уровня (динамическое распределение памяти, указатели и т.п.). Программирование и отладка класса разветвляющихся и циклических алгоритмов. Курс построен на базе С++ Visual Studio.

Архитектура операционных систем

Понятие, назначение и функции операционной системы (ОС). Понятие ресурса, ОС как система управления ресурсами. Классификация и характеристики современных ОС. Принципы построения и архитектура ОС (ядро и вспомогательные модули, монолитная, слоистая, на основе микроядра и др. типы архитектур ядра). Организация пользовательского интерфейса. Понятие и реализации прикладного программного интерфейса. Совместимость и прикладные программные среды. Виртуальная машина Java. Архитектура управляемой программной среды на базе.Net. Понятие процесса и потока. Управление процессами и потоками, алгоритмы распределения процессорного времени. Взаимодействие процессов, гонки, синхронизация, проблема тупиков. Управление памятью. Виртуальная память, трансляция адреса, алгоритмы управления виртуальной памятью. Виртуальная память и обмен данными между процессами. Управление вводом-выводом, многослойная структура подсистемы ввода-вывода. Понятие, организация и задачи файловой системы. Логическая структура и операции с файлами. Физическая организация файла. Файловые системы Windows и UNIX. Проецирование файлов программ и данных на адресное пространство. Разграничение доступа и защита данных. Организация современных операционных систем семейств Unix, Linux и Windws.

Объектно-ориентированное программирование

Парадигмы объектно-ориентированного программирования. Классы. Объекты. Конструкторы и деструкторы. Методы. Наследование. Виртуальные методы. Механизм вызова виртуальных методов. Разграничение доступа к атрибутам объектов. Указатели на методы объектов (делегаты). Виртуальные конструкторы. Информация о типе времени выполнения программы. Курс построен на базе С# Visual Studio.

Компьютерные сети

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

Системное программирование

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

Технологии компонентного программирования

Понятие компонентного программирования. Эволюция технологий программирования и архитектуры приложений. Сравнительная характеристика процедурного, объектно-ориентированного и компонентного программирования. Компонентная объектная модель COM и технологии на ее основе. Понятие компонента, требования и свойства. Базовая иерархия COM: сервер/класс/интерфейс/метод. Интерфейсы COM. Библиотека COM. COM-серверы. Технологии OLE и ActiveX. Автоматизация и диспетчерские интерфейсы. Библиотека типа, позднее связывание. IDL. Библиотека ATL. Потоковые модели и синхронизация. Обработка ошибок и исключительные ситуации. Коллекции и перечисления. Обратные интерфейсы, обработка событий. Контейнеры. Обзор технологии COM+, компонентного программирования на базе.NET, CORBA и спецификаций OMA, ORB, GIOP, IIOP.

Средства визуального программирования приложений

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

Web-технологии

Отличительные особенности Web-приложения. Протокол HTTP. Знакомство с HTML, CSS, Bootstrap. Знакомство с приложением ASP.NET MVC. Модели, контроллеры и представления приложения ASP.NET MVC. Язык Razor. Вспомогательные методы @Html и @Url. Страницы шаблонов (Layouts) и частичные представления. Передача данных от контроллера к представлению. Механизм привязки данных. Маршрутизация (Routing). Аннотация и валидация данных. Внедрение зависимостей (Dependency Injection). Пакеты (Bundles). Передача файлов. Знакомство с Web Api. Технология AJAX. Работа с Json. Модульное тестирование приложений ASP.NET MVC. Аутентификация и авторизация. Развертывание WEB-приложения. Обзор ASP.NET Core.

Организация и проектирование база данных

Курс построен на базе T-SQL MS SQL Server, с рассмотрением особенностей в Oracle и MySQL. Принципы работы с данными в различных типах информационных системах. Системы управления базами данных, их основные функции и архитектура по стандарту ANSI. Модели данных, их классификация. Детально рассматривается реляционная модель данных, используемая в более 80% СУБД. Основа реляционной модели - реляционная алгебра. Логическая и физическая организация БД, целостность данных, организация индексов и системы безопасности. SQL. Практическое изучение управления данными, индексами и безопасностью на T-SQL.

Транзакции и модели транзакций, практическое изучение управление транзакциями на T-SQL. Журнал транзакций. Проблемы параллельного выполнения транзакций. Блокировки, виды блокировок, практическое изучение управление блокировками на T-SQL. Модели архитектур БД. Программирование БД, практическое изучение создания кода хранимых процедур, триггеров, пользовательских функций, курсоров.

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

Технологии проектирования программного обеспечения информационных систем

Модели жизненного цикла (ЖЦ) программных средств (ПС): стратегии разработки ПС; модели ЖЦ, реализующие данные стратегии; выбор модели ЖЦ для конкретного проекта. Структурный подход к проектированию ПС. Классические технологии проектирования ПС. Оценка эффективности структурного разбиения ПС на модули. Современные структурные технологии разработки ПС. Методологии и нотации структурного анализа и проектирования ПС. Введение в автоматизацию разработки программных средств: принципы автоматизации; классификация CASE-средств. Объектно-ориентированный подход к проектированию ПС. Объектно-ориентированный язык моделирования (например, унифицированный язык моделирования UML). Построение приложений, генерация программного кода, моделирование данных в среде объектно-ориентированного программного обеспечения. Курс построен на базе UML Rational Rose.

Тестирование программного обеспечения

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

2. Программное обеспечение информационных систем

2.1 Классификация программного обеспечения

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

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

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

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

В состав базового (системного) ПО входят:

операционные системы;

сервисные программы;

трансляторы языков программирования;

программы технического обслуживания.

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

Исходя из выполняемых функции, ОС можно разбить на три группы (см. рис. 1): однозадачные (однопользовательские); многозадачные (многопользовательские); сетевые.

Рис. 1. Базовое (системное) программное обеспечение

Однозадачные ОС предназначены для работы одного пользователя в каждый конкретный момент одной конкретной задачей. Типичным представителем таких операционных систем является MS-DOS (разработанная фирмой Microsoft). Многозадачные ОС обеспечивают коллективное использование ЭВМ в мультипрограммном режиме разделения времени (в памяти ЭВМ находится несколько программ - задач, - и процессор распределяет ресурсы компьютера между задачами). Типичными представителями подобного класса ОС являются: UNIX, OS 2 корпорации IBM, Microsoft Windows 95, Microsoft Windows NT и некоторые другие.

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

Novell NetWare, Microsoft Windows NT, Banyan Vines, IBM LAN, UNIX, Solaris фирмы Sun.

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

По функциональным возможностям сервисные средства можно подразделить на средства:

улучшающие пользовательский интерфейс;

защищающие данные от разрушения и несанкционированного доступа;

восстанавливающие данные;

ускоряющие обмен данными между диском и ОЗУ:

архивации-разархивапии;

антивирусные средства.

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

Рис. 2. Прикладное программное обеспечение

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

2.2 Прикладное программное обеспечение и тенденции его развития

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

текстовые процессоры,

табличные процессоры,

системы иллюстративной и деловой графики (графические процессоры),

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

экспертные системы,

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

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

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

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

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

Графические редакторы позволяют создавать и редактировать рисунки. В простейших редакторах предоставляются возможности рисования линий, кривых, раскраски областей экрана, создание надписей различными шрифтами и т.д. Большинство редакторов позволяют обрабатывать изображения, полученные с помощью сканеров. Представители графических редакторов – программы Adobe Photoshop, Corel Draw.

Правовые базы данных содержат тексты нормативных документов и предоставляют возможности справки, контекстного поиска, распечатки и т.д. Представители правовых баз данных – пакеты Гарант и Консультант+ .

Системы автоматизированного проектирования (САПР) позволяют осуществлять черчение и конструирование различных предметов и механизмов с помощью компьютера. Среди систем малого и среднего класса в мире наиболее популярна система AutoCad фирмы AutoDesk. Отечественный пакет с аналогичными функциями – Компас.

Системы управления базами данных (СУБД) позволяют управлять большими информационными массивами - базами данных. Программные системы этого вида позволяют обрабатывать на компьютере массивы информации, обеспечивают ввод, поиск, сортировку выборку записей, составление отчетов и т.д. Представители данного класса программ – Microsoft Access, Clipper, Paradox.

Интегрированные системы сочетают в себе возможность системы управления базами данных, табличного процессора, текстового редактора, системы деловой графики, а иногда и другие возможности. Как правило, все компоненты интегрированной системы имеют схожий интерфейс, что облегчает обучение работе с ними. Представители интегрированных систем – пакет Microsoft Office и его бесплатный аналог Open Office.

Бухгалтерские программы предназначены для ведения бухгалтерского учета, подготовки финансовой отчетности и финансового анализа деятельности предприятий. Из-за несовместимости отечественного бухгалтерского учета с зарубежным в нашей стране используются почти исключительно отечественные бухгалтерские программы. Наиболее распространены системы 1C: Предприятие и Инфо-бухгалтер.

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

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

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