Legacy system: Difference between revisions

From Computer Science Wiki
No edit summary
 
(6 intermediate revisions by 2 users not shown)
Line 5: Line 5:
Legacy systems are usually '''still in use''' as opposed to retired (or archived) systems, which are no longer in use. Please remember this distinction.  
Legacy systems are usually '''still in use''' as opposed to retired (or archived) systems, which are no longer in use. Please remember this distinction.  


=== All about legacy systems ===
Compatibility issues can arise in situations where a new system or technology must be integrated with an existing system or technology. These issues can be particularly pronounced in situations where the existing system is a legacy system, or in situations where two businesses are merging and their systems must be integrated.


Systems must be compatible with other systems if they are going to be useful. Legacy systems are not always compatible with newer systems. Compatibility is a state in which two things are able to exist or occur together without problems or conflict. When you are planning a new system, you should be aware of compatibility issues with older systems. Frequently, the way a legacy system stores data is the most frequent source of compatibility issues.
Some common compatibility issues that can arise in these situations include:


A few hypothetical examples may help you understand this:  
# Incompatibility of hardware or software: If the new system uses hardware or software that is not compatible with the existing system, it may be necessary to make changes to the existing system in order to enable the two systems to work together.
 
# Incompatibility of data formats: If the new system uses data formats that are not compatible with the existing system, it may be necessary to convert the data between the two systems in order to enable them to work together.
# A new system accepts input for a date as 11 November 2017, but the legacy system only accept input as 11 November 17
# Incompatibility of protocols: If the new system uses protocols (e.g. communication standards) that are not compatible with the existing system, it may be necessary to implement protocol conversion in order to enable the two systems to work together.
# A new system is web-based, but an older system is not web-based
# Incompatibility of processes: If the new system uses processes (e.g. workflows) that are not compatible with the existing system, it may be necessary to modify the processes in order to enable the two systems to work together.
# A new system allows [https://en.wikipedia.org/wiki/UTF-8 UTF-8] (Unicode Transformation Format-8) characters but the legacy system does not.
# Incompatibility of user interfaces: If the new system has a user interface that is significantly different from the existing system, it may be difficult for users to adapt to the new system and may require training or other support to enable them to use the new system effectively.
# A new system assumes all currencies are in US dollars, while the legacy system does not.
# A new system stores time as HH:MM:SS:MS (HH: hour, MM: minute, SS: second, MS: millisecond) but the legacy system stores time as HH:MM:SS.
# A new system assumes all numbers can have 4 decimal places, while a legacy system assumes all numbers only have 2 decimal places.
# A new system stores data in XML while a legacy system stores data in plain text.


== Real-world practical advice ==
== Real-world practical advice ==
Line 24: Line 20:


There is a lot more to say about this, but my advice is to assume any system you are involved with needs to be compatible with other systems and legacy systems.
There is a lot more to say about this, but my advice is to assume any system you are involved with needs to be compatible with other systems and legacy systems.
== Do you understand this material? ==
This is a simple example:
Jana has a small business that buys and sells flowers. Her business is successful. She uses different systems to manage her inventory, point-of-sale systems, employees, and of course her business finances. Jana also has a website for her flower store where customers can learn about her business.
Jana is '''so''' successful she decides to expand her business, and buys an older company that buys and sells [https://www.google.com/search?q=cute+stuffed+animals&safe=strict&espv=2&biw=1380&bih=667&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwimhYC1ouHNAhWJez4KHVzPBvQQsAQIGg cute little stuffed animals].
Jana wants to merge the two companies together, expecting to benefit with increased sales.
Question 1: Outline possible compatibility issues resulting from our example above.
Question 2: List at least 5 questions would you ask to understand compatibility issues between the two businesses.
== Do you have an advanced understanding of this material? ==
A school of 900 students has a secure web-based application which manages attendance data. The school administrators carefully track attendance for the students so it can identify when students have been absent for a customizable threshold. For example, the school might set a threshold of 5 absences within 30 days, which then automatically notifies the student, parent, and teacher there is a problem with attendance. The threshold might be 3 times within 10 days, or something like that. The system keeps track of attendance and tardies. The system has customizable attendance codes. For example, "absence for school trip", "excused absence", "medical absence" are all allowed absence codes.
School administrators expect to benefit by having data about attendance so they can support students and parents to be in school. School administrators also expect to benefit by giving parents and students information about attendance (so parents can support their children to be in school). Finally, school administrators expect to benefit by using attendance data to apply for government funding (as they can prove how many students were in class on a specific day).
Parents expect to benefit by knowing when their children are in school or miss school. This way parents can support their children to be in school. Being in school is a '''shared value''' between the school and the parent.
Students expect to benefit by understanding how many days of school of they have missed. The school expects students to have a strong "ownership of learning" and manage their attendance.
'''Change request:''' a school administrator asks for a card-system, so students touch their id card to a reader and be automatically counted as present. There will be a card reader and camera in every classroom. Students must touch their id card to the card reader and then smile for a camera picture. the picture and information embedded in the card is stored in a database and used to provide evidence the student is present in class.
Question 1: Describe '''why''' we should carefully manage this change process.
Question 2:  List the steps you would take to make this change (what would you do first, then next, then next).


== Standards ==
== Standards ==


* Outline compatibility issues resulting from situations including legacy systems or business mergers. [[Level 1]]
* Outline compatibility issues resulting from situations including legacy systems or business mergers.


== References ==
== References ==

Latest revision as of 08:42, 8 January 2023

System Fundamentals[1]

In computing, a legacy system is an old method, technology, computer system, or application program, "of, relating to, or being a previous or outdated computer system."Often a pejorative term, referencing a system as "legacy" often implies that the system is out of date or in need of replacement.[2]

Legacy systems are usually still in use as opposed to retired (or archived) systems, which are no longer in use. Please remember this distinction.

Compatibility issues can arise in situations where a new system or technology must be integrated with an existing system or technology. These issues can be particularly pronounced in situations where the existing system is a legacy system, or in situations where two businesses are merging and their systems must be integrated.

Some common compatibility issues that can arise in these situations include:

  1. Incompatibility of hardware or software: If the new system uses hardware or software that is not compatible with the existing system, it may be necessary to make changes to the existing system in order to enable the two systems to work together.
  2. Incompatibility of data formats: If the new system uses data formats that are not compatible with the existing system, it may be necessary to convert the data between the two systems in order to enable them to work together.
  3. Incompatibility of protocols: If the new system uses protocols (e.g. communication standards) that are not compatible with the existing system, it may be necessary to implement protocol conversion in order to enable the two systems to work together.
  4. Incompatibility of processes: If the new system uses processes (e.g. workflows) that are not compatible with the existing system, it may be necessary to modify the processes in order to enable the two systems to work together.
  5. Incompatibility of user interfaces: If the new system has a user interface that is significantly different from the existing system, it may be difficult for users to adapt to the new system and may require training or other support to enable them to use the new system effectively.

Real-world practical advice[edit]

When you are planning a new system you should include compatibility planning as part of your new system. If you are a system administrator, programmer, network administrator, much of your work will involve getting different systems to be compatible. It's always nice when you have a new system, new company, and a new process, but this isn't the norm.

There is a lot more to say about this, but my advice is to assume any system you are involved with needs to be compatible with other systems and legacy systems.

Standards[edit]

  • Outline compatibility issues resulting from situations including legacy systems or business mergers.

References[edit]