Great Migrations Incremental Upgrade Cookbook. Stages 0: Source Complete, Ready to Translate 1: Translate Complete, Ready to Assess – Prototype Translations.

Slides:



Advertisements
Similar presentations
Inference without the Engine!. What is EZ-Xpert 3.0? EZ-Xpert is a Rapid Application Development (RAD) environment for creating fast and accurate rule-based.
Advertisements

Microsoft Transaction Server COM + Jim Lyon HPTS 99.
Metasearching: The Problem, Promise, Principles, Possibilities & Perils Roy Tennant California Digital Library.
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
INSE - Lecture 15  SE Project Management  This lecture is a brief overview –  mainly things to remember to do!
EEE 243B Applied Computer Programming Software engineering Life cycle and when to test.
J-Interop Open Source Java COM Bridge. Contents What is it ? Comparison with Java Native interface Comparison with J-Integra® for COM Benefits of using.
Get in touch with Microsoft Dynamics Sure Step Saied Alhamwi, PMP Business Application Manager ACWA Holding
Introduction to Assembly language
Chapter 1 - VB 2008 by Schneider1 Chapter 1 - An Introduction to Computers and Problem Solving 1.1 An Introduction to Computers 1.2 Windows, Folders, and.
Adopting Team Foundation Server with OpsHub. Business challenges More than one ALM solution may be in current use, stifling communication TFS adoption.
Secure software and COTS group Steve Gribble, Somesh Jha, Angelos Keromytis, Carl Landwehr, Peter Lee, Martin Rinard Workshop on Resilient Financial Information.
Presented by: Nick McHugh Date: 15/11/2005 Security, Safety, Confidence.
1 Independent Verification and Validation Current Status, Challenges, and Research Opportunities Dan McCaugherty IV&V Program Manager Titan Systems Corporation.
C++ & Java Dick Steflik CS-248. Similarities Syntax - almost identical Object Model - very similar Stream based I/O.
Chapter 3.2 C++, Java, and Scripting Languages. 2 C++ C used to be the most popular language for games Today, C++ is the language of choice for game development.
The Assembly Language Level
Functional Simulation Overview1 OpenTV PC Simulator.
Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved The Assembly Language Level.
Introduction to Computer Technology
Testing Dr. Andrew Wallace PhD BEng(hons) EurIng
Managed Code Generics Language Integrated Query Dynamic + Language Parity C# VB 11.0 Windows Runtime + Asynchrony C# VB 7.0 C# VB.
Developer Day Was ist neu in.NET 4.5? Ken Casada Technical Evangelist, Microsoft Switzerland
Instructional Design Hany Alzahri. Instructional Design Instructional Design is a systematic process that is well designed in order to improve the education.
Appendix D: Microsoft.NET Framework Overview. Overview.NET Framework Architecture.NET Namespaces.
 Internet providing backbone for applications  Use of several web sites and devices to provide one complete solution  Software as services  Quick software.
