Поновна употребљивост

С Википедије, слободне енциклопедије

У рачунарској науци и инжењерингу софтвера, поновна употребљивост је употреба постојећих средстава у неком облику у оквиру процеса развоја софтверског производа. Средства су производи животног циклуса развоја софтвера и садрже код, софтверске компоненте, тестове, дизајн и документацију. Оптимизација је мењање постојећих средстава колико је потребно да задовоље специфичне захтеве система. Поновна употреба подразумева стварање одвојених одрживих верзија средстава, зато има већи приоритет од оптимизације. [1]

Потпрограми или функције су најједноставнији облик поновне употребљивости. Део кода је регуларно распоређен користећи модуле или именске просторе у слојевима. Заговорници тврде да објекти и софтверске компоненте нуде напреднију форму поновне употребљивости, иако је било тешко објективно мерити и дефинисати нивое или резултате могућности поновне употребљивости.

Поновна употребљивост се ослања на способност конструкције великих ствари од мањих делова и у стању је да идентификује истоветност међу тим деловима. Поновна употребљивост је често неопходна карактеристика платформског софтвера. Поновна употребљивост доноси неколико аспеката у развој софтвера које не треба узети у обзир када поновна употребљивости није неопходна.

Поновна употребљивости подразумева експлицитно управљање конструкције, паковања, дистрибуције, инсталације, конфигурације, распоређивања, одржавања и надоградње. Ако се не узму у обзир ова питања, софтвер може изгледати да је за вишекратну употребу са тачке гледишта дизајна, али се неће поново користити у пракси.

Поновна употребљивост софтвера се прецизније односи на карактеристике дизајна софтверског елемента (или колекцију софтверских елемената) који побољшавају своју способност за поновну употребу.

Многи принципи поновне употребљивости дизајна софтвера су развијени на радионицама на Универзитету у Мејну.

Дизајнерске функције кандидата за поновну употребу софтвера укључују:

  • Прилагодљивост
  • Краткоћа
  • Конзистентност
  • Исправност
  • Проширивост
  • Брзина
  • Флексибилност
  • Генеричност
  • Модуларност
  • Ортогоналност
  • Параметаризација
  • Једноставност: мала сложеност
  • Стабилност услед мењања захтева

Консензус још није постигнут на овој листи о релативној важности уноса нити о питањима која чине сваки важним за одређену класу апликација.

Референце[уреди | уреди извор]

  1. ^ Lombard Hill Group (22. 10. 2014). „What is Software Reuse”. www.lombardhill.com. Lombard Hill Group.  Недостаје или је празан параметар |url= (помоћ);