Основные понятия и определения


Принципы построения и этапы проектирования баз данных

Лекция №8

Средства тестирования

Под тестированием понимается процесс исполнения программы с целью обнаружения ошибок. Регрессионное тести­рование — это тестирование, проводимое после усовершен­ствования функций программы или внесения в нее изменений.

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

QA позволяет начинать тестирование на любой фазе ЖЦ, планировать и управлять процессом тестирования, отображать изменения в приложении и повторно использовать тесты для более чем 25 различных платформ.

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


Содержание лекции

Принципы построения и этапы проектирования баз данных.. 1

Основные понятия и определения. 1

Описательная модель предметной области. 7

 

В науке одним из наиболее сложных для строгого определения является понятие "информация". Согласно киберне­тическому подходу "информация" — первоначальное сообщение данных, сведений, осведомление и т.п. Кибернетика вывела понятие информации за пределы человеческой речи и других форм коммуникации между людьми, связала его с целенаправленными системами любой природы. Информация выступает в трех формах: 1) биологической (биотоки; связи в генетических механизмах); 2) машинной (сигналы в электрических цепях); 3) социальной (движение знаний в общественных системах)".

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

хранение (на некотором носителе информации);

преобразование (в соответствии с некоторым алгоритмом);

передача (с помощью передатчика и приемника по некоторой линии связи).

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

Толковый словарь по информатике определяет понятия "информация" и "данные" несколько иначе:

"информация — 1) совокупность знаний о фактических данных и связях между ними; 2) в вычислительной технике — содержание, присваиваемое данным посредством согла­шений, распространяющихся на эти данные; данные, подлежащие вводу в ЭВМ, хранимые в ее памяти, обрабатываемые на ЭВМ и выдаваемые пользователям";

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

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

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

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

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

Информационное обеспечение (information support) ИС – совокупность единой системы классификации и кодирования информации; унифицированных систем документации и используемых массивов информации.

В этой связи в качестве главных задач создания информационного обеспечения ИС можно выделить:

§ во-первых, определение состава и структуры данных, достаточно "хорошо" описывающих требуемую информацию;

§ во-вторых, обоснование способов хранения и переработки данных с использованием ЭВМ.

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

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

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

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

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

Обеспечение информационных потребностей (запросов) пользователей имеет два аспекта:

§ определение границ конкретной ПрОбл и разработка описания соответствующей информационной модели;

§ разработка БнД, ориентированного на эффективное обслуживание запросов различных категорий пользователей.

С точки зрения целевой направленности профессиональной деятельности принято выделять пять основных категорий пользователей:

§ аналитики;

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

§ прикладные программисты;

§ администраторы;

§ конечные пользователи.

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

Уровень сложности и важности задач информационного обеспечения ИС в рамках рассматриваемой технологии определяет ряд основных требований к БнД:

§ адекватность информации состоянию предметной области;

§ быстродействие и производительность;

§ простота и удобство использования;

§ массовость использования;

§ защита информации;

§ возможность расширения круга решаемых задач.

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

§ сокращение избыточности хранимых данных;

§ устранение противоречивости хранимых данных;

§ многоаспектное использование данных (при однократном вводе);

§ комплексная оптимизация (с точки зрения удовлетворения разнообразных, в том числе и противоречивых, требований "в целом");

§ обеспечение возможности стандартизации;

§ обеспечение возможности санкционированного доступа к данным и др.

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

Структура типового БнД, удовлетворяющего предъявляемым требованиям, приведена на рис. 1, где представлены:

ВС — вычислительная система, включающая технические средства (ТС) и общее программное обеспечение (ОПО);

БД – базы данных;

СУБД – система управления БД;

АБД – администратор баз данных, а также обслуживающий персонал и словарь данных.

Рассмотрим составляющие БнД, представляющие наибольший интерес.

БД – совокупность специальным образом организованных (структурированных) данных и связей между ними. Иными словами, БД — это так называемое датологическое (от англ, data — данные) представление информации о предметной области. Если в состав БнД входит одна БД, банк принято называть локальным; если БД несколько — интегрированным.

Рис. 1. Основные компоненты БнД.

 

СУБД — специальный комплекс программ и языков, посредством которого организуется централизованное управление базами данных и обеспечивается доступ к ним. В состав любой СУБД входят языки двух типов: 1) язык описания данных (с его помощью описываются типы данных, их структура и связи); 2) язык манипулирования данными (его часто называют язык запросов к БД), предназначенный для организации работы с данными в интересах всех типов пользователей.

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

§ об объектах, их свойствах и отношениях для данной ПрОбл;

§ о данных, хранимых в БД (наименование; смысловое описание; структура; связи и т.п.);

§ о возможных значениях и форматах представления данных;

§ об источниках возникновения данных;

§ о кодах защиты и разграничении доступа пользователей к данным и т. п.

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

Основные функции АБД:

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

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

§ решать вопросы, связанные с расширением БД в связи с изменением границ ПрОбл;

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

§ выполнять работы по ведению словаря данных; контролировать избыточность и противоречивость данных, их достоверность;

§ следить за тем, чтобы БнД отвечал заданным требованиям по производительности, т. е. чтобы обработка запросов выполнялась за приемлемое время;

§ выполнять при необходимости изменения методов хранения данных, путей доступа к ним, связей между данными, их форматов; определять степень влияния изменений в данных на всю БД;

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

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

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

На рис. 2 представлен типовой состав группы АБД, отражающий основные направления деятельности специалистов.

Рис. 2.Типовой состав группы АБД.