Лекція 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).
Диаграммы вариантов использования показывают взаимодействия между вариантами использования и действующими лицами, отражая функциональные требования к системе с точки зрения пользователя. Цель построения диаграмм вариантов использования – это документирование функциональных требований в самом общем виде, поэтому они должны быть предельно простыми.
Варіант використання описує типова взаємодія між користувачем і системою і відображає уявлення про поведінку системи з погляду користувача. У простому випадку варіант використання визначається в процесі обговорення з користувачем тих функцій, які він хотів би реалізувати, або цілей, які він переслідує по відношенню до системи, що розробляється.
Достоїнства моделі варіантів використання полягають в тому, що вона:
· визначає користувачів і межі системи;
· визначає системний інтерфейс;
· зручна для спілкування користувачів з розробниками;
· використовується для написання тестів;
· є основою для написання призначеній для користувача документації;
· добре вписується в будь-які методи проектування.