Software Migration

  • Uploaded by: parveenmudgil
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Software Migration as PDF for free.

More details

  • Words: 2,555
  • Pages: 38
QSO Technologies Paying attention to details

Software Migration QSO Technologies

QSO Technologies Paying attention to details

Presentation Plan

QSO Technologies Paying attention to details

Introduction • In today’s world technologies are changing at rapid speed • New technologies which are far better than previous technologies are there in market now days • Today we find that most of the work or application are build on legacy code only few are written from scratch • we also find that mergers and takeovers are taking place • Motivations – Migration of application need to be done to keep the pace with new world of technologies – Migration is always done for a reason , without reason there is no question of migration of a application. The reasons can be performance issue ,compatibility, features, supports etc

QSO Technologies Paying attention to details

Motivation – Legacy languages are hard to support. The legacy languages and development tools needed to support the legacy system are increasingly difficult or expensive to obtain – Re-implementing applications on new platforms in this way can reduce operational costs, and the additional capabilities of new technologies can provide access to functions such as web services and integrated development environments – People are scarce. People that know the legacy languages are becoming difficult to find and retain. Younger staff are reluctant to learn "legacy" languages because it does not appear to advance their long-term career – The underlying platform is hard to support. Many legacy systems run on legacy hardware systems. Such hardware systems are becoming more expensive to maintain, and personnel that know these systems are also more difficult to find

QSO Technologies Paying attention to details

Motivation – Legacy software does not integrate well with other IT systems The architecture of legacy languages often does not lend itself to building bridges to other IT systems that have grown up around it – The recent development of new technologies by software modernization enterprises have made the legacy transformation process a cost-effective and accurate way to preserve legacy investments and thereby avoid the costs and business impact of migration to entirely new software – As there are mergers and take over there might be question of having compatibility issue between the IT department of two different companies which may need only one system to prevail among the parent and child company

QSO Technologies Paying attention to details

Examples • The Central Bank of Costa Rica (BCCR) is responsible for mediating payments between local financial institutions. The Interbank Negotiation and Electronic Payment System (SINPE) permits the liquidation of payments between member entities (banks, finance companies, cooperatives, mutual funds, the ATH automatic teller network, the Ministry of Finance, the National Insurance Institute and the Costa Rican Social Security Fund) or against the Central Bank. The System requires a fast and reliable platform to handle 175 billion colons (US$500 million) worth of daily transactions. The original SINPE system, written in Microsoft Visual Basic and SQL Server, was upgraded to Visual Basic .NET using the Visual Basic upgrade wizard. The new system is faster, more stable, and easier to maintain than the original. The cost of the upgrade was only 7% of the original development. •

http://www.artinsoft.com/whitepapers/BCCR_Case_Study.pdf

QSO Technologies Paying attention to details

Examples • Air traffic control software migrated successfully • http://findarticles.com/p/articles/mi_m0ISJ/is_n4_v29/ai_9680873

• migration of business processes from Oracle to SAP global instance • Banamex, a leading Mexican bank, part of Citigroup, was able to migrate over 5 million lines of code from VB6 and ASP to C# and ASP.NET using the Visual Basic Upgrade Companion, in compliance with all corporate policies set for quality assurance and information security. • Using ArtinSoft’s Visual Basic Upgrade Companion and consulting services, HSI was able to save about 12 months of development time and $160,000, while getting a massively improved product out to market earlier than anticipated puts them back in the driver seat. • http://www.artinsoft.com/hsi-latnav-vb-to-net-migration-case-study.aspx

QSO Technologies Paying attention to details

Examples • eZway is Freeway Development Corporation's main product. eZway is a development tool that speeds up the process of generating distributed applications based on a three tier architecture. It functions through a spiral development methodology, iterative and incremental • Initially, eZway was developed in VB 6.0 to generate Visual Basic 6.0 and ASP codes. Then Freeway saw in Microsoft's new .NET platform an opportunity to provide new functionality, security and flexibility both for its eZway product as well as for the product's users. • http://www.artinsoft.com/cs_freeway.aspx

QSO Technologies Paying attention to details

Keywords & Definitions

QSO Technologies Paying attention to details

Approaches • There are different approaches which can be followed for migration procedure • First of all we need to know the reason behind the decision for migration and than we need to have the design of the original application – The reason and the design of the application can helps in deciding what to do to achieve the desired goal

• Suppose we want some additional features to our application but present programming language doesn’t gives us that facility or other way to say it makes the code for application more complex

