A Decision Making Tool for the Selection of Service Oriented-Based Legacy Systems Modernization Strategies Rafik A. Salama, Sherif G. Aly The American University in Cairo raamir@aucegypt.edu , sgamal@aucegypt.edu Abstract In this article, we present a process and tool that facilitates the decision making process of selecting an appropriate migration strategy for legacy software systems using the Service Oriented Architecture. Issues related to legacy system migration were initially discussed, followed by two famous techniques namely the Service-Oriented Migration and Reuse Technique of the Department of Defense, as well as that of Erradi. A hybrid process was then introduced, and a tool following the process was illustrated. The tool takes into consideration choosing key migrating evaluation factors, rating the relative importance of such factors, inputting the organizational significance of each factor, as well as operating on individual system components. Keywords: Legacy Software, Modernization, Service Oriented Architecture, Decision Making, Tool 1. Introduction Legacy Information Systems are termed as such since they mainly use old technologies and architectures that became obsolete relative to the current state of art in technology. They are mainly mission critical systems, and their failure can have a serious impact on business. In fact, a Legacy Information System can be defined as “Any information system that significantly resists modification and evolution” [1]. They can cause host organizations several problems: Legacy Information Systems usually run on obsolete hardware that is slow and expensive to maintain. Software maintenance can also be expensive, due to the lack of documentation, understanding of system details, and time consumption for tracing faults. The lack of proper and current interfaces makes the task of integrating Legacy Information Systems with other systems a difficult task. Legacy Information Systems are also difficult, if not impossible, to extend. A legacy information system represents a massive, long-term business investment. Unfortunately, such systems are mostly brittle in the sense of being resistant to change, are slow, and non extensible when faced with new technologies [2]. Although the above problems with the current legacy systems exist, such systems represent organizational assets that are virtually important for business continuation, so they need to be evolved to either match the continuously evolving business or to cope with continuous evolution of the other systems around them. Much research has been done in the domain of legacy system analysis and modernization. Reverse engineering research of legacy systems has been discussed in [10-14]. Design discovery of legacy systems was also tackled in [15-17]. The work in [18] also tackled the issue of design metrics in legacy systems. The continuous emergence of new technologies that are proven to be more robust, scalable, and maintainable, such as those using the Service Oriented Architectures (SOA), is currently attracting numerous legacy systems modernization stakeholders. The selection process of the SOA modernization strategy that best fits a given legacy system has been proposed previously in multiple researches. The most comprehensive process is the process of the Department of Defense (DoD) termed the Service-Oriented Migration and Reuse Technique (SMART) [3]. Another work is that of Erradi [4]. Erradi’s contribution mainly presents an assessment process followed by a decision framework for strategy selection. The Erradi and SMART processes agree in the main steps, except for the fact that SMART ends by designing the strategy that best fits the application being modernized while the Erradi process ends by decision making for selecting the best strategy out of the existing migration strategies.