Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Структурне програмування. Об'єктно-орієнтоване проектування

Структурне програмування це методологія й технологія розробки серйозних програмних комплексів, заснована на наступних принципах:

- програмування повинне здійснюватися зверху-униз;

- увесь проект повинен бути розбитий на модулі з одним входом і одним виходом (оптимальний розмір модуля — кількість рядків на екрані дисплея);

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

- при розробці документація повинна створюватися одночасно із програмуванням, у вигляді коментарів до програми.

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

Метод об'єктно-орієнтованого проектування грунтується на:

- ·моделі побудови системи як сукупності об'єктів абстрактного типу даних;

- ·модульній структурі програм;

- ·спадному проектуванні, використовуваному при виділенні об'єктів.

Об'єктно-орієнтований підхід використовує наступні базові поняття:

- ·об'єкт;

- ·властивість об'єкта;

- ·метод обробки;

- ·подія;

- ·клас об'єктів.

Об'єкт - сукупність властивостей (параметрів) визначених сутностей і методів їх обробки (програмних засобів).

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

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

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

Наприклад, об'єкт можна представити перерахуванням властивих йому властивостей:

ОБ'ЄКТ_ A (властивість-1, властивість-2,...., властивість-k).

Властивості об'єктів різних класів можуть "перетинатися", тобто можливі об'єкти, що мають однакові властивості:

ОБ'ЄКТ _B (...властивість-n, властивість-m,...властивість-r,...) ОБ'ЄКТ_ C (...властивість-n,.., властивість-r,...).

Одним із властивостей об'єкта є метод його обробки.

Метод - програма дій над об'єктом чи його властивостями.

Метод розглядається як програмний код, пов'язаний з певним об'єктом; здійснює перетворення властивостей, змінює поведінку об'єкта.

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

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

Подія - зміна стану об'єкта.

Зовнішні події генеруються користувачем (наприклад, клавіатурне введення чи натискання кнопки миші, вибір пункту меню, запуск макроса); внутрішні події генеруються системою.

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

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

Один об'єкт може виступати об'єднанням вкладених у нього по ієрархії інших об'єктів.

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

Практично всі поширені методи структурного підходу ґрунтуються на таких основних принципах:

• «поділяй і владарюй»;

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

• абстрагування (виділення суттєвих аспектів системи і відкидання несуттєвих);

• несуперечливість (узгодженість елементів системи);

• структурованість даних.

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

· DFD — діаграма потоків даних;

· SADT (метод структурного аналізу та проектування) — моделі та функціональні діаграми;

· ERD — діаграми «сутність—зв’язок», найбільш популярні в CАSE-засобах.

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

На етапах аналізу вимог до ПЗ і відповідного визначення специфікацій використовуються SADT-моделі.

Моделі ERD використовуються для описання даних на концептуальному рівні, не залежному від засобів СКБД.

На етапі проектування використовуються моделі DFD і ERD для описання структури проектованої системи ПЗ, які можуть уточнюватись, доповнюватись новими конструкціями для представлення даних на логічному рівні.

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

Однак кожна підфункція може містити тільки ті елементи, які належать функції (підфункції) попереднього рівня — «батьківського», причому вона повинна мати всі елементи, що є на «батьківському» рівні, який разом з його інтерфейсами забезпечує контекст підфункції нижчого рівня. Нічого до неї не можна додати або з неї вилучити. В цьому полягає і головна вада структурного підходу: процеси (функції) і дані існують окремо в моделі програмної системи, проектування ведеться від процесів до даних, тобто структури даних знаходяться на другому плані. Крім того, він може використовуватись тільки у проектуванні «зверху вниз», тобто у низхідному проектуванні.

 

<== предыдущая лекция | следующая лекция ==>
Еволюція розробки програмного продукту | Збирані метрики, використовувані методи, стандарти і шаблони
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 1040; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.