Skip to main content
29 votes

How can there be so much "business logic" for a company that they cannot drop their old COBOL/mainframe code?

There are two huge factors at play. The question as asked deals with the complexity and risk of replacement. Let's set that aside for a moment. The first problem is simply one of value. Let's say that ...
Michael's user avatar
  • 6,467
19 votes

How can there be so much "business logic" for a company that they cannot drop their old COBOL/mainframe code?

One thing about COBOL in particular is that its built-in decimal data type is perfect for money calculations; PHP doesn't have that. Extrapolating a little, some of the old platforms have useful ...
catfood's user avatar
  • 1,615
15 votes

How can there be so much "business logic" for a company that they cannot drop their old COBOL/mainframe code?

(Koff, koff ...) Speaking as someone who used to teach a community-college course in COBOL ... there are actually key attributes about that particular language which have never been replicated since. ...
Mike Robinson's user avatar
12 votes
Accepted

Convert a team from VB.Net to C#.Net

If you currently have VB.NET devs who know C#, I don't think all 20 applications need any rewriting all at once. It's just too much coding, testing, rolling out and for what? Because your next few ...
JeffO's user avatar
  • 36.8k
10 votes

Convert a team from VB.Net to C#.Net

Instead of trying to tell you what you should do, I'll share what we did. Tests get written in C#, because, let's be honest, the VB codebase doesn't have any. New classes are written in C# inside ...
RubberDuck's user avatar
  • 9,021
10 votes

How can there be so much "business logic" for a company that they cannot drop their old COBOL/mainframe code?

Based on what I have seen here are the main factors: There is little to no documentation for these systems. There's no one to ask about requirements COBOL is not a structured language. There's a ...
JimmyJames's user avatar
  • 28.9k
9 votes

Rebuilding a legacy application : What about the data model?

Think big, start small. The most effective way I know for tackling the described situation is the following approach: Scetch your "vision" of the full data model, but do not implement it ...
Doc Brown's user avatar
  • 214k
8 votes

Isn't data migration a major benefit of MongoDB compared to the commonly used relational databases?

First, I’d like to rescope the migration benefit that you attribute to nosql in general to the sole segment of document-stores. Because migrating from anything to a row store, a graph database or a ...
Christophe's user avatar
  • 80.6k
7 votes
Accepted

What to do with historical SVN branches after switching to GitFlow?

Whether to keep the branches around or to convert them to tags is largely a matter of personal preference. Git has two kinds of tags: lightweight tags that are just a reference to a commit, and ...
amon's user avatar
  • 135k
7 votes

New frontend for legacy code

