ся більшою надійністю системи, розробленою за допомогою формаль- них специфікацій.
Іншим важливим аспектом формальних специфікацій систем є те, що вони створюють основу для технологій доказового програмування (див. підрозд. 2.6) і оцінки просторової й часової складності систем.
Немає сумніву, що з підвищенням вимог до програмного забезпе- чення й культури програмування, удосконаленням засобів формаль- ної специфікації їхня роль у ЖЦ буде зростати.
2.7.3. МОВА UML
Серед практичних методів проектування систем важливе місце по- сідає об'єктно-орієнтоване проектування й програмування систем (див. підрозд. 2.3). В ООП для опису архітектурних моделей найчас- тіше використовується мова специфікацій UML (Unified Modeling Language). Стисло розглянемо її основні ідеї й засоби.
В UML знайшли відображення методи об'єктно-орієнтованого мо- делювання, розроблені Бучем, Рамбо (метод Object Modeling Technique
– OMT) і Якобсоном (метод Object-Oriented Software Engineering – OOSE). Метод Буча був орієнтований на проектування систем, OMT – на аналіз, а OOSE забезпечував можливості для специфікації бізнес- проектів і аналізу вимог за допомогою сценаріїв використання. Усі вказані методи відомі як засоби візуального моделювання, що добре зарекомендували себе на практиці.
Зокрема, UML дозволяє описати визначальні типи об'єктних моделей:
•структурні (статичні) – описується структура сутностей системи, включаючи класи, інтерфейси, відношення, атрибути;
•моделей поведінки (динамічних) – описується поведінка (функці- онування) об'єктів системи, включаючи методи, взаємодію, процес зміни станів окремих компонент чи всієї системи.
UML забезпечує моделювання різних зображень архітектури:
•структури,
•(динамічної) поведінки,
•керування моделями.
Концептуальна модель UML. Словник UML містить сутності, від- ношення й діаграми. Перші є первинними елементами моделі, другі пов'язують різні сутності, а треті групують сукупності сутностей.
В UML існує низка семантичних правил, що дозволяють коректно й однозначно визначати:
• імена, які можна давати сутностям, відношенням і діаграмам;