Типи CASE-систем
Призначається група експертів, кожен з цих експертів у результаті вивчення представленої документації складає свою думку про володіння ПЗ необхідним примітивом якості, а потім голосуванням членів цієї групи встановлюється оцінка необхідного примітива якості ПЗ.
Вельми важливо, щоб для оцінки ПЗ за критерієм легкості застосування було проведено (під час налагодження та атестації ПЗ) повне тестування за тестами, підготовленим на підставі документації із застосування, а за критерієм супровід - по тестам, підготовленим по кожному з документів, пропонованих для супроводу ПЗ.
У цьому випадку може бути прийнято рішення про проведення випробувань компонент або системних випробувань ПЗ, а також про повернення ПЗ розробникам на доопрацювання.
Однак і в цьому випадку необхідно виконати які-небудь нові тести або хоча б повторно деякі старі. Якщо ж тестування при комплексному налагодженні буде визнано недостатньо повним, то необхідно провести більш повне тестування.
Так для оцінки якості документації по застосуванню ПЗ (П-документованості) тестування застосовується в поєднанні з експертною оцінкою цієї документації. Якщо при комплексній налагодженні ПЗ було проведено досить повне тестування, то ці ж тести можуть бути використані і при атестації ПЗ. У цьому випадку атестаційна комісія може скористатися протоколами тестування, проведеного при комплексному налагодженні.
До таких примітивів відноситься перш за все завершеність ПЗ, а також його точність, стійкість, захищеність та інші примітиви якості. У ряді випадків для оцінки окремих примітивів якості ПЗ тестування застосовується в поєднанні з іншими методами.
Для оцінки більшості примітивів якості ПЗ в даний час можна застосовувати тільки метод експертних оцінок. Цей метод полягає в наступному:
Ця оцінка може проводитися як за двобальною системою ("володіє" - "не володіє"), так і враховувати ступінь володіння ПЗ цим примітивом якості (наприклад, вироблятися за п'ятибальною системою). При цьому група експертів повинна керуватися конкретизацією цього примітиву і зазначенням про спосіб його оцінки, сформульованими в специфікації якості атестованого ПЗ.
Лекція 10. САSЕ-технологія розробки програмних продуктів і складних систем, що проектуються (2 год.)
Мета: Розглянути концептуальні основи CASE- технології.
План
1. Поняття САSЕ-технології та її можливості.
2. Характеристика сучасних САSЕ-засобів. Огляд сучасних САSЕ-засобів, область їх застосувань.
3. Проектування діаграм потоків даних, контекстних діаграм, діаграм "сутність - зв'язок"
4. Проектування діаграм переходів станів, структурних карт.
5. Автоматизація переведення діаграм до програмної реалізації та проектної документації.
Література: [4], [6] , [7] , [19-25] , [28] , [29] - основна.
У сучасних інформаційних технологіях важливе місце приділяється інструментальним засобам і середовищам розробки автоматизованих систем (АС), зокрема, системам розробки й супроводу їх ПЗ. Ці технології й середовища утворюють системи, що мають назву CASE-систем.
Використовується двояке тлумачення абревіатури CASE, що відповідає двом напрямкам використання CASE-систем.
Перше з них - Computer Aided System Engineering - підкреслює спрямованість на підтримку концептуального проектування складних систем, переважно слабкоструктурованих. Далі CASE-системи цього напрямку будемо називати системами CASE для концептуального проектування.
Друга назва — Computer Aided Software Engineering переводиться, як автоматизоване проектування програмного забезпечення.
Серед систем CASE для концептуального проектування розрізняють системи функціонального, інформаційного або поведінкового проектування.
Найбільш відомою методикою функціонального проектування складних систем є методика SADT (Structured Analysis and Design Technique), запропонована в 1973 р. Р. Росом і згодом стала основою міжнародного стандарту IEEE 1320.1-1998 IDEF0 (Integrated DEFinition 0).
Системи інформаційного проектування реалізують методики інфологичного проектування баз даних (БД).
Широко використаються мова й методика створення інформаційних моделей програм, закріплені в методиці IDEF1X (IEEE 1320.2-1998).
Крім того, розвинені комерційні СКБД, як правило, мають у своєму складі сукупність CASE-засобів проектування програм.
Основні положення стандартів IDEF0 і IDEF1X використані також при створенні комплексу стандартів ISO 10303, що лежать в основі технології STEP для виводу в комп'ютерних середовищах інформації, що відноситься до проектування й виробництва в промисловості.
Поведінкове моделювання складних систем використовують для визначення динаміки функціонування складних систем. У його основі лежать моделі й методи імітаційного моделювання систем масового обслуговування, мережі Петрі, можливе застосування кінцево-автоматних моделей, що описують поводження системи, як послідовності зміни станів.
Застосування інструментальних CASE-систем веде до скорочення витрат на розробку ПЗ за рахунок зменшення числа ітерацій і числа помилок, до поліпшення якості продукту за рахунок кращого взаєморозуміння розроблювача й замовника, до полегшення супроводу готового ПЗ,
Серед інструментальних CASE-систем розрізняють:
- інтегровані комплекси інструментальних засобів для автоматизації всіх етапів життєвого циклу ПЗ (такі системи називають Workbench);
- спеціалізовані інструментальні засоби для виконання окремих функцій (Tools).
Засоби CASE-систем по своєму функціональному призначенню належать до однієї з наступних груп:
1. засоби програмування;
2. засоби керування програмним проектом;
3. засоби верифікації (аналізу) програм;
4. засоби документування.
До засобів програмування відносяться:
- компілятори для алгоритмічних мов;
- будівник діаграм потоків даних;
- планувальники для побудови високорівневих специфікацій і планів ПЗ (можливо на основі баз знань, реалізованих в експертних системах);
- інтерпретатори мов специфікацій і мов четвертого покоління;
- прототайпер для розробки зовнішніх інтерфейсів — екранів, форм вихідних документів, сценаріїв діалогу;
- генератори програм певних класів (наприклад, конвертори заданих мов, драйвери пристроїв програмного керування, постпроцесори);
- крос-засоби;
- відладчики програм.
При цьому під мовами специфікацій розуміють засоби укрупненого опису розроблювальних алгоритмів і програм, до мов 4GL відносять мови для компіляції програм з набору готових модулів, що реалізують типові функції досить загальних додатків (найчастіше це функції техніко-економічних систем).
Керування програмним проектом називають також керуванням конфігураціями ПЗ. Цьому поняттю відповідають коректне внесення змін в програмну систему при її проектуванні й супроводі, контроль цілісності проектних даних, керування версіями проекту, організація паралельної роботи членів колективу розроблювачів.
Використання засобів керування конфігураціями дозволяє створювати програмні системи із сотень і тисяч модулів, значно скорочувати строки розробки, успішно модернізувати вже поставлені замовникам системи.
Основою засобів керування програмним проектом є репозиторій – БД проекту. Саме в репозиторії відбита історія розвитку програмного проекту, утримуються всі створені версії (вихідний програмний код, що виконують програми, бібліотеки, супровідна документація й т.п.) за допомогою репозиторію здійснюється контроль і відстеження внесених змін.
Засоби верифікації служать для оцінки ефективності виконання розроблювальних програм і визначення наявності в них помилок і протиріч.
Розрізняють статичні й динамічні аналізатори.
У статичних аналізаторах ПЗ досліджується на наявність невизначених даних, нескінченних циклів, неприпустимих передач керування й т.п.
Динамічний аналізатор функціонує в процесі виконання програми, яку перевіряє; при цьому досліджуються траси, виміряються частоти звертань до модулів і т.п.
Використовуваний математичний апарат – мережі Петрі, теорія масового обслуговування.
В останню з перерахованих груп входять документатори для оформлення програмної документації, наприклад, звітів по даним репозиторію; різні редактори для об'єднання, поділу, заміни, пошуку фрагментів програм і інших операцій редагування.
Проектування ПЗ за допомогою CASE-систем містить у собі кілька етапів.
Початковий етап – попереднє вивчення проблеми. Результат представляють у вигляді вихідної діаграми потоків даних і погодять із замовником.
На наступному етапі виконують деталізацію обмежень і функцій програмної системи, і отриману логічну модель знову погодять із замовником.
На третьому етапі, далі розробляють фізичну модель, тобто визначають модульну структуру програми, виконують інфологичне проектування БД, деталізують граф-схеми програмної системи і її модулів.
Підсистема CASE у складі системного середовища САПР призначена для адаптації САПР до потреб конкретних користувачів, розробки й супроводу прикладного ПЗ. Її можна розглядати як спеціалізовану САПР, у якій об'єктом проектування є нові версії підсистем САПР, зокрема, версії, адаптовані до вимог конкретного замовника. Інакше кажучи, такі CASE-підсистеми дозволяють користувачам формувати порівняно з малими витратами зусиль варіанти прикладних програмно-методичних комплексів (ПМК) з наявного базового набору модулів під заданий вузький діапазон конкретних умов проектування. У таких випадках CASE-підсистеми називають інструментальними середовищами.
CASE-система, як система проектування ПЗ, містить:
- компоненти для розробки структурних схем алгоритмів і "екранів" для взаємодії з користувачем в інтерактивних процедурах,
- засоби для інфологичного проектування БД,
- налагодження програм,
- документування,
- збереження "історії" проектування й т.п.
Поряд із цим, в CASE-підсистему САПР входять і компоненти зі специфічними для САПР функціями.
Так, до складу САПР Microstation (фірма Bentley Systems) включене інструментальне середовище Microstation Basic і мова MDL (Microstation Development Language) з відповідною програмною підтримкою. Мова MDL – C-подібна, з її допомогою можна лаконічно виразити звертання до проектних операцій і процедур.
У цілому середовище Microstation Basic близьке за своїми функціями до середовища MS Visual Basic, у ній є генератор форм, редактор, конструктор діалогу, відладчик.
Інший приклад CASE-системи в складі САПР – система CAS.CADE фірми MatraDatavision, з її допомогою фірма у свій час розробила чергову версію Euclid Quantum своєї САПР Euclid.