Вступ до інженерії програмного забезпечення | страница 40
Реструктуризація (restructuring) - це метод трансформації програмного забезпечення на одному рівні його уявлення шляхом використання інформації, котру отримали в процесі виконання реверсивної інженерії. Трансформація не приводить до зміни первинних вимог до програмного забезпечення (наприклад, реструктуризація - це перетворення неструктурної форми коду в структурну).
Редокументування (redocumentaiion) - це метод створення або перегляду семантично еквівалентних уявлень програмного забезпечення в рамках одного і того ж рівня. Прикладом може слугувати створення діаграм управління, описи структури програмного забезпечення у формі зручної для сприйняття людиною. Ключова роль цього методу полягає в тому, щоб забезпечити візуалізацію відношень, що мають місце між програмними компонентами для того, щоб розпізнати їх і управляти ними,
Реінженерія (reengineering) - це метол зміни програмного забезпечення шляхом використання методів прямої інженерії на основі відновленої (за допомогою оберненої інженерії) проектної інформації. До того ж, реінженерія веде до зміни системних і функціональних вимог програмного забезпечення і є методом ного переробки.
Усі інструменти оберненої інженерії утворюють інтегроване середовище - Computer Aided Reverse Software Environment (CARSE). Загальну архітектуру середовища зображено на рис. 5.7.
Рис. 5.7. Архітектура інструментів оберненої інженерії
5.3. Емпірична інженерія програмного забезпечення
Емпіричні методи досліджень відіграють «впливову» роль в інженерії програмного забезпечення і їх застосування складають одну з інженерій - емпіричну інженерію програмного забезпечення.
На відміну від прямої та оберненої інженерії мста емпіричної інженерії - не розробка або переробка програмного забезпечення, а здобуття знань про програмне забезпечення. Тому її основу складають два кола методів та засобів. Перше пов'язане із збиранням інформації щодо властивостей програмного забезпечення. Переважно це робиться шляхом застосування вимірювань. Друге складають методи та засоби обробки нагромадженої інформації і здобуття знань стосовно програмного забезпечення, що досліджується.
Головним методом досліджень програмного забезпечення є вимірювання. Для контролю процесів, продуктів та ресурсі в життєвого циклу програмного забезпечення слід використовувати величини характеризуючи їх властивості, що називаються метриками.