570 likes | 838 Views
Migrating to Microsoft .NET and SQL Server: Why and How. Georgios Koutsoukos ATX Software April 2006. Agenda. Migration What? Why? When? How? Database Migration Microsoft SSMA Applications Migration Why Automated and not Manual?
E N D
Migrating to Microsoft .NET and SQL Server: Why and How Georgios Koutsoukos ATX Software April 2006
Agenda • Migration • What? • Why? • When? • How? • Database Migration • Microsoft SSMA • Applications Migration • Why Automated and not Manual? • Strategies of Automated Application Migration solutions • ATX Software Forms2Net
What: Migration Overview Platform (e.g UNIX, Windows) Platform (Windows) Applications e.g Java, Oracle Forms Applications e.g Java, C#,VB Data Access Logic Data Access Logic SQL Server Oracle Database
Why To Migrate? Two Reasons: • Cost Savings • Future Positioning Two Scenarios: • The Applications Driven • The Database Driven
The Applications Driven • Costs • significantly increased development productivity • Visual Studio • the wide variety of .NET languages • more opportunities to outsource • more .NET developers and expertise available • many software suppliers and off-the-shelf solutions available • less platform hetereogenity across the organization • costs of licenses • more efficient HR management • less training costs
The Applications Driven • Long-term positioning • easier application integration ->> partners, mergers • more adaptable and reusable applications ->> new customer services, users functionality • leading platform for Web Services and SOA • full support for variety of access channels (Browsers, Mobile devices etc) • Microsoft’s IT vision and unified platform • Windows Server • BizTalk Server 2006 • SQL Server 2005 • Visual Studio 2005
Re-Architecture and Evolve Rapid Migration Original Application Agile Application Migrated Application Legacy Platform .NET Platform The Applications Driven • Bottom Line - Less Costs - Future Agility The migration result is the starting point for subsequent evolution
The Database Driven • From Oracle to SQL Server *Currently
The Database Driven • From Oracle to SQL Server Table and data from CIOView Corp: The Business Value of Migrating from Oracle to SQL Server 2005, http://www.cioview.com/whitePapers/abstract_oracle_sql.html
The Database Driven • From Oracle to SQL Server (cont.) • Extending an existing Oracle 8i database to include BI functionality is actually going to cost approximately $200,000 more than an entirely new SQL Server 2005 platform. • upgrading to Oracle 10g entails a much higher acquisition cost than migrating to Microsoft Windows Server 2003 and Microsoft SQL Server 2005. The biggest items are in server and software costs, in networking costs and in initial services and training. Data from CIOView Corp: The Business Value of Migrating from Oracle to SQL Server 2005, http://www.cioview.com/whitePapers/abstract_oracle_sql.html
The Database Driven • From Oracle to SQL Server (cont.) • The particular workload to migrate will have a specific impact on the costs. • The hidden costs of doing nothing with your existing Oracle database may exceed the costs of acquiring an entirely new hardware and software architecture. Data from CIOView Corp: The Business Value of Migrating from Oracle to SQL Server 2005, http://www.cioview.com/whitePapers/abstract_oracle_sql.html
When To Migrate? • The Mystery of Bird Migration (http://birding.about.com/library/weekly/aa032898.htm) When are the conditions right for migration?“The winds must be blowing in the direction that the birds want to go. …A strong wind in the right direction will speed the birds on their way.Birds will usually wait until the most favorable weather conditions then set off on their journey.” • When are the weather conditions favorable in IT? • IT Priorities • Budget • Organizational Politics • Market Trends • Other? The right direction (.NET) and the strong winds (migration solutions) are there…
When to Migrate A later migration… • Size • “Erosion” • “Pollution” • “Isolation” • “Ignorant Surgery” Implies more… • costs • effort • loss of opportunities
Database Migration Platform (e.g UNIX, Windows) Platform (Windows) Applications e.g Java, Oracle Forms Applications e.g Java, C#,VB Data Access Logic Data Access Logic SQL Server Oracle Database
The Database Migration Problem MOVE: Schema Data TRANSFORM: Basic SQL statements Stored procedures Triggers Views Records Cursors Sequences User-defined functions System-defined functions Packaged functions Tables Indexes Constraints Defaults SQL Server Oracle Slide from: Introducing SSMA: Migrating from Oracle to SQL Server with 80% Less Effort, Kevin Ashby, Microsoft.
Microsoft SSMA • SQL Server Migration Assistant • A free tool for migrating the Oracle database to MS SQL Server 2000 or 2005 • Migrates Schema, Data and database Objects • Support for Oracle 8, Oracle 8i, Oracle 9i, Oracle 10g • Available at: www.microsoft.com/sql/migration/default.mspx
Oracle DB M.S. SQL Server SSMA Overview -Connect to Oracle -Load all database objects Schemas Functions Packages Procedures Sequences Tables Views -Create a workspace -Create an assessment report -Convert the objects, script to create DB -Migrate the data -Connect to SQL Server -Create the database Catalogs Schemas Sequence Emulators Tables Views Functions -Populate the tables -Install the constraints and triggers Slide from: Introducing SSMA: Migrating from Oracle to SQL Server with 80% Less Effort, Kevin Ashby, Microsoft.
SSMA Overview Slide from: Introducing SSMA: Migrating from Oracle to SQL Server with 80% Less Effort, Kevin Ashby, Microsoft.
Migration Analyzer Schema Migrator Data Migrator Migration Tester SSMA Overview Assess the Migration Project Migrate Schema & Business Logic Migrate Data Test the Converted DB Convert the Application Slide from Microsoft, “Oracle to SQL Server Migration” Test, Integrate & Deploy
Agenda • Migration • What? • Why? • When? • How? • Database Migration • Microsoft SSMA • Applications Migration • Why Automated and not Manual? • Strategies of Automated Application Migration solutions • ATX Software Forms2Net
Application Migration Platform (e.g UNIX, Windows) Platform (Windows) Applications e.g Java, Oracle Forms Applications e.g Java, C#,VB Data Access Logic Data Access Logic SQL Server Oracle Database
Why Automated and Not Manual? “The significant problems we face cannot be solved at the same level of thinking we were at when we created them” Albert Einstein
Tetris Tetris Image from http://www.dis.uniroma1.it/~demetres/Leonardo/ImageGallery/images/tetris.gif
Sudoku 1 Game Goal: Complete puzzle so that each row, each column and each 3x3 box contain the numbers between 1 and 9 once and only once 7 3
Tetris Vs Sudoku Start from “scratch” Start with “constraints” 2D Thinking 3D Thinking “Fit for purpose”, “Forward” thinking Attention to detail Many possible solutions Only one solution Errors made can be corrected later Errors are catastrophic
Development Vs Migration Development Migration Start from “scratch” Start with “constraints” 2D Thinking 3D Thinking “Fit for purpose”, “Forward” thinking Attention to detail Many possible solutions Solution space limited Errors made can be corrected later Error correction is more difficult
Development Vs Migration Tetris Playing != Sudoku Playing Development Projects != Migration Projects Good at Tetris does not mean good at Sudoku Good Development skills does not mean good Migration skills!
Why Automated? • Faster • a well-trained programmer can correctly transform 160 lines of code per day, a 100 000 lines system would need 625 man days • with tools the conversion can be done more than 90% faster • Cheaper • each manually rewritten line costs from $6 to $23 • tools can reduce costs more than 50%
Why Automated? Better budget and time estimations • Less Risk • Non-uniform or inconsistent migration results • Higher probability of errors due to increased human intervention • Building up the required expertise on both the source and target platforms can be difficult, time consuming and costly. • IBM study on software development projects: • 55% exceeded projected budget. • 68% took longer to complete than expected. • 88% had to be substantially redesigned.
Why Automated? Automated Solutions Counter-Arguments • Result Legibility-Understandability • Often a psychological effect • sense of loosing code ownership • sense of loosing code control • Maintability • “Tools generate only the easy part…leaving the rest for humans” We will be discussing 2, 3 later…
Strategies of Automated Solutions All automated migration solutions have to deal with: • The resolution of the semantic gap between the pair of source-target languages/platforms • The wider the gap, the less feasible, more complex and less automated the migration • The resolution of the dependencies on • functionalities provided by default by the source platform • programming idiosyncrasies of the source platform.
Agenda • Migration • What? • Why? • When? • How? • Database Migration • Microsoft SSMA • Applications Migration • Why Automated and not Manual? • Strategies of Automated Application Migration solutions • ATX Software Forms2Net
Forms2Net Overview • Add-in to Microsoft Visual Studio • Automatically converts Oracle Forms 4.5, 5.0, 6i to .NET • C# • ASP.NET or Windows Forms (i.e Smart Client) • 75% to 95% rate of conversion
Forms2Net Overview Data Layer Connectivity: Data Access Components on top of Microsoft ADO.NET Support for both the Oracle and SQL Server database Complements the Microsoft SQL Server Migration Assistant for Oracle to SQL Server database migration.
Forms2Net Strategy • Structural and Semantic Approach instead of “1-1” • Oracle Forms structures transformed to the Model-View-Controller (MVC) architectural pattern. • Oracle-style code structures and idiosyncrasiesare not maintained • the resulting code follows the Microsoft recommended .NET best-practices.
Forms2Net Strategy • Lightweight Support Libraries and 100% pure .NET code • 100% .NET based: produces or usescomponents that are integrated with the Microsoft Visual Studio .NET environment. • Developers in place can use all the functionalities of Visual Studio.
Forms2Net Strategy • Well-documented migration process • Tool-generated migration guide for easier code completion and possible directions to be taken • Tool does not impose on the .NET developers decisions that belong to them Full Migation Report Link to the Migration Guide Forms2Net tasks
Forms2Net Strategy Back to Automated Tools Counter Arguments • Maintability, Quality and Lower TCO • Forms2Net does not preserve Oracle Forms style/idiosyncrasies • 100% .NET code, no “black-box” extension libraries • .NET best-practices and integration to Visual Studio • “Tools generate only the easy part…leaving the rest for humans” • Forms2Net achieves a close to 100% conversion rate for the most difficult parts, the business logic and the interface definition
Resources • On ATX Software http://www.atxsoftware.com • On Forms2Net (Material, Free Trial Version, Proof of Concept) http://forms2net.atxsoftware.com