Вступ до інженерії програмного забезпечення | страница 40



Реструктуризація (restructuring) - це метод трансформації прог­рамного забезпечення на одному рівні його уявлення шляхом вико­ристання інформації, котру отримали в процесі виконання реверси­вної інженерії. Трансформація не приводить до зміни первинних вимог до програмного забезпечення (наприклад, реструктуризація - це перетворення неструктурної форми коду в структурну).

Редокументування (redocumentaiion) - це метод створення або перегляду семантично еквівалентних уявлень програмного забез­печення в рамках одного і того ж рівня. Прикладом може слугувати створення діаграм управління, описи структури програмного за­безпечення у формі зручної для сприйняття людиною. Ключова роль цього методу полягає в тому, щоб забезпечити візуалізацію відношень, що мають місце між програмними компонентами для того, щоб розпізнати їх і управляти ними,

Реінженерія (reengineering) - це метол зміни програмного за­безпечення шляхом використання методів прямої інженерії на ос­нові відновленої (за допомогою оберненої інженерії) проектної ін­формації. До того ж, реінженерія веде до зміни системних і функ­ціональних вимог програмного забезпечення і є методом ного пе­реробки.

5.2.2. Інструменти оберненої інженерії

Усі інструменти оберненої інженерії утворюють інтегроване се­редовище - Computer Aided Reverse Software Environment (CARSE). Загальну архітектуру середовища зображено на рис. 5.7.

Рис. 5.7. Архітектура інструментів оберненої інженерії

5.3. Емпірична інженерія програмного забезпечення

Емпіричні методи досліджень відіграють «впливову» роль в ін­женерії програмного забезпечення і їх застосування складають од­ну з інженерій - емпіричну інженерію програмного забезпечення.

На відміну від прямої та оберненої інженерії мста емпіричної інженерії - не розробка або переробка програмного забезпечення, а здобуття знань про програмне забезпечення. Тому її основу складають два кола методів та засобів. Перше пов'язане із збиранням інформації щодо властивостей програмного забезпечення. Переваж­но це робиться шляхом застосування вимірювань. Друге складають методи та засоби обробки нагромадженої інформації і здобуття знань стосовно програмного забезпечення, що досліджується.

5.3.1. Методи емпіричної інженерії програмного забезпечення

Головним методом досліджень програмного забезпечення є вимірювання. Для контролю процесів, продуктів та ресурсі в життєвого циклу програмного забезпечення слід використовувати величини характеризуючи їх властивості, що називаються метриками.