Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



Конспект лекцій з дисципліни «Автоматизація проектування комп'ютерних систем» для студентів напряму 050102 «Системне програмування»

Конспект лекцій з дисципліни «Автоматизація проектування комп'ютерних систем» для студентів напряму 050102 «Системне програмування»




Сторінка4/9
Дата конвертації03.04.2017
Розмір4.22 Mb.
ТипКонспект
1   2   3   4   5   6   7   8   9

1.4Контрольні питання


  1. Що таке ?



Лекция II.2. Проектування програмного забезпечення (ПО)

2.1Моделювання в проектуванні ПО

2.1.1Значення моделювання


Ми будуємо моделі для того, щоб краще розуміти систему, що розробляється.

Моделювання дозволяє вирішити чотири різні задачі:



  • візуалізувати систему в її поточному або бажаному для нас стані;

  • визначити структуру або поведінку системи;

  • отримати шаблон, що дозволяє потім сконструювати систему;

  • документувати рішення, що приймаються, використовуючи отримані моделі.

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

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

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



Формальне і неформальне моделювання. На практиці навіть при реалізації простого проекту розробники в тій чи іншій мірі застосовують неформальне моделювання.
Програміст, також програмник[Джерело?] - фахівець, що займається програмуванням, виконує розробку програмного забезпечення (в простіших випадках - окремих програм) для програмованих пристроїв, які, як правило містять один чи більше CPU.
Для візуалізації частини системи її проектувальник може намалювати щось на дошці або на клаптику паперу. Неформальні моделі створюються для одноразового застосування і не забезпечують спільної мови.

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


2.1.2Принципи моделювання ПО


Моделювання базується на чотирьох принципах:

1) вибір моделі чинить визначальний вплив на підхід до вирішення проблеми і на те, як виглядатиме це рішення.

2) кожна модель може бути втілена з різною мірою абстракції.

3) кращих моделі – ті, що ближче до реальності.

4) використання сукупності декількох моделей, незалежних один від одного.

2.2Об'єктне моделювання


У різних областях проектування створюють величезну кількість моделей. Так в будівництві найчастіше це:

  • структурні моделі, що дозволяють візуалізувати і специфікувати частини системи і те, як вони співвідносяться один з одним.

  • динамічні моделі, якщо потрібно вивчити поведінку конструкції при землетрусі.

При розробці програмного забезпечення теж існує декілька підходів до моделювання.
Землетру́си (англ. earthquake, earth shock; нім. Erdbeben n, unterirdische Stöß m) - короткотривалі, раптові струси земної кори, викликані перемінним переміщенням мас гірських порід у надрах Землі, чому сприяє порушення розтяжності осередку гірських порід і виникнення сейсмічних хвиль.
Розробка програмного забезпечення (англ. software engineering, software development) - це рід діяльності (професія) та процес, спрямований на створення та підтримку працездатності, якості та надійності програмного забезпечення, використовуючи технології, методологію та практики з інформатики, керування проектами, математики, інженерії та інших областей знання.
Найважливіші з них – алгоритмічний і об'єктно-орієнтований підходи.

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

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



Об'єкт – це суть, зазвичай вибрана із словника предметної області або рішення.

Клас – це опис безлічі однотипних об'єктів.

Кожен об'єкт має властивості:



  • ідентичність (особливості, що відрізняють його від інших об'єктів)

  • стан (дані характеризують його в даний момент часу)

  • поведінка (дані про взаємодію з іншими об'єктами).
    Момент часу - точка на часовій осі. Про події, що відповідають одному моменту часу, говорять як про одночасні.

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



Каталог: bitstream -> NAU -> 19325
NAU -> Практикум "Professional English" призначений для аудиторної та самостійної роботи з англійської мови професійного спрямування студентів спеціальності "
NAU -> Пакет комплексних контрольних робіт
NAU -> Пакет комплексних контрольних робіт
NAU -> Конспект лецій навчальної дисципліни
NAU -> Розробка додатків для Windows Runtime (Windows 8)
NAU -> Методичні вказівки до виконання лабораторних робіт і завдання до курсової роботи дисципліни
19325 -> Робоча навчальна програма навчальної дисципліни
1   2   3   4   5   6   7   8   9



  • 2.1.2Принципи моделювання ПО
  • 2.2Обєктне моделювання