A good beginning and then it gets worse, i.e. MVP
Why problems occur” only later”, at the beginning it was good and the customer was satisfied
Paradoxically, the explanation is quite simple: developers are still dominated by methods based on monolithic architectures. Preaching application” Object-oriented programming methods” only means that the so-called” object-oriented programming language”, which absolutely does not mean that the architecture of what will be created will be modern. Audit practice shows that it will rather be an architectural museum based on a relational data model, multi-level inheritance and the worst data modeling practices, which are an anemic domain model and shallow flat classes with a huge number of operations (including set/get for each attribute of classes representing database tables).
Therefore, this scenario often looks like this: at the beginning, software is created that performs one specific function, often the embryo of a monolith. Everything works fine, the customer is happy and concludes (extends) the contract. The next functionalities are the beginning of the drama: expansion of the monolithic data model, migrations from the old model to the new one, growing problems of the monolithic architecture: everything is falling apart because everything depends on everything, and no one knows how, because there is no documentation of the application’s operation mechanism, and the code has long been no longer suitable for reading. Trying to fix this is starting to be a bit of a rabbit chase too…. and there is a dispute.
Source: A good beginning and then it gets worse, i.e. MVP – IT-Consulting Jarosław Żeliński