QSO Technologies Paying attention to details

Approaches • Now in such case do we really need to reengineer our application – Now to answer we need to look at design and programming language used in building that application – Because reengineering is not needed such case we can use wrapper concept and get it done or else we can use refactoring

• Now suppose the reason could be of performance. That we need higher performance – In such case there may be or there may not be need of reengineering – We need to look at the design of the application. It could be such that making some modification in design of the application we can achieve the desired performance. The design of the application is crucial at this moment of decision to go for what

QSO Technologies Paying attention to details

Approaches • There can be issue that support for the application may not be available in future. So it can lead to decision of reengineering of the applications – But exceptions are always there you may decide not to go for reengineering for example the telecom software was written in machine language and is still in use because it is still working fine were as no one understand the design now days as those who designed are not there – Second example I can give of Indian railway reservation system which is written in Fortran and still is in use and is working fine

• So I would say that reason and the design of the application plays an important role is deciding the next step

QSO Technologies Paying attention to details

Reengineering Approach • There can be different approaches which a developer can take but I would like to discuss some general approach • Objective of reengineering – – – –

Preparation for functional enhancement Improve maintainability Migration Improve reliability

• Design of the application plays important role • With the help of application we see different components which original application is using than according to target system we can find out reusable components

QSO Technologies Paying attention to details

Reengineering Approach • Those reusable components can be left untouched so there will be no need to rewrite them from scratch hence saves the cost • Similarly thinking from architectural point of view we can modify the design acc to target system and can compare that with standard design available which are working fine • After all these work we can think planning migration. We should not move with migration without having proper plan • I would give a example of migration plan in later part of presentation

QSO Technologies Paying attention to details

Reengineering Approach • General model for reengineering

QSO Technologies Paying attention to details

Reengineering Approach • This general model uses three principle of reengineering – Abstraction – Alteration – Refinement

• There are different approaches to reengineering – Big Bang Approach

QSO Technologies Paying attention to details

Reengineering Approach – Incremental approach

QSO Technologies Paying attention to details

Reengineering Approach – Evolutionary approach

.

QSO Technologies Paying attention to details

Reengineering Functional Information Technology Systems • This methodology--REFITS--was developed by Unisys Government Systems Group at Virginia Beach, Va. •

http://www.stsc.hill.af.mil/crosstalk/1994/09/xt94d09h.asp

• REFITS consists of various processes that migrates a existing application to target system • Different processes in REFITS are as following: – – – – –

Design Recovery BPR (Business Process Reengineering) Modularization Transformation or Translation Optimization or Enhancement

QSO Technologies Paying attention to details

REFITS

QSO Technologies Paying attention to details

REFITS • Design recovery is a reverse engineering process • BPR, another reverse engineering process, provides an environment that fosters improvement in an organization's practices and policies and assists in determining better ways to achieve the organization's objectives • The REFITS forward engineering processes include modularization, transformation or translation, and optimization or enhancement • Modularization involves the splitting of processes into appropriate data, application, and presentation layers--an action that facilitates development and execution in the client/server architecture

QSO Technologies Paying attention to details

REFITS - this process involves grouping common functions to promote reuse and to reduce code redundancy

• The transformation or translation process converts application code from one dialect to another or from one language to another. Development is done to open systems standards producing code that is more portable and works across multiple platforms • Optimization or enhancement includes updating character-based interfaces to GUIs and converting the existing database to an enterprise-wide database. Additionally, this process incorporates development of new functionality as identified through BPR

QSO Technologies Paying attention to details

Migration Planning

QSO Technologies Paying attention to details

Migration Planning • Review inputs: – Basically in this part of module we take input which provides the current state of legacy system – A review of these artifacts provides an initial understanding of the degree of compatibility between the new and legacy systems • organization’s goals and objectives • customer priorities and user needs • technical approach

• Describe migration management approaches: – It is important to determine how ongoing enhancements to legacy systems will be managed while the target system is being developed • Track progress on milestones • Identify and monitor open issues

QSO Technologies Paying attention to details

Migration Planning • Identify migration prototyping need: – Prototypes can effectively test the potential solution, especially in cases where current systems are complex and involve many users

• Identify migration piloting needs: – Because of the large number of factors in the legacy environment and the number of users who are potentially affected, pilot implementations on a small scale may be recommended to provide help in the migration effort

• Describe rollout for migration: – describing phasing system builds – determining support needs

QSO Technologies Paying attention to details

Manual V/s Automated • Till now we have seen reengineering and migration planning. Now when during code migration you have choice on manual and automated conversion of code

