It's important to address language or platform incompatibility as consequences of technology modernization. The reason why we have to do manual conversions of software is because of the language incompatibility issue. We must convert manually when no tool can do the conversion.
There are several layers to this.
After looking at this suite of examples, we can see some patterns emerging. There seem to be several operating principles.
A Domain-Specific Language (DSL) can provide some intellectual leverage. We can always write long and convoluted programs in a general-purpose programming language (like Python, Java or C).
Sometimes it can make more sense to invent a new domain-specific language and implement the solution in that language.
Sometimes, even well-written, highly …
At an insurance company, I encountered an application that had been in place for thirty years.
Classic flat-file, mainframe COBOL. And decades old. It had never been replaced with a packaged solution. It had never been converted to a SQL database. It had never been rewritten in VB to run …
By the early aughts (2001-2005) Visual Basic had gone from state of the art to a legacy application language. Code written in VB was being replaced with something more modern (generally Java.)
Having worked with COBOL and Fortran legacy programs, it's easy to describe this legacy VB code as an …
The extreme end of "paving the cowpaths" are people for whom the bug list is also the feature list.
This is a very strange phenomenon, rarely seen, but still relevant to this review.
In this particular case, the legacy application was some kind of publishing tool. It used MS-Word documents …
more ...A data warehouse preserves data.
It can be argued that a data warehouse preserves only data. This, however, is false.
To an extent, a data warehouse must also preserve processing details.
Indeed, a data warehouse exemplifies knowledge capture because the data and its processing steps are both captured.
The ETL …
more ...No discussion of legacy preservation is complete without some "Paving the Cowpaths" stories.
The phrase refers to the way cows tend to meander across the landscape in a remarkably consistent way. The cows reliably follow a consistent path. The paths tend to wander in ways that seem crazy to us …
It's 1980-something. We're working on a fairly complex system that includes some big machines and three computers. One of the computers has a magnetic tape drive into which it writes a log of interesting events. In the 80's, this was a pretty big deal.
An operational run will produce a …