Refaktorings -behavior-bevarande källkod transformationer -tillåta automatisk omfördelning av bitar av källkod över klassen hierarki. Det underliggande målet är att förbättra programvarusystemets kvalitet när det gäller framtida underhålls- och utvecklingsverksamhet. Tyvärr är det tydligt att vi kan använda refaktorings för att omstrukturera mjukvarusystem, men det är oklart hur man använder dem för att förbättra specifika kvalitet attribut som är indikatorer för en bra design. Vi utgår från antagandet att kopplings- och sammanhållningsegenskaper kan fungera som indikatorer för optimal fördelning av ansvar över klasshierarkierna. I stället för att säga att refaktorn kommer att förbättra utformningen strävar vi därför efter ett mindre ambitiöst mål att förbättra kopplingen och sammanhållningen. Sammanhållning motsvarar sedan den grad i vilken delar av en klass hör samman, och koppling är den föreningsstyrka som fastställts genom en förbindelse från en klass till en annan [11]. Därför analyserar vi i detta dokument under vilka förhållanden tillämpningar av refaktorer förbättrar specifika kopplings- och sammanhållningsdimensioner. Riktlinjer för tillämpning av refaktoringarna under dessa förhållanden är sammansatta och validerade på ett programvarusystem med öppen källkod avseende både förbättring och tillämplighet. Tidningen är organiserad enligt följande. I avsnitt 1 diskuteras vilka riktlinjer som optimerar förbättringen av koppling och sammanhållning för specifika refaktorer. I avsnitt 2 beskrivs en validering av dessa riktlinjer när det gäller deras förbättring och tillämplighet. I avsnitt 3 diskuteras lärdomar som dragits under upptäckten av refaktormöjligheterna och deras lösning. I avsnitt 4 beskrivs framtida forskning och därmed sammanhängande arbete. I avsnitt 5 sammanfattas slutligen bidragen från detta arbete. Refaktoring möjligheter är platser i källan där a) det finns ett behov av förbättring avseende ett kvalitetsattribut; b) en refaktoring kan tillämpas som kommer att omorganisera koden samtidigt som beteendet hos programvarusystemet; och c) tillämpningen av refaktorn kommer verkligen att förbättra kvalitetsattributet. För att kunna känna igen möjligheter att förbättra koppling och sammanhållning analyserar vi hur refaktoringar påverkar dessa kvalitetsattribut. För det första kommer vi att beskriva de konkreta dimensioner i vilka dessa två abstrakta kvalitetsattribut kan delas. För det andra introducerar vi de refaktorings vi föresatte oss att undersöka. Slutligen förklarar vi hur vi kan kartlägga dessa refaktoriska postvillkor på kopplings- och sammanhållningsmått.
Bois m.fl. REF utarbetade praktiska riktlinjer för att tillämpa refaktormetoder för att förbättra kopplings- och sammanhållningsegenskaperna och validerade dessa riktlinjer för ett programvarusystem med öppen källkod.
Refactoring - improving coupling and cohesion of existing code
{'venue': '11th Working Conference on Reverse Engineering', 'journal': '11th Working Conference on Reverse Engineering', 'mag_field_of_study': ['Computer Science']}