Лекція 10. Об’єктно-орієнтований аналіз і проектування програмних систем

Концептуальною основою объєктно-орієнтованого аналізу і проектування ПО (ООАП) є об’ектна модель. ЇЇ основні прінципи – абстрагування, інкапсуляція, модульність і іерархія, поняття – об’єкт, клас, атрібут, операція, інтерфейс.

Більшість сучасних методів ООАП засновані на використанні мови UML. Уніфікованою мовою моделювання UML (Unified Modeling Language) є мова для визначення, уявлення, проектування і документування програмних систем, організаційно-економічних систем, технічних систем і інших систем різної природи. UML містить стандартний набір діаграм і нотацій найрізноманітніших видів.

UML – це наступник того покоління методів ООАП, які з'явилися в кінці 1980-х і початку 1990-х років. UML є прямим об'єднанням і уніфікацією методів Золить, Рамбо і Якобсона, проте доповнює їх новими можливостями. Головними в розробці UML були наступні цілі:

- надати користувачам готову до використання виразну мову візуального моделювання, що дозволяє їм розробляти осмислені моделі і обмінюватися ними;

- передбачити механізми розширюваності і спеціалізації для розширення базових концепцій;

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

- забезпечити формальну основу для розуміння цієї мови моделювання (мова повинна бути одночасно точним і доступним для розуміння, без зайвого формалізму);

- стимулювати зростання ринку об'єктно-орієнтованих інструментальних засобів;

- інтегрувати кращий практичний досвід.

UML знаходиться в процесі стандартизації, OMG (Object Management Group), що проводиться, – організацією по стандартизації в області об'єктно-орієнтованих методів і технологій, в даний час прийнятий як стандартна мова моделювання і отримав широку підтримку в індустрії ПО. Повний опис UML можна знайти на сайтах http://www.omg.org і http://www.rational.com.

Стандарт UML містить наступний набір діаграм:

Структурні (structural) моделі:

- діаграми класів (class diagrams);

- діаграми компонентів (component diagrams);

- діаграми розміщення (deployment diagrams).

Моделі поведінки (behavioral):

- діаграми варіантів використання (use case diagrams);

- діаграми взаємодії (interaction diagrams);

- діаграми послідовності (sequence diagrams) і кооперативні діаграми (collaboration diagrams);

- діаграми станів (statechart diagrams);

- діаграми діяльності (activity diagrams).

Диаграммы вариантов использования показывают взаимодействия между вариантами использования и действующими лицами, отражая функциональные требования к системе с точки зрения пользователя. Цель построения диаграмм вариантов использования – это документирование функциональных требований в самом общем виде, поэтому они должны быть предельно простыми.

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

Достоїнства моделі варіантів використання полягають в тому, що вона:

· визначає користувачів і межі системи;

· визначає системний інтерфейс;

· зручна для спілкування користувачів з розробниками;

· використовується для написання тестів;

· є основою для написання призначеній для користувача документації;

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