Subscribe by Email

Friday, December 9, 2011

How lack of compatibility causes software failure?

A software system or application is said to be compatible if it is able to execute efficiently on all the models available in that particular family of the gadget of computers. Different types of computers vary less or more in different aspects like reliability, resilience, performance and so on. These differences or variations affect the execution of the software system. Also the outcome or the result of the program is affected.

- Software compatibility can be defined as the compatibility that particular software system, application or program has when it runs on a particular CPU or central processing unit architecture.

For example, Intel, Pentium, power PC etc. software compatibility is not only confined to different kinds of computers.

- It extends over a vast area.
- Software compatibility can also be defined as the ability of a software system, application or program to run on different operating systems.
- It happens very rarely that a fully compiled software system or application is able to run on many different CPU architectures.
- Usually a software system or application is developed and compiled for various different CPU architectures as well as operating systems to allow the software system to be compatible with the different kinds of operating and CPU systems.
- In contrast to compiled software system or applications, interpreted software, can easily run on many different operating systems and CPU architectures.
- But, this can happen only if the interpreter is available for that particular CPU architecture or the operating system as the case may be.

Software incompatibility is quite common with fresh releases of any software system or application and generally occurs quite a many times for the new software system released for a newer version of CPU architecture or an operating system which is quite incompatible with the older version of that particular CPU architecture or operating system.

- This is because the software system or application might be lacking some of the features and functionalities required to make it compatible with the wanted CPU architecture or operating system.
- There’s another concept that comes into scenario of the compatibility of software called “backward compatibility”.
- The software systems and applications which are able to work with the older versions of CPU architecture or operating systems are said to be backward compatible.

Apart from software compatibility we also have hardware compatibility.
- It can be defined as the compatibility of the hardware components of a computer system which has a particular CPU architecture, operating system and other things like bus; mother board etc. compatible hardware doesn’t necessarily gives its optimum performance as stated.
Best example is given by RAM chips.

- Hardware can be compatible only with those operating systems for which kernel drivers and devices are available. For example, hardware components for Mac Os do not work with Linux operating system.
- Compatibility is essential and useful but it is very difficult to keep the extraneous features and functionalities with the software and the hardware system for a very long term and that too just for the sake of compatibility.

- Compatibility is the ability of the software system or device to work with another system or device.
- Compatibility is concerned with various degrees of partnership among the software and hardware components of a system.
- Two devices or programs are said to be compatible if they respond to the software and hardware commands exactly in the same way.
- Some components achieve compatibility by making the software system believe that they are some different machines.
- Such a process is called emulation. It’s important to note that the hardware compatibility not always considers expansion slots.

No comments:

Facebook activity