Как настроить смартфоны и ПК. Информационный портал
  • Главная
  • Советы
  • Жизненный цикл программного обеспечения информационной системы. Классификация программного обеспечения

Жизненный цикл программного обеспечения информационной системы. Классификация программного обеспечения

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

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

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

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

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

UPD

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

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

В то же время ПО не требует документов для своего существования.

автоматизированный программный кодирование реквизит

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

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

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

Системы программирования -- комплекс средств, обеспечивающих создание новых программных продуктов посредством перевода текста программы с языка программирования в машинные коды (Delphi, Visual Basic, Java).

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

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

Текстовые процессоры предназначены для создания текстовых документов (MS Word, WordPerfect, Word Pro и.т.д.). Системы управления базами данных (СУБД) -- включают в себя два главных компонента -- базу данных (реляционную базу данных) (БД) и систему управления базой данных (MS Access, MS FoxPro, Corel Paradox, Lotus Approach, Oracle, Informix). Реляционная база данных представляет собой совокупность нескольких таблиц, связь между которыми устанавливается с помощью связующих полей. Пакеты презентационной графики (Microsoft PowerPoint, Lotus ScreenCam) позволяют создавать слайды и прозрачные пленки для проведения семинаров, конференций и т.д. Графические редакторы предназначены для обработки графических документов, иллюстраций, чертежей (Paintbrush, Corel DRAW, Adobe Photoshop). Допускают формирование любых изображений.

Все перечисленные виды прикладного программного обеспечения общего назначения широко используются бухгалтерами, но особое место и значение отводится табличным процессорам (MS Excel, Lotus 1-2-3, QuattroPro). Среди табличных процессоров наиболее распространенным и популярным является Microsoft Excel. Достоинства Microsoft Excel: - выдаваемая на экран таблица удобна для электронного моделирования различных первичных документов и регистров синтетического и аналитического учета, таких как: журналы-ордера, ведомости и т.д - легко выполняются любые операции с цифровой информацией;

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

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

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

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

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

  • Системное программное обеспечение (системные программы);
  • Прикладное программное обеспечение (прикладные программы);
  • Инструментальное обеспечение (инструментальные системы).

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

· В состав СПО входят операционные системы (ОС) и сервисные систем (СС).

· Прикладное программное обеспечение (ППО) предназначено для решения задач пользователя. В его состав входят прикладные программы пользователей и пакеты прикладных программ (ППП) различного назначения.

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

ОС определяет производительность системы, степень защиты данных, выбор программ, с которыми можно работать на компьютере, требования к аппаратным средствам. Примерами ОС являются MS DOS (практически не используется), OS/2, семейство Unix, семейство Windows.

На рынке операционных систем представлены разработки различных фирм, которые различаются ориентацией на аппаратные средства, решение определенного круга задач, потребности потребителя и пр. Можно выделить операционные системы, обладающие определенными общими чертами: один производитель, единый подход к организации и функционированию и пр., что позволяет классифицировать их по семействам и линейкам. Например, можно выделить такие семейства как Windows (Microsoft ), Unix (различные разработчики), Solaris (Sun Microsystems ) и другие.

В настоящее время большинство персональных компьютеров в мире работают под управлением той или иной версии операционной системы Windows (фирма Microsoft). Программные продукты этого семейства обладают общими характерными чертами:

· единый графический пользовательский интерфейс;

· многозадачность;

· поддержка работы в сетевой среде;

· наличие универсальной системы средств обмена данными между приложениями (буфер обмена, динамический обмен данными – DDE, связывание и встраивание объектов – OLE).

В операционных системах семейства Windows реализована открытая архитектура (Windows Open Services Architecture – WOSA), которая предоставляет механизмы для решения задачи передачи информации независимо от ее местоположения и формата представления. С их помощью пользователь компьютера может легко подключиться к любой из информационных служб, располагающихся в различных сетях или операционных системах. В настоящее время обеспечивается стандартный доступ к базам данных, почте, телефонным сетям и системам лицензирования, сетевым службам и специализированным службам (финансовые системы и данные реального времени).

Cемейство Unix – это одна из самых первых ОС и в настоящее время является одной из альтернатив семейству ОС Windows . Unix была создана в Bell Telephone Laboratories в 70- е годы прошлого столетия. Основное отличие и преимущество этого семейства заключается в реализации для широкого круга аппаратных платформ – это первая действительно переносимая на различные аппаратные платформы операционная система. Unix ориентирована, прежде всего, на работу в больших локальных и глобальных сетях. В ней используются различные варианты графического интерфейса. Универсальность системы обеспечивается множеством прикладных программ.

В настоящее время существуют версии ОС Unix от различных производителей. Среди них наиболее известны коммерческие версии Sun и Solaris для компьютеров фирмы Sun, AIX для мини-компьютеров IBM, IRIX для компьютеров Silicon Graphics, свободно распространяемые FreeBSD и Linux для компьютеров платформы Intel.

Независимо от версии общими для Unix чертами являются:

· многопользовательский режим и наличие мощных средств защиты данных от несанкционированного доступа;

· многозадачность;

· переносимость системы за счет написания ее ядра на языке С;

· наличие простого пользовательского интерфейса;

· наличие встроенных средств поддержки компьютерных сетей, что делает систему одной из самых популярных серверных платформ в Internet.

В отличие от Windows ОС Unix предъявляет повышенные требования к компьютерам и стоит значительно дороже Windows.

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

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.

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

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

Лучшие статьи по теме