|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Примітка. Термін "моделювання" має досить багато смислових відтінків, наприклад, моделювання одягу або моделювання зачіски
Термін "моделювання" має досить багато смислових відтінків, наприклад, моделювання одягу або моделювання зачіски. Не заперечуючи важливості цих сфер творчості, слід зазначити, що всі ці аспекти моделювання лежать за межами книги. Розгляд особливостей мови UML пов'язаний з питаннями логічного або інформаційного моделювання систем. Найзагальнішою моделлю системи є так звана модель "чорного ящика". У цьому випадку система представляється у вигляді прямокутника, внутрішній устрій якого прихований від аналітика або невідомий. Проте система не є повністю ізольованою від зовнішнього середовища, оскільки остання надає системі деякі інформаційні або матеріальні дії. Такі дії отримали назву вхідних дій. У свою чергу, система також виробляє на середовище або інші системи певні інформаційні або матеріальні дії, які отримали назву вихідних дій. Графічно дана модель може бути зображена таким чином (рис. 3.7). Цінність моделей, подібних до моделі "чорного ящика", вельми умовна. Мимоволі може виникнути асоціація з "Чорним квадратом". Проте якщо оцінка образотворчих особливостей останнього не входить в завдання системного аналізу, то загальна модель системи містить деяку важливу інформацію про функціональні особливості даної системи, які дають уявлення про її поведінку. Рис. 3.7. Графічне зображення моделі системи у вигляді "чорного ящика" Дійсно, окрім найзагальнішої інформації про те, на які дії реагує система, і як виявляється ця реакція на навколишні об'єкти і системи, іншої інформації ми отримати не можемо. В рамках системного аналізу розроблені певні методологічні засоби, що дозволяють виконати подальшу конкретизацію загальної моделі системи. Деякі з графічних засобів представлення моделей систем будуть розглянуті в розділі 6. Процес розроблення адекватних моделей і їх подальшого конструктивного застосування вимагає не тільки знання загальної методології системного аналізу, але й наявність відповідних образотворчих засобів або мов для фіксації результатів моделювання і їх документування. Очевидно, що природна мова не цілком підходить для цієї мети, оскільки володіє неоднозначністю і невизначеністю. Для побудови моделей були розроблені достатньо серйозні теоретичні методи, засновані на розвитку математичних і логічних засобів моделювання, а також запропоновані різні формальні і графічні нотації, що відображають специфіку вирішуваних завдань. Важливо уявляти, що уніфікація будь-якої мови моделювання тісно пов'язана з методологією системного моделювання, тобто з системою переконань і принципів розгляду складних явищ і об'єктів як моделей складних систем. Висновки 1. Основою процедурно-орієнтованої методології розроблення програм була процедурна або алгоритмічна організація структури програмного коду. 2.. Основою розбиття програми на дрібніші фрагменти стала процедурна декомпозиція, при якій окремі частини програми або модулі були сукупністю процедур для вирішення деякої сукупності завдань. Головна особливість процедурного програмування полягає в тому, що програма завжди має початок в часі або початкову процедуру (початковий блок) і закінчення (кінцевий блок). При цьому вся програма може бути представлена візуально у вигляді направленої послідовності графічних примітивів або блоків. 3. Фундаментальними поняттями ООП є поняття класу і об'єкту. При цьому під класом розуміють деяку абстракцію множини об'єктів, які мають загальний набір властивостей і володіють однаковою поведінкою. Кожний об'єкт у цьому випадку розглядається як екземпляр відповідного класу. Об'єкти, які не мають повністю однакових властивостей або не володіють однаковою поведінкою, за визначенням, не можуть бути віднесені до одного класу. 4. Основними принципами ООП є успадкування, інкапсуляція і поліморфізм. 5. Виділення початкових або базових компонент предметної області, необхідних для вирішення того або іншого завдання, представляє, в загальному випадку, нетривіальну проблему. Складність даної проблеми виявляється в неформальному характері процедур або правил, які можна застосовувати для цієї мети. 6. Під життєвим циклом програми розуміють сукупність взаємозв'язаних і наступних в часі етапів, починаючи від розроблення вимог до неї і закінчуючи повною відмовою від її використання. Контрольні питання 1. Методологія об'єктно-орієнтованого аналізу. 2. Методологія об'єктно-орієнтованого проектування. 3. Методологія системного аналізу. 4. Методологія системного моделювання. РОЗДІЛ 4. Історичний огляд розвитку структурної та об'єктно-орієнтованої методологій проектування інформаційних систем à Математичні основи: теорія множин, теорія графів, семантичні мережі à Структурний системний аналіз à Основні етапи розвитку UML
У розділі описано передумови виникнення структурної та об’єктно-орієнтованої методології 4.1. Передісторія. Математичні основи Представлення різних понять навколишнього світу за допомогою графічної символіки йде своїми витоками в глибоку давнину. Як приклади можна привести умовні позначення знаків Зодіаку, магічні символи різних окультних доктрин, графічні зображення геометричних фігур на площині і в просторі. Важливою перевагою тієї або іншої графічної нотації є можливість образного закріплення змістовного сенсу або семантики окремих понять, що істотно спрощує процес спілкування. 4.1.1. Теорія множин Однією з найвідоміших систем графічних символів, що зробила безпосередній вплив на розвиток наукового мислення, слід відзначити мову діаграм англійського логіка Джона Венна (1834-1923). Діаграми Венна застосовуються для ілюстрації основних теоретико-множинних операцій, які є предметом спеціального розділу математики – теорії множин. Оскільки багато загальних ідей моделювання систем мають адекватний опис в термінології теорії множин, розглянемо основні поняття даної теорії, що мають відношення до сучасних концепцій і технологій дослідження складних систем. Початковим поняттям теорії множин є саме поняття множина, під якою прийнято розуміти деяку сукупність об'єктів, що володіють спільними ознаками. При цьому не робиться ніяких припущень ні про природу цих об'єктів, ні про спосіб їх включення в дану сукупність. Окремі об'єкти, які утворюють ту чи іншу множину, називаються елементами цієї множини. Питання "Чому ми розглядаємо ту або іншу сукупність елементів як множину?" не вимагає відповіді, оскільки у загальне визначення множини не входять ніякі додаткові умови на включення окремих елементів у множину. Якщо нам хочеться, наприклад, розглянути множину, що складається з трьох елементів: "сонце, море, апельсин", то ніхто не зможе заборонити це зробити. Прикладів конкретних множин можна навести достатньо багато. Це і множина квартир житлового будинку, і множина натуральних чисел. Сукупність комп'ютерів в офісі теж є множиною, хоча, можливо, вони і з’єднані між собою в мережу. Множини позначаються прописними буквами латинського алфавіту. При цьому окремі елементи позначаються рядковими буквами, іноді з індексами, які вносять деяку впорядкованість в послідовність розгляду цих елементів. Наприклад, множину квартир 100-квартирного житлового будинку з використанням спеціальних позначень можна записати таким чином: A={a1, а2, а3,..., а100}. Тут фігурні дужки служать позначенням сукупності елементів, кожний з яких має свій унікальний числовий індекс. Важливо розуміти, що для даної конкретної множини елемент a10 позначає окрему квартиру у цьому житловому будинку. При цьому зовсім необов'язково, щоб номер цієї квартири був рівний 10, хоча з погляду зручності це було б бажано. Прийнято називати елементи окремої множини такими, що належать цій множині. Такий факт записується за допомогою спеціального символу "є", який так і називається – символ приналежності. Наприклад, запис а10єА означає той простий факт, що окрема квартира (можливо, з номером 10) належить множині квартир деякого житлового будинку. Наступним важливим поняттям, яке служить прототипом багатьох конкретніших термінів під час моделюванні складних систем, є поняття підмножини. Якщо є деяка сукупність, що розглядається як множина, то будь-яка її частина буде підмножиною. Так, наприклад, сукупність квартир на першому поверсі житлового будинку є ніщо інше, як підмножина прикладу, що розглядався нами вище. Ситуація стає не такою тривіальною, якщо розглядати множину абстрактних понять, таких як сутність або клас. Для позначення підмножини використовується спеціальний символ. Якщо стверджується, що множина А є підмножиною множини В, то це записується як АÍВ. Запом’ятовувати подібні значки не завжди зручно, тому з часом була запропонована спеціальна система графічних позначень. Як же використовуються діаграми Венна в теорії множин? Виявляється, той факт, що деяка сукупність елементів утворює множину, можна позначити графічно у вигляді круга. У цьому випадку коло має змістовний сенс або, виражаючись точнішою мовою, семантику межі даної множини. Очевидно, що розгляд відношення включення елементів однієї множини в іншу можна зобразити графічно таким чином (рис. 4.1). На цьому рисунку більшій множині В відповідає зовнішній круг, а меншій множині (підмножині) А – внутрішній. Рис. 4.1. Діаграма Венна для відношення включення двох множин Так само можна зобразити і основні теоретико-множинні операції. Так, перетином двох множин А і В називається деяка третя множина С, яка складається з тих і лише тих елементів двох початкових множин, які одночасно належать і множині А, і множині В. Для цієї операції також є спеціальне позначення: С=АÇВ. Наприклад, якщо як множину А для операції перетину розглянути множину співробітників деякої фірми, а як множину В – множину всіх чоловіків, то неважко здогадатися, що множина С складатиметься з елементів всіх співробітників чоловічої статі даної фірми. Операція перетину множин також може бути проілюстрована за допомогою діаграм Венна (рис. 4.2). На цьому малюнку умовно зображено дві множини А і В, затінена область якраз і відповідає множині С, що є перетином множин А і В. Рис. 4.2 Діаграма Венна для перетину двох множин Наступною операцією, яка також допускає предметну інтерпретацію, є операція об'єднання множин. Під об'єднанням двох множин А і В розуміється деяка третя множина, хай це буде D, яка складається з тих і лише тих елементів, які належать або А, або В, або їм обом одночасно. Звичайно, спеціальне позначення є і для цієї операції: D= AÈB. Так, якщо множина А складається з клавіатури і мишки, а множина В – з системного блоку і монітора, то неважко здогадатися, що їх об'єднання, тобто множина D, утворює основні складові персонального комп'ютера. І для цієї операції є умовне графічне подання (рис. 4.3). Рис. 4.3. Діаграма Венна для об'єднання двох множин На цьому рисунку об'єднанню двох початкових множин також відповідає затемнена область, тільки розміри і форма її відрізняються від випадку перетину двох множин на попередньому рисунку. Останнє, на що слід було б звернути увагу при такому короткому знайомстві з основами теорії множин – це на так звані поняття потужності множини і відношення множин. Хоча існують і інші операції над множинами, а також цілий ряд додаткових понять, їх розгляд виходить за рамки цієї книги. Що стосується поняття потужності множини, то цей термін важливий для аналізу кратності зв'язків, оскільки асоціюється з кількістю елементів окремої множини. У випадку скінченної множини ситуація дуже проста, оскільки потужність скінченної множини рівна кількості елементів цієї множини. Таким чином, повертаючись наприклад до множини А квартир житлового будинку, можна сказати, що її потужність рівна 100. Ситуація ускладнюється, коли розглядаються нескінченні множини. Обмежимо наш розгляд нескінченними множинами зліченної потужності. Такими множинами прийнято вважати множини, що містять нескінченне число елементів, які, проте, можна перенумерувати натуральними числами 1, 2, 3 і так далі. При цьому важливо мати на увазі, що досягти останнього елементу при такій нумерації принципово неможливо, інакше множина виявиться скінченною. Наприклад, є всі підстави вважати множину всіх зірок нескінченною, хоча багато хто з них має свою унікальну назву. Також фундаментальним поняттям є відношення множин, яке часто замінюється термінами зв'язок або співвідношення. Цей термін веде своє походження від теорії множин і служить для позначення будь-якої підмножини впорядкованих кортежів, побудованих з елементів деяких початкових множин. При цьому під кортежем розуміється просто набір або список впорядкованих елементів. Іншими словами, якщо розглядати перший елемент кортежу, то він завжди буде першим в списку елементів, другий елемент кортежу буде другим елементом в списку і так далі. Кортеж з двох елементів зручно позначати як <a1, a2>, з трьох елементів – <a1, a2, a3> і так далі. При цьому окремі елементи можуть належати як одній і тій же множині, так і різним множинам. Важливо мати на увазі, що порядок вибору елементів для побудови кортежів строго фіксований для конкретного подання. Мова йде про те, що перший елемент завжди вибирається з першої множини, другий – з другої, і т. д: Відношення у цьому випадку характеризуватиме спосіб або семантику вибору окремих елементів з одного або декількох множин для подібного впорядкованого списку. У цьому сенсі взаємозв'язок є окремим випадком відношення, про що буде сказано у подальшому. Діаграми Венна не призначені для ілюстрації відношень у загальному випадку. Проте відношення послужили початковою ідеєю для розвитку іншої теорії, яка навіть у своїй назві несе відбиток графічної нотації, а саме – теорії графів. У зв'язку з цим найважливішим є той факт, що теоретико-множинні відношення послужили також основою для розроблення реляційної алгебри в теорії реляційних баз даних. Розвиток останньої привів до того, що останніми роками саме реляційні СКБД конкретних фірм домінують на ринку відповідного програмного забезпечення. 4.1.2. Теорія графів Граф можна розглядати як графічну нотацію для бінарного відношення двох множин. Бінарне відношення складається з таких кортежів або списків елементів, які містять тільки два елементи деякої множини. Хоча основні поняття теорії графів отримали свій розвиток задовго до появи теорії множин як самостійної наукової дисципліни, формальне визначення графа зручно подати в теоретико-множинних термінах. Графом називається сукупність двох множин: множина крапок або вершин і множина ліній, що сполучають їх, або ребер. Формально граф задається у вигляді двох множин: G=(V, Е), де V={v1v2..., vn} – множина вершин графа, а Е={ е1, е2..., еm} – множина ребер графа. Натуральне число n визначає загальну кількість вершин конкретного графа, а натуральне число m – загальну кількість ребер графа. Слід відмітити, що у загальному випадку не всі вершини графа можуть з'єднуватися між собою, що ставить у відповідність кожному графові деяке бінарне відношення P, що складається зі всіх пар виду <vi, vj>, де vi, vj є V. При цьому пара <vi, vj> і, відповідно, пара <vj, vi> належать відношенню P в тому і лише в тому випадку, якщо вершини vi і vj з'єднуються в графові G деяким ребром ekєЕ. Вершини графа зображаються крапками, а ребра – відрізками прямих ліній. Поряд з вершинами і ребрами записуються відповідні номери або ідентифікатори, що дозволяють їх ідентифікувати однозначним чином. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.008 сек.) |