Progress 4GL to C#.NET
Engagement Model
SQLWays - Migration Software
Copyright (c) 1999-2012 Ispirer Systems Ltd. All Rights Reserved.
About Ispirer
Ispirer Systems Ltd. specializes in database and
application conversion software and services
● Database Migration
Database migrations for Oracle, IBM DB2,
Microsoft SQL Server, Sybase, Informix,
Teradata, MySQL, PostgreSQL, Progress and
other databases
● Application Migration
Application conversion: C++, Visual Basic, Java,
C#, VB.NET, Informix 4GL, Progress 4GL, Delphi,
PowerBuilder, Visual FoxPro, Reporting Services,
Integration Services/DTS
Key Advantages of SQLWays
● Highly Automated
Can automate more than 99% of the conversion
Minimal manual effort with easy discovering of
unconverted issues
● Highly Customized and Optimized
Can meet very specific code generation requirements
and guidelines. Handmade quality, optimized
solutions
● Cost-Effective
Reduces the migration project cost by more than 7090% compared with manual conversion
● Minimal Risk
Comprehensive demos based on your real
applications and requirements
Ispirer Technology
Our conversion technology ensures:
● Readable and Maintainable Code
Generating readable and maintainable code with manual
conversion quality
● Code Transformation and Refactoring
Transforming code implementing best practices of .NET
rather than emulating old technology on the new platform
Code Refactoring
● Latest Technologies
Using advantages and new .NET features and technologies
(WPF, LINQ, etc.)
● Pure .NET Code
No any Ispirer’s libraries or IP used after conversion
Enterprise Applications
SQLWays is effective to convert large applications containing
thousands of files and millions lines of code
● Automatically Resolves Dependencies
Can extract information from dependent files, database etc to
automatically resolve dependencies and conflicts
● Configurations
Can read information from various configuration and projects files
(SQLWays - .xml, .ini files, Visual Studio - .dbml, .xsd, etc. files)
● Fast and Powerful Customization
Abstract layers, re-usable conversion templates, internal
conversion language and tools allow fast customization and
complex code transformations
Extension points are available to run customizations at user side
without Ispirer developers
Automated Conversion
Advantages of automated solution over the manual conversion:
● Minimizes Human Errors and Reduces Testing
In general, manual conversion is a routine and low productive
task (UI forms, controls, business logic i.e.) that leads to high
probability of human errors, may produce different results for
conversion of similar code and as a result leads to large cost and
time of testing.
Automated conversion minimizes human errors, provides
predictable results, and specific unit tests coverage ensures high
quality of the conversion
● Easy Re-Conversion
During the project, you can modify requirements based on the
intermediate results (optimize database access, change UI
features etc), and easily re-run the conversion.
You can also easily reconvert the application when the source
code changed.
Ispirer Approach
● Assessment and Design
Initial assessment of application
Analysis of development style and patterns
Current possibilities of migration tool SQLWays
Design of migration solutions and creation of new specifications
● Building Custom Automation
Custom automated conversion of business logic, database access,
reports and UI
Automating code transformations, re-factoring, optimizations
Automating internal guidelines and standards, using internal
frameworks
● Iterative Development – Frequent Releases,
Prototypes/Pilots (optional)
● Support during application conversion
Schema of approach
Specification
SQLWays
Product
Migration
Specification sample
● FIND statement conversion using LINQ technology
ABL:
find first Customer
where Customer.Country
and Customer.Cust-num
no-lock.
= "USA"
=1
C#:
Customer =(from Customer_Row in Db.Customers
where Customer_Row.Country
== "USA"
&& Customer_Row.Cust_num
== 1
select Customer_Row).FirstOrDefault();
Creation Unit Test for SQLWays
find first Customer
where Customer.Country
and Customer.Cust-num
no-lock.
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
namespace Ispirer.Services.Source
{
public class FindTest
{
= "USA"
=1
Specification
#region Implicit buffers
Data.Tables.Customer Customer;
#endregion
public FindTest()
{
Customer =(from Customer_Row in Db.Customers
where Customer_Row.Country
== "USA"
&& Customer_Row.Cust_num
== 1
select Customer_Row).FirstOrDefault();
}
}
}
Unit Test
Automation stage
Test environment
Specification
Source
Automatic
Result
Specification
Etalon
Automatic Validation
Specification/
Specification
Changes
Not Equal
Equal
Project Team
● Solution and Software Architects
Client team – Creation of design specifications and requirements
Ispirer team – Negotiation, discussion and conformance of
provided specifications
● Tool Development
Client team – Conversion of 5 - 10% of project scope
Ispirer team – Conversion rules development and
customizations
● Migration
Client team – Conversion whole application
Ispirer team – Client team initial training and remote support
● Testing
Client team – Comprehensive testing of whole migrated
application
Ispirer team – Basic testing of provided specifications before
tool’s delivery
Company
Ispirer Systems has been working in the database and
application migration field since 1999
More than 400 companies worldwide use our software
Including financial institutions and global corporations from
Fortune 500 and Global 2000:
HP, Citigroup, ChevronTexaco, JP Morgan, EDS, Shell,
Fujitsu, Accenture, Carrefour, CAP Gemini,
Thomson and many others
Team of 50 employees: software development, consulting,
sales and marketing departments
More Information
For more information about our company,
migration software and services please visit
our site or contact us by email:
● http://www.ispirer.com
Ispirer Systems Ltd. Web site
● sales@ispirer.com
Product Related and Business Inquiries
● support@ispirer.com
Technical Support