
Beginning in August of 2008, Elicere, Inc. was hired as a subcontractor to provide services for Claims 3 (C3) and Claims 4 (C4) of OIT's Information Technology Sustainment and Security Remediation (SSR) support effort encompassing virtually all information technology activities in support of USCIS's mission-related operations. These operations are critical to the orderly process of immigration and security of the country. Support requirements include, but are not limited to, all phases of systems development through systems implementation, integration, coding and testing, production, deployment, software application operations and maintenance (corrective, adaptive, and relevant), configuration management, change management, training, documentation, and second- and third-tier Service Desk support. This is a five-year contract and will run through September 28, 2013.
Elicere's primary support lies in the IT systems that directly support the administration, background checks, and adjudication of applications filed by potential immigrants seeking immigration, naturalization and citizenship benefits within the United States, as well as services for citizens overseas. It has been essential to ensure that USCIS personnel have timely access to the necessary information to make confident decisions. Elicere supports, through the Enterprise Service Bus (ESB), service requests for citizenship status to the Verification Information System (VIS) in which companies can verify the status of an employee or employee applicant. Additionally, Elicere provides case status information from the case management systems to the USCIS Customer Information System, a forms-based web interface in which applicants can inquire about application status. Extremely sensitive information from a privacy and law enforcement perspective is often involved. Data from our systems have been accepted as evidentiary items in Federal Courts and have successfully defended government interests in class-action lawsuits. These evidentiary items have undergone scrutiny from both U.S. Attorneys' and Plaintiffs' counsels, and been accepted under the rules of evidence.
Elicere has already demonstrated component sharing between the two projects which translates to an estimated 60-75% cost savings.
From Legacy to Enterprise: The Strategy of Software Modernization
Legacy transformation aims to retain and extend the value of the legacy investment through migration to new platforms Legacy systems are typically modernized incrementally and Elicere's work at USCIS is no exception. Initially, the system consists completely of legacy code. As each increment is completed, the percentage of legacy code decreases. Eventually, the system is completely modernized. A migration strategy must ensure that the system remains fully functional during the modernization effort.
Designing for Extensibility, Forward Compatibility, and Reusability
The Elicere team has developed a layered architectural model with significant commonality, and the layers are all designed and coded to accommodate tiered, physically separated architecture in future versions. Common components are evaluated by diverse teams to optimize reuse. Some system diversification requires a level of refactoring. In these cases, our collaborative team produces an exceptional level of high reusability with minimal adverse architectural impacts. The central theme is to provide for change and to engineer the architecture in such a manner as to allow both forward compatibility and extensibility while reducing impact to existing system functions. Significant design considerations are required, not only to conform to existing environments and user expectations, but also to design for a relatively light transition to a distributed web environment.
To attain a high level of configuration-management disciplines, multiple system configurations must be considered. In an object-oriented environment, this is crucial as changes in base entities and classes that are typically favorable in a single system environment can be catastrophic in a multi-use environment. Our Elicere architects are leaders in the communication forums, both informal and formal, to ensure compatibility, extensibility and high levels of reuse.
Project Snapshot: Progress at the Midway Point
Elicere has been working on the 5-year Modernization project for over 2 years. The legacy systems for both C3 and C4 were created in the early to mid 1990's. The C3 system is a sufficiently self-contained environment in which a Service Oriented Architecture (SOA) environment is not a driving factor, with a few exceptions. Some functionality is appropriate to migrate into a SOA environment, however, not all. A similar situation exists for C4, although the utilization of services available on the USCIS Enterprise Service Bus is being factored in during this migration. C4 already provides services to external systems; however the architecture is not ideal. Most systems deal with point-to-point interfaces, though some systems are already in a SOA-based approach using SOAP.
During the migration phases, each functional area is examined for the ability to either consume or provide a service from or to the enterprise. Elicere leads the collaborative large-team effort, as it requires close oversight. In the C4 system, Elicere has created the capacity for international USCIS personnel to conduct naturalization proceedings for U.S. military members who are stationed abroad. The need to naturalize active-duty military applicants stationed overseas, frequently in combat zones, was established in 2005. We deployed operational software to overseas offices in Germany, Italy, Korea and Thailand. Additionally we support operational scenarios in U.S. territories and possessions as well as in Jamaica and Guam.
Component Sharing Translates to Cost Savings of 60-75%
Both the C3 and C4 projects work on modernization of a legacy framework, in this case Virtual Basics 6, by migrating it to a .Net Framework. Significant consideration was given during early and middle design phases to implement common code bases and reusable components in all layers. Both applications are client/server based, and are designed with the same architectural approach, with the ability to easily migrate to a distributed web environment. In addition, Elicere is re-hosting the entire code base in C#, which is 100% object oriented, a development paradigm which means essentially that we are using the state of the art programming technique which allows for a high degree of optimization of code for re-use.
Both client server environments are designed to easily migrate between the server and either a web structure or a cloud-based structure. The modernized system allows for high degree of component re-use. In other words, the components are generalized so that even though they have been designed to accomplish a specific function, they can be easily re-purposed for many other functions.