Розробка стратегії, аналіз, концептуальне моделювання та проектування бази даних проходження практики студентами ВУЗу (на прикладі факул

Автор: Пользователь скрыл имя, 22 Мая 2013 в 18:28, курсовая работа

Описание работы

Мета цієї курсової роботи полягає у розробці бази даних предметної області, яка має відношення до проходження практики студентами у ВУЗах. У загальному випадку створення любої програмної системи, у тому числі і бази даних, проходить складний життєвий цикл. Існує багато методологій по опису життєвого циклу проектування та розробки баз даних. У цій курсовій роботі буде використано методологію, згідно з якої життєвий цикл складається з наступних етапів:
• розробка стратегії автоматизації предметної області; • проведення системного аналізу предметної області;
• концептуальне моделювання предметної області; • логічне та фізичне проектування.

Содержание

ВСТУП 3
1. СТРАТЕГІЯ АВТОМАТИЗАЦІЇ ПРЕДМЕТНОЇ ОБЛАСТІ 3
1.1. Загальні положення 3
1.2. Мета, цілі та задачі створення бази даних 4
1.3. Вимоги до інформаційного забезпечення 4
2. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ 6
2.1. Загальні положення системного аналізу ПО 6
2.2. Загальні положення проходження практики 6
2.3. Системний аналіз предметної області 8
2.3.1. Сутність Навчальний план 8
2.3.2. Сутність Запланована практика 9
2.3.3. Сутність Вид практики 9
2.3.4. Сутність Кваліфікаційний рівень 10
2.3.5. Сутність Спеціальність 10
2.3.6. Сутність Курс 11
2.3.7. Сутність ВУЗ 11
2.3.8. Сутність Інститут 11
2.3.9. Сутність Факультет 12
2.3.10. Сутність Кафедра 12
2.3.11. Сутність Група 13
2.3.12. Сутність Студент 13
2.3.13. Сутність База практики 14
2.3.14. Сутність Договір 14
2.3.15. Сутність Керівник 14
2.3.16. Сутність Практика студента 15
2.3.17. Сутність Звіт 15
2.4. Інформаційно-довідкові задачі 16
3. КОНЦЕПТУАЛЬНЕ МОДЕЛЮВАННЯ ПРЕДМЕТНОЇ ОБЛАСТІ 16
3.1. Теоретичні положення концептуального моделювання 16
3.2. Мова ER—моделювання ПО 17
3.2. Побудова концептуальної моделі проходження практики студентами 19
4. ЛОГІЧНЕ ТА ФІЗИЧНЕ ПРОЕКТУВАННЯ БАЗИ ДАНИХ 19
4.1. Логічне проектування 19
4.2. Фізичне проектування 27
4.2.1. Скрипти створення бази даних 27
4.2.2. Інформаційно–пошукові запити 30
4.2.2.1. Інформаційні запити, що пов’язані з проходженням практики 30
4.2.2.2. Інформація організаційного характеру 30
4.2.2.3. Інформація про керівників практики 31
ВИСНОВКИ 31

Работа содержит 1 файл

Пример проектной курсовой работы.doc

— 507.50 Кб (Скачать)

Проведений аналіз предметної області  дозволив виділити перелік сутностей, що беруть участь у організації керування проходженням практики на факультеті (у Вузі). Аналіз цих сутностей та їх атрибутів, дозволяє виділити декілька класів типових інформаційно-довідкових задач.

По-перше, інформація, що пов’язана  з самою практикою:

  • надання повної та несуперечливої інформації по групам студентів та окремим студентам щодо стану пройдених практик, та тих, що проводяться. Для окремого студента надання інформації по його власним даним та даним, що відносяться до пройдених практик. А також інформації по результатам проходження практики студентом;
  • надання інформації по видам, строкам проходження практики та її відповідність до курсів навчання.

По-друге, це інформація організаційного  характеру:

  • надання інформації по базам практики (підприємствам, організаціям або установам) з якими укладено договори на проходження практики студентами;
  • надання інформації по складам груп, що проходять практику (або проходили);
  • надання інформації по договорам, що підписані з базами практики.

По-третє, це інформація, що відноситься до процесу керування практикою:

  • надання інформації по керівникам практики;
  • відповідність груп студентів та керівників, під керівництвом яких проводилась практика.

3. Концептуальне моделювання предметної  області

3.1. Теоретичні положення концептуального моделювання

Етап концептуального моделювання - це побудова строго опису ПО в термінах деякої формальної мови. На підставі змістовного  опису ПО, побудованого в результаті виконання етапу аналізу, будується  строгий формальний опис інформаційного забезпечення ПО, що автоматизується.

Концептуальне моделювання призначене для інтегрованого опису інформаційного забезпечення ПО, що автоматизується, не залежно від її сприйняття окремими користувачами й від способів її реалізації в комп'ютерній системі.

Властивостями концептуальної моделі є наступні.

  • Це основа однозначного розуміння ПО всіма зацікавленими особами. У розробку складної системи баз даних включається великий колектив: експерти, системні аналітики, проектувальники, розроблювачі, ті, хто займається впровадженням і супроводом. Всі вони повинні однозначно розуміти, що ж собою представляє ПО, що автоматизується, у який зміст використовуваних понять, як вони взаємозалежні між собою, які всілякі обмеження в ПО мають місце, які вимоги висуваються до різних функціональних компонентів ПО й т.д. Все це повинна забезпечувати концептуальна модель. Це та єдина платформа, що дозволяє всім розмовляти на одній й тіж мові й однаково розуміти один одного.
  • Вона включає тільки концептуально релевантні аспекти ПО, крім, таким чином, БУДЬ-ЯКИХ аспектів зовнішнього або внутрішнього представлення даних. Це означає, по перше, що концептуальна модель жодним чином не повинна фіксувати конкретні потреби окремих груп користувачів або додатків. Вона повинна фіксувати, що собою представляє ПО в цілому, а не з погляду інтересів або потреб користувачів. Вона повинна інтегрувати думки, погляди й інтереси окремих користувачів, але саме інтегрувати, для одержання цілісної картини, а не виражати їхні конкретні погляди, побажання думки. По-друге, у концептуальній моделі ПО ні яким чином не повинні відбиватися які-небудь аспекти майбутньої реалізації БД у комп'ютерному середовищі. Усе, що пов'язане з такими поняттями, як способи зберігання, методи доступу, ефективність виконання, оптимізація й т.д. перебувають за межами концептуальної моделі.
  • Це засіб визначення припустимої еволюції БД. У процесі експлуатації БД може розвиватися, однак цей розвиток може вироблятися тільки в тих межах, які припустимі з погляду концептуальної моделі. Розвиток бази даних, що вимагає змін у концептуальній схемі, означає ні що інше, як переосмислювання ПО й завдань автоматизації й побудови на цій основі нової концептуальної моделі ПО.
  •  Забезпечення незалежності даних. Наявність концептуальної моделі, яка не залежить від зовнішнього представлення користувачами ПО, та різними аспектами реалізації БД є надійна основа вирішення задач досягнення логічної та фізичної незалежності програм від даних.
  •  Централізоване адміністрування. Саме через концептуальну схему здійснюється адміністрування базами даних.
  •  Стійкість. Концептуальна схема жодним чином не повинна змінюватися на догоду вимог тих або інших користувачів  або вимог зберігання даних. Будучи моделлю ПО, вона повинна змінюватися тільки в тому випадку, коли входить у суперечність із нею.

Ключовими результатами етапу концептуального  моделювання э наступні:

  • формальний опис інформаційного забезпечення предметної області.
  • докладний і строгий опис сховищ даних.
  • детальний опис потоків даних.
  • детальний опис ієрархії розв'язуваних завдань із детальною специфікацією всіх завдань.
  • детальний опис діючих у предметній області правил і обмежень.

Існує безліч мов, які претендують  на роль мов концептуального моделювання  ПО. У цей час найбільш популярними  й повсюдно використовуваними є  мови, що ставляться до класу, так званих, графічних мов, що оперують з такими поняттями, як сутність-атрибут-зв'язок. У наступному розділі ми коротко опишемо одну з таких мов яка отримала назву мови ER-моделювання предметних областей. Саме ця мова буде використана для представлення концептуальної моделі ПО проходження практики студентами.

3.2. Мова ER—моделювання ПО

Мова ER-моделювання (Entity Relationship Modeling) — це мова визначення інформаційних потреб організації. Мова базується на концепції, відповідно до якої інформаційне забезпечення будь-якої предметної області представляється як сукупність взаємозалежних об'єктів. Процес моделювання полягає у виділенні сутностей ПО, установлення властивостей виділених сутностей і виявлення існуючих між ними зв'язків.

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

Розглянемо  коротко основні  властивості,  формальні позначення  й  визначення сутностей, зв'язків, атрибутів.

Сутність — це реальний або уявлюваний  об'єкт інтересу, інформація про який підлягає збору або зберіганню. Графічно сутність представляється пойменованим прямокутником із закругленими кутами. Ім'я сутності дається в  однині й пишеться заголовними буквами. Ім'я  сутності  повинне  бути таким, щоб представляти тип або клас об'єктів, а не окремий екземпляр. Будь-який  предмет або об'єкт може бути представлений тільки однією сутністю. Інакше кажучи, сутності завжди є  взаємовиключними.

Зв'язок — це деяка пойменована асоціація, що представляє інтерес, двох сутностей. Зв'язок є бінарним в тому розумінні, що це завжди асоціація в точності двох сутностей або сутності із самої собою. Кожний зв'язок має два кінці, для кожного з яких є свої:

  •  ім'я;
  •  ступінь/потужність;
  •  факультативність — обов'язкова або факультативна.

Ці властивості використовуються для опису асоціації з кожної зі сторін, для завдання зв'язку повинні бути визначені обидва її кінця.

На  діаграмах зв'язки представляються  лініями, що з'єднують два прямокутники сутностей. Одним з видів зв'язку представлений на наступному рис. Це зв'язок зі ступенем багато-до-одному, обов'язковий в закінченні зі ступенем "багато", і факультативний на протилежному кінці. 

 

Рис. Приклад зв'язку

У закінчення зі ступенем „багато” закінчення зв'язку з'єднується із прямокутником у трьох точках. У закінчення зі ступенем „один” з'єднання здійснюється тільки в одній точці. Та половина зв'язку, що перебуває з боку обов'язкового її  кінця,  рисується суцільною лінією, а та, що з факультативної сторони, —переривчастої.

При читанні зв'язку з обов'язкової  сторони  перед її  ім'ям використовуються слова  "у всіх випадках" або "завжди"; для факультативної сторони використовуються слова "у загальному випадку" або "іноді". Ступінь "багато"  читається як  "один або декілька", а ступінь "один" — "один і тільки один".

Атрибут — це будь-яка деталь або аспект, що сприяють якісному або кількісному опису сутності, її  ідентифікації, класифікації або відбиттю її стану. Атрибутом  може бути текст, число, картинка, почуття, запах. Загалом, усе, що потрібно. Займаючись обробкою даних, ми намагаємося в  основному обмежитися  текстами й числами.

Для подання атрибута пишеться його ім'я малими літерами в однині, можливо, із прикладами значень. Атрибути  необов'язково  показувати  на діаграмі сутностей  і зв'язків, однак додавання до сутності одного-двох атрибутів у  період формування моделі, як правило, виявляється досить  корисним.

Атрибут описує одну сутність. Атрибут  повинен описувати ту сутність, до якої він віднесений. У  кожний  момент  часу сутність може володіти лише одним значенням атрибута.

Атрибут, значення якого може бути відсутнім, називається факультативним. Він позначається символом "°" перед його ім'ям. Атрибут, значення якого повинне бути завжди відомо, називається обов'язковим, і позначається зірочкою "*" перед ім'ям. Обов'язковість означає, що сутність може бути визначена тоді й тільки тоді, коли відомі значення всіх її обов'язкових атрибутів. Всі атрибути унікального ідентифікатора повинні бути обов'язковими.

Кожна сутність повинна однозначно ідентифікуватися  за допомогою  деякої комбінації атрибутів і/або  зв'язків. Тому серед можливих атрибутів сутності завжди повинні бути знайдені такі атрибути, які дозволяють неї ідентифікувати. Унікальний ідентифікатор представляється на ER-Діаграмі вказівкою символу "#" перед ім'ям кожного атрибута, що входить у даний ідентифікатор. Значення усіх інших атрибутів повинні залежати від усього унікального ідентифікатора.

Дуже важливо чітко розуміти, що всі визначення сутності, зв'язку, атрибута й унікального ідентифікатора, які ми тільки що розглянули, суть визначення типу, або класу, поняття, а не екземпляра.  Екземпляри сутностей і зв'язків будуть представлені в самій базі даних..

3.2. Побудова концептуальної моделі  проходження практики студентами

На основі проведеного аналізу  предметної області була побудована концептуальна модель з використанням мови ER–моделювання. Концептуальна модель наведена на наступному рисунку. Дамо декілька зауважень:

  • По–перше, ця модель не містить опису атрибутів сутностей у зв’язку з відсутністю місця для їх зображення. Передбачається, що атрибути сутностей разом з їх властивостями (бізнес–правилами) детально описані на етапі аналізу.
  • По–друге, мова ER–моделювання не передбачає детального представлення інформаційно–довідкових задач. Ми припускаємо, що вони мають звичайний текстовий опис, який представлений на етапі аналізу.
  • І, по-третє, наша концептуальна модель не містить інших складових, а саме, докладний і строгий опис сховищ даних, та детальний опис потоків даних. Це не було зроблено, так як опис цих складових концептуальної моделі виходить за рамки курсової роботи.

4. Логічне та фізичне проектування  бази даних

Завдання цього етапу полягає  у проведенні логічного та фізичного  проектування бази даних.

Логічне проектування — це розробка логічної структури системи баз даних без прив'язки до конкретної СУБД, структур збереження, методам доступу і т.д..

Фізичне проектування – це проект системи бази даних для конкретної СКБД. Під час виконання даного етапу модель сутностей і зв'язків перетворюється в схему бази даних і специфікації позамашинного збереження.

4.1. Логічне проектування

У якості логічній моделі бази даних  була обрана реляційна модель, оскільки саме реляційна модель використовується у більшості розвинених СКБД.

Для перетворення концептуальної моделі, представленої у вигляді мови ER–моделювання, у реляційну модель, був використаний наступний алгоритм.

  • Крок 1. Перетворення сутностей у таблиці. Кожна сутність перетворюється у таблицю. Ім’я сутності представляється у вигляді семантично осмисленого імені у латинському алфавіті.
  • Крок 2. Перетворення атрибутів у стовпці. Кожний атрибут перетвориться в стовпець. Ім’я атрибуту представляється у вигляді семантично осмисленого імені у латинському алфавіті. У цей момент уточнюється формат представлення значень стовпця. Факультативні атрибути стають NULL-стовпцями. Обов'язкові атрибути стають NOT NULL-стовпцями.
  • Крок 3. Подання унікальних ідентифікаторів ключами таблиць. Складові унікального ідентифікатора сутності стають первинним ключем таблиці. Нагадаємо, що сутність може мати більш ніж один унікальний ідентифікатор Тому вибирається той, котрий використовується найбільше часто. Всі інші унікальні ідентифікатори приймають обмеження цілісності UNIQUE NOT та NOT NULL.

 

 

 

Рис. Концептуальна ER-модель проходження  практики студентами

Сутність може унікально ідентифікуватися комбінацією атрибутів і/або  зв'язків. При  використанні в ідентифікаторі сутності зв'язку до складу первинного ключа включається зовнішній ключ, який посилається на ту таблицю, з якою пов’язаний той або інший зв’язок.

  • Крок 4. Перетворення зв'язків багато-до-одного й один-до-одного в зовнішні ключі. Зв'язки типу багато-до-одного й один-до-одного породжують зовнішні ключі. Інакше кажучи, необхідно взяти унікальні ідентифікатори  кожної сутності, розташованої в закінчення зв'язку зі ступенем один, і ввести його у відношення, розташоване з боку зв'язку "багато" як стовпці. Факультативним зв'язкам відповідають NULL-стовпці. Обов'язковим зв'язкам відповідають NOT NULL-стовпці.
  • Крок 5. Введення спеціальних первинних ключів. Для більш адекватного відображення логічного проекту бази даних у фізичний, вводимо у всі таблиці один спеціальний стовпець з обмеженням цілісності первинного ключа. Всі ті стовпці, які мають властивість первинного ключа згідно з концептуальною моделлю, набувають обмеження цілісності UNIQUE та NOT NULL.

Повна логічна база даних на основі концептуальної моделі з урахуванням  обмежень цілісності та наведеного вище алгоритму детально представлена в наступних таблицях.

Таблиця 1. Відношення сутності НАВЧАЛЬНИЙ ПЛАН

EDU_PLAN

Ім’я стовпця

Тип

Довжина

Призначення

Обмеження цілісності стовпців

EPID

ціле число

10

Унікальний ID

Первинний ключ

Num

строка

8

Номер навч. плану 

Унікальний, обов’язковий

Ass_date

дата

 

Дата затвердження

Обов’язковий

Prs

строка

40

Особа, що затвердила

Обов’язковий

SPID

ціле число

10

Зв’язок зі спеціальністю

Зовнішній ключ, що посилається на первинний ключ відношення SPECIALITY. Обов’язковий


 

Таблиця 2. Відношення сутності ЗАПЛАНОВАНА ПРАКТИКА

PLAN_PRACTICE

Ім’я стовпця

Тип

Довжина

Призначення

Обмеження цілісності стовпців

PPID

ціле число

10

Унікальний ID

Первинний ключ

Dur_type

строка

1

Одиниці виміру терміну проходження практики. Приймає значення „Д”–дні, „Т”–тижні

Обов’язковий

Duration

ціле число

3

Термін проходження практики

Обов’язковий

QLID

ціле число

10

Зв’язок з кваліфікаційним рівнем

Зовнішній ключ, що посилається на первинний ключ відношення QUALI_LEVEL. Обов’язковий

CUID

ціле число

10

Зв’язок з курсом

Зовнішній ключ, що посилається на первинний ключ відношення COURSE. Обов’язковий

PTID

ціле число

10

Зв’язок з видом практики

Зовнішній ключ, що посилається на первинний ключ відношення PRAC_TYPE. Обов’язковий

EPID

ціле число

10

Зв’язок з навчальним планом

Зовнішній ключ, що посилається на первинний ключ відношення EDU_PLAN. Обов’язковий

Обмеження цілісності таблиці

Сукупність стовпців (CUID, EPID) має обмеження унікальності та обов’язковості. 

Информация о работе Розробка стратегії, аналіз, концептуальне моделювання та проектування бази даних проходження практики студентами ВУЗу (на прикладі факул