TY - GEN
T1 - Objectification using procedure-relational, matrix decomposition and synchronization dynamics
AU - Toosi, Farshad Ghassemi
AU - Wasala, Asanka
AU - Botterweck, Goetz
AU - O'Donnell, Clem
AU - Buckley, Jim
N1 - Publisher Copyright:
© 2018 Association for Computing Machinery.
PY - 2018/9/24
Y1 - 2018/9/24
N2 - Code in legacy systems is often written in procedures and functions (rather than using more modern object-oriented mechanisms). But those procedures/functions can be combined with other similar procedures/functions (and associated data), and thus be converted/re-factored into objects that can be re-used throughout the system. The question then is how to reverse and re-engineer to these objects reliably (logically cohesive and coherent sets of procedures) and how to assess the resultant objects' correctness. Our proposed solution to the first question is to create a similarity matrix of all the functions/methods/procedures based on a given criterion such as shared variable access or procedure calls. We then use a synchronization process to identify related procedures using their values in this similarity matrix. The synchronization results in sets of related groups that, based on a cohesive measure of each group, prompts selection of cohesive procedures, towards objects.
AB - Code in legacy systems is often written in procedures and functions (rather than using more modern object-oriented mechanisms). But those procedures/functions can be combined with other similar procedures/functions (and associated data), and thus be converted/re-factored into objects that can be re-used throughout the system. The question then is how to reverse and re-engineer to these objects reliably (logically cohesive and coherent sets of procedures) and how to assess the resultant objects' correctness. Our proposed solution to the first question is to create a similarity matrix of all the functions/methods/procedures based on a given criterion such as shared variable access or procedure calls. We then use a synchronization process to identify related procedures using their values in this similarity matrix. The synchronization results in sets of related groups that, based on a cohesive measure of each group, prompts selection of cohesive procedures, towards objects.
UR - http://www.scopus.com/inward/record.url?scp=85055711272&partnerID=8YFLogxK
U2 - 10.1145/3241403.3241455
DO - 10.1145/3241403.3241455
M3 - Conference contribution
AN - SCOPUS:85055711272
T3 - ACM International Conference Proceeding Series
BT - ECSA 2018 - 12th European Conference on Software Architecture
PB - Association for Computing Machinery
T2 - 12th European Conference on Software Architecture, ECSA 2018
Y2 - 24 September 2018 through 28 September 2018
ER -