Reutilizare - Reusability

În informatică și ingineria software , reutilizarea este utilizarea activelor existente într-o anumită formă în cadrul procesului de dezvoltare a produselor software ; aceste active sunt produse și subproduse ale ciclului de viață al dezvoltării software-ului și includ cod, componente software, suite de testare, proiecte și documentație. Conceptul opus al reutilizării este efectul de levier , care modifică activele existente după cum este necesar pentru a îndeplini cerințele specifice ale sistemului. Deoarece reutilizarea implică crearea unei versiuni întreținute separat a activelor , este preferată în locul pârghiei.

Subrutinele sau funcțiile sunt cea mai simplă formă de reutilizare. O bucată de cod este organizată în mod regulat folosind module sau spații de nume în straturi . Susținătorii susțin că obiectele și componentele software oferă o formă mai avansată de reutilizare, deși a fost greu să măsurăm și să definim obiectiv nivelurile sau scorurile de reutilizare.

Capacitatea de reutilizare se bazează într-un mod esențial pe capacitatea de a construi lucruri mai mari din părți mai mici și de a putea identifica puncte comune între acele părți. Reutilizarea este adesea o caracteristică necesară a software-ului platformei . Reutilizarea aduce mai multe aspecte dezvoltării software-ului care nu trebuie luate în considerare atunci când nu este necesară reutilizarea.

Reutilizarea implică o anumită gestionare explicită a problemelor de construcție , ambalare , distribuție , instalare , configurare , implementare , întreținere și actualizare . Dacă aceste probleme nu sunt luate în considerare, software-ul poate părea reutilizabil din punct de vedere al proiectării , dar nu va fi reutilizat în practică.

Reutilizarea software-ului se referă mai specific la caracteristicile de proiectare ale unui element software (sau colecție de elemente software) care sporesc adecvarea acestuia pentru reutilizare.

Multe principii de proiectare a reutilizării au fost dezvoltate la atelierele WISR.

Caracteristicile de proiectare ale candidaților pentru refolosirea software-ului includ:

Nu s-a ajuns încă la un consens pe această listă cu privire la importanța relativă a intrărilor și nici la problemele care fac ca fiecare să fie important pentru o anumită clasă de aplicații.

Vezi si

Referințe