Разделы презентаций


Системы управления базами данных ( I часть)

Содержание

Лекции доступны на сайте www.ucit.ruВ разделе сайта: Профессиональная переподготовка Рабочие программы

Слайды и текст этой презентации

Слайд 1Системы управления базами данных (I часть)
Распределенные БД. Хранилища данных.

Обзор современных СУБД и средств автоматизированного проектирования БД.

Системы управления базами данных (I часть) Распределенные БД. Хранилища данных. Обзор современных СУБД и средств автоматизированного проектирования

Слайд 2Лекции доступны на сайте www.ucit.ru

В разделе сайта:
Профессиональная переподготовка

Рабочие программы

Лекции доступны на сайте www.ucit.ruВ разделе сайта: Профессиональная переподготовка  Рабочие программы

Слайд 4Разделение ресурсов
В основе широкого распространения локальных сетей компьютеров лежит известная

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

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



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

Слайд 5Рабочие станции
Рабочая станция предназначена для непосредственной работы пользователя или категории

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

Специфическими

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

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

Слайд 6Сервер локальной сети
Сервер локальной сети должен обладать ресурсами, соответствующими его

функциональному назначению и потребностям сети. Заметим, что в связи с

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

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

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

с внешним миром;
вычислительный сервер, дающий возможность производить вычисления, которые

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

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

Слайд 8СУБД по способу доступа к БД:
Файл-серверные
Архитектура «файл-сервер» не имеет сетевого

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

облегчает построение графического интерфейса. «Файл-сервер» только извлекает данные из файлов, так что дополнительные пользователи добавляют лишь незначительную нагрузку на ЦП и каждый новый клиент добавляет вычислительную мощность сети. Минус: высокая загрузка сети

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

СУБД по способу доступа к БД:Файл-серверныеАрхитектура «файл-сервер» не имеет сетевого разделения компонентов диалога и использует компьютер для

Слайд 9Файл-серверные СУБД.
БД может располагаться на файл-сервере или нескольких файл-серверах,

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

одна из объединенных в сеть мощных ПЭВМ.
Функции файл-сервера заключаются в основном в хранении БД и обеспечении доступа к ним пользователей, работающих на различных компьютерах. Эти функции обеспечиваются, как правило, той же СУБД, которая работает и на компьютерах пользователей. При небольших объемах данных эта схема вполне удовлетворяет всем современным требованиям, но с увеличением числа компьютеров в сети или ростом БД начинают возникать проблемы, связанные с резким падением производительности. Это связано с увеличением объема данных, передаваемых по сети, так как вся обработка производится на компьютере пользователя. Если пользователю требуется пара строк из таблицы объемом в сотни тысяч записей, то сначала вся таблица с файл-сервера передается на его компьютер, а затем СУБД отбирает нужные записи. В этом случае длительные перерывы в работе можно сильно сократить, перейдя на технологию клиент-сервер.


Файл-серверные СУБД.  БД может располагаться на файл-сервере или нескольких файл-серверах, в качестве которого может использоваться либо

Слайд 10Технология «клиент-сервер»
"Клиент-сервер" - это модель взаимодействия компьютеров в сети. Редко

бывает так, чтобы они были совершенно равноправными. Как правило, один

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

Технология «клиент-сервер»

Слайд 11Функции стандартного приложения
Один из основных принципов технологии "клиент-сервер" заключается в

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


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

Слайд 12Логические компоненты приложения
В соответствии с этим в любом приложении

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

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

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

Слайд 13Существует по меньшей мере три модели «клиент-сервер»
Модель доступа к удаленным

данным
Модель сервера базы данных
Модель сервера приложений


Существует по меньшей мере три модели «клиент-сервер» Модель доступа к удаленным даннымМодель сервера базы данныхМодель сервера приложений

Слайд 14 В модели доступа к удаленным данным коды

компонента представления и прикладного компонента совмещены и выполнятся на компьютере-клиенте.

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

В  модели доступа к удаленным данным коды компонента представления и прикладного компонента совмещены и

Слайд 15Модель сервера базы данных строится в предположении, что процесс, выполняемый

на компьютере-клиенте, ограничивается функциями представления, в то время как собственно

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

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

Слайд 16В модели сервера приложений процесс, выполняющийся на компьютере-клиенте, отвечает, как

