21298

Моделювання за допомогою методу Баркера

Лекция

Информатика, кибернетика и программирование

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

Украинкский

2013-08-02

243 KB

0 чел.

Лекція 2. Моделювання за допомогою методу Баркера

Моделювання за допомогою методу Баркера

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

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

  Найбільш поширеним засобом моделювання даних є діаграми «сутність-зв'язок» (ERD [ЕРД]). З їх допомогою визначаються важливі для предметної області об'єкти (сутності), їх властивості (атрибути) і відношення один з одним (зв'язки). ERD безпосередньо використовуються для проектування реляційних баз даних.

  Нотація ERD була вперше введена Пітером Ченом (американський вчений, професор) і отримала подальший розвиток у роботах Річарда Баркера. Розглянемо даний метод на прикладі моделювання діяльності компанії з торгівлі автомобілями.

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

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

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

  Перший крок моделювання - вилучення інформації з інтерв'ю і виділення сутностей.

  Сутність (Entity) - реальний або уявний об'єкт, що має істотне значення для аналізованої предметної області, інформація про який підлягає зберіганню (рисунок 2.18).

Рис. 2.18. Графічне зображення сутності

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

  Виходячи з наведеного вище, можна зробити висновок, що сутності, які можуть бути ідентифіковані з головним менеджером - це автомашини і продавці. Продавцю важливі автомашини та пов'язані з їх продажем дані. Для адміністратора важливі покупці, автомашини, продавці і контракти. Виходячи з цього, виділяються 4 сутності (автомашина, продавець, покупець, контракт), які зображуються на діаграмі таким чином (малюнок 2.19).

Рис. 2.19 Основні сутності даної предметної області

  Наступним кроком моделювання є ідентифікація зв'язків.

  Зв'язок (Relationship) - пойменована асоціація між двома сутностями, значима для розглянутої предметної області. Зв'язок - це асоціація між сутностями, при якій, як правило, кожен примірник однієї сутності, званої батьківської сутністю, асоційований з довільним (у тому числі нульовою) кількістю примірників другий сутності, що називається сутністю-нащадком, а кожен примірник сутності-нащадка асоційований точно з одним примірником сутності-предка. Таким чином, примірник сутності-нащадка може існувати тільки при існуванні сутності батька.

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

  Наприклад, зв'язок предмету з контрактом може бути виражена таким чином: • продавець може отримати винагороду за 1 або більше контрактів; • контракт повинен бути ініційований тільки одним продавцем.

  Ступінь зв'язку та обов'язковість графічно зображаються такий спосіб (рис. 2.20).

Рис. 2.20.

  Таким чином, 2 речення, що описують зв'язок предмету з контрактом, графічно будуть виражені таким чином (рисунок 2.21).

Рис. 2.21.

  Описавши також зв'язки інших сутностей, отримаємо наступну схему (рисунок 2.22).

Рис. 2.22.

  Останнім кроком моделювання є ідентифікація атрибутів.

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

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

  Унікальний ідентифікатор - це атрибут або сукупність атрибутів і / або зв'язків, призначена для унікальної ідентифікації кожного примірника даного типу сутності. У разі повної ідентифікації кожний примірник даного типу сутності повністю ідентифікується своїми власними ключовими атрибутами, в іншому випадку в його ідентифікації беруть участь також атрибути іншої сутності-предка (рисунок 2.24).

Рис. 2.23.

Рис. 2.24

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

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

  З урахуванням наявної інформації доповнимо побудовану раніше діаграму (див. малюнок 2.25).

  Крім перерахованих основних конструкцій модель даних може містити ряд додаткових.

  Підтипи і супертіпи: одна сутність є узагальнюючим поняттям для групи подібних сутностей (рисунок 2.26).

  Взаємно виключають зв'язку: кожен екземпляр сутності бере участь тільки в одній зв'язку з групи взаємно виключають зв'язків (рисунок 2.27).

Рис. 2.25.

Рис. 2.26. Підтипи і супертіпи

Рис. 2.27. Взаємно виключають зв'язку

  Рекурсивна зв'язок: сутність може бути пов'язана сама з собою (малюнок 2.28).

  Неперемещаемие (non-transferrable) зв'язку: примірник сутності не може бути перенесений з одного примірника зв'язку в іншій (рисунок 2.29).

Рис. 2.28. Рекурсивна зв'язок

Рис. 2.29. Неперемещаемая зв'язок


 

А также другие работы, которые могут Вас заинтересовать

74192. Visual development languages and tools 32 KB
  But somehow it didn’t hve the sme impct s did integrted development environments IDEs on those newfngled ldquo;microcomputers. Until we hd Windows to provide the bsic ides of displying things in windows PCs hd foot nd hlf bck in the minfrme worldrdquo; he sid. While TurboPscl lunched the ide of n integrted development environment Duntemnn credits Microsoft’s Visul Bsic VB lunched in 1991 with being the first rel IDE. The timing of IDEs ws lso perfect for new form of development: the Web.
74193. Visual development languages and tools 43 KB
  Visul development lnguges nd tools. In the summer of 1991 Microsoft introduced development tool clled Visul Bsic. Visul Bsic revolutionized ll this tedious code. Insted of hving to write lengthy code to mke window respond to mouse Visul Bsic hndled ll of those ctions nd hid them from the progrmmer.
74194. Multiparadigm programming language – Python 50 KB
  Multiprdigm progrmming lnguge – Python.1 Python is generlpurpose progrmming lnguge tht blends procedurl functionl nd objectoriented prdigms. Python is powerful multiprdigm computer progrmming lnguge optimized for progrmmer productivity code redbility nd softwre qulity. Python is populr open source progrmming lnguge used for both stndlone progrms nd scripting pplictions in wide vriety of domins.
74195. Version control software and tools 39 KB
  Version control softwre nd tools1 Version control lso clled subversion control or revision control helps lrge projects from spinning out of control by letting individul progrmmers writers or project mngers tckle project from different ngles without getting in ech other’s wy nd without doing dmge tht cn’t be undone. Version Control lets you trck your files over time. You’ve probbly cooked up your own version control system got ny files like this: Lb1_1. dd version number or dte: Document_V1.
74196. Cloud computing: programming models 35 KB
  Cloud computing: progrmming models1 Cloud computing is computing in which lrge groups of remote servers re networked to llow centrlized dt storge nd online ccess to computer services or resources. Clouds cn be clssified s public privte or hybrid. Cloud computing relies on shring of resources to chieve coherence nd economies of scle similr to utility like the electricity grid over network. t the foundtion of cloud computing is the broder concept of converged infrstructure nd shred services.
74197. History of programming languages and tools 242.5 KB
  History of progrmming lnguges nd tools. PreHistory The first progrmming lnguges predte the modern computer. Figure 1 Punch crd Like mny firsts in history the first modern progrmming lnguge is hrd to identify. To some people the nswer depends on how much power nd humnredbility is required before the sttus of ldquo;progrmming lngugerdquo; is grnted.
74198. Evolution of programming languages and tools 56.5 KB
  The earliest practical form of programming was probably done by Jaquard (1804, France). He designed a loom that performed predefined tasks through feeding punched cards into a reading contraption.
74199. Programming paradigms 45 KB
  Progrmming prdigms. The word progrmming prdigm is used in severl different lthough relted menings in computer science. Progrmming prdigm – pttern tht serves s school of thoughts for progrmming of computers. Progrmming technique – relted to n lgorithmic ide for solving prticulr clss of problems.
74200. Imperative programming languages and tools 78 KB
  Impertive progrmming lnguges nd tools. Progrmming lnguges bsed on the impertive prdigm hve the following chrcteristics: 1 The bsic unit of bstrction is the PROCEDURE whose bsic structure is sequence of sttements tht re executed in succession bstrcting the wy tht the progrm counter is incremented so s to proceed through series of mchine instructions residing in sequentil hrdwre memory cells. Typiclly given vrible my ssume mny different vlues of the course of the execution of progrm just s hrdwre memory cell my contin mny different vlues.1...