Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
vika / Лекція 16.doc
Скачиваний:
9
Добавлен:
07.02.2016
Размер:
124.42 Кб
Скачать

14.5. Інструментальні системи технології програмування.

Інструментальна система технології програмування  це інтегрована сукупність програмних і апаратних інструментів, що підтримує всі процеси розробки і супроводу великих ПС протягом всього його життєвого циклу в рамках певної технології. Вище вже наголошувалося (див. п. 14.3), що вона крім інтегрованості володіє ще властивостями комплексності і орієнтованості на колективну розробку. Це означає, що вона базується на узгодженості продукції технологічних процесів. Тим самим, інструментальна система в змозі забезпечити, принаймні, контроль повноти (комплектності) створюваної документації (включаючи набір програм) і узгодженості її зміни (версионности). Підтримка інструментальною системою фази супроводу ПС, означає, що вона повинна забезпечувати управління конфігурацією ПС [16.1, 16.3]. Крім того, інструментальна система підтримує управління роботою колективу і для різних членів цього колективу забезпечує разные права доступу до різних фрагментів продукції технологічних процесів і підтримує роботу менеджерів [16.1] по управлінню колективом розробників. Інструментальні системи технології програмування є достатньо великими і дорогі ПС, щоб якось була оправданна їх інструментальна перевантаженість. Тому набір інструментів, що включаються в них, ретельно відбирається з урахуванням потреб наочної області, використовуваних мов і вибраною технологією програмування.

З урахуванням обговорених властивостей інструментальних систем технології програмування можна виділити три їх основні компоненти:

  • репозиторій

  • інструментарій

  • інтерфейси.

Інструментарій  набір інструментів, що визначає можливості, що надаються системою колективу розробників. Зазвичай цей набір є відкритим і структурованим. Крім мінімального набору (вбудовані інструменти), він містить засоби свого розширення (імпортованими інструментами). Крім того, через інтегрованість по діях він складається з деякої загальної частини всіх інструментів (ядра) і структурних (іноді ієрархічно зв'язаних) класів інструментів.

Інтерфейси розділяються на призначений для користувача і системні. Призначений для користувача інтерфейс забезпечує доступ розробникам до інструментарію. Він реалізується оболонкою системи. Системні інтерфейси забезпечують взаємодію між інструментами і їх загальними частинами. Системні інтерфейси виділяються як архітектурні компоненти у зв'язку з відвертістю системи  їх зобов'язані використовувати нові (що імпортуються) інструменти, що включаються в систему.

Найзагальніша архітектура інструментальних систем технології програмування представлена на мал. 16.4.

Мал. 16.4. Загальна архітектура інструментальних систем технології програмування.

Розрізняють два класи інструментальних систем технології програмування: інструментальні системи підтримки проекту і мовно-залежні інструментальні системи.

Інструментальна система підтримки проекту  це відкрита система, здатна підтримувати розробку ПС на різних мовах програмування після відповідного її розширення програмними інструментами, орієнтованими на вибрану мову. Набір інструментів такої системи підтримує розробкою ПС, а також містить незалежні від мови програмування інструменти, що підтримують розробку ПС (текстові і графічні редактори, генератори звітів і тому подібне). Крім того, він містить інструменти розширення системи. Ядро такої системи забезпечує, зокрема, доступ до репозиторія.

Мовно-залежна інструментальна система  це система підтримки розробки ПС на якому-небудь одній мові програмування, що істотно використовує в організації своєї роботи специфіку цієї мови. Ця специфіка може позначатися і на можливостях ядра (у тому числі і на структурі репозиторія), і на вимогах до оболонки і інструментів. Прикладом такої системи є середовище підтримки програмування на Аді (APSE [16.5]).

Вправи до лекції 16.

16.1. Що таке програмний інструмент розробки ПС?

16.2. Що таке апаратний інструмент розробки ПС?

16.3. Що таке інструментальне середовище розробки і супроводу ПС?

16.4. Що таке інструментально-об'єктний підхід до розробки програмного засобу?

16.5. Які ознаки класифікації інструментальних середовищ розробки і супроводу ПС Ви знаєте?

16.6. Що таке інтегрованість інструментального середовища розробки і супроводу ПС?

16.7. Які види інтегрованості інструментального середовища розробки і супроводу ПС Ви знаєте?

16.8. Що таке репозиторій інструментального середовища розробки і супроводу ПС?

16.9. Що таке інструментальне середовище програмування?

16.10. Що таке мовно-орієнтоване інструментальне середовище програмування?

16.11. Що таке комп'ютерна технологія (CASE-технология) розробки ПС?

16.12. Які відмінності життєвого циклу ПС при комп'ютерній технології програмування від життєвого циклу ПС при традиційній (ручний) технології програмування (при підході водопаду)?

16.13. Що таке робоче місце комп'ютерної технології розробки і супроводу ПС?

16.14. Що таке інструментальна система технології програмування?

16.15. Що таке мовно-залежна інструментальна система технології програмування?

16.16. Що таке ядро інструментальної системи технології програмування?

16.17. Що таке вбудований інструмент інструментальної системи технології програмування?

16.18. Що таке інструмент інструментальної системи технології програмування, що імпортується?

16.19. Що таке оболонка інструментальної системи технології програмування?

Литература к лекции 16.

16.1. Ian Sommerville. Software Engineering. - Addison-Wesley Publishing Company, 1992. P. 349-369.

16.2. Е.А. Жоголев. Введение в технологию программирования (конспект лекций). - М.: "ДИАЛОГ-МГУ", 1994.

16.3. М.М. Горбунов-Посадов. Конфигурации программ. Рецепты безболезненных изменений. – М.: «Малип», 1994.

16.4. CASE: Компьютерное проектирование программного обеспечения. - Издательство Московского университета, 1994.

16.5. Requirements for Ada Programming Support Environments. - USA: DoD, Stoneman, 1980.

Соседние файлы в папке vika