В процесі проектування схему даних зручно представляти за допомогою наступних моделей (див. Рис. 8.2):
концептуальна модель служить засобом для отримання знань про предметну область, тобто для роботи з експертами, користувачами, замовниками; ця модель допомагає програмістам розібратися з тією сферою людської діяльності, для якої вони мають створити своє програмне додаток, виявивши там основні сутності і зв'язку між ними; оскільки концептуальна модель призначена для обговорення з непрограмістів, то вона не повинна містити конструкцій і понять, яких останнім не сприйняти;
логічна модель дозволяє повністю задати структуру даних, проте без "прив'язки" до конкретної платформі реалізації; з одного боку, такий опис виходить компактніше, ніж фізична модель, дозволяючи поглянути на схему даних в цілому, без зайвих деталей; з іншого боку, така специфікація може бути в подальшому реалізована для різних СУБД; логічна модель містить абстракції, які вже можуть бути незрозумілі експертам предметної області - ця модель служить для уточнення інформації про предметну область у вигляді, зручному для подальшої реалізації;
фізична модель є описом структури даних в термінах платформи реалізації - конкретної СУБД; ця модель вже містить інформацію про різні деталях реалізації - індексах і ключах, типах атрибутів і т.д. які визначені в термінах цільової мови програмування і т. д .; фізична модель фактично є ДІАГРАМНИХ поданням частини програмного коду, що визначає схему даних.
Мал. 8.2. Різні моделі даних
Далі слід реалізація схеми даних у вигляді:
повної специфікації за допомогою програми на мові програмування, наприклад, на SQL / DDL, з описом усіх таблиць, значень записів за замовчуванням, визначенням прав на таблиці і групи таблиць, збереженими процедурами і тригерами і т. д .; ця специфікація може містити інформацію, яка відсутня у фізичній моделі, так як в останню потрапляє тільки те, що добре виразність за допомогою діаграм сутність-зв'язок;
"Живий" бази даних, що отримується як результат виконання засобами деякої СУБД програми, яка задає схему (SQL / DDL-скрипта); створюється електронне сховище, яке реалізує доступ до даних з боку програмних додатків, а також забезпечує збереження даних після закінчення роботи програми і виключення комп'ютера - це властивість даних зазвичай називають персистентного (persistent).
Приклад концептуальної моделі
У цьому прикладі розглядається схема дані про програму, що автоматизує роботу факультетів університету. Фрагмент відповідної концептуальної моделі представлений на рис. 8.3.
Мал. 8.3. Приклад концептуальної моделі