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

Автор работы: Пользователь скрыл имя, 15 Декабря 2011 в 20:07, курсовая работа

Краткое описание

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

Содержимое работы - 1 файл

введ, главы, закл, литра.doc

— 326.00 Кб (Скачать файл)

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

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

   -корректность  схемы базы данных, то есть адекватное отображение;

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

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

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

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

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

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

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

   3.Описание данных отчуждается от программ и данных, оно существует как автономный информационный ресурс.

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

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

   6.Должна обеспечиваться возможность совместного использования данных многими пользователями одновременно.

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

   8.Управление данными должно осуществляться с учетом их "тонкой структуры (в отличие от файловой системы).

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

2.2 Проблемы программирования баз данных

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

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

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

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

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

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

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

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

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

3 ПОРЯДОК ПРОГРАММИРОВАНИЯКОНЦЕПТУАЛЬНОЙ МОДЕЛИ БАЗЫ ДАННЫХ

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

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

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

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

   1 этап - сбор и содержательный анализ  априорной (доопытной) информации  о предметной области и прикладных  задачах пользователей; 

   2 этап - анализ данных и синтез  концептуальной модели.

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

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

   Визуальный  контроль осуществляется для проверки чёткости заполнения, наличия реквизитов и отсутствие пропусков данных.

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

   Комплектование  данных - это разбиение больших  объёмов данных на комплекты (пачки), чтобы облегчить их поиск.

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

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

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

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

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

   Итак, проектирование концептуальной модели базы данных:

1.Анализ данных: сбор основных данных (например, объекты, связи между объектами).

   Определим первоначальные данные:

   -Заявки - поступающие от магазинов на определённый период.

   -Договора - заключаются с поставщиками на определённый вид товара.

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

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

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

   -Накладные -  создаются  на  основании  получения  заказа  о  заказчика,  для отгрузки.

Информация о работе Основные понятия и принципы программирования баз данных