Skip to content

Support Statement: Translation Challenges

This pages is a list of some of the most common technical matters that can cause challenges during an upgrade project. Most of these issues have one or more possible built into the translation process already, but different teams may have other standards or ideas on how they wish to address the issues and their impact varies from project to project.

  1. What issues have you seen with a VB6 to .NET migration? Please provide the lowest level of specificity on this.
  • Variant, Late Binding
  • Array Conventions - especially unusual base index not 0 or 1.
  • String Functions
  • Collections
  • Code that fails to use Option Strict (undeclared symbols)
  • Error Handling - do you want to use try-catch instead
  • VB6 Printing
  • Archaic File IO
  • Gosub/Goto
  • Conditional Compilation
  • etc.
  1. What issues have you seen with a toolset like Sheridan and converting it to a new platform like VB.net native tools?
  • component conventions — mask edit, date formats,
  • FRX data
  • Event models
  • etc.
  1. What issues have you seen with data access code conversions?
  • Depends on if you use ADO-look-alike wrapper
  • Schema data handled differently — data columns/row array versus fields collection
  • Navigation behavior
  • Server-side vs Client-side cursors
  • Events
  • Error collections
  • Connection Properties
  • Update/BatchUpdate
  • Behind the SQL scenes commands
  • etc.
  1. What issues have you seen with web service usage conversions?
  • SOAP
  • MSXML.HTTP
  • etc.
  1. What UI issues have come about?
  • Form Lifetime
  • Form Class as a variable
  • Control Arrays
  • Events
  • DDE
  • Drag and Drop
  • MDI Menu Merging
  • Certain Intrinsic UI controls: data control, file system lists
  • Style Inheritance
  • Twips vs Pixels
  • etc.
  1. What is our approach to resolving these issues? Design pattern, tools, etc.
  • Language Specification
  • Object Model Specification
  • Runtime support code — buy, build, borrow
  • etc.
  1. How can we ensure that our approach will reduce risk and save time?
  • Analyse the scope of the effort and compare different approaches to delivering that scope.
  1. How can we refactor the code to improve upon it?
  • Migration solution configuration
  1. What types of governance and reporting can we do to ensure the code is converted correctly?
  • Ongoing deliverables
  • .NET Build
  • Code review results
  • Test results
  1. What type of testing would we perform to ensure the application is operating effectively?
  • Side-by-Side Testing
  • Functional tests
  • Stress Testing
  1. Would we incorporate NUnit tests as part of the conversion?
  • If desired.