EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

Legacy System

By Swati TawdeSwati Tawde

Home » Software Development » Software Development Tutorials » Software Engineering Tutorial » Legacy System

Legacy System

Introduction to Legacy System

A legacy software system is an old computer system or application program which is still being used only because it is performing a useful job for the community, even though new technologies are available. Legacy software systems are programs that are still well used by the community or have some potential inherent value that was developed years ago using early versions of FORTRAN or other languages. For example, Mainframe runs 64 bit Linux and java alongside 1960s vintage code (which is a legacy software developed in 1960s).

Quality of the Legacy System

Legacy software has been maintained and developed for many years by hundreds of programmers and while many changes have been made to the software, the supporting documentation and programming may not be of current style. These factors lead to highly unbelievable costs in maintaining the legacy software yet, these systems support core business function and are essential to the business. Thus. there is a need to find ways to make these programs more maintainable without hampering their current usage and also safeguard the information they contain. The solution is to discard the software completely and start again with a new system. But this may lead to inevitable loss such as:

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

i. The software may actually work well, and its behavior may be well understood. A new replacement system may perform much worse, at least in the early days of replacement. Hence, it may be worth recovering some of the good features of the legacy system.

ii. Software contains years of accumulated information, which is not represented elsewhere, so discarding the software will also discard this knowledge.

iii. A typical large legacy software system has many users. It may not be good enough to demand that users undertake a substantial rewrite for no distinct benefit. Therefore, it may be important to maintain the interfaces and exact functionality of the legacy code.

Users may prefer an evolutionary rather than a revolutionary approach to modernizing their software because generating new software will most often introduce new bugs and this would degrade the users’ trust in the software results.

Thus the only way to avoid the above losses is to enhance the legacy software from time to time so that it meets the requirements of the new computing environment. It Implements the requirements of new business. It becomes interoperable with more modern systems and databases. It works within a network environment.

Popular Course in this category
Software Testing Training (9 Courses, 2 Projects)9 Online Courses | 2 Hands-on Projects | 60+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.5 (4,957 ratings)
Course Price

View Course

Related Courses
Cyber Security Training (12 Courses, 3 Projects)All in One Software Development Bundle (600+ Courses, 50+ projects)

Why the Legacy System is used?

The reasons are varied as to why a company would continue to use the legacy systems. some of them are as follows.
Investment: Although the maintaining of the legacy system is expensive, upgrading to the new technologies systems requires more investment.

i. Fear: Adding a sudden change is hard and moving to new technologies or systems can inspire some critical resistance.

ii. Difficulty: The legacy software may be built with a programming language which makes it hard to find personnel with skills to make the migration. Planning the migration of data from the legacy system and defining the scope of the requirement for the new system is overwhelming.

Problems with Legacy System

Following problems can be caused due to the legacy system.

1. Maintenance is costly: The cost of maintaining a legacy system is expensive. Maintenance keeps the works of legacy system softly, but at the same time organization is throwing good money after bad.

2. Data is stuck in silos: Data silos are byproducts of the legacy system. Many older systems are designed in a such way that they cannot integrate with each other and many legacy systems software solutions are built on a framework that cannot integrate with other or new systems. In other words, we can say that each legacy System is its own data silos.

3. Compliance is much harder: Compliance regulation required companies to know what user data they have, where it is, and who is accessing it. An organization with good user data needs to maintain well-governed d records which are harder to automate.

4. Security gets weaker day by day: It does not only leave an organization behind with old technology, but it can also damage the reputation of an organization by putting data at risk of a breach. At some point, the vendor does not support the legacy system or provides a much-needed update, opening legacy systems up to a security risk. Even if the update is available, it’s installation process can be risky and is postponed for fear of breaking the system. With advanced technologies, the risk for the legal system increases.

Conclusion

In this article, we have seen what is a legacy system and why it is used. I hope you will find this article helpful.

Recommended Articles

This is a guide to Legacy System. Here we discuss the introduction, Why the Legacy System is used? Quality and Problems respectively. You may also have a look at the following articles to learn more –

  1. Embedded Control Systems
  2. Number Systems
  3. Perpetual Inventory System
  4. What is Embedded Systems?

All in One Software Development Bundle (600+ Courses, 50+ projects)

600+ Online Courses

50+ projects

3000+ Hours

Verifiable Certificates

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
Software Engineering Tutorial
  • Advanced
    • Functional Point Analysis
    • Software Quality Control
    • Quality Assurance Tools
    • Quality Software
    • Critical System
    • Legacy System
    • SOA Architecture
    • Software Quality Attributes
    • Software Maintenance
    • Software Cost Estimation
    • Cohesion in Software Engineering
    • Coupling in Software Engineering
    • Design Modeling in Software Engineering
    • Iterative Methodology
    • System Flow Diagram
    • Data Flow Architecture
    • SEICMM
    • Function Oriented Design
  • Basic
    • What is Software Engineering?
    • What is SDET
    • What Is SDLC
    • SDLC Methodologies
    • Software Classification
    • Software Design
    • Software Design Principles
    • Software Metrics
    • UI Design Tools
    • User Interface Design Principles
    • Software Configuration Management
    • Software Configuration Management Tools
    • What is Risk Management?
    • CASE Tools
  • Models
    • Prototype Model
    • What is Spiral Model
    • Waterfall Model
    • Prototyping Tools
    • Incremental Model
    • Iterative Model
    • RAD Model
    • Fish Model
    • COCOMO Model
    • Big Bang Model
    • Capability Maturity Model Integration
    • What is Agile Development?
    • Agile Process Model
    • Rational Unified Process
  • UML Daigram
    • Architecture of UML
    • StarUML Download
    • Types of UML Diagrams
    • UML Activity Diagram
    • UML Component Diagram
    • UML Deployment Diagram
    • UML Diagram Softwares
    • UML Object Diagram
    • UML Sequence Diagram
    • UML Use Case Diagram
    • Class Diagram
    • UML Dependency
    • UML Interaction Diagrams
    • Data Flow Diagrams
  • Interview Questions
    • Software Engineering Interview Questions
    • SDLC Interview Questions

Related Courses

Software Testing Course

Cyber Security Training

Software Development Course Training

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - Software Testing Course Learn More