В информатике и программной инженерии , повторное использование является использование существующих активов в той или иной форме в рамках процесса разработки программного продукта ; эти активы являются продуктами и побочными продуктами жизненного цикла разработки программного обеспечения и включают код, программные компоненты, наборы тестов, проекты и документацию. Противоположная концепция возможности повторного использования - это кредитное плечо , при котором существующие активы изменяются по мере необходимости для удовлетворения конкретных системных требований. Поскольку повторное использование подразумевает создание отдельно поддерживаемой версии активов [ требуется пояснение ], это предпочтительнее, чем кредитное плечо. [1]
Подпрограммы или функции - это простейшая форма повторного использования. Часть кода регулярно организована с использованием модулей или пространств имен в слои . Сторонники утверждают, что объекты и программные компоненты предлагают более продвинутую форму повторного использования, хотя было сложно объективно измерить и определить уровни или оценки повторного использования.
Возможность повторного использования во многом зависит от способности создавать большие объекты из более мелких деталей и от способности идентифицировать общие черты между этими частями. Возможность многократного использования часто является необходимой характеристикой программного обеспечения платформы . Возможность повторного использования привносит в разработку программного обеспечения несколько аспектов, которые не нужно учитывать, когда повторное использование не требуется.
Возможность повторного использования подразумевает явное управление проблемами сборки , упаковки , распространения , установки , конфигурации , развертывания , обслуживания и обновления . Если эти проблемы не будут учтены, программное обеспечение может показаться повторно используемым с точки зрения дизайна , но не будет повторно использоваться на практике.
Повторное использование программного обеспечения более конкретно относится к конструктивным особенностям элемента программного обеспечения (или коллекции элементов программного обеспечения), которые повышают его пригодность для повторного использования.
Многие принципы повторного использования были разработаны на семинарах WISR. [2]
Возможные конструктивные особенности для повторного использования программного обеспечения включают:
- Адаптируемый
- Краткое: малый размер
- Последовательность
- Правильность
- Расширяемость
- Быстрый
- Гибкий
- Общий
- Локализация нестабильных ( изменчивых ) проектных допущений ( Дэвид Парнас )
- Модульность
- Ортогональность
- Параметризация
- Просто: низкая сложность
- Устойчивость к изменяющимся требованиям
Пока не достигнут консенсус ни по этому списку, ни по относительной важности записей, ни по вопросам, которые делают каждую из них важной для определенного класса приложений.
Смотрите также
Рекомендации
- ↑ Lombard Hill Group (22 октября 2014 г.). «Что такое повторное использование программного обеспечения» . www.lombardhill.com . Lombard Hill Group. Архивировано из оригинала на 2014-10-22 . Проверено 22 октября 2014 года .
- ^ «Дизайн для повторного использования и объектно-ориентированные методы повторного использования» . Umcs.maine.edu. 1995-01-20. Архивировано из оригинала на 1997-07-15 . Проверено 31 июля 2012 .