Szoftver újratervezés
Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt hozzászólók, és jelentősen eltérhet a 2015. szeptember 25-én felülvizsgált
verziótól ; az ellenőrzések 5 szerkesztést igényelnek .
A szoftver újratervezése új funkciók létrehozásának vagy hibák kijavításának folyamata egy forradalmi változtatással, de a már használatban lévő szoftverek használatával . Az újratervezési folyamatot Chikowski és Cross 1990-es cikkében [1] írja le: "Egy rendszer vizsgálata és megváltoztatása annak új formába való visszaállítására". Kevésbé formálisan fogalmazva, az újratervezés egy szoftverrendszer módosítása annak visszafejtése után .
Az újratervezés összetettsége
Általános szabályként az szerepel, hogy "egyszerűbb új szoftverterméket fejleszteni". Ennek oka a következő problémák:
- az újratervezés leggyakrabban drágább, mint az új szoftverek fejlesztése , mivel el kell távolítani a korábbi verziók korlátait, miközben meg kell őrizni a kompatibilitást azokkal ;
- az újratervezést alacsony és közepes képzettségű programozó nem tudja elvégezni - gyakran még a szakemberek sem tudják minőségileg megvalósítani, ezért a programok átdolgozásában nagy tapasztalattal és a különböző technológiák ismereteivel rendelkező programozók munkája szükséges[ meghatározza ] ;
- a fejlesztő számára nehéz lehet megérteni valaki más forráskódját - ez arra kényszeríti őket, hogy alkalmazkodjanak egy ismeretlen programozási stílus észleléséhez , időt töltenek a projektben megvalósított koncepciók átfogó elemzésére és elsajátítására, a projektben használt harmadik féltől származó könyvtárakra . , megköveteli az összes rosszul dokumentált kódrészlet működési elvének alapos feltárását - és mindez csak bonyolítja az új építészeti megoldásokra való átállás folyamatát ;
- ráadásul a tevékenység jellege további motivációt igényel : az új termékek létrehozásához képest a meglévők feldolgozása nem mindig hoz ugyanolyan vizuális és lenyűgöző eredményeket, gyakran leterheli a technikai adósság terhét és kevés teret hagy. szakmai önkifejezésre.
Ugyanakkor, ha a program kezdetben szigorú és világos architektúrával rendelkezett, akkor az újratervezés egy nagyságrenddel könnyebb lesz. Ezért a tervezés során általában elemzik, hogy mi lesz a jövedelmezőbb - az előző projekt anyagainak feldolgozásának megkezdése vagy egy hasonló szoftvertermék kifejlesztése a semmiből.
Lásd még
Jegyzetek
- ↑ Chikofsky, E. and Cross, J. 7(1) // = Reverse Engineering and Design Recovery: A Taxonomy. - IEEE Software, 1990. - P. 13-18.
Linkek