Общие сведения о программном обеспечении.
Общие сведения о программном обеспечении.
Основной компонент ПО – программа – упорядоченная в соответствии с некоторым алгоритмом последовательность команд компьютера для решения задачи пользователя. Чаще всего образ программы хранится в виде исполняемого модуля.
Пользователь– лицо, заинтересованное в решении некоторой задачи средствами вычислительной техники. По отношению к программному обеспечению компьютерные пользователи делятся на следующие группы:
• системные программисты, занимающиеся разработкой, эксплуатацией и сопровождением системного программного обеспечения;
• прикладные программисты. Выполняют разработку и отладку программ решения задач из различных прикладных сфер деятельности пользователей;
• конечные пользователи. Используют прикладное программное обеспечение для решения задач в своей повседневной деятельности. Различаются по уровню своей подготовки в части знания и использования компьютерной техники;
• администраторы. Это высококвалифицированные компьютерные специалисты, отвечающие за работу вычислительной сети, баз данных, корпоративной информационной системы в целом, безопасность и защиту данных. Могут иметь определенную специализацию: управление сетевым каталогом, политикой учетных записей, политикой аудита и т.п.
Принято делить программы на небольшие (простые), средней сложности и большие.
Процесс создания программ можно представить как последовательность следующих действий:
1. постановка задачи;
2. алгоритмизация решения задачи;
3. программирование.
Постановка задачи –здесь формулируются точные требования, предъявляемых к работе программы.
Алгоритм – точный набор инструкций, описывающий порядок действий исполнителя(компа).
Программирование – теоретическая и практическая деятельность, связанная с созданием программ.
Этапы:
1. Первый этап: с момента создания ЭВМ до 60-х годов 20 века. Программы писались на Fortran, Algol.
2. Второй этап: структурный подход к программированию 60-70-е годы.
3. Третий этап: объектный подход к программированию 80-90-е года. Объектно-ориентированное программирование (ООП)
4. Четвертый этап: компонентный подход и CASE-технологии. (с середины 90-х годов до нашего времени).
Классификация программного обеспечения.
Под программным обеспечением понимается совокупность программ, выполняемых вычислительной системой.
Существует два основных типа программного обеспечения: системное и прикладное и инструментальные средства. Каждый тип программного обеспечения выполняет различные функции.
Системное программное обеспечение – это набор программ, которые управляют компонентами компьютера, такими как процессор, коммуникационные и периферийные устройства. Программистов, которые создают системное программное обеспечение, называют системными программистами.
К прикладному программному обеспечению относятся программы, написанные для пользователей или самими пользователями, для задания компьютеру конкретной работы. Программы обработки заказов или создания списков рассылки – примеры прикладного программного обеспечения. Программистов, которые пишут прикладное программное обеспечение, называют прикладными программистами.
Системное программное обеспечение обеспечивает и контролирует доступ к аппаратному обеспечению компьютера.
Системное программное обеспечение предназначено для управления работой компьютера. Его подразделяют на базовое, сервисное и тестовое.
Инструментальные средства программированияпредназначены для создания программ. К ним относятся языки и системы программирования, которые обеспечивают поддержку всех этапов работ по созданию программ.
Жизненный цикл программных систем.
Жизненный цикл программного обеспечения — это период времени, который начинается с момента принятия решения о создании программного продукта и заканчивается в момент его полного изъятия из эксплуатации. Этот цикл — процесс построения и развития ПО.
Виды моделей жизненного цикла программного обеспечения.
ППП общего назначения
Данный класс содержит широкий перечень программных продуктов, поддерживающих преимущественно информационные технологии конечных пользователей. Кроме конечных пользователей этими программными продуктами, за счет встроенных средств технологии программирования, могут пользоваться и программисты для создания усложненных программ обработки данных.
1. Настольные системы управления базами данных
2. Серверы баз данных
3. Генераторы (серверы) отчетов
4. Текстовые процессоры
5. Табличные процессоры
6. Графические редакторы
7. Средства презентационной графики
8. Интегрированные пакеты
Офисные ППП
Данный класс программных продуктов охватывает программы, обеспечивающие организационное управление деятельностью офиса.
1. Органайзеры
2. Программы-переводчики
Коммуникационные ППП
Предназначенные для организации взаимодействия пользователя с удаленными абонентами или информационными ресурсами сети.
1. Браузеры
Методо-ориентированные ППП
Данный класс включает программные продукты, обеспечивающие, независимо от предметной области и функций информационных систем, математические, статистические и другие методы решения задач.
1. Матлаб
Пакет SPSS
Пакет SРSS (Statistical Package for the Social Sciences) – универсальный статистический пакет компании SРSS Inc5. Первая версия пакета была выпущена в 1968 г. В 2009 г. Компания IBM поглотила SPSS Inc., поэтому новая версия пакета включает в свое название аббревиатуру IBM (IBM SPSS Statistics 19).
По мнению разработчиков пакета, SPSS является одним из лидирующих программных продуктов в области статистического анализа данных для решения вопросов в правительственной, академической и бизнессфере.
SPSS является модульной программой. Ее основу составляет базовый модуль (SPSS Base), позволяющий осуществлять управление данными и содержащий наиболее распространенные методы статистического анализа данных: проведение описательной статистики; построение линейных и нелинейных моделей; осуществление преобразования данных; проведение факторного, кластерного, дисперсионного анализов; вычисление корреляций; построение графиков; подготовка отчетов и пр.
Плюсы:
· развитый аппарат статистического анализа;
· широкий набор статистических и графических процедур (более 50 типов диаграмм) анализа данных, а также процедур создания отчетов;
· высокая скорость вычислений, простой и удобный интерфейс;
· совместимость с операционными системами Windows, Mac, Linux;
· наличие значительного количества литературы по работе с пакетом.
Минусы:
· высокие требования к системе компьютера (требуется 1GB оперативной памяти, 800MB памяти на жестком диске и процессор с частотой 1GHz и выше);
· высокая цена по сравнению со статистическими пакетами аналогичного уровня (стоимость покупки для индивидуального пользования сроком на год составляет около 1000 долл.6).
Основные понятия информационных систем. Классификация прикладных информационных систем.
Под информационной системойобычно понимается прикладная программная подсистема, ориентированная на сбор, хранение, поиск и обработку текстовой и/или фактографической информации. Подавляющее большинство информационных систем работает в режиме диалога с пользователем.
В наиболее общем случае типовые программные компоненты, входящие в состав информационных систем, реализуют:
• диалоговый ввод-вывод;
• логику диалога;
• прикладную логику обработки данных;
• логику управления данными;
• операции манипулирования файлами и (или) базами данных
Классификация:
Информационные системы классифицируютсяпо разным признакам. Рассмотрим наиболее часто используемые способы классификации по масштабу, по сфере применения, способу организации.
Одиночные информационные системы реализуются на автономном персональном компьютере (сеть не используется). Такая система может содержать несколько простых приложений, связанных общим информационным фондом, и рассчитана на работу одного пользователя или группы пользователей, разделяющих во времени одно рабочее место. Подобные приложения создаются с помощью настольных, или локальных систем управления базами данных (СУБД). Среди локальных СУБД наиболее известными являются Clarion, Clipper, d Base, Microsoft Access и др.
Групповые информационные системы ориентированы на коллективное использование информации членами рабочей группы и чаще всего строятся на базе локальной компьютерной сети. При разработке таких приложений используются серверы баз данных (называемые также SQL - серверами) для рабочих групп. Существует довольно большое количество различных SQL – серверов как коммерческих, так и свободно распространяемых. Среди них наиболее известны такие серверы баз данных, как Oracle, Microsoft SQL Server, Inter Base, Sybase и др.
Корпоративные информационные системы являются развитием систем рабочих групп, они ориентированы на крупные компании и могут поддерживать территориально разнесенные узлы или сети. В основном они имеют иерархическую структуру из нескольких уровней. Для таких систем характерна архитектура клиент-сервер со специализацией серверов или же многоуровневая архитектура. При разработке таких систем могут использоваться те же серверы баз данных, что и при разработке групповых информационных систем. В крупных информационных системах наибольшее распространение получили серверы Oracle, DB2 и Microsoft Server.
Для групповых и корпоративных систем существенно повышаются требования к надежности функционирования и сохранности данных. Эти свойства обеспечиваются поддержкой целостности данных, ссылок и транзакций в серверах баз данных.
По сфере применения:
Модели разработки КИС
В последние годы применяется каскадная модельразработки КИС. Рассмотрим основные этапы разработки КИС по каскадной модели. Этапы разработки практически не зависят от предметной области (рис.7).
Анализ | ||
Проектир-е | ||
Разработка | ||
Тестирование | ||
Сдача |
Рис. 7. Каскадная модель разработка КИС
И включают:
· анализ требований заказчика;
· проектирование;
· разработка (ПО);
· тестирование и опытная эксплуатация;
· сдача готового продукта.
Основные характеристики КИС
· сетевые технологии, их масштабы и топология сети;
· пропускная способность системы (скорость обработки транзакций)
· объём информационного хранилища данных;
· системы документов и документооборот;
· пользовательский интерфейс и его возможности;
Системы реального времени.
Система называется системой реального времени, если правильность ее функционирования зависит не только от логической корректности вычислений, но и от времени, за которое эти вычисления производятся. СРВ – это любая система, работающая в режиме реального времени.
Системы реально времени, как аппаратно-программный комплекс, включает в себя:
· датчики, регистрирующие события на объекте
· модули ввода/вывода, преобразующие показания датчиков в цифровой вид, пригодный для обработки этих показаний на компьютере;
· компьютер с программой, реагирующей на события, происходящие на объекте.
Главные требования СРВ – эти системы должны выполнять свои операции вовремя.
_________________________________________
Классификация систем реального времени. Принято различать системы «жесткого» и «мягкого» реального времени.
Системой «жесткого» реального времени называется система, где неспособность обеспечивать реакцию на какие-либо события в заданное время является отказом и ведет к невозможности решения поставленной задачи.
Примеры: система управления двигателем, система торможения, подушка безопасности.
________
Точного определения для мягкого времени не существует, поэтому будем считать, что сюда относятся все системы реального времени, не попадающих в категорию жестких.
Примеры: экранный редактор, сеть передачи данных, сервер базу данных.
Систем.
Экспертные системы (ЭС) или «системы, основанные на знаниях», представляют собой программное обеспечение, анализирующее некоторую информацию на основе специальных механизмов представления знаний о предметной области и логического вывода.
Экспертные системы разрабатываются для широкого спектра проблем диагностики, проектирования, планирования, управления, прогнозирования, интерпретации, там, где применение вычислительной техники ранее считалось неэффективным. Такие задачи отличаются сложностью описания в цифровой форме или задания формальных целей. Поэтому в компьютер закладываются не формальные алгоритмы, а прагматические правила экспертов, составляющие знания системы, по которым она принимает решения в сложных ситуациях. Знания организуется в базу знаний (БЗ), имеющую определенную структуру, механизмы доступа и алгоритмы использования.
Первые ЭС появились в начале 70-х годов в тех отраслях деятельности человека, где знания неформализованы (медицина) или частично формализованы (химия, геология и т.д.). Достаточно подробный перечень современных ЭС приведены во многих российских и зарубежных источниках.
ЭС должна обладать следующими характерными особенностями:
· получать заранее неизвестный алгоритм (строится самой ЭС с помощью распределений, базирующихся на логических выводах и эвристиках);
· анализировать и объяснять свои действия и выводы в терминах, понятных пользователю;
· располагать средствами диалога с пользователем или экспертом, не являющимся специалистом;
· приобретать новые знания.
ЭС позволяют достаточно быстро вносить знания высококвалифицированных специалистов в компьютер и в дальнейшем предоставлять эти знания другим специалистам при решении ими конкретных задач.
Примеры реализации ЭС
Примерами ЭС являются: SETH – экспертная система, специализирующаяся на клинической токсикологии. ЭС SETH оказывает квалифицированную помощь при назначении пациенту лекарственного средства и выполнении текущего контроля хода заболевания. Она относится к системам оказания срочной медицинской помощи.
15. Системы обучения: открытое образование и дистанционное обучение.
В настоящее время на базе Internet развиваются новые подходы к предоставлению образовательных услуг, в том числе открытое образование, реализуются технологии дистанционного обучения.
Открытое образование основано на ряде основополагающих принципов, к числу которых относится свобода обучаемого в выборе учебного заведения, времени, места и темпов обучения, в планировании своих учебных занятий. Предполагается, что открытое образование повысит качество образования и разрешит противоречие между предложением и спросом на образовательные услуги.
Принципы открытого образования могут быть реализованы только при применении методов дистанционного обучения.
Дистанционным обучением называется образовательный процесс, при котором все или часть учебных процедур выполняются с использованием современных информационных технологий при территориальном разобщении обучающего и обучаемого.
SETH
Разработчик: Poison Control Center (Франция), 1992-94 гг.
Специализация: SETH [3]- экспертная система, специализирующаяся на клинической токсикологии. Цель SETH состоит в том, чтобы оказать квалифицированную помощь при назначении пациенту лекарственного средства и выполнении текущего контроля хода заболевания. Следовательно, SETH относится к классу систем оказания срочной медицинской помощи.
Программная инженерия
В процессе становления и развития программной инженерии можно выделить два этапа:
70-е и 80-е гг. – систематизация и стандартизация процессов создания ПО (на основе структурного подхода); в 1975 г. в США появилось первое издание, посвященное программной инженерии, – IEEE Transactions on Software Engineering;
90-е гг. – начало перехода к сборочному, индустриальному способу создания ПО (на основе объектно-ориентированного подхода).
В основе программной инженерии лежит одна фундаментальная идея: проектирование ПО является формальным процессом, который можно изучать, стандартизировать и совершенствовать, т.е. созданию ПО должно предшествовать создание методологии разработки ПО как совокупности взаимоувязанных стадий, этапов, операций, образующих технологический процесс разработки ПО.
Общие сведения о программном обеспечении.
Основной компонент ПО – программа – упорядоченная в соответствии с некоторым алгоритмом последовательность команд компьютера для решения задачи пользователя. Чаще всего образ программы хранится в виде исполняемого модуля.
Пользователь– лицо, заинтересованное в решении некоторой задачи средствами вычислительной техники. По отношению к программному обеспечению компьютерные пользователи делятся на следующие группы:
• системные программисты, занимающиеся разработкой, эксплуатацией и сопровождением системного программного обеспечения;
• прикладные программисты. Выполняют разработку и отладку программ решения задач из различных прикладных сфер деятельности пользователей;
• конечные пользователи. Используют прикладное программное обеспечение для решения задач в своей повседневной деятельности. Различаются по уровню своей подготовки в части знания и использования компьютерной техники;
• администраторы. Это высококвалифицированные компьютерные специалисты, отвечающие за работу вычислительной сети, баз данных, корпоративной информационной системы в целом, безопасность и защиту данных. Могут иметь определенную специализацию: управление сетевым каталогом, политикой учетных записей, политикой аудита и т.п.
Принято делить программы на небольшие (простые), средней сложности и большие.
Процесс создания программ можно представить как последовательность следующих действий:
1. постановка задачи;
2. алгоритмизация решения задачи;
3. программирование.
Постановка задачи –здесь формулируются точные требования, предъявляемых к работе программы.
Алгоритм – точный набор инструкций, описывающий порядок действий исполнителя(компа).
Программирование – теоретическая и практическая деятельность, связанная с созданием программ.
Этапы:
1. Первый этап: с момента создания ЭВМ до 60-х годов 20 века. Программы писались на Fortran, Algol.
2. Второй этап: структурный подход к программированию 60-70-е годы.
3. Третий этап: объектный подход к программированию 80-90-е года. Объектно-ориентированное программирование (ООП)
4. Четвертый этап: компонентный подход и CASE-технологии. (с середины 90-х годов до нашего времени).