Acism has offered student internships in the important area of software modernization. They are designed to run like a science experiment. The results will be of interest to software industry at large. We invite interested companies as observers as this experiment runs. Read below for details.
Re-engineering software products is arguably a bigger game than developing a new product. The term modernization is same as re-engineering, but with a little sway as per the current architectural trends of cloud deployment and a microservices architecture. With the increased focus on digitization, the demand of modernization of existing legacy applications is on the rise.
A software product needs constant enhancements in response to changes in the marketplace or the environmental conditions. These enhancements become more and more difficult to make with time, as the product becomes patchy and the original set of developers move away. In other words, the effort to make incremental changes gets larger and larger. Once the product reaches a point that further enhancements are either not technically feasible or are very expensive, the management is forced to sanction the budget for re-engineering the product. There are many large legacy applications that befit the bill, and hence are up for modernization.
Because of the large size, and the modernization is a huge and complex effort. Some of the fears are:
These fears are not ill-founded, and they have been realized in some cases.
Xsemble is a great technical choice for the applications, because the applications are made of small reusable components which are individually easy to maintain / enhance, and the overall design is available in the form of a visual flow diagram.
Because of this, Xsemble based applications are orders of magnitude easier to maintain and enhance, and have a long life. As per our estimation, an Xsemble based application should save you 80% effort during the long maintenance phase.
Not only that, an Xsemble based application can be easily converted to microservices architecture. It is further flexible in the sense that functionality can be moved between microservices much more easily than in conventional ways.
For more details on the problem statement and the solution, please refer to our article on Legacy Application Re-engineering.
f your application is already on Xsemble, then it will enjoy these benefits. But can a legacy application be migrated to Xsemble? How much easy or difficult is it going to be? What can be the said about the reliability of the effort and certainty of achieving the end result? If it is going to be reliable and easy, then we have a good option for achieving the re-engineering of our legacy applications. The internships are intended to find answers to these questions.
We would like to run the modernization internships pretty much like a science experiment. The activities done should be quick and verifiable, and intended to lead to unambiguous conclusion.
Here is the high level plan:
Here are some extrapolations that we will be doing based on the results:
We are shouting out to the software development companies to participate in this experiment as observers. Your inputs will also be welcome. Especially the ones who are looking at doing some re-engineering / software modernization work in the near future would find the experience highly relevant.
The internships are remote, and so the monitoring also can be done remotely. This places no geographical restrictions for one to participate.
Get in touch with us on contact@acism.com regarding this opportunity. Please hurry, as the internships have already started. The students doing these internships are from the MIT World Peace University, School of Management.