A Dual-pral Reengneerng Model or Legacy yste Xaohu Yang Lu Chen Xnyu Wang College o Coputer cence and Technology Zheang Unversty Hangzhou Chna {yangxh bluelucy wangxnyu}@zu.edu.cn Abstract Coputer Technology has been n exstence or any years; as te goes on there s an ncreasng nuber o outdated systes. Legacy yste Reengneerng has becoe a crtcal eort n any technology organzatons. everal reengneerng odels have been developed such as the Byrne Model and the Evolutonal Model. These odels have addressed soe o the ssues n the reengneerng process but other ssues rean. Ths paper presents a dual-spral reengneerng odel whch perors as a cyclc approach and addresses ssues that those odels do not akng the reengneerng process ore successul. Ths odel has been successully appled to a legacy nancal sotware syste reengneerng eort. Index Ters Dual-pral Model Legacy yste Reverse Engneerng otware Reengneerng I. INTRODUCTION Legacy syste s a ter rst ntroduced n the 990s. It tends to be a syste whch has been n use by an organzaton or ore than ten years wth technology that has been outdated. Any organzaton wth an exstng legacy syste wll eventually need to evaluate varous optons. One opton s to search or a vendor based syste wth equvalent unctonalty. Another approach s to re-wrte the syste utlzng a new plator. In ths paper we dscuss an evolutonary approach or legacy syste graton. There are two optons to grate legacy systes to new plators or raeworks []. One approach s the coplete redevelopent o the legacy syste wth new unctonal speccatons and use cases. The other s an evolutonary graton o the current legacy syste whch s called reengneerng. The dsadvantage o the rst approach s hgh rsk hgh cost wth long developent and converson schedules. Furtherore understandng the busness logc encoded n the sotware and the correspondng docuentaton s a coplex eort. Whle an evolutonary graton ay take longer the ablty to nze rsk s a crucal benet. Much research has been done to ake the reengneerng process ore eectve and ecent. Popular reengneerng odels nclude the Byrne Model [] and Evolutonal Model [3] whch gve approaches that have benet to the reengneerng process but have short-congs as well. For Jerry Crstooro Enterprse Inoraton ervces tate treet Corporaton Boston UA acrstooro@statestreet.co exaple t s very dcult to add new requreents n the Byrne Model. Ths paper wll present a new odel the Dual-pral Reengneerng Model. It s based on a spral odel o sotware developent and enhanceent [4] and tres to resolve ssues ound n the Byrne and Evolutonal odels. We also present a case study o applyng the Dual-pral Model to a legacy nancal syste reengneerng. II. RELATED WORK As leadng research the Byrne Model [] has been actve or a long te and s stll utlzed today. The general dea s descrbed n Fg. Usng ths odel reengneerng starts wth the source code o an exstng legacy syste and ollows wth reverse engneerng on the legacy syste to produce the syste abstracton. Ater that orward engneerng whch ncludes our levels: conceptual; requreents; desgn and pleentaton concludes the entre reengneerng process. Ths odel establshed that a reengneerng process should nvolve the entre sotware syste. For ths reason the target syste (reengneered syste) ust be rozen untl the process has been copleted; n other words no changes are possble durng ts executon [5]. Ths s rarely an acceptable approach n ost busness envronents. Based on the characterstcs o derent proects there are also other derent reengneerng odels such as RENAIANCE [6] Hybrd Reengneerng [7] Pattern-based otware Reengneerng [8] and Iteratve Reengneerng o Legacy yste [9]. One reengneerng odel that deserves enton s the Evolutonal Model [3]. It has addressed any ssues n the Byrne Model. Ths evolutonary-based odel akes ull use o the spral odel o sotware developent and enhanceent provded by Boeh [4] where a syste evolves n ncreental patterns untl t s copletely reengneered [3]. The basc prncples o the Evolutonal Model nclude dvdng odules then begnnng spral procedures or every odule and ternatng ater all odules have been altered.
Alteraton Legacy syste Target syste 3 Reverse Engneerng (Abstracton) Conceptual Requreents Desgn Ipleentaton re-thnk re-specy re-desgn re-code Conceptual Requreents Desgn Ipleentaton Forward Engneerng (Reneent) 4 Dsable 3 Legacy yste Target yste 4 Fgure. General Model or otware Reengneerng Whle the Evolutonal Model has the advantage o ntroducng ncreental changes throughout the process t has ts own short-congs as well: ) It s not sutable or the reengneerng process when the graton s between two totally derent technologes whch are unable to work together. For exaple the graton s ro C to C++ the Evolutonal Model works ne; but the graton s ro Power Bulder to Java/JEE t can not be appled; ) It ay cause soe archtectural conlcts n the target (reengneered) syste. Durng the reengneerng process the requreent that the reengneered odules ust work wth the other legacy syste odules s very portant to the reengneerng process. In order to support downward copatblty two sets o nteraces wll rean as well as the correspondng legacy structures and protocols. When the target syste s coplete the entre structure wll nclude the new technology but the nteraces between odules ay retan the legacy structure. The obectve o ths paper s to address the ssues descrbed above and n general ake the reengneerng process ore eectve and ecent. III. DUAL-PIRAL REENGINEERING MODEL The Dual-pral Reengneerng Model s descrbed n Fg.. The an worklow n Dual-pral Reengneerng Model requres that the two systes (legacy one and target one) work together and ove the unctonalty (not the odules) ro the legacy syste to the target syste step by step as n the spral odel. Durng the entre process the actve unctonalty n the legacy syste s n a decreental pattern and the actve unctonalty n the new target syste s n an ncreental pattern as Fg. 3. Ths process acltates the addton o new eatures whle transtonng the exstng unctonalty whch wll be dscussed later. A councaton proxy s added between the two systes to acltate the workng as a coplete syste ro the overall user perspectve. The pleentaton o the proxy can vary based on the speccs o the archtectures nvolved e.g. scrpts database trggers etc. Fgure. Dual-pral Reengneerng Model The reengneerng process n Dual-pral Model s dvded nto three an steps: dvde the unctonalty start the spral procedure and ternate the spral procedure. The ollowng notatons are used n descrbng the Dual-pral Model: F Dsable 3 Dsable 4 Dsable Dsable Dsable 4 Dsable Dsable : Legacy yste : Target yste Dsable Dsable * ** Dsable : Functonalty n Legacy yste; : Old Functonalty n Target yste whch peror the sae as n Legacy yste; : New Functonalty n Target yste k 3 3 4 3 4
Regresson table yste Regresson Regresson Fgure 3. Decreental Legacy syste Pattern and Increental Target syste Pattern n Dual-pral Model A. Dvde the Functonalty One o the bggest derences between Evolutonal Model and Dual-pral Model s that Dual-pral Model s based on unctonalty dvson rather than odule dvson. At the begnnng the legacy syste wll be analyzed and dvded nto a lst o unctonaltes. The result wll be: Buld table yste Mody Regresson hutdown yste Reove Functon Reove Reove Functon Mody Mody Reove Functon Reove Mody n F ; Reove Functon table yste Regresson Mody Regresson test B. tart the pral Procedure In act the sub-reengneerng procedure n the Dual-pral Model s very sutable to usng the Byrne Model lke reverse engneerng and then orward reengneerng. Every spral procedure wll alost ollow the procedures as: whle ( 0 ) { elect one or ore unctonaltes F n ; hut down unctonaltes F n : 0 table yste Regresson test Legacy yste Mody Functon Target yste Buld Regresson table yste Functon Regresson Epty yste Regresson table yste table yste Functon Functon F F n F sae unctonaltes + n n n n F n : n F (need to ntroduce new unctonaltes){ + 3 k k n3 } } In ters o unctonalty transton we consder three stuatons durng the reengneerng process n every spral procedure. Frst s one-to-one whch eans we pleent one unctonalty n the Target yste wth one unctonalty n Legacy syste as F + ; econd s one-to-any. Ths eans that we pleent one unctonalty n Target yste whch s equvalent to ore than one unctonalty n Legacy yste as: F + ; F n The last stuaton s any-to-one. It happens when we need to pleent ore than one unctonalty to be equvalent wth only one unctonalty n Legacy yste. Ths could be descrbed as: F + ; n n n Ater the transton o unctonalty ro the Legacy yste to the Target yste the Dual-pral Model allows us to add new unctonalty nto Target yste reely and easly. The part arked 3 n Fg. has pled ths eature. One sple presentaton or ths pece o work could be: 3 + k k n3 Except n the work above an eort should be ade to buld a proxy between the legacy syste and the new target
syste. In every sub spral procedure the proxy needs to be oded. Ater the developent n every sub procedure the legacy syste (whch has shut down part o reengneered unctonalty) and the new syste (whch has pleented new unctonalty) should work together and regresson testng should be perored. In addton thorough user acceptance testng should be perored to valdate busness unctonalty. Only ater the end users sgn-o on the busness unctonalty should we contnue wth the next sub procedure C. Ternate the pral Procedure When all legacy syste unctonalty has been oved nto the new target syste and been approved by the users the entre spral procedure could be ternated. At ths pont the legacy syste should be shut down and the councaton proxy should be reoved. Fnally the target syste wll be runnng as a standalone syste. The nal result wll be: n + k ; k 0 D. Advantages o Dual-pral Reengneerng Model The an advantage o the Dual-pral Model s that the step by step spral procedure acltates the addton o new unctons nto the new target syste. In addton the odel perors a cyclc approach or ncreentally growng a syste s degree o denton and pleentaton whle decreasng ts degree o rsk [0] The Dual-pral Model avods the probles whch were ntroduced by the Evolutonal Model and s sutable or any derent types o technology reengneerng. Whether the converson s ro C to C++ or ro Power Bulder to JAVA/JEE the Dual-pral Model s an approprate and useul approach. Moreover the councaton proxy between the legacy syste and the new target syste avods the stuaton legacy structure perssts n the newly reengneered syste. IV. CAE TUDY Four years ago we ntated a Trade Order Manageent yste reengneerng proect. The exstng legacy syste was bult wth Power Bulder and ybase and was constraned by obsolete technology an outdated desgn and lted perorance throughput and antanablty. Our purpose was to reengneer the exstng legacy syste to a state-o-the-art web-based applcaton whch ade use o current ndustrystandard products such as Web phere Java and Oracle. Ths Trade Order Manageent yste s a global applcaton that s used n derent locatons by derent groups o users. It was not practcal to roll out a new syste to all users at the sae te whch eant that the Byrne Model was not an opton or ths reengneerng eort. Also due to the techncal transton ro Power Bulder to JAVA/JEE t was dcult to use the Evolutonal Model as well. However the derng unctonalty n ths applcaton had the advantage o beng relatvely nsular ro one type o user to another. Ths eant that n ost cases transactons entered n one processng ste rarely crossed over nto another. As a result we ade the decson to roll out the applcaton on a uncton-by-uncton bass and n a staged approach. The Dual-pral Model was used as the odel or ths reengneerng eort. nce the syste anly ocused on order anageent we dvded the unctonalty accordng to the order le cycle: trade entry prce acquston and trade executon. Database trggers were used as a proxy ovng the data between the two databases to acltate copatblty. At ths te our phases have been perored and 95% o the unctonalty has been oved nto the new JEE applcaton. In addton we have added two aor new eatures. In the very near uture we wll ove all unctonalty nto the new target syste and shut down the old legacy syste. When the database trggers are reoved the reengneerng eort wll be coplete. V. CONCLUION Ths paper presents a new odel the Dual-pral Reengneerng Model. It s based on a spral odel o sotware developent and enhanceent and addresses ssues n the Byrne Model and Evolutonal Model. Wth ths odel the unctonalty o the legacy syste can be soothly transtoned to the new syste and at the sae te support new eatures and unctonal enhanceents. Thereore we have successully appled ths new odel to a legacy nancal syste reengneerng eort. ACKNOWLEDGMENT Ths work s part o Trade Order Manageent yste reengneerng proect. Ths proect s unded by tate treet Corporaton UA. It s collaboraton between Zheang Unversty Chna and tate treet Corporaton UA. The content o ths paper contans the opnons and conclusons o the authors only and do not necessarly represent the poston o tate treet Corporaton or ts subsdares alates ocers drectors or eployees. REFERENCE [] H.M.need and R.Manar. A case study n sotware wrappng Internatonal Conerence on otware Mantenance Bethesda MD pp. 86 93 Nov998. [] E. J. Byrne A conceptual oundaton or sotware reengneerng Conerence on otware Mantenance Orlando Florda pp. 6 35 Nov 99. [3] Lu Png and Xaohu Yang An evolutonal odel o legacy syste reengneerng 9th Jont Internatonal Coputer Conerence Zhuha Chna pp.60-64 Nov 003 [4] B. Boeh. A spral odel o sotware developent and enhanceent IEEE Coputer Vol. No.5 pp. 6-7 May 988. [5] Alessandro Banch Danlo Cavano Vttoro Marengo and Guseppe Vsaggo Iteratve reengneerng o legacy unctons 7 th IEEE Internatonal Conerence on otware Mantenance Florence Italy pp. 63-64 Nov 00. [6] Marco Battagla Gancarlo avoa and John Favaro RENAIANCE: a ethod to grate ro legacy to ortal sotware systes nd Eurocro Conerence on otware Mantenance
and Reengneerng (CMR 98) Florence Italy pp. 97-00 March 998. [7] Lnda H. Rosenberg and Lawrence E.Hyatt "Hybrd re-engneerng" otware Technology Conerence Utah Aprl 997. [8] Wlla C. Chu Chh-We Lu Chh-Peng hu and Xudong He Pattern-based sotware reengneerng: a case study Journal o otware Mantenance Vol. No. pp.-4 March 000. [9] Alessandro Banch Danlo Cavano Vttoro Marengo and Guseppe Vsaggo Iteratve reengneerng o legacy systes IEEE Transactons on otware Engneerng Vol.9 No.3 pp.5-4 March 003. [0] B. Boeh. and W. Hansen eds. "Understandng the spral odel as a tool or evolutonary acquston CrossTalk pp. 4- May 00.