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 ...
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 ...
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.
...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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-...
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 ...
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 ...
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,...
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 ...
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?
...
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 ...
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 ...
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 ...
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 ...
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 ...
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, ...
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 ...
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.
...
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 ...
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 ...
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 ...
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", ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
migration × 113database × 30
c# × 7
architecture × 7
git × 6
version-control × 6
java × 5
agile × 5
asp.net × 5
legacy × 5
php × 4
.net × 4
database-design × 4
microservices × 4
sql × 4
entity-framework × 4
sql-server × 4
deployment × 4
design × 3
asp.net-mvc × 3
versioning × 3
laravel × 3
database-development × 3
schema × 3
legacy-code × 3