обычно, за ввод и отображение данных (то есть реализует функции

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

В модели сервера приложений процесс, выполняющийся на компьютере-клиенте, отвечает, как обычно, за ввод и отображение данных (то

Слайд 17Архитектура "клиент-сервер"
Распределенные системы - это системы "клиент-сервер". Технология клиент-сервер разделяет

приложение на две части, используя лучшие качества обеих сторон.
Front-end

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





Архитектура

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

в разных узлах сети, - клиентскую и серверную части. Прикладная

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


Системная архитектура

Слайд 19 Общим решением проблемы мобильности систем, основанных на архитектуре "клиент-сервер" является

опора на программные пакеты, реализующие протоколы удаленного вызова процедур (RPC

- Remote Procedure Call). При использовании таких средств обращение к сервису в удаленном узле выглядит как обычный вызов процедуры. Средства RPC, в которых, естественно, содержится вся информация о специфике аппаратуры локальной сети и сетевых протоколов, переводит вызов в последовательность сетевых взаимодействий. Тем самым, специфика сетевой среды и протоколов скрыта от прикладного программиста.
При вызове удаленной процедуры программы RPC производят преобразование форматов данных клиента в промежуточные машинно-независимые форматы и затем преобразование в форматы данных сервера. При передаче ответных параметров производятся аналогичные преобразования.
Если система реализована на основе стандартного пакета RPC, она может быть легко перенесена в любую открытую среду

Общим решением проблемы мобильности систем, основанных на архитектуре

Слайд 20Серверы баз данных
Термин "сервер баз данных" обычно используют для обозначения

всей СУБД, основанной на архитектуре "клиент-сервер", включая и серверную, и

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



Серверы баз данныхТермин

Слайд 212НФ
Одним из перспективных направлений СУБД является гибкое конфигурирование системы,

при котором распределение функций между клиентской и пользовательской частями СУБД

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






2НФ Одним из перспективных направлений СУБД является гибкое конфигурирование системы, при котором распределение функций между клиентской и

Слайд 22Основные принципы функционирования модели сервера баз данных
Эта модель реализована в

некоторых реляционных СУБД (Ingres, Sybase, Oracle).
Ее основу составляет механизм

хранимых процедур - средство программирования ядра СУБД. Процедуры хранятся в словаре базы данных, разделяются между несколькими клиентами и выполняются на том же компьютере, где функционирует ядро СУБД.
Язык, на котором разрабатываются хранимые процедуры, представляет собой процедурное расширение языка запросов SQL и уникален для каждой конкретной СУБД. Попытки стандартизации языка SQL, касающиеся хранимых процедур, пока не привели к ощутимому успеху.
Кроме того, во многих реализациях процедуры являются интерпретируемыми, что делает их выполнение более медленным, нежели выполнение программ, написанных на языках третьего поколения.
Механизм хранимых процедур - один из составных компонентов активного сервера базы данных .
Основные принципы функционирования модели сервера баз данныхЭта модель реализована в некоторых реляционных СУБД (Ingres, Sybase, Oracle). Ее

Слайд 23Преимущества модели сервера баз данных
возможность централизованного администрирования бизнес-функций,
снижение трафика

сети,
возможность разделения процедуры между несколькими приложениями,
экономия ресурсов компьютера за

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

Слайд 24Недостатки модели сервера баз данных
Средства, используемые для написания хранимых процедур,

строго говоря, не являются языками программирования в полном смысле слова.

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


Недостатки модели сервера баз данныхСредства, используемые для написания хранимых процедур, строго говоря, не являются языками программирования в

Слайд 25Недостатки модели сервера баз данных
Модель сервера баз данных не обеспечивает

требуемой эффективности использования вычислительных ресурсов. Объективные ограничения в ядре СУБД

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

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

Слайд 26Модель сервера приложений (трехуровневая модель)
Основным элементом в такой модели является

сервер приложения. В его рамках реализовано несколько прикладных функций, каждая

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

Модель сервера приложений (трехуровневая модель)Основным элементом в такой модели является сервер приложения. В его рамках реализовано несколько

Слайд 27 Классическая трехуровневая архитектура «клиент-сервер»
Сервер приложений

Классическая трехуровневая архитектура «клиент-сервер» Сервер приложений

Слайд 28WEB-ориентированная трехуровневая архитектура «клиент-сервер»
Сервер приложений
Промежуточное программное обеспечение

WEB-ориентированная трехуровневая  архитектура «клиент-сервер»Сервер приложенийПромежуточное программное обеспечение

Слайд 29Промежуточное звено
Промежуточное ПО (ППО) – это слой ПО, находящийся между

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

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

Слайд 30Интерфейсы доступа к данным
Важнейшим этапом в построении приложений клиент-сервер является

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

Клиентское приложение, даже самое хорошее с точки зрения дружественности и простоты, ничто без связывающего слоя интерфейса прикладных программ (API - Application Programming Interface) обеспечивающего доступ к данным в таблицах БД и скрывающего от клиента особенности операционной системы и сети. Во многих случаях от разработчика скрыт даже и API, а доступны только функции средства разработки. Наличие такого API позволяет использовать стандартные инструментальные средства и существенно упрощает процесс разработки приложения.


Интерфейсы доступа к даннымВажнейшим этапом в построении приложений клиент-сервер является установка связи клиентского приложения с источником данных,

Слайд 31Интерфейсы доступа к данным
Среди разработчиков, использующих язык Java, в качестве

общего интерфейса доступа к БД принят JDBC. Классы JDBC скрывают

от разработчика сложности целевой БД и позволяют использовать любую БД без потребности понимания ее специфических особенностей.
К наиболее популярным интерфейсам относятся ODBC, OLE DB и ActiveX Data Object (ADO) компании Microsoft.
ODBC и OLE DB – это API Window для доступа к данным. Более старая спецификация ODBC обеспечивает доступ прежде всего к реляционным БД, основанным на использовании языка SQL. OLE DB – это спецификация следующего поколения Microsoft, которая позволяет осуществлять доступ к данным через провайдеров, которые могут включать нереляционные БД.

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

Слайд 32Серверы баз данных
Серверы баз данных обеспечивают надежный доступ к разделяемым

данным для программ-клиентов, которые обращаются к функциям СУБД. Обычно клиенты

по вычислительной сети посылают запросы серверу в форме предложений на языке SQL. Сервер интерпретирует их и пересылает соответствующие данные обратно клиенту.
Серверы реляционных и нереляционных баз данных могут быть различного вида и масштабов. Большинство программ-серверов баз данных – такие, как Oracle - выполняются на выделенных машинах. При этом серверы баз данных работают на разнообразных процессорах и в различных операционных средах. Следовательно, у создателей систем клиент-сервер имеется выбор для удовлетворения потребностей прикладных программ. Пример. Oracle работает на большинстве RISC- и CISC-ориентированных Unix-системах, включая HP/UX фирмы Hewlett-Packard и Solaris компании Sun. Кроме того, Oracle выполняется на серверах, использующих процессоры Intel под управлением SCO Unix и Netware компании Novell.



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

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

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

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

Функции сервера Серверы баз данных занимаются обслуживанием данных. В них предусмотрены также механизмы блокировок и элементы управления

Слайд 34Программа непосредственно самого сервера баз данных
С помощью хранимых процедур,

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

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

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

Слайд 35Средства разработки прикладных программ
Назначение всякого инструмента для разработки систем клиент-сервер

- ускорить и упростить процесс их создания. С помощью средств

быстрой разработки приложений (Rapid application development - RAD) можно создавать программы со встроенными средствами связи с любым числом серверов баз данных.
На этом быстрорастущем рынке конкурируют сотни инструментальных комплектов для архитектуры «клиент-сервер». Ряд лучших средств для разработки клиентов Microsoft Windows представлены пакетами Delphi Client/Server Suite компании Borland, Enterprise Developer фирмы Symantec, PowerBuilder компании PowerSoft, SQLWindows 5 фирмы Gupta и Visual Basic корпорации Microsoft.
В каждом инструментальном комплекте используется собственный подход, но большинство из них обладает одинаковым набором основных функций: промежуточное обеспечение для баз данных, возможность конструирования баз данных, репозиторий (хранилище), возможности объектно-ориентированной разработки, конструкторы ГИП, язык программирования высокого уровня и механизмы распределения прикладных программ.

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

Слайд 36Репозитории (хранилища)
Репозитории - это места хранения многими средствами разработки важной

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

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

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

Слайд 37Возможности конструирования прикладных программ
Почти во всех средствах предусмотрено простое в

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

создании или изменении структуры базы данных. С его помощью разработчики выполняют такие операции, как добавление элементов в базу данных, связывание таблиц и пересылка изменений серверу баз данных в форме SQL-предложений.
Концепция репозитория;
Конструкторы интерфейсов, с помощью которых разработчики создают окна данных, формы ввода данных, меню и другие компоненты ГИП прикладных программ. В конструкторах интерфейсов представлена палитра стандартных элементов, которые разработчики могут с помощью мыши переносить в создаваемые окна. В большинстве средств число управляющих элементов можно увеличить, используя полученные от независимых поставщиков элементы
Языки программирования. Во всех комплектах имеется какой-либо гибкий язык программирования высокого уровня (4GL). В некоторых комплектах применяются языки более низкого уровня 3GL.
Распределение прикладных программ по конечным пользователям
Возможности конструирования прикладных программ Почти во всех средствах предусмотрено простое в использовании графическое изображение физической структуры базы

Слайд 38Распределенные базы данных
Под распределенной (Distributed DataBase - DDB) обычно подразумевают

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

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

Распределенные базы данныхПод распределенной (Distributed DataBase - DDB) обычно подразумевают базу данных, включающую фрагменты из нескольких баз

Слайд 39Определение Дэйта.
Локальная автономия
Независимость узлов
Непрерывные операции
Прозрачность расположения
Прозрачная

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

от оборудования
Независимость от операционных систем
Прозрачность сети
Независимость от баз данных

12 свойств или качеств идеальной распределенной БД

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

Слайд 40Локальная автономия
Это качество означает, что управление данными на каждом из

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

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

Слайд 41Независимость от центрального узла
В идеальной системе все узлы равноправны

и независимы, а расположенные на них базы являются равноправными поставщиками

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

Слайд 42Это качество можно трактовать как возможность непрерывного доступа к данным

(известное "24 часа в сутки, семь дней в неделю") в

рамках DDB вне зависимости от их расположения и вне зависимости от операций, выполняемых на локальных узлах. Это качество можно выразить лозунгом "данные доступны всегда, а операции над ними выполняются непрерывно".

Непрерывные операции

Это качество можно трактовать как возможность непрерывного доступа к данным (известное

Слайд 43Это свойство означает полную прозрачность расположения данных. Пользователь, обращающийся к

DDB, ничего не должен знать о реальном, физическом размещении данных

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

Прозрачность расположения

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

Слайд 44Прозрачная фрагментация
Это свойство трактуется как возможность распределенного (то есть на

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

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

Слайд 45Пример
Пусть фирма имеет базы данных в разных местах. Допустим, имеется

таблица Сотрудники (Код_сотр, ФИО_сотр, Телефон), определенная в базе данных на

узле в Новосибирске. Имеется точно такая же таблица, определенная в базе данных на узле в Академгородке.
Кроме того, в базе данных на узле в Бердске определена таблица Зарплата_сотрудников (Код_сотр, сумм_зарпл).
Тогда запрос "получить информацию о сотрудниках фирмы" может быть сформулирован так: SELECT * FROM Сотрудники@Новосибирск, Сотрудники@Академгородок ORDER BY Код_сотр В то же время запрос "получить информацию о заработной плате сотрудников компании" будет выглядеть следующим образом: SELECT Сотрудники.Код_сотр, ФИО_сотр, сумм_зарпл FROM Сотрудники@Новосибирск, Сотрудники@Академгородок, Зарплата_сотрудников @Бердск ORDER BY Код_сотр

ПримерПусть фирма имеет базы данных в разных местах. Допустим, имеется таблица Сотрудники (Код_сотр, ФИО_сотр, Телефон), определенная в

Слайд 46Прозрачность тиражирования
Тиражирование данных - это асинхронный (в общем случае) процесс

переноса изменений объектов исходной базы данных в базы, расположенные на

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

Прозрачность тиражированияТиражирование данных - это асинхронный (в общем случае) процесс переноса изменений объектов исходной базы данных в

Слайд 47Обработка распределенных запросов
Это свойство DDB трактуется как возможность выполнения операций

выборки над распределенной базой данных, сформулированных в рамках обычного запроса

на языке SQL. То есть операцию выборки из DDB можно сформулировать с помощью тех же языковых средств, что и операцию над локальной базой данных. Например,
SELECT Имя_пост, Адрес_пост, Номер_заказа, Дата_заказа FROM Поставщики@Москва, Заказы@Новосибирск WHERE Поставщики.Номер_пост = Заказы.Номер_заказа
Обработка распределенных запросов Это свойство DDB трактуется как возможность выполнения операций выборки над распределенной базой данных, сформулированных

Слайд 48Обработка распределенных транзакций
Это качество DDB можно трактовать как возможность выполнения

операций обновления распределенной базы данных (INSERT, UPDATE, DELETE), не разрушающее

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

Слайд 49Независимость от оборудования


Это свойство означает, что в качестве

узлов распределенной системы могут выступать компьютеры любых моделей и производителей

- от мэйнфреймов до "персоналок".

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

Слайд 50Независимость от операционных систем
Это качество вытекает из предыдущего и означает

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

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

Слайд 51Прозрачность сети
Доступ к любым базам данных может осуществляться по

сети. Спектр поддерживаемых конкретной СУБД сетевых протоколов не должен быть

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

Слайд 52Независимость от баз данных
Это качество означает, что в распределенной

системе могут мирно сосуществовать СУБД различных производителей, и возможны операции

поиска и обновления в базах данных различных моделей и форматов.
Независимость от баз данных Это качество означает, что в распределенной системе могут мирно сосуществовать СУБД различных производителей,

Слайд 53Исходя из определения Дэйта, можно рассматривать DDB как слабосвязанную сетевую

структуру, узлы которой представляют собой локальные базы данных. Локальные базы

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

Слайд 54OLTP и OLAP системы
Выделяют два класса систем, для которых

в большей степени подходят сильно и слабо нормализованные отношения.
Сильно нормализованные

модели данных хорошо подходят для OLTP-приложений – On-Line Transaction Processing (OLTP) – приложений оперативной обработки транзакций. Типичными примерами OLTP-приложений являются системы складского учета, заказов билетов, операционные банковские системы

OLTP и OLAP системы  Выделяют два класса систем, для которых в большей степени подходят сильно и

Слайд 55OLTP системы
Основная функция подобных систем заключается в выполнении большого количества

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

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

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

Слайд 56OLTP и OLAP системы
2. Другим типом приложений являются OLAP-приложения –

On-Line Analitical Processing (OLAP) – приложения оперативной  аналитической обработки данных.

Это обобщенный термин, характеризующий принципы построения систем поддержки принятия решений – Decision Support System (DSS), хранилищ данных – Data Warehouse, систем интеллектуального анализа данных – Data Mining.
OLTP и OLAP системы2. Другим типом приложений являются OLAP-приложения – On-Line Analitical Processing (OLAP) – приложения оперативной 

Слайд 57OLAP системы
Такие системы предназначены для нахождения зависимостей между данными, для

проведения динамического анализа по принципу «что если…» и тому подобных

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

OLAP системыТакие системы предназначены для нахождения зависимостей между данными, для проведения динамического анализа по принципу «что если…»

Слайд 58Хранилища данных
Хранилища данных – это особый вид программных решений, предназначенный

для сбора, интеграции и анализа данных. Они строятся по принципам,

отличным от принятых при разработке учетных и OLАP-систем. Как следствие, решать задачи, связанные с анализом информации, с помощью ХД гораздо более эффективно, чем при использовании других программ. Одно только разделение учетной и аналитической информации дает огромное преимущество.
Пример: формирование отчетов. Раз в месяц, ежеквартально и ежегодно все банки подготавливают довольно большой объем отчетных форм для предоставления в Банк России – в общей сложности за весьма короткий промежуток времени создается почти сотня разнообразной отчетности. Как банки с этим справляются? Большинство старается готовить нужную отчетность либо в ночное время, либо на отдельной копии автоматизированной банковской системы (АБС). Поэтому при формировании отчетов нагрузка на банковскую учетную систему столь высока, что выполнять в ней текущие операции весьма проблематично.
Задача решается использованием ХД.
Хранилища данныхХранилища данных – это особый вид программных решений, предназначенный для сбора, интеграции и анализа данных. Они

Слайд 59Именно менеджеры компании – главные пользователи систем, построенных по технологии

ХД и OLAP-приложений. Ведь конечная цель применения аналитических систем –

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

Именно менеджеры компании – главные пользователи систем, построенных по технологии ХД и OLAP-приложений. Ведь конечная цель применения

Слайд 60Необходимость использования ХД
Автоматизация сбора и интеграции данных;
Приведение их к

единой системе понятий;
Сверка и согласование данных;
Территориальная распределенность системы;
Признак

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

Слайд 61Каждое подразделение ежедневно высылает в центральный офис отчет заранее утвержденной

формы. Данные преобразуются к единому виду и переносятся в хранилище

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

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

Слайд 62Как только были получены описанные результаты, стало возможным и применение

различного аналитического аппарата – OLAP, регулярные отчеты, прогнозирование. Кроме того,

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

Плюсы внедрения ХД

Как только были получены описанные результаты, стало возможным и применение различного аналитического аппарата – OLAP, регулярные отчеты,

Слайд 63Введение в CASE-технологии
Современные крупные проекты ИС характеризуются, как правило, следующими

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

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

Слайд 645. функционирование в неоднородной среде на нескольких аппаратных платформах;
6.

разобщенность и разнородность отдельных групп разработчиков по уровню квалификации и

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


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

Слайд 65Для успешной реализации проекта объект проектирования (ИС) должен быть прежде

всего адекватно описан, должны быть построены полные и непротиворечивые функциональные

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

Для успешной реализации проекта объект проектирования (ИС) должен быть прежде всего адекватно описан, должны быть построены полные

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

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


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

Слайд 67 Перечисленные факторы способствовали появлению программно-технологических средств специального

класса - CASE-средств, реализующих CASE-технологию создания и сопровождения ИС.
Термин

CASE (Computer Aided Software Engineering) используется в настоящее время в весьма широком смысле. Первоначальное значение термина CASE, ограниченное вопросами автоматизации разработки только лишь программного обеспечения (ПО), в настоящее время приобрело новый смысл, охватывающий процесс разработки сложных ИС в целом. Теперь под термином CASE-средства понимаются программные средства, поддерживающие процессы создания и сопровождения ИС, включая анализ и формулировку требований, проектирование прикладного ПО (приложений) и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом, а также другие процессы. CASE-средства вместе с системным ПО и техническими средствами образуют полную среду разработки ИС.

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

Слайд 68Факторы, предшествующие появлению CASE-технологий
подготовка аналитиков и программистов, восприимчивых к концепциям

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

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

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

Слайд 69CASE-технология представляет собой методологию проектирования ИС, а также набор инструментальных

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

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

Слайд 70CASE-средства не обязательно дают немедленный эффект; он может быть получен

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

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

Предупреждение

CASE-средства не обязательно дают немедленный эффект; он может быть получен только спустя какое-то время; реальные затраты на

Слайд 71Факторы, усложняющие определение возможного эффекта от использования CASE-средств
широкое разнообразие качества

и возможностей CASE-средств;
относительно небольшое время использования CASE-средств в различных

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

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

Слайд 72Технология. Понимание ограниченности существующих возможностей и способность принять новую технологию;


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

и пользователями;
Управление. Четкое руководство и организованность по отношению к наиболее важным этапам и процессам внедрения.

Для успешного внедрения CASE-средств организация должна обладать следующими качествами:

Технология. Понимание ограниченности существующих возможностей и способность принять новую технологию; Культура. Готовность к внедрению новых процессов и

Слайд 73достоверная оценка отдачи от инвестиций в CASE-средства затруднительна ввиду отсутствия

приемлемых метрик и данных по проектам и процессам разработки ПО;


внедрение CASE-средств может представлять собой достаточно длительный процесс и может не принести немедленной отдачи. Возможно даже краткосрочное снижение продуктивности в результате усилий, затрачиваемых на внедрение. Вследствие этого руководство организации-пользователя может утратить интерес к CASE-средствам и прекратить поддержку их внедрения;
отсутствие полного соответствия между теми процессами и методами, которые поддерживаются CASE-средствами, и теми, которые используются в данной организации, может привести к дополнительным трудностям;
CASE-средства зачастую трудно использовать в комплексе с другими подобными средствами. Это объясняется как различными парадигмами, поддерживаемыми различными средствами, так и проблемами передачи данных и управления от одного средства к другому;

Проблемы перехода к CASE-технологиям

достоверная оценка отдачи от инвестиций в CASE-средства затруднительна ввиду отсутствия приемлемых метрик и данных по проектам и

Слайд 74некоторые CASE-средства требуют слишком много усилий для того, чтобы оправдать

их использование в небольшом проекте, при этом, тем не менее,

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

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

Слайд 75Успешное внедрение CASE-средств должно обеспечить такие выгоды как:
высокий уровень технологической

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

или все из перечисленных факторов: производительность, качество продукции, соблюдение стандартов, документирование;
приемлемый уровень отдачи от инвестиций в CASE-средства.
 

Успешное внедрение CASE-средств должно обеспечить такие выгоды как:высокий уровень технологической поддержки процессов разработки и сопровождения ПО; положительное

Слайд 76SADT - методология структурного анализа и проектирования  (Structured Analysis and

Design Technique). Основана на понятиях функционального моделирования.  Является методологией, отражающей

такие системные характеристики, как управление, обратная связь и исполнители. Возникла в конце 60-х годов.
Базовой книгой по этому вопросу является: Дэвид А. Марка, Клемент МакГоуэн "Методология структурного анализа и проектирования"(размер файла 3,7 мб). Очень хорошая книга, с подробными примерами.
IDEF0 - методология функционального моделирования. Применяется для описания рабочих процессов (Work Flow). Разработана на основе SADT. По сути одно и тоже. Для изучения могу рекомендовать книгу: "МЕТОДОЛОГИЯ ФУНКЦИОНАЛЬНОГО МОДЕЛИРОВАНИЯ IDEF0. Руководящий документ. РД IDEF0 - 2000". Это стандарт. Неплохо изложен и, главное, по-русски. Хотя, как всякий стандарт, он сильно формализован. По сути, он является точной копией американского стандарта "INTEGRATION DEFINITION FOR FUNCTION MODELING (IDEF0) 1993 December 21 ".

Некоторые примеры

SADT - методология структурного анализа и проектирования  (Structured Analysis and Design Technique). Основана на понятиях функционального моделирования.

Слайд 77DFD - методология моделирования потоков данных. Применяется для описания обмена

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

Является более детальной по отношению к IDEF0 и DFD. Позволяет рассмотреть конкретный процесс с учетом последовательности выполняемых операций.
IDEF1X - методология описания данных. Применяется для построения баз данных.
IDEF4 - объектно-ориентированная методология. Отражает взаимодействие объектов. Удобна для создания программных продуктов на объектно-ориентированных языках (например С++). Пока, на мой взгляд, широкого распространения не нашла. Более широко сейчас используется UML.
ARIS - описывает бизнес-процесс в виде потока последовательно выполняемых работ. Ее использует программное средство ARIS Toolset.
UML - (Unified Modeling Language) язык визуального моделирования, основанный на объектно-ориентированном подходе. UML включает в себя двенадцать типов диаграмм, которые позволяют описать статическую структуру системы и ее динамическое поведение.


DFD - методология моделирования потоков данных. Применяется для описания обмена данными между рабочими процессами. IDEF3 - методология

Слайд 78Средства построения схем
Platinum BPwin или, как он теперь называется, All

Fusion Process Modeller. Поддерживает нотации IDEF0, DFD, IDEF3. Описание BPWin

имеется на страничке http://www.interface.ru/ca/bpwin.htm. Средство удобное, с интуитивно понятным интерфейсом. Позволяет строить иерархию диаграмм. Большой недостаток в том, что созданные объекты нельзя перемещать мышью в другие диаграммы на другой уровень. Нельзя также копировать, т.к. они должны быть уникальными. В результате нельзя создавать стандартные операции.
Rational Rose - средство моделирования компании Rational Software. Использует объектно-ориентированный подход и, в частности, UML. Является частью мощного пакета Rational, включающего целый ряд компонентов, которые позволяют провести разработку, начиная от концептуальной модели, до программного кода. Имеет удобный современный интерфейс.

Средства построения схемPlatinum BPwin или, как он теперь называется, All Fusion Process Modeller. Поддерживает нотации IDEF0, DFD,

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

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


Для правообладателей

Яндекс.Метрика