Page 1 MODEL TEST in the small GENERALIZE PROGRAM PROCESS allocated maintenance changes management documents initial requirement project infrastructure.
Software Testing.
COMP25212: Virtualization Learning Objectives: a)To describe aims of virtualization - in the context of similar aims in other software components b)To.
Stage 9: Relay Programming. Objectives Practice communicating ideas through codes and symbols Use teamwork to complete a task Verify the work of their.
The Chameleon Development Environment The Chameleon™ Development Environment Application delivery using Microsoft Excel®
CIS250 OPERATING SYSTEMS Memory Management Since we share memory, we need to manage it Memory manager only sees the address A program counter value indicates.
Input & Output In Java. Input & Output It is very complicated for a computer to show how information is processed. Although a computer is very good at.
Computer Science 101 How the Assembler Works. Assembly Language Programming.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
3/5/2009Computer software1 Introduction Computer System Hardware Software HW Kernel/OS API Application Programs SW.
Software Development Life Cycle by A.Surasit Samaisut Copyrights : All Rights Reserved.
Software Debugging, Testing, and Verification Presented by Chris Hundersmarck November 10, 2004 Dr. Bi’s SE516.
PRIOR TO WEB SERVICES THE OTHER TECHNOLOGIES ARE:.
Ch7: Software Production Process. 1 Waterfall models  Invented in the late 1950s for large air defense systems, popularized in the 1970s  Main characteristics:
FUZZ-IEEE’2013 Panel Presentation Title: Since one of the main advantages of fuzzy techniques is easiness-of-use, why make them more complicated? Presenter:
Reverse Engineering. Reverse engineering is the general process of analyzing a technology specifically to ascertain how it was designed or how it operates.
Software testing (1dev : 2.5-6) Not correct system: math/logic proof, right take: I find no error so far at my best. Incomplete induction. Debugging: part.
The Assembly Language Level Part C – Linking and Loading.
The History of Programming Languages The ENIAC (Electronic Numerical Integrator and Calculator) completed in 1945, was one of the first computers that.
Dillon: CSE470: SYSTEM INTEGRATION 1 Build Plan l Development or integration strategies l Decide the order in which components of the system will be developed.
Compilers and Interpreters
BizForceOne by MegaSolutionCenter (MSC), USA BIZFORCEONE OPERATING SYSTEM BEST FIT IMPLEMENTATION.
A framework that describes the activities performed at each stage of a software development project. A life-cycle or a software process is the organisational.
ANOOP GANGWAR 5 TH SEM SOFTWARE TESTING MASTER OF COMPUTER APPLICATION-V Sem.
Chapter 6 Testing and running a solution. Errors X Three types Syntax Logic Run-time.
Powerpoint Templates Page 1 Powerpoint Templates Unit Testing Ari Seppi
TESTING TOOLS MANUAL APPROACH BY J.ADI SESHU.
Language Translation Compilation vs. interpretation.
Stephen Wild Program Manager Adabas
Audio Driver Development Flow
Software Processes.
The Assembly Language Level
Moving from ASP to ASP.NET
DESIGN FOR VERIFICATION
Component-Based Software Engineering
Software life cycle models
An Overview of Software Processes
Software Engineering Lecture #45
Data Science with Python
The Assembly Language Level
Who Wants to Win a Million?
Existing SQL Integration
1.3.7 High- and low-level languages and their translators
Integration Testing.
Presentation transcript:

Great Migrations Incremental Upgrade Cookbook

Stages 0: Source Complete, Ready to Translate 1: Translate Complete, Ready to Assess – Prototype Translations – Optimize type inference, minimize late bindings 2: Build Complete, Ready for Reengineering – Prototype Translations 3: Reengineering Complete, Ready for Testing – Structural Matters: Integration, Consolidation, Simplification – COM API replacements 4: Verification Complete, Ready for Cut-Over – White box testing and debugging – Optimization

Prototype Translations COM Binary API 1 COM Binary API 2 COM Binary API 3 Code gmStudio.NET Project Code Stub Code API 1 Stub Code API 2 Stub Code API 3 Source Project

Prototype Translations.NET Project Code Stub Code API COM Binary API Code Source Project Code Source Project Code.NET Project Inter-dependent VB6 Projects Stand-alone.NET Projects gmStudio

Integrated Prototype Translations gmStudio Code Source Project Code Source Project COM Code.NET Project Code.NET Project Stub Code.NET Project Stub Code.NET Project COM

gmStudio Code Source Project Code Source Project COM Code.NET Project Code.NET Project Upgrade.NET COM Upgrade.NET Integrated, Upgraded Translations

Opportunities: Integrated Build Replace stub API files with assemblies (IHC) Consolidate shared code files Deal with circular references Deal with weak typing Other Build Standards

Opportunities: Re-engineering COM Replacements Win32 Replacements Dynamic Code Rework Complex Collections Dictionary-Dictionary Language Issues Other Coding Standards

Next Steps Current Results – VB6/ASP Opportunities – Integrated Build (VB6 only) – Integrated Build (VB6/ASP) – Re-Engineering (VB6 only) – Re-Engineering (VB6/ASP) – Verification Support