Professional Software Consultant
We provide premium software consultant to Delphi Legacy Systems, since 2008. In past few years, it became very urgent to migrate once more the old code, since the BDE is no longer supported & Microsoft declared a war on its own users, that still using XP, and won’t move on to Windows 7,8, or get a free copy of 10.
Moreover, nowadays, since everyone wants to upgrade to 64 bits, Windows 7 with faster & better technologies, old Delphi users faces migration for the first time, whereas the rest of the world has been battling to survive for more than a decade, with every version of MS Visual Studio or Java. It is need to be said, that no major business is really crossing over to Linux or OSX or even migrating to C# .NET.
Legacy means “successful”. Legacy software runs companies, and cannot simply be waved away with a magic wand. Whatever the legacy software does must be preserved. Legacy systems are successful and therefore mature, and likely have been in existence for a long period of time. A consequence is that legacy software is built using technologies available at the time it was constructed, as opposed to the most modern software technologies. Older technologies are more difficult to maintain, and this is a key point of pain for many legacy system owners.
Delphi technology is 20 years old. It started early in the 1995, based on Pascal language, and most of the development based on version 4 to 7, although written in the late ’90, still amazingly works as it was 20 years ago. What made the Delphi in those glory days of the ’90s, the best development tool was the BDE – The Borland Database Engine. Back then, in the early days of Windows 95, the ability to develop Windows Form Application with Client\Server architecture in minutes, quickly perform database queries & show them on a grid, was something that no MFC or Java developer imagine possible.
The BDE also was the only driver who knew how to connect to Paradox or dBase, and bridge the gap from the pre-historic legacy systems made in the ’70s for VAX, ALPHA terminals or DOS, to the ’90s with Windows Forms based application.
Delphi code is spread all over the world in every industry: Hi-Tech, Retail, Finance, Government, Military & Defense systems, Education, Agriculture etc. It is no surprise why those golden days of the millennium, all the major companies & organizations that wanted rapid database application solution chose Delphi.
But that was 20 years ago…Now it’s already 2015, and once again, it’s time to move on.
The Delphi Parser is a rule based generator, currently suited for Delphi (Paradox\BDE to MS-SQL\ADO), but can easily be customized for all types of language code, data-scheme & other given technology. The rules can be defined, refined & redefined for the parser, as required. The Parser is a set of smart functions that takes the notorious “Find & Replace” & the infamous “Cut & Paste”, lock them behind bars & throw away the key. This parser is nothing like these! It does the job, like nobody or no other tool ever did it before, with no loose ends or cutting corners. Based on all the data the Parser collects from scanning the project & analyzing it, it makes the changes wisely, based on set of rules and instructions. It doesn’t make any blind copies nor using half-baked data, voodoo programming, wild guesses or intuitions. The Parser does the job like no developer expert, or team of developers can do manually.
Today in 2015, with the newest Windows 10 systems, 64Bit and Unicode, there is a market demand for new and upgraded applications, and growing need to migrate the old systems, from the 90s, and those still working on ’70s technology to the future, while providing new capabilities and enable the utilization of innovative technology, and working under new operating systems. The uniqueness of the Delphi Parser technology is that it is constructed in the form of open layers, allows any programmer access to all its functions and make the adjustments at will – open version can also access the source code, which is written in Delphi.
The first layer deals with the Core Language functionality. The 2nd deals with Database Component, that handles simple replacement requests. The third layer already contains the functions of scanning processes of the Code, over a single file, across the entire libraries, and complete projects. The layer above knows how to scan the whole project for similar requests. All this is done with the understanding that there is compatibility between the millions of lines of code that exist within the organization, and there is great compatibility between different projects in a written code. The similarity between the code found between different customer brought me to the conclusion that you can combine all the technology tools that will enable many more customers to enjoy this tool very easily, while reducing workload by 80% during the upgrade process of the code, as well as significantly reducing upgrade costs by a factor of 10. The tool can be adapted to different forms of writing, whether in the same project and whether for different customers. After analysis and mapping patterns of development and use of components of any project, you can build a custom upgrade process, and tailor a solution for every customer requirement to carry out its automatic substitution.
With the Delphi Parser you can get an accuracy of 95%, with no mistakes or errors. However, it is noteworthy that automatically replace also requires subsequent manual corrections and changes before it can compile & executed, and of course strict quality check is required. But these tasks are clear and well known, capable of being implemented in an orderly and structured. Running a Full Automatic Process of millions of lines of code, takes no more than a few hours. The replacement can be made automatically, efficiently, safely, using a separated virtual environment, without any human bugs & mistakes. The process does not interrupted the ongoing development, with no need to merge code or branch. Due to the nature of the automatic process, there is no need for code freezing, or creating a separate team to handle the migration project, and without any risk of harming the development process or business continuity.
The migration process progress in rounds, like Agile. Short rounds of automatic changes, then manual corrections, compiling, testing – and repeat, for repairs and modifications of the parser, and running repeats until one obtains a proper use, if not perfect. Typically migration process can begin in the evening with a fresh backup copy of today checked-in work, upon completion of the daily work. In the morning, with the coffee, the new migrated code will be ready for testing. By evening it will be ready again after repairs and modifications for further testing – all without interrupting the ongoing development team.
The Delphi Parser automatic migration process saves up to %80 of manually migration costs, and makes it 10 times faster. Manually migrating millions of lines of code, takes about few years with an entire team of developers. The cost is measured at the lines of code, scaled between $5 to $20 per line of code (depending on code complexity), Typical project is estimated for about several million dollars.
By using the Delphi Parser technology, we can reduce costs by 80%, and shorten the time to 1/10 of its original duration. Average cost for automatic migration is about hundreds of thousands of dollars (instead of millions), and a few months (instead of years), without allocating special team force , and without the interference to the product ongoing development & without any risk to the company.
Tailor Made Solutions
Migration process is a delicate issue, and some companies, like normal human beings, don’t like to take their dirty laundry outside. We understand this demand very well, and for that very reason are able to provide the Delphi Parser tool with all the source code, knowledge & support, to do it yourself. In that way the development team can do it themselves. This is no magic here. Seriously, anyone can use the Delphi Parser migrate code or even to improve its quality by searching the code black holes in its darkest corners. With the Delphi Parser there is no need to plan a huge project, most of the work is getting done automatically by the Delphi Parser. It can transform an old existing code, spread in lots of files & directories, with millions of code lines, tons of objects, and produces a new & upgraded code, within minutes!
Most migration processes changes 10% of the written code & makes a huge mess all around. In a project contains millions of code lines, thousands of objects, years and years of development with different products & changing developers based on variety of technologies & operating systems, it is very difficult if not impossible to make the change, and uplift the company to newer horizons, spreading many aspects:
By Using the Parser, it is all solved!
- Cheap solutions with low risk.
- Quick solution – will be ready in the next quarter!
- No hard work! The Parser does the hard work & bridge between old and new technology, developers will love to move on to new technology painless.
- Safe & Easy, with no fear of change or crisis to handle
- No Complex Project to plan! The work is done for you. All you need is to set up the project, run the parser & debug.
- What should have been a big project, taking lots of money on a scale of few years & potentially hi risk, can be downsized to medium (but very important) project, taking few months, with low risk, well contained & handled, and costs %80 less, and very much possible.
- The Parser reduces 95% of the workload in the migration process. Leaves you all the time for design, test & improve your code.
- The Parser reduces 99% of errors & bugs. The QA cannot be happier.
- No more developer’s mistakes!
The Parser and even refine the code to be much better & readable than before.
The Parser, in many migration cases, makes the impossible job, possible.