|
|
Computer Sciences Corp. CSC)
Bureau of Citizenship & Immigration (BCIS)
R2UPLD
C to C++
History: In 2003, the functions of the US Immigration and Nationalization Service (INS) were taken over by the new Department of Homeland Security (DHS) and became the Bureau of Citizenship & Immigration Services (BCIS), later shortened to CIS. During this transition, BCIS contracted with Computer Sciences Corporation (CSC) to maintain and carry out enhancements to portions
of the BCIS R2UPLD system written in the C language. CSC contracted with TSRI as its sub-contractor to conduct a pilot project demonstrating the technical feasibility of automated modernization technologies.
Challenge: This project required documentation, C to C++ transformation, and re-factoring of the R2UPLD module's code. TSRI's HTML documentation deliverable included an "As-Is" design model consisting of UML Action Diagrams and Class Diagrams delivered in Rational Rose UML format via XMI export from TSRI tools. To provide access via ubiquitous browser based documentation, TSRI generated web-based Action Diagrams, Structure Charts, Class Diagrams, Data Element Tables, and Hyper-linked Source Code in HTML format. TSRI demonstrated the feasibility of 100% automated transformation into modern object-oriented, platform independent C++ by generating a 100% compilable and linkable C++ version of R2UPLD. Finally, TSRI automatically eliminated dead and redundant code in the C++ version of R2UPLD, demonstrating the feasibility of its automated re-factoring capabilities
Results: Using the fully automated processes of its JANUS™ toolset, TSRI transformed the C of R2UPLD with 100% automation into C++ to illustrate feasibility of modernizing into platform independent C++. This same automated technology was then used to re-factor the transformed code, eliminating redundancy and removing all dead code. Finally, TSRI provided full "As-Is" and "To-Be" documentation for the C++ version of R2UPLD in UML format for importation into Rational Rose and in HTML Hyper-linked format.