Software Erosion: A Review

Software erosion refers to the gradual decline in software performance over time, leading to obsolescence and the need for updates to sustain usability. It occurs due to continuous updates made to the software's operating environment. As software development costs increase, existing software extends its functional lifespan, resulting in frequent architectural changes.

Several causes contribute to software erosion. Unexpected changes in the operating system can make the software incompatible with the updated environment. The inability to restore software to its functional state, known as "onceability," is another factor. Additionally, specific components within the software may decay due to low usage frequency, and the failure of one component can lead to the failure of others with strong interdependencies.

Software erosion can be classified into inactive erosion and active erosion. Inactive erosion occurs when software usage decreases, making it unstable and unusable. As the operating environment changes, erosion becomes more likely. Active erosion, on the other hand, happens when software is continuously developed or updated without proper mitigation processes, which can also contribute to erosion.

However, continuous updates are necessary to address changing technology, user needs, capabilities, security, and unexpected issues. Software reengineering, which involves updating and maintaining software, is often impractical and leads to divergence from the original design, causing performance, maintenance, and quality problems. This deviation, known as software entropy, increases the probability of architecture erosion, demanding active mitigation.

Software erosion impacts performance, development, maintenance, and software quality. If left untreated, it can result in unstable software, project objectives not being met, increased resource requirements for rewriting, and higher maintenance costs. Preventive measures should be implemented to address system failures caused by software erosion.

To tackle these challenges, developers should thoroughly understand the causes of errors before attempting to fix them. Thoughtful planning of new features with entropy in mind, as well as communication of architecture evolution within the development team, can reduce erosion caused by divergent changes from the original intended architecture. Maintaining up-to-date documentation is crucial to preserve specific knowledge about software components. Descriptive coding practices, such as using descriptive variables and methods, contribute to effective documentation.

By considering these factors, developers can mitigate software erosion, ensuring the long-term viability and usability of their software systems.

References:
Software Architecture Erosion: Impacts, Causes, and Management
Understanding software architecture erosion: A systematic mapping study
Image from PlayGroundAI.com

GDP Shortcomings

Gross Domestic Product (GDP) is an accurate economic indicator and is the most used to weight economic grow in any country. It refers to the total economic output achieved by any nation over a specific period. But there are some shortcomings of GDP to consider in every economy as it doesn’t take into consideration some calculations of market and political (regulations) specific behavior.

Non-market transactions

Though most, if not all, market transactions are considered within the build of GDP, non-market transaction are not. This due primarily to the fact that no solid information is available for it to be accurately accounted for. Consider, for example, the income made by children doing chores for their neighborhoods or the produce being grown for personal consumption.

Leisure

Working hours reduction has been an ongoing movement around the world specially in leading economies such as the USA and France. Additionally, worker benefits have also grown, as might be sick leaves, as well as maternity and paternity leaves. Even though it might be clean that people is producing more in less time, the improvement in productivity is not accounted for in GDP calculation.

Improved product quality

GDP is lacking as a qualitative measurement indicator as it fails to property inform the increase on product and service quality. Product and service quality measure has a big impact on economic wellbeing as customers might be more satisfied with current but cheaper products than before just because of its quality improvement.

The underground economy

Non-market transaction can also refer to the trade of illegal goods and services, such as prostitution, gambling, and drugs, etc. These are not recorded and thus not taken into consideration while building the official GDP. But underground economy might also refer to non-illegal activities which citizens or residents decide not to report, such as informal jobs and informal exchange of services between economic agents (ex. “repair this for me and I repair that for you”).

Environmental abuse

Sometimes production might be increased at the expense of environmental damage. While production might be highly regulated in developed nations developing ones might rely heavily on environmental exploitation to support their growth. Green Gross Domestic Product (GGDP) is a formula that aims to penalize such counties by offering a more accurate measurement of economic grown by considering the implementation of manufacturing practices that harm the environment.

Here you can find an article which shares possible alternatives to GDP as a measurement of wellbeing. Even so I recommend you to do your own and extensive research in the matter.

Source: SHORTCOMINGS OF GDP - MBA Tutorials, What is Gross Domestic Product (GDP)? - CFI
Graphic source: G20 GDP Growth - Second quarter of 2019, OECD

Mexico, 76th in the 2019 Economic Freedom of the World Index

Hong Kong and Singapore retain the top two positions.

The Economic Freedom of the World: 2019 Annual Report has been realeased. And with it, the leading positioning that Hong Kong and Singapore retain at the top two positions remain. This while the United States sits at the 5th position, Japan at the 17th, Germany at the 20th, France the 50th, and a little up Mexico located at the 76th position.

The Economic Freedom of the World takes into consideration various aspects, some of these being possibility of personal choice, voluntary exchange, and open markets. This while considering different areas of evaluation, as is the presence of sound money, rule of law, and security of property rights, among others. The report is published jointly by the Cato Institute in partnership with the Fraser Institute in Canada and more than 70 think tanks or expert organizations around the world.


There is outgoing worry regarding the Legal System and Property Rights Mexico, where it stands the worst within the five reviewed areas. As can be seen above, no field stands outs except for the Regulatory costs of the sale of real property field, with a value of 7.64 out of 10. The rest have nothing to be optimistic for.

The report emphasizes the positive differences that the more economically freed nations have over non-free nations regarding indicators of well-beings. You can find the following among the relations:
  • In more economically free nations, the average income of the poorest population was two-thirds higher that the average income of to the poorest population in the least-free nations.
  • Far less population in more economically free nations experience extreme poverty than those in least-free nations.
  • Infant mortality is lower in more economically free nations than in least-free nations.


You can find the 2019 along past year reports by clicking here or by browsing the resources section where a link shall be added.

Mapping images taken from the Economic Freedom Ranking page.

What's Microproductivity? A post from Trello.

In their post, What's Microproductivity? The Small Habit That Will Lead You To Big Wins, writer Kat Boogaard gives a brief explanation of how and why micro productivity works. That is, breaking projects or work into smaller tasks with the intention to increase productivity. One interesting reference is a reading about the Goal-Setting Theory
page from Lumen Learning platform.

Ideally something to work on this new year!

Image by Trello, found in How To Manage Scrum And Kanban Teams In Trello With The Corrello Power-Up, a recommended read as well.

Current time: 28 Mar, 2025, 5:58 am