Функціональні характеристики
Критерії першого класу призначені для визначення функціональних характеристик CASE-засобу. Вони у свою чергу підрозділяються на ряд груп і підгруп. 1. Середовище функціонування: Проектне середовище: - підтримка процесів життєвого циклу. Визначає набір процесів ЖЦ, які підтримує CASE-засіб. Прикладами таких процесів є аналіз вимог, проектування, реалізація, тестування і оцінка, супровід, забезпечення якості, управління конфігурацією і управління проектом, причому вони залежать від прийнятої користувачем моделі ЖЦ. - область використання. Прикладами є системи обробки транзакцій, системи реального часу, інформаційні системи і так далі. - розмір підтримуваних додатків. Визначає обмеження на такі величини, як кількість рядків коду, рівнів вкладеності, розмір бази даних, кількість елементів даних, кількість об'єктів конфігураційного управління.
ПЗ/технічні засоби: - необхідні технічні засоби. Устаткування, необхідне для функціонування CASE-засобу, включаючи тип процесора, об'єм оперативної і дискової пам'яті. - які технічні засоби підтримуються. Елементи устаткування, які можуть використовуватися CASE-засобом, наприклад, пристрої введення/виводу. - потрібне ПЗ. ПЗ, необхідне для функціонування CASE-засобу, включаючи операційні системи і графічні оболонки. - яке ПЗ підтримується. Програмні продукти, які можуть використовуватися CASE-засобом.
Технологічне середовище: - відповідність стандартам технологічного середовища. Такі стандарти стосуються мови, бази даних, репозиторія, комунікацій, графічного інтерфейсу користувача, документації, розробки, управління конфігурацією, безпеки, стандартів обміну інформацією і інтеграції по даним, по управлінню і по призначеному для користувача інтерфейсу. - сумісність з іншими засобами. Здібність до взаємодії з іншими засобами, включаючи безпосередній обмін даними (прикладами таких засобів є текстові процесори, бази даних і інші CASE-засоби). Можливість перетворення репозиторія або його частини в стандартний формат для обробки іншими засобами. - методологія, яка підтримується. Набір методів і методик, підтримуваних CASE-засобом. Прикладами є структурний або об'єктно-орієнтований аналіз і проектування. - мови, які підтримуються. Всі мови, які використовуються CASE-засобом. Прикладами таких мов є мови програмування (Кобол, Ада, С), мови баз даних і мови запитів (DDL, SQL), графічні мови (Postscript, HPGL), мови специфікацій проектних вимог і інтерфейси операційних систем (мови управління завданнями).
2. Функції, орієнтовані на фази життєвого циклу: Моделювання: Дані критерії визначають здатність виконання функцій, необхідних для специфікації вимог до ПЗ і перетворення їх в проект: - побудова діаграм. Можливість створення і редагування діаграм різних типів, що представляють інтерес для користувача. - графічний аналіз. Можливість аналізу графічних об'єктів, а також зберігання і представлення проектної інформації в графічному уявленні. В більшості випадків графічні аналізатори інтегровані із засобами побудови діаграм. - введення і редагування специфікацій вимог і проектних специфікацій. До специфікацій такого роду відносяться описи функцій, даних, інтерфейсів, структури, якості, продуктивності, технічних засобів, середовища, витрат і графіків. - мова специфікації вимог і проектних специфікацій. Можливість імпорту, експорту і редагування специфікацій з використанням формальної мови. - моделювання даних. Можливість вводу і редагування інформації, що описує елементи даних системи і їх відношення. - моделювання процесів. Можливість введення і редагування інформації, що описує процеси системи і їх відношення. - проектування архітектури ПЗ. Проектування логічної структури ПЗ - структури модулів, інтерфейсів і інш. - імітаційне моделювання. Можливість динамічного моделювання різних аспектів функціонування системи на основі специфікацій вимог і/або проектних специфікацій, включаючи зовнішній інтерфейс і продуктивність (наприклад, час відгуку, коефіцієнт використання ресурсів і пропускну спроможність). - прототипування. Можливість проектування і генерації попереднього варіанту всієї системи або її окремих компонент на основі специфікацій вимог і/або проектних специфікацій. - генерація екранних форм. Можливість генерації екранних форм на основі специфікацій вимог і/або проектних специфікацій. - можливість трасування. Можливість крізного аналізу функціонування системи від специфікації вимог до кінцевих результатів (встановлення і відстежування відповідностей і зв'язків між функціональними і іншими зовнішніми вимогами до ІС, технічними рішеннями і результатами проектування). Пряме трасування (перевірка обліку всіх вимог) і зворотне трасування (пошук проектних рішень, не пов'язаних ні з якими зовнішніми вимогами). - синтаксичний і семантичний контроль проектних специфікацій. Контроль синтаксису діаграм і типів їх елементів, контроль декомпозиції функцій, перевірка специфікацій на повноту і несуперечність. - інші види аналізу. Конкретні додаткові види аналізу можуть включати алгоритми, потоки даних, нормалізацію даних, використання даних, призначений для користувача інтерфейс. - автоматизоване проектування звітів.
Реалізація: Реалізація зачіпає функції, пов'язані із створенням елементів системи (програмних кодів) або модифікацією існуючої системи. Багато хто з перерахованих нижче критеріїв залежить від конкретних мов і включають наступні: - синтаксично кероване редагування. Можливість введення і редагування початкових кодів на одному або декількох мовах з одночасним синтаксичним контролем. - генерація коду. Можливість генерації коду на одному або декількох мовах на основі проектних специфікацій. Типи коду, що генерується, можуть включати звичайний програмний код, схему бази даних, запити, екрани/меню. - компіляція коду. - конвертація початкового коду. Можливість перетворення коду з однієї мови в іншу. - аналіз надійності. Можливість кількісно оцінювати параметри надійності ПЗ, такі, як кількість помилок і т.д. - реверсний інжиніринг. Можливість аналізу існуючих початкових кодів і формування на їх основі проектних специфікацій. - реструктуризація початкового коду. Можливість модифікації формату і/або структури існуючого початкового коду. - аналіз початкового коду. Прикладами такого аналізу можуть бути визначення розміру коду, обчислення показників складності, генерація перехресних посилань і перевірка на відповідність стандартам. - відладка. Типові функції відладки - трасування програм, виділення вузьких місць і найбільш часто використовуваних фрагментів коду і т.д.
Тестування: Критерії тестування наступні: - опис тестів. Типові можливості включають генерацію тестових даних, алгоритмів тестування, необхідних результатів і т.д. - фіксація і повторення дій оператора. Можливість фіксувати дані, що вводяться оператором за допомогою клавіатури, миші і так далі, редагувати їх і відтворювати в тестових прикладах. - автоматичний запуск тестових прикладів. - регресійне тестування. Можливість повторення і модифікації раніше виконаних тестів для визначення відмінностей в системі і/або середовищі. - автоматизований аналіз результатів тестування. Типові можливості включають порівняння очікуваних і реальних результатів, порівняння файлів, статистичний аналіз результатів і ін. - аналіз тестового покриття. Оснащеність засобами контролю початкового коду і аналіз тестового покриття. Перевіряються, зокрема, звернення до операторів, процедур і змінних. - аналіз продуктивності. Можливість аналізу продуктивності програм. Аналізуючи параметри продуктивності можуть включати використання центрального процесора, пам’яті, звернення до певних елементів даних і/або сегментам коду, тимчасові характеристики і т.д. - аналіз виняткових ситуацій в процесі тестування. - динамічне моделювання середовища. Зокрема, можливість автоматично генерувати модельовані вхідні дані системи.
3. Загальні функції: Приведені нижче критерії визначають функції CASE-засобів, що охоплюють всю сукупність фаз ЖЦ. Підтримка всіх цих функцій здійснюється за допомогою репозиторія. Документування: - редагування текстів і графіки. Можливість вводити і редагувати дані в текстовому і графічному форматі. - редагування за допомогою форм. Можливість підтримувати форми, визначені користувачами, вводити і редагувати дані відповідно до форм. - можливості видавничих систем. - підтримка функцій і форматів гіпертексту. - відповідність стандартам документування. - автоматичне витягання даних з репозиторія і генерація документації по специфікаціях користувача.
Управління конфігурацією: - контроль доступу і змін. Можливість контролю доступу на фізичному рівні до елементів даних і контролю змін. Контроль доступу включає можливості визначення прав доступу до компонентів, а також витягання елементів даних для модифікації, блокування доступу до них на час модифікації і приміщення назад в репозиторій. - відстежування модифікацій. Фіксація і ведення журналу всіх модифікацій, внесених до системи в процесі розробки або супроводу. - управління версіями. Ведення і контроль даних про версії системи і всіх її компонентів. - облік стану об'єктів конфігураційного управління. Можливість отримання звітів про всі послідовні версії, вміст і стан різних об'єктів конфігураційного управління. - генерація версій і модифікацій. Підтримка призначеного для користувача опису послідовності дій, потрібних для формування версій і модифікацій, і автоматичне виконання цих дій. - архівація. Можливість автоматичної архівації елементів даних для подальшого використання. Управління проектом: - управління роботами і ресурсами. Контроль і управління процесом проектування ІС в термінах структури завдань і призначення виконавців, послідовності їх виконання, завершеності окремих етапів проекту і проекту в цілому. Можливість підтримки планових даних, фактичних даних і їх аналізу. Типові дані включають графіки (з урахуванням календаря, робочого годинника, вихідних і ін.), комп'ютерні ресурси, розподіл персоналу, бюджет і ін. - оцінка. Можливість оцінювати витрати, графік і інші проектні параметри, що вводяться користувачами. - управління процедурою тестування. Підтримка управління процедурами і програмою тестування, наприклад, управління розкладом планованих процедур, фіксація і запис результатів тестування, генерація звітів і т.д. - управління якістю. Введення відповідних даних, їх аналіз і генерація звітів. - коректуючі дії. Підтримка управління коректуючими діями, включаючи обробку повідомлень про проблемні ситуації.
Контрольні питання та завдання: 1) Як розміщуються елементи на SADT-діаграмі? 2) Чи являється SADT-модель специфікацією? 3) Які є методи для автоматизованої підтримки SADT? 4) Для чого використовуються в SADT-моделі глосарії, рисунки та тексти? 5) На якому рівні можна завершити декомпозицію моделі?
|