QSO Technologies Paying attention to details

Manual V/s Automated

QSO Technologies Paying attention to details

Manual V/s Automated

QSO Technologies Paying attention to details

Manual V/s Automated

QSO Technologies Paying attention to details

Manual V/s Automated

QSO Technologies Paying attention to details

Migration Tools • There are various migration tools available in market which converts code from one programming language to other • Examples: – Instant C# converts VB code to C# – Instant VB converts C# code to VB – C++ to C# Converter converts C++ code to C# – C++ to VB Converter converts C++ code to VB – C++ to Java Converter converts C++ code to Java – Instant C++ (C# Edition) converts C# code to C++ – Instant C++ (VB Edition) converts VB code to C++ – Instant C++ (Java Edition) converts Java code to C++ – Instant Python (C# Edition) converts C# code to Python – Instant Python (VB Edition) converts VB code to Python

QSO Technologies Paying attention to details

Migration Tools – Java to VB & C# Converter converts Java code to VB or C# – VB & C# to Java Converter converts VB and C# code to Java – Clear VB formats and standardizes VB (.NET) source code

• Apart from these programming language tools there are many other tools – – – – –

Data migration tools Active directory migration tools Auto CAD migration tools .NET database migration tools Database migration tools

• Nowadays there migration tools available for every field but these tools are not free and doesn’t provide 100 % conversion

QSO Technologies Paying attention to details

Migration Tools • Migration tools are basically consists of a parser and mapping the programming construct from one language to other – For example from c to java conversion suppose a structure is found by parsing c code through parser than mapping tool according to the rules of java should be able to map it class and the variable defined for structure to variables in java and methods using structure should be placed inside the class and so on

• For this I would like to discuss a tool developed for migration by pro et con (program and conversion) • http://www.proetcon.de/en/company_e.html

• The migration tools should be developed with compiler technology theories and that a integrated parser is necessary

QSO Technologies Paying attention to details

Pro et Con

QSO Technologies Paying attention to details

Pro et Con • The base of all solutions is a software reengineering architecture (SRA) designed by pro et con • SRA is a toolset (Meta tools), which contains amongst others the following tools: – BTRACC: proprietary parser generator on the base of the backtracking technology – CTree: a tool for the declarative specification of syntax tree models – CBack: a tool for the generation of structured code from syntax trees

QSO Technologies Paying attention to details

Some comments on automated system • We wanted to use the newest technology instead of just being able to run Visual Basic 6 style code inside the .NET Environment. Using the Visual Basic Upgrade Companion represented an estimated saving for the project of US$300,000. --- MDA property system

• http://www.artinsoft.com/license-artinsofts-automated-software-migration-techn

• Not only were we able to complete the project with impressive speed; the quality of Java produced by the service was so high that we were able to deploy the new system very easily. A project we would have expected to take us at least 18 months only took several weeks" Kelvin Burton - CTO, Mercy Ships • http://www.artinsoft.com/cs_mercy.aspx

QSO Technologies Paying attention to details

Recap • Before starting the process of reengineering we always have to focus on to things – Reason or factors behind the decision of reengineering – Design of the application under consideration

• After it has been decided for reengineering we need to follow some basic steps so that end target product is as per desired discussed all through presentation • We need stable migration plan which will ultimately pave path for the stable end target application after migration process is complete • We should decide on automated or manual conversion

QSO Technologies Paying attention to details

References •

http://www.sei.cmu.edu/reengineering/index.html



http://en.wikipedia.org



http://en.wikipedia.org/wiki/Software_migration



http://searchsoa.techtarget.com/



http://wiki.postgresql.org/wiki/Migrating_from_one_database_to_another_with_Pentaho_ETL



http://software.intel.com/en-us/articles/migrating-java-applications-to-c-on-the-net-platform/



http://tangiblesoftwaresolutions.com/Demo.htm



http://www.sciencedirect.com/science?_ob=ArticleURL&_udi=B6V0N-4P2S8WV-2&_user=10&



http://www.semdesigns.com/Products/Services/LegacyMigration.html



http://www.greatmigrations.com/



http://wiki.answers.com/Q/Differnce_between_reverse_engineering_and_re_engineering

Related Documents

Software Migration
May 2020 0
Migration
November 2019 34
Migration
August 2019 36
Migration
August 2019 48
Migration
November 2019 47
Great Migration
November 2019 19

More Documents from ""

Software Migration
May 2020 0
Dao
May 2020 9