Software modernization

Uses your system voice; voice and rate in settings.

Snapshot

≈ 5 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

Software modernization, also known as legacy modernization or platform modernization, refers to the conversion, rewriting or porting of a legacy system to modern computer programming languages, architectures (e.g. microservices), software libraries, protocols or hardware platforms. Legacy transformation aims to retain and extend the value of the legacy investment through migration to new platforms to benefit from the advantage of the new technologies. As a basis and first step of software modernization initiatives, the strategy, the risk management, the estimation of costs, and its implementation, lies the knowledge of the system being modernized. The knowledge of what all functionalities are made for, and the knowledge of how it has been developed. As the subject-matter experts (SMEs) who worked at the inception and during all evolutions of the application are no-longer available or have a partial knowledge, and the lack of proper and up-to-date documentation, modernization initiatives start with assessing and discovering the application using Software intelligence.

Software modernization, also known as legacy modernization or platform modernization, refers to the conversion, rewriting or porting of a legacy system to modern computer programming languages, architectures (e.g. microservices), software libraries, protocols or hardware platforms. Legacy transformation aims to retain and extend the value of the legacy investment through migration to new platforms to benefit from the advantage of the new technologies. As a basis and first step of software modernization initiatives, the strategy, the risk management, the estimation of costs, and its implementation, lies the knowledge of the system being modernized. The knowledge of what all functionalities are made for, and the knowledge of how it has been developed. As the subject-matter experts (SMEs) who worked at the inception and during all evolutions of the application are no-longer available or have a partial knowledge, and the lack of proper and up-to-date documentation, modernization initiatives start with assessing and discovering the application using Software intelligence. ==Software migration== Software migration is the process of moving from the use of one operating environment to another operating environment that is, in most cases, is thought to be a better one. For example, moving from Windows NT Server to Windows 2000 Server would usually be considered a migration because it involves making sure that new features are exploited, old settings do not require changing, and taking steps to ensure that current applications continue to work in the new environment. Migration could also mean moving from Windows NT to a UNIX-based operating system (or the reverse). Migration can involve moving to new hardware, new software, or both. Migration can be small-scale, such as migrating a single system, or large-scale, involving many systems, new applications, or a redesigned network. One can migrate data from one kind of database to another kind of database. This usually requires the data into some common format that can be output from the old database and input into the new database. Since the new database may be organized differently, it may be necessary to write a program that can process the migrating files. When a software migration reaches functional equivalence, the migrated application can be aligned more closely to current and future business needs through the addition of new functionality to the transformed application. The migration of installed software from an old PC to a new PC can be done with a software migration tool. Migration is also used to refer simply to the process of moving data from one storage device to another. ===Creating reusable software=== Due to the evolution of technology today some companies or groups of people don’t know the importance of legacy systems. Some of their functions are too important to be left unused, and too expensive to reproduce again. The software industry and researchers have recently paid more attention towards component-based software development to enhance productivity and accelerate time to market. ===Risk-managed modernization=== In general, three classes of information system technology are of interest in legacy system modernization: Technologies used to construct the legacy systems, including the languages and database systems. Modern technologies, which often represent nirvana to those mired in decades-old technology and which hold (the often unfulfilled) promise of powerful, effective, easily maintained enterprise information systems. Technologies offered by the legacy system vendors – These technologies provide an upgrade path for those too timid or wise to jump head-first into the latest wave of IT offerings. Legacy system vendors offer these technologies for one simple reason: to provide an upgrade path for system modernization that does not necessitate leaving the comfort of the “mainframe womb.” Although these technologies can provide a smoother road toward a modern system, they often result in an acceptable solution that falls short of the ideal. ==See also== System migration Data migration Green computing

Text derived from https://en.wikipedia.org/w/index.php?oldid=1330509632 under CC BY-SA 4.0; modifications have been made.