From my experience you should NEVER try to recode something existing if it does not have good specifications and test. Trying too create a new app always seems good at first glance (working with new ...
f222's user avatar
  • 1,040
6 votes
Accepted

Is it a fallacy to say that system migrations don't suit an agile methodology as the requirements are known up front?

Yes, it's a fallacy. What your Manager call: "requirements are known up front" falls into the category of Predictive Planning. "We know what to do, so it just takes to assign tasks to people and ...
Laiv's user avatar
  • 14.8k
6 votes
Accepted

Am I right in writing our own database migration/versioning software?

Is it ever worth it to write your own solution? In theory, no. Unless it's your companies product, or not available at all, you should use an off the shelf component; and there are many DB versioning ...
Ewan's user avatar
  • 79.8k
6 votes
Accepted

Isn't data migration a major benefit of MongoDB compared to the commonly used relational databases?

Both processes' simplicity and complexity have been greatly exaggerated, I'm sure the first one (RDBMS) can be both more complex or simpler, depending on a range of factors. I believe the "every-...
Tulains Córdova's user avatar
5 votes
Accepted

How to approach the understanding, documentation and validation of legacy code

Inheriting legacy code is one of the most common things in the software industry. So common that, we can find several publications regarding this topic. Worth a mention Working effectively with ...
Laiv's user avatar
  • 14.8k
4 votes

How to prepare test case for System Migration of legacy system while existing functionality is unclear?

In order to answer your last question ("how should I prepare test case in order to ensure the quality of the system?") you must answer your first two questions: There are some differences in ...
Greg Burghardt's user avatar
4 votes
Accepted

Gap between Code base and Production application

So it seems you are planning to rewrite the original application step-by-step and replace it with a new application. Depending on the application logic, a "step-by-step" approach maybe possible or not,...
Doc Brown's user avatar
  • 214k
4 votes

Should we use a monorepo?

They have different release schedules. This indicate that you should not have them in the same git repository. These applications share some code Move that into a shared library used by your three ...
Thorbjørn Ravn Andersen's user avatar
4 votes

Convert a team from VB.Net to C#.Net

The question (for clarity, as it seems some couldn't read the question in its entirety): What is the best approach for migrating a team from VB.Net to C# with all of the considerations above? ...
Machado's user avatar
  • 4,120
4 votes

Designing new system to replace legacy: Would you start with a new database and maintain both independently until the switch?

I would have both systems running concurrently. Gradually migrating users/customers off the old one onto the new one. The benefit of this is that you can test the new system with a subset of ...
Ewan's user avatar
  • 79.8k
4 votes

Is it a fallacy to say that system migrations don't suit an agile methodology as the requirements are known up front?

Your question holds a bolder statement than the quoted manager's. The quoted manager states it is not needed, as if it would require a bigger investment to do an agile project compared to a non-agile ...
Martin Maat's user avatar
  • 18.5k
3 votes

Is it a fallacy to say that system migrations don't suit an agile methodology as the requirements are known up front?

Yes. The set of all requirements is never known at the start of a project. By proudly saying they are not using an agile methodology, it's as if they are saying "We reject the chance of having to ...
binskits's user avatar
  • 119
3 votes

Sharing parts of a monorepo

From your description, I think you have a couple options here: Use git submodules - with a service like GitHub (or anything else), you can manage permissions per-project and decouple your deployment ...
Way Spurr-Chen's user avatar
3 votes

Should we use a monorepo?

TL;DR: I am a consultant working for a government client. We are using submodules for some of our packages. It's quickly becoming frustrating. If you're used to thinking of your packages as being the ...
Josh Bruce's user avatar
3 votes

DB migration and Azure deployment slots

Zero-downtime releases using Azure App Service slots and a single database shared by Staging and Production are possible - but you need to make sure that all database changes are backwards compatible, ...
Cocowalla's user avatar
  • 141
3 votes

Am I right in writing our own database migration/versioning software?

Is it ever worth it to write your own solution? Absolutely - but only in a limited set of circumstances: To augment your own technologies Your software may have certain features that make it ...
Robbie Dee's user avatar
  • 9,815
3 votes

For Evolutionary Database Tools like Flyway or LiquidBase, it is better to integrate the tool or left it as a stand alone step in the CI process?

This question boils down to how to handle failures in db and application upgrades, and which one should be done first, in a situation where there are lots of application instances and one shared DB. ...
Doc Brown's user avatar
  • 214k
3 votes

For Evolutionary Database Tools like Flyway or LiquidBase, it is better to integrate the tool or left it as a stand alone step in the CI process?

There's one really huge reason not to include migrations in your application that I neglected to mention: flyway needs high-level permissions that you should not be giving to an application. This ...
JimmyJames's user avatar
  • 28.9k
3 votes

Partially Automated Migration of Monolith to MicroService

It is very surprising to me that I can not find even one tool that analyses the way a monolith accesses the data base and suggests something about how cutting of certain areas may help in migrating ...
CodeScale's user avatar
  • 196
3 votes
Accepted

A bug was found in my code. Should I migrate the application as planned, or focus on patching the bug?

This is a question of risk management. I assume when you fix the bug first, you will also release a new version of the application before the migration is completed (otherwise the whole question would ...
Doc Brown's user avatar
  • 214k
3 votes

Synchronize data between old on premise application and new cloud system

Frankly the proposal sounds like a recipe for disaster. If you have a perfectly working application for the time being, and you have several years to complete a transition "to the cloud", ...
Steve's user avatar
  • 11.7k

Only top scored, non community-wiki answers of a minimum